Sunteți pe pagina 1din 20

22/08/2013

1
PROCESOS EN LA INGENIERA
DEL SOFTWARE
LOS SOFTWARE PARA QUIEN?
Los productos de software se pueden desarrollar
para un cliente en particular o pueden ser
desarrollados para un mercado general.
Productos de software pueden ser:
Genricos: desarrollados para ser vendidos a
un tipo de clientes.
Especficos: desarrollado para un cliente de
acuerdo a sus necesidades especficas.

22/08/2013
2
LA INGENIERA DE SOFTWARE?
Aplicacin de los mtodos de la ingeniera al
proceso de desarrollo de software:
Diseo
Construccin
Mantenimiento


MODELADO
Los ingenieros de software necesitan
Comprender el ambiente de funcionamiento del sistema:
construyen modelos del dominio del problema (sistemas de
bolsa, control de trfico areo,...)
Comprender los distintos sistemas que podran construir
para evaluar alternativas: construyen modelos del dominio de
la solucin
Tcnicas y herramientas para construir los modelos (por
ejemplo, diagramas de UML)
22/08/2013
3
SOLUCION DE PROBLEMAS
Los ingenieros de software buscan una solucin adecuada, en varios pasos:
Formular
el
problema
Analizar el
problema
Buscar
soluciones
Decidir la
solucin
ms
adecuada
Especificar
la solucin
LA FASE DE DESARROLLO DEL CICLO DE
VIDA DEL SOFTWARE
Analisis
Diseo
Implementacin
Pruebas
22/08/2013
4
EL CICLO DE VIDA DEL SOFTWARE
Modificacin: para adaptarse a los cambios del
entorno. (en otros productos se conoce como
reparacin o mantenimiento)

Desarrollo Uso
Modificacin
SOLUCION DE PROBLEMAS
Otras actividades del desarrollo para
evaluar la adecuacin de los modelos
Revisiones del anlisis: el modelo del problema se compara
con la realidad del cliente
Revisiones del diseo: el modelo de la solucin se compara
con los objetivos del proyecto
Pruebas: el sistema se valida contra el modelo de la
solucin
Administracin del proyecto: se compara el modelo del
proceso de desarrollo (calendario y presupuesto) con la
realidad (trabajos entregados y recursos gastados)
22/08/2013
5
PARTICIPANTES Y PAPELES
Participantes: todas las personas involucradas en el
proyecto
Cliente: encarga y paga el sistema
Desarrolladores: construyen el sistema (analistas,
diseadores, programadores,...)
Gerente o director del proyecto: planifica y calcula el
presupuesto, coordina a los desarrolladores y cliente
Usuarios finales: los que van a utilizar el sistema
PARTICIPANTES Y PAPELES
Papel (rol)
Conjunto de responsabilidades en el proyecto o en el
sistema
Asociado con un conjunto de tareas y se asigna a un
participante
Un mismo participante puede cumplir varios papeles
22/08/2013
6
OTROS CONCEPTOS
Productos de trabajo
Artefacto o elemento que se produce durante el
desarrollo (documento, fragmento de software,...)
Producto de trabajo interno: producto para el consumo
interno del proyecto (por ejemplo, una revisin de la
estructura de la base de datos, resultados de pruebas para
el gerente, etc)
Entrega: producto de trabajo para un cliente (especificacin
de requisitos, manual de usuario, producto final.)
ACTIVIDADES, TAREAS Y RECURSOS
Actividad (o fase): conjunto de tareas que se realiza con un
propsito especfico (obtencin de requisitos, entrega,
administracin,...) que pueden componerse de otras actividades
Tarea: unidad elemental de trabajo que puede ser administrada;
consumen recursos, dan como resultado productos de trabajo y
dependen de productos de trabajo producidos por otras tareas
Recursos: bienes que se utilizan para realizar el trabajo:
Econmico, Tiempo, equipamiento y recursos humanos
Al planificar, el gerente divide el trabajo en tareas y les asigna recursos
22/08/2013
7
OBJETIVOS, REQUERIMIENTOS Y RESTRICCIONES
Objetivos:
Principios de alto nivel que se utilizan para guiar el
proyecto
Definen los atributos realmente importantes del
sistema (seguridad, fiabilidad,...)
En ocasiones hay conflicto entre objetivos (por
ejemplo, seguridad y bajo coste) que aumentan la
complejidad del proyecto
OBJETIVOS, REQUERIMIENTOS Y RESTRICCIONES
Requerimientos
Caractersticas que debe tener el sistema
Requerimiento funcional: rea de funcionalidad que debe
soportar el sistema (por ejemplo, proporcionar billetes de
tren)
Requerimiento no funcional: restriccin que se establece
sobre el funcionamiento del sistema (por ejemplo,
proporcionar billetes de tren en menos de un segundo)
22/08/2013
8
OBJETIVOS, REQUERIMIENTOS Y RESTRICCIONES
Restricciones:
Por ejemplo, utilizacin de un determinado
lenguaje, de una determinada plataforma o de un
sistema antiguo que el cliente no quiere retirar
INTRODUCCIN INGENIERA DEL SOFTWARE
Principales organizaciones de estandarizacin
ISO
SEI
IEEE Computer Society
IEEE Es el Instituto de Ingenieros en electricidad y electrnica (Institute
of Electrical and Electronics Engineers).

22/08/2013
9
PROCESO DE SOFTWARE
Desde el punto de vista tcnico
un proceso de software, se define
como un marco de trabajo para
las tareas que se requieren en la
construccin de software de alta
calidad.

INGENIERA DE SOFTWARE Y PROCESO
DE SOFTWARE SON LO MISMO?
No, un proceso de software define el
enfoque que se adopta mientras el
software est en desarrollo. Pero la
ingeniera de software tambin abarca
las tecnologas que requiere el proceso
(mtodos tcnicos y herramientas).
22/08/2013
10
QUINES UTILIZAN LA INGENIERA DE
SOFTWARE?

An ms importante es que la
ingeniera del software la realizan
personas creativas con conocimientos
que deben trabajar en un proceso de
software maduro que sea apropiado
para el producto que construyen.
INGENIERA DE SOFTWARE: TECNOLOGA
ESTRATIFICADA.
Herramientas
Mtodos
Procesos
Un enfoque de Calidad
22/08/2013
11
INGENIERA DE SOFTWARE: TECNOLOGA
ESTRATIFICADA.
La base que soporta la ingeniera de software es un
enfoque en la calidad.

El proceso de la ingeniera de software es el elemento
que mantiene juntos los estratos y permite el desarrollo
racional y a tiempo. Las reas claves del proceso forman
la base del control de gestin de proyectos de software y
establecen el contexto en el que se aplican mtodos
tcnicos, se obtienen productos del trabajo (modelos,
documentos, datos, informes, formularios, etc.) se
establecen hitos, se asegura la calidad y el cambio se
gestiona adecuadamente.



CALIDAD DEL SOFTWARE
Calidad: es el conjunto de cualidades que lo
caracterizan y que determinan su utilidad y
existencia.
Algunos atributos:
Mantenibilidad.
Confiabilidad.
Eficiencia.
Usabilidad

22/08/2013
12
INGENIERA DE SOFTWARE: TECNOLOGA
ESTRATIFICADA
Los mtodos en ingeniera de software indican como
construir tcnicamente el software. Abarcan tareas que
incluyen anlisis de requisitos, diseo, construccin de
programas, pruebas y mantenimiento. Dependen de un
conjunto de principios que gobiernan cada rea de la
tecnologa e incluyen actividades de modelado y
descripcin.

Las Herramientas proporcionan el soporte
automatizado o semi-automatizado para el proceso y
los mtodos. Cuando se integran herramientas para
que la informacin de una pueda ser utilizada por otra
se establece la Ingeniera de Software Asistida por
Computadora (CASE)
http://es.wikipedia.org/wiki/Herramienta_CASE
INTRODUCCIN INGENIERA DEL SOFTWARE
ISO 12207
ISO 1227 define los procesos que componen el ciclo de
vida del software
Ciclo de vida
Concepto
Retirada
Proceso
1

Proceso
N
Actividad 1
Tarea 1
Tarea 2

Tarea n

Actividad n
Tarea 1
Tarea 2

Tarea n

22/08/2013
13
INTRODUCCIN INGENIERA DEL SOFTWARE
ISO 12207
ACTIVIDAD 1
TAREA 1 TAREA 1 TAREA X
PROCESO
ACTIVIDAD n

Un proceso est compuesto
por actividades.

Una actividad est
compuesta de tareas.
La descomposicin del proceso en actividades y tareas
se realiza sobre el concepto de ciclo de mejora PDCA
Plan Do Chek Act (Planificacin, ejecucin,
medicin y mejora)

PLAN
Tareas, agenda,
asignaciones
CHECK
Evaluacin y
medicin
DO
Ejecicin de planes
y tareas
ACT
Problemas y acciones
correctivas
PROCESO
INICIO
FIN
ISO 12207


22/08/2013
14
INTRODUCCIN INGENIERA DEL SOFTWARE
INGENIERA DE SISTEMAS
conjunto de elementos de hardware, software,
personas, procedimientos, herramientas y otros factores
organizativos, organizados para llevar a cabo un objetivo
comn.
Sistema
Elemento del
sistema
Elemento del
sistema
Elemento del
sistema
Elemento del
sistema
Sistema de
Entrada
Sistema de
Salida
Sistema

INTRODUCCIN INGENIERA DEL SOFTWARE
INGENIERA DE SISTEMAS
Funciones de la Ingeniera de sistemas
Definicin del problema: Determinacin de las
expectativas hacia el producto, necesidades y
restricciones obtenidas y analizadas en los requisitos
del sistema. Trabaja cerca del cliente para establecer
las necesidades operacionales.
Anlisis de la solucin: Determinar las opciones
posibles para satisfacer los requisitos y las
restricciones. Estudiar y analizar las posibles
soluciones. Seleccionar la mejor, sopesando las
necesidades inmediatas, opciones de implementacin,
utilidad, evolucin del sistema

22/08/2013
15
Planificacin de los procesos: Determinar los grupos de tareas
tcnicas que se deben realizar, el esfuerzo requerido para cada
una, su prioridad y los riesgos que implican para el proyecto.

Control de los procesos: Determinar los mtodos para controlar
las actividades tcnicas del proyecto y los procesos; la medicin
del progreso, revisin de los productos intermedios y ejecucin de
las acciones correctivas, cuando corresponda.
Evaluacin del producto: Determinar la calidad y cantidad de
los productos elaborados, a travs de evaluaciones, pruebas,
anlisis, inspecciones
Funciones de la Ingeniera de sistemas


INTRODUCCIN INGENIERA DEL SOFTWARE
INGENIERA DE SISTEMAS
Ingeniera de sistemas Gestin de proyectos Ingeniera del Soft.
Gestin de proyectos
Planificacin
Organizacin
Personal
Direccin
Control
Ingeniera del software
Diseo del software
Codificacin
Pruebas unitarias
Integracin del
subsistema de software
Ingeniera de sistemas
Definicin del problema
Anlisis de la solucin
Planificacin de procesos
Control de procesos
Evaluacin del producto

22/08/2013
16
INTRODUCCIN INGENIERA DEL SOFTWARE
INGENIERA DE SISTEMAS
Ingeniera de sistemas Ingeniera de sistemas de software
Ingeniera del software
Codificacin
Pruebas unitarias
Diseo detallado
del software
Pruebas del sub-
sistema de softw.
Diseo de la ar-
quitectura del sw
Pruebas del
sistema de sw
Anlisis de
requisitos del sw
Pruebas de
integracin del sw
Diseo del
sistema
Anlisis del
sistema
Pruebas de
integracin del sis
Pruebas del
sistema
Ingeniera de sistemas
Ingeniera de sistemas de
software
Ingeniera del
software
Ingeniera del
software



Diseo del
sistema
Actividad: Anlisis del
problema
Actividad: Descomposicin en
partes
Actividad: Seleccin de
estrategias para disear el
sistema
Actividad: Seleccin del
diseo detallado para cada
una de las partes
Resultado: Modelo del
dominio de la solucin

Bsqueda de soluciones;
eleccin de la solucin
ms adecuada
Implementacin

Actividad: Trasladar el
modelo del dominio de la
solucin en representaciones
ejecutables






Especificacin de la
solucin
Recoleccin y
anlisis de
requisitos
Actividad: Formulacin
del problema con el cliente
Resultado: Modelo del
dominio del problema

Formulacin y anlisis
del problema
MTODO DE INGENIERA EN INGENIERA
DEL SOFTWARE
22/08/2013
17
CAPAS
Proceso
Mtodo
Herramientas
Notacin

Metodologa
Define el marco de trabajo y
permite un desarrollo racional y
oportuno de la Ingeniera del
Software


CAPAS
Proceso
Mtodo
Herramientas
Notacin

Metodologa
Indica cmo construir
tcnicamente el software. Se
incluyen tcnicas de modelado y
otras tcnicas descriptivas


22/08/2013
18
CAPAS
Proceso
Mtodo
Herramientas
Notacin

Metodologa
Proporcionan el soporte
automtico o semiautomtico
para el proceso y para los
mtodos


CAPAS
Proceso
Mtodo
Herramientas
Notacin

Metodologa
Conjunto de reglas grficas o
textuales para la
representacin de un modelo


22/08/2013
19
CAPAS
Proceso
Mtodo
Herramientas
Notacin

Metodologa
Coleccin de mtodos para
resolver un tipo de problemas
Descompone el proceso de
desarrollo en actividades y
proporciona los mtodos
adecuados para llevar a cabo
dichas actividades


IMPORTANCIA DEL PROCESO EN EL
DESARROLLO DEL SOFTWARE
Un proceso software debe especificar
La secuencia de actividades a realizar por el equipo de
desarrollo
Flujo de actividades
Los productos que deben crearse
Resultados del trabajo (modelos, documentos, datos
informes...)
Qu y cundo
La asignacin de tareas a cada miembro del equipo y al
equipo
como un todo
Los criterios para controlar el proceso
Se establece el control de gestin de los proyectos software
Establecimiento de hitos
Las posibles heursticas

22/08/2013
20
CONCLUSIONES
INGENIERIA
DEL
SOFTWARE
INGENIERIA
DE SISTEMAS
SOFTWARE

S-ar putea să vă placă și