Está en la página 1de 0

02/08/2012

1
El Proceso
Captulo 2
Roger Pressman,
5
a
Edicin
El Proceso Proceso Proceso Proceso de Desarrollo de
Software
Qu es?
Marco de trabajo de tareas a realizar para
desarrollar Software de alta calidad.
Es sinnimo de Ingeniera de Software?
Define un enfoque para desarrollar software en
forma ingenieril, pero la IS comprende, adems,
de Mtodos y Herramientas.
02/08/2012
2
2.1 Ingeniera de Software una tecnologa
estratificada
Definiciones de Ingeniera de Software
(Fritz Bauer, 1969). Es el establecimiento y uso de
principios robustos de la ingeniera a fin de
obtener econmicamente software que sea fiable
y funcione eficientemente sobre mquinas reales.
(IEEE, 1993). Ingeniera de Software (IS) es:
1) La aplicacin de un enfoque sistemtico, disciplinado
y cuantificable hacia el desarrollo, operacin y
mantenimiento del software; es decir, la aplicacin de la
IS.
2) El estudio de los enfoques como en 1.
2.1.1 Proceso, mtodos y herramientas
Herra-
mientas
Mtodos
Proceso
Enfoque de Calidad
Compromiso de
la organizacin
Mantiene
unidas
las capas
Indican cmo
construir el
software
Proporcionan
un enfoque
automtico o
semi -automtico
02/08/2012
3
2.1.2 Una visin general de la IS
Independientemente de la entidad a la que se
va a aplicar la ingeniera, se deben resolver
las siguientes preguntas:
Cul es el problema a resolver?
Cules son las caractersticas de la entidad que
se utilizan para resolver el problema?
Cmo se realiza la entidad (y la solucin)?
Cmo se construir la entidad?
Qu enfoque se va a utilizar para evitar los
errores actuales?
Cmo se mejorar a la larga la entidad?
2.1.2 Una visin general de la IS
La entidad que nos interesa es el
software.
El trabajo a realizar en la IS se puede
dividir en tres fases genricas.
Definicin. Centrada en el qu.
Desarrollo. Centrada en el cmo.
Mantenimiento. Se centra en el cambio:
Correccin, adaptacin, mejora y prevencin.
02/08/2012
4
2.1.2 Una visin general de la IS
Para realizar bien las fases genricas existen
una serie de actividades protectoras, entre
ellas estn:
Seguimiento y control del proyecto
Revisiones Tcnicas Formales
Garanta de Calidad del Software
Gestin de la Configuracin del Software
Preparacin y produccin de documentos
Gestin de reutilizacin
Mediciones
Gestin de riesgos
2.2 El Proceso de Software
Marco del Trabajo Comn
Actividades de Proteccin
Actividades del Marco de Trabajo
Conjunto de Tareas Conjunto de Tareas
Tareas
Hitos, Entregas
Puntos SQA
02/08/2012
5
2.2 El Proceso de Software
El Software Engineering Institute (SEI)
ha desarrollado un modelo completo
que se basa en un conjunto de
funciones de IS que deberan estar
presentes conforme las organizaciones
adquieren madurez en sus procesos.
Existen 5 niveles de madurez.
2.2 El Proceso de Software
Los 5 niveles de madurez del CMM:
Nivel 1: Inicial. Pocos procesos el xito depende
del esfuerzo personal.
Nivel 2: Repetible. Se establecen procesos de
gestin.
Nivel 3: Definido. Se usan estndares y
documentacin.
Nivel 4: Gestionado. Se recopilan medidas.
Nivel 5: Optimizacin. Se posibilita la mejora.
02/08/2012
6
2.2 El Proceso de Software
SEI ha definido ACP (reas Clave de
Proceso) para cada nivel, mismas se
identifican con las caractersticas siguientes:
Objetivos
Compromisos
Capacidades.
Actividades.
Mtodos de supervisar la implantacin.
Mtodos para verificar la implantacin.
2.2 El Proceso de Software
Las ACP por nivel son:
Nivel 2: Repetible
Gestin de la configuracin.
SQA
Gestin de subcontratacin.
Seguimiento y supervisin del proyecto.
Planificacin del proyecto.
Gestin de requisitos
Nivel 3: Definido.
Revisiones peridicas
Coordinacin entre grupos
Ingeniera de Productos de Software
Gestin de integracin del software
Programa de formacin
Definicin del proceso de la aorganizacin
Enfoque del proceso de la organizacin
02/08/2012
7
2.2 El Proceso de Software
Las ACP por nivel son:
Nivel 4: Gestionado.
Gestin de calidad de software
Gestin cuantitativa del proceso
Nivel 5: Optimizacin.
Gestin de cambios del proceso
Gestin de cambios de tecnologa
Prevencin de defectos
2.3 Modelos de Proceso del
Software
Se debe escoger una estrategia de
desarrollo, llamada:
modelo de proceso o
paradigma de IS
Se selecciona de acuerdo a:
naturaleza del proyecto y aplicacin
mtodos y herramientas
controles y entregas requeridas
02/08/2012
8
Fases de un bucle de resolucin de
problemas (modelo del caos)
Definicin
de
Problemas
Desarrollo
Tcnico
Integracin
de
Soluciones
Estado
Actual
Todo desarrollo de
software se puede
caracterizar con 4
etapas, como en la
figura, que buscan:
entender el estado actual
de sucesos
identificar el problema a
resolver
aplicar tecnologa para
solucionarlo
presentar resultados
integrados
Fases dentro de las fases del bucle
de resolucin de problemas
Estado
Actual
Definicin
de
Problemas
Desarrollo
Tcnico
Desarrollo
Tcnico
de Soluciones
Integracin
de Soluciones
Estado
Actual
Estado
Actual
Definicin
de
Problemas
Desarrollo
Tcnico
Desarrollo
Tcnico
de Soluciones
Integracin
de Soluciones
Estado
Actual
Estado
Actual
Definicin
de
Problemas
Desarrollo
Tcnico
Desarrollo
Tcnico
de Soluciones
Integracin
de Soluciones
Estado
Actual
Estado
Actual
fractal?
02/08/2012
9
2.4 Modelo Lineal Secuencial (1)
Ciclo de vida clsico, modelo en
cascada
ms antiguo, ms usado
Enfoque sistemtico secuencial
Anlisis
Diseo
Codif.
Prueba
Mant.
Ing. Sist.
2.4 Modelo Lineal Secuencial (2)
Crticas:
Proyectos reales raras veces se ajustan.
Raras veces cliente expone todos los req.
de entrada.
Producto operativo al final => Paciencia
(cliente) alta.
Consejo:
Usar cuando todos los requerimientos que
han sido establecidos claramente de
entrada.
02/08/2012
10
2.5 Modelo de Construccin de Prototipos
(1)
No estn claros los reqs. de entrada
Iterativo. Hasta cuando se itera?
Working prototype, desechar y empezar con
desarrollo de sistema.
Escuchar al
cliente
Validar
prototipo
Construir
prototipo
2.5 Modelo de Construccin de Prototipos
(2)
Crticas:
Cliente cree que es el sistema.
Peligro de familiarizacin con malas elecciones
iniciales (quick and dirty).
Consejo:
Usar cuando inicialmente no estn claros los
requerimientos.
Definir claramente de entrada las reglas de juego
con el cliente.
No ceder a presin del cliente.
02/08/2012
11
2.6 Modelo de Desarrollo Rpido de
Aplicaciones (DRA) (1)
Lineal secuencial con ciclo
extremadamente corto.
Candidatos: sistemas que se pueden
modularizar => equipos de desarrollo
paralelos.
Basado en el uso de componentes y
T4G.
Equipo # 1
Modelo de
Gestin
Modelo de
Datos
Modelo de
Proceso
Generacin
de Aplicacin
Prueba y
Entrega
Equipo # 2
Modelo de
Gestin
Modelo de
Datos
Modelo de
Proceso
Generacin
de Aplic.
Prueba y
Entrega
Equipo # 3
Modelo de
Gestin
Modelo de
Datos
Modelo de
Proceso
Generacin
de Aplic.
Prueba y
Entrega
Tiempo
Modelo DRA
<-------------------------------60-90 das--------------------->
02/08/2012
12
2.6 Modelo de Desarrollo Rpido de
Aplicaciones (DRA) (3)
El enfoque DRA comprende las
siguientes fases:
Modelo de Gestin:
Qu informacin conduce?
Qu informacin se genera?
Quin la genera?
A dnde va?
2.6 Modelo de Desarrollo Rpido de
Aplicaciones (DRA) (4) ) (4) ) (4) ) (4)
Modelo de Datos:
Modelo de Procesos:
Identificacin de Objetos y relaciones
Descripciones de procesos de negocio para
ABM de objetos de MD
02/08/2012
13
2.6 Modelo de Desarrollo Rpido de 2.6 Modelo de Desarrollo Rpido de 2.6 Modelo de Desarrollo Rpido de 2.6 Modelo de Desarrollo Rpido de
Aplicaciones (DRA Aplicaciones (DRA Aplicaciones (DRA Aplicaciones (DRA) (5)
Generacin de Aplicaciones:
Pruebas y Entregas:
T4G + Reusabilidad de Componentes
Prueba de Componentes uevos e interfaces.
2.6 Modelo de Desarrollo Rpido de
Aplicaciones (DRA) (6)
Crticas:
Proyectos grandes => gran nmero de
personas.
Alto compromiso en tiempo.
No apto para todo tipo de sistema (baja
reutilizacin de componentes).
Desaconsejable cuando existen riesgos
tecnolgicos altos o alta interoperatividad
con programas ya existentes.
02/08/2012
14
2.7 Modelos Evolutivos (1)
Se adaptan ms fcilmente a los
cambios introducidos a lo largo del
desarrollo.
Iterativos
En cada iteracin se obtienen versiones
ms completas del Software.
2.7 Modelos Evolutivos (2)
Modelos Evolutivos:
Modelo Incremental
Modelo en Espiral
Modelo de Desarrollo Basado en
Componentes
Modelo WINWIN
Modelo de Desarrollo Concurrente
02/08/2012
15
2.7.1 Modelo Incremental (1)
Iteracin de Lineal Secuencial.
Cada iteracin devuelve un
Incremento o versin operativa.
til cuando no se est seguro de
cumplir con plazos de tiempo o se tiene
una fecha imposible de cambiar.
2.7.1 Modelo Incremental (2)
Anlisis Diseo
Prueba Codif.
Entrega 1er
Incremento
Incremento 1
Anlisis Diseo
Prueba Codif.
Entrega 2do
Incremento
Inc 2
Anlisis Diseo
Prueba Codif.
Entrega 3er
Incremento
Inc 3
Tiempo
Ingeniera de Ingeniera de Ingeniera de Ingeniera de
Sistemas/Informacin Sistemas/Informacin Sistemas/Informacin Sistemas/Informacin
02/08/2012
16
2.7.2 Modelo en Espiral (1)
til para proyectos grandes.
Permite usar el prototipado en todas
las etapas de la evolucin para reducir
el riesgo.
Mantiene el enfoque sistemtico de
los pasos sugeridos por el lineal
secuencial, pero lo incorpora dentro
de un marco iterativo ms real.
2.7.2 Modelo en Espiral (2)
Crticas:
Difcil de convencer a los clientes de que
es controlable.
Requiere mucha habilidad para el anlisis
de riesgos y de esta habilidad depende su
xito.
No ha sido utilizado tanto como el lineal
secuencial o el de prototipos.
02/08/2012
17
2.7.2 Modelo en Espiral (3)
2.7.2 Modelo en Espiral (4)
Comunicacin con el cliente:
Tarea requerida para la comunicacin
entre el desarrollador y el cliente.
Planificacin:
Definicin de recursos, tiempos y otra
informacin relacionada con el proyecto.
02/08/2012
18
2.7.2 Modelo en Espiral (5)
Anlisis de Riesgos:
Tareas para evaluar riesgos tcnicos y de
gestin
Ingeniera:
Tarea para crear una o ms
representaciones de la aplicacin
2.7.2 Modelo en Espiral (6)
Construccin y Accin:
Tareas requeridas para construir, probar,
instalar y proporcionar soporte al usuario
(Ej. Documentacin y prctica).
Evaluacin del Cliente:
Tarea para obtener la reaccin del cliente
segn la evaluacin de la representacin
del software.
02/08/2012
19
2.7.3 El Modelo en Espiral WINWIN
(Victoria&Victoria) (1)
Su objetivo es el mostrar los requisitos
al cliente.
El desarrollador simplemente pregunta
al cliente lo que se necesita.
El cliente por su parte proporciona
detalles suficientes para continuar.
2.7.3 El Modelo en Espiral WINWIN
Victoria&Victoria (2)
2) Identificar las 2) Identificar las 2) Identificar las 2) Identificar las
condiciones de condiciones de condiciones de condiciones de
victoria de los victoria de los victoria de los victoria de los
directivos directivos directivos directivos
3) Reunir las condiciones de 3) Reunir las condiciones de 3) Reunir las condiciones de 3) Reunir las condiciones de
victoria victoria victoria victoria
3b) Establecer los objetivos, 3b) Establecer los objetivos, 3b) Establecer los objetivos, 3b) Establecer los objetivos,
restricciones y alternativas restricciones y alternativas restricciones y alternativas restricciones y alternativas
del siguiente nivel del siguiente nivel del siguiente nivel del siguiente nivel
4) Evaluar las alternativas 4) Evaluar las alternativas 4) Evaluar las alternativas 4) Evaluar las alternativas
del producto y del proceso del producto y del proceso del producto y del proceso del producto y del proceso
y resolucin de riesgos y resolucin de riesgos y resolucin de riesgos y resolucin de riesgos
5) Definir el siguiente nivel del 5) Definir el siguiente nivel del 5) Definir el siguiente nivel del 5) Definir el siguiente nivel del
producto y del proceso, producto y del proceso, producto y del proceso, producto y del proceso,
incluyendo particiones incluyendo particiones incluyendo particiones incluyendo particiones
6) Validar las definiciones 6) Validar las definiciones 6) Validar las definiciones 6) Validar las definiciones
del producto y del proceso del producto y del proceso del producto y del proceso del producto y del proceso
7) Revisin y 7) Revisin y 7) Revisin y 7) Revisin y
comentarios comentarios comentarios comentarios
1) Identificar el siguiente 1) Identificar el siguiente 1) Identificar el siguiente 1) Identificar el siguiente
nivel para los directivos nivel para los directivos nivel para los directivos nivel para los directivos

También podría gustarte