Sesión III: Modelos Prescriptivos
de Proceso
Ing. Luis Alfredo Fernández Vizcarra
lfernandez@speedy.com.pe
lfernandez@coes...
Vistazo rápido: Modelos Prescriptivos
¿Qué es?
•Un conjunto distinto de actividades,
acciones, tareas, fundamentos y
produ...
Modelos Prescriptivos
Los Modelos Prescriptivos de Proceso definen un conjunto distinto de
actividades, acciones, tareas, ...
Modelo en Cascada
Comunicación
•Inicio del proyecto
•Recopilación de requisitos
Planeación
•Estimación
•Itinerario
•Seguim...
Modelos de Proceso Incrementales
MODELO INCREMENTAL
CARACTERÍSTICAS
Combina elementos
del modelo en
cascada aplicado en
fo...
Modelo incremental
Tiempo de calendario de proyecto
Funcionalidadycaracterísticasdelsoftware
Comunicación
Planeación
Model...
Modelo DRA (Desarrollo Rápido de Aplicaciones)
•Es una adaptación a “alta velocidad” del modelo en
cascada en el que se lo...
Modelo DRA
Modelado
Modelado del negocio
Modelado de los datos
Modelado del proceso
Construcción
Reutilización de
componen...
Modelos de Proceso Evolutivos
Los modelos evolutivos son iterativos, los caracteriza la forma en que
permiten que los inge...
Construcción de Prototipos
Plan rápido
Modelado
diseño
rápido
Construcción
del prototipo
Desarrollo,
entrega y
retroalimen...
Modelo en Espiral
DESVENTAJAS
- Es difícil convencer a los clientes de
que el enfoque evolutivo es
controlable.
- Requiere...
Modelo Espiral
Comunicación
Planeación
Estimación
Itinerario
Análisis de riesgos
Despliegue
Entrega
Retroalimentación
Cons...
Modelo Desarrollo Concurrente
CARACTERÍSTICAS
Se representa en forma
esquemática como una
serie de actividades del
marco d...
Modelo Desarrollo Concurrente
Ninguno
Bajo desarrollo
En espera de
cambios En
modificación
En revisión
En línea de
base
Re...
Modelos Especializados de Proceso
Se aplican cuando se ha elegido un enfoque de ingeniería del software definido
de una ma...
Modelos Especializados de Proceso
2. MODELO
DE MÉTODO
FORMALES
CARACTERÍSTICAS
Definen un conjunto de actividades basadas ...
Modelos Especializados de Proceso
CARACTERÍSTICAS
Conocido también como Programación Orientada a
Aspectos (POA).
Incluye l...
El Proceso Unificado
CARACTERÍSTICAS
Es un ciclo de vida incremental e iterativo
propuesto por los creadores de UML (Unifi...
Fase de Producción
Se realiza el monitoreo continuo y el soporte.
Fase de Transición
Transfiere el software del desarrolla...
El Proceso Unificado
Elaboración
Inicio
Construcción
Transición
Incremento del
software
Lanzamiento
Producción
Productos de trabajo del proceso unificado
Fasedeconstrucción
Fasedeelaboración
Fasedetransición
Fasedeinicio
Documento de...
Bruegge, B., Dutoit, A.H., Ingeniería del Software Orientado a Objetos, cap. 1
Jacobson, I., Booch, G., Rumbaugh, J., El P...
Próxima SlideShare
Cargando en…5
×

3. modelos prescriptivos de proceso

750 visualizaciones

Publicado el

0 comentarios
0 recomendaciones
Estadísticas
Notas
  • Sé el primero en comentar

  • Sé el primero en recomendar esto

Sin descargas
Visualizaciones
Visualizaciones totales
750
En SlideShare
0
De insertados
0
Número de insertados
12
Acciones
Compartido
0
Descargas
24
Comentarios
0
Recomendaciones
0
Insertados 0
No insertados

No hay notas en la diapositiva.

3. modelos prescriptivos de proceso

  1. 1. Sesión III: Modelos Prescriptivos de Proceso Ing. Luis Alfredo Fernández Vizcarra lfernandez@speedy.com.pe lfernandez@coesi.com.pe
  2. 2. Vistazo rápido: Modelos Prescriptivos ¿Qué es? •Un conjunto distinto de actividades, acciones, tareas, fundamentos y productos de trabajo que se requieren para desarrollar software de alta calidad. •Proporcionan una guía útil para el trabajo de la ingeniería del software. ¿Quién lo hace? •Los ingenieros de software y sus gerentes adaptan un modelo prescriptivo de proceso a sus necesidades y después lo siguen. •La gente que ha solicitado el software participa durante la ejecución del modelo de software. ¿Por qué es importante? •Proporciona estabilidad, control y organización a una actividad que si no controla puede volverse caótica. ¿Cuáles son los pasos? •El proceso conduce a un equipo de software a través de un conjunto de actividades del marco de trabajo que se organizan en un flujo de proceso, el cual puede ser lineal, incremental o evolutiva. ¿Cuál es el producto obtenido? •Desde el punto de vista de un ingeniero de software: programas, documentos y datos que se producen como consecuencia de las actividades y tareas que define el proceso. ¿Cómo puedo estar seguro de que lo he hecho correctamente? •Los mejores indicadores de la eficacia del proceso que se utiliza son la calidad, el tiempo de entrega y la viabilidad a largo plazo del producto que se construye.
  3. 3. Modelos Prescriptivos Los Modelos Prescriptivos de Proceso definen un conjunto distinto de actividades, acciones, tareas, flujo de trabajo, fundamentos y productos de trabajo que se requieren para software de alta calidad. MODELO EN CASCADA CARACTERÍSTICAS DESVENTAJAS  También se le conoce como Ciclo de Vida Clásico.  Enfoque sistemático secuencial hacia el desarrollo del software.  Es el paradigma más antiguo para la ingeniería de Software.  Es muy raro que los proyectos reales sigan el flujo secuencial que propone el modelo.  Con frecuencia es difícil para el cliente establecer todos los requisitos de manera explícita.  El cliente debe tener paciencia.  La naturaleza lineal del modelo conduce a “estados de bloqueo” en los cuales algunos miembros del equipo del proyecto deben esperar a otros para terminar tareas independientes.
  4. 4. Modelo en Cascada Comunicación •Inicio del proyecto •Recopilación de requisitos Planeación •Estimación •Itinerario •Seguimiento Modelado •Análisis •Diseño Construcción •Código •Prueba Despliegue •Entrega •Soporte •Retroalimentación
  5. 5. Modelos de Proceso Incrementales MODELO INCREMENTAL CARACTERÍSTICAS Combina elementos del modelo en cascada aplicado en forma iterativa. Se enfoca en la entrega de un producto operacional con cada incremento. Entrega una serie de lanzamientos llamados incrementos que proporcionan en forma progresiva más funcionalidad para los clientes a medida que se entrega cada uno de los incrementos.
  6. 6. Modelo incremental Tiempo de calendario de proyecto Funcionalidadycaracterísticasdelsoftware Comunicación Planeación Modelado (análisis, diseño) Construcción (código, prueba) Despliegue (entrega, retroalimentación) Entrega del primer incremento Entrega del segundo incremento Entrega del n-ésimo incremento Incremento # 1 Incremento # 2 Incremento # n
  7. 7. Modelo DRA (Desarrollo Rápido de Aplicaciones) •Es una adaptación a “alta velocidad” del modelo en cascada en el que se logra el desarrollo rápido mediante un enfoque de construcción basado en componentes. •Si se entienden bien los requisitos y se limita el ámbito del proyecto, el proceso DRA permite crear un sistema completamente funcional en un periodo muy corto. CARACTERÍSTICAS •Necesita muchos Recursos Humanos •Desarrolladores y los clientes deben involucrarse con las actividades del desarrollo del sistema •La construcción de componentes es complicada •Si se convierte interfaces en componentes el DRA no funcionará •Es inapropiado con riesgos técnicos muy altos DESVENTAJAS
  8. 8. Modelo DRA Modelado Modelado del negocio Modelado de los datos Modelado del proceso Construcción Reutilización de componentes Generación de código automático Pruebas Comunicación Planeación 60 - 90 días Modelado Modelado del negocio Modelado de los datos Modelado del proceso Construcción Reutilización de componentes Generación de código automático Pruebas Modelado Modelado del negocio Modelado de los datos Modelado del proceso Construcción Reutilización de componentes Generación de código automático Pruebas Despliegue Integración Entrega Retroalimentación Equipo #1 Equipo #2 Equipo #n
  9. 9. Modelos de Proceso Evolutivos Los modelos evolutivos son iterativos, los caracteriza la forma en que permiten que los ingenieros de software desarrollen versiones cada vez completas del software. Su propósito es desarrollar software de alta calidad de una manera iterativa o incremental. CONSTRUCCION DE PROTOTIPOS CARACTERISTICAS DESVENTAJAS Se puede utilizar como un modelo de proceso independiente o como una técnica susceptible de implementarse dentro de otros modelos.  Ayuda al ingeniero de sistemas y al cliente a entender de mejor manera cual será el resultado de la construcción cuando los requisitos estén satisfechos.  El cliente no entiende lo que es un prototipo y el sistema final  El desarrollador puede adaptarse al lenguaje con el que elaboró el prototipo  La calidad del software se reduce.
  10. 10. Construcción de Prototipos Plan rápido Modelado diseño rápido Construcción del prototipo Desarrollo, entrega y retroalimentación Comunicación
  11. 11. Modelo en Espiral DESVENTAJAS - Es difícil convencer a los clientes de que el enfoque evolutivo es controlable. - Requiere una habilidad considerable para evaluar el riesgo. - Si un riesgo importante no se descubre y administra, sin duda surgirán problemas. CARACTERÍSTICAS - Conjuga la naturaleza iterativa de la construcción de prototipos con los aspectos controlados y sistemáticos del modelo cascada. - Proporciona el material para el desarrollo rápido de versiones incrementales del software. - Se puede adaptar y aplicar a través del ciclo de vida completo de una aplicación, desde el desarrollo del concepto hasta el mantenimiento. - Es un enfoque realista para el desarrollo de software y de sistemas a gran escala. - Se considera el riesgo en cada revolución - Se revisa los costos - Se adapta a lo largo de la vida del software
  12. 12. Modelo Espiral Comunicación Planeación Estimación Itinerario Análisis de riesgos Despliegue Entrega Retroalimentación Construcción Código Prueba Modelado Análisis Diseño Inicio
  13. 13. Modelo Desarrollo Concurrente CARACTERÍSTICAS Se representa en forma esquemática como una serie de actividades del marco de trabajo, acciones y tareas de la ingeniería del software y sus estados asociados. Es más apropiado para proyectos donde están implicados diferentes equipos de ingeniería. Todas las actividades existen de forma concurrente, pero se encuentra en diferentes estados. Proporciona una visión exacta del estado actual del proyecto. Los eventos generados en un punto de la red del proceso disparan transiciones entre los estados.
  14. 14. Modelo Desarrollo Concurrente Ninguno Bajo desarrollo En espera de cambios En modificación En revisión En línea de base Realizado Representa el estado de una actividad o tarea de la ingeniería de software Actividad de modelado
  15. 15. Modelos Especializados de Proceso Se aplican cuando se ha elegido un enfoque de ingeniería del software definido de una manera muy estrecha. 1.DESARROLLOBASADOEN COMPONENTES CARACTERÍSTICAS - Incorpora muchas de las características del modelo espiral. - Destaca la reutilización y ensambladura de componentes. - Se pueden emplear cuando el software está en construcción. - Proporcionan funcionalidad dirigida con interfaces bien definidas que permiten su integración en el software. PASOS - Investigar productos basados en componentes y evaluarlos - Integración de componentes - Diseñar arquitectura de software - Integrar los componentes a la arquitectura - Pruebas
  16. 16. Modelos Especializados de Proceso 2. MODELO DE MÉTODO FORMALES CARACTERÍSTICAS Definen un conjunto de actividades basadas en una especificación matemática Se verifica mediante notación matemática rigurosa. Una variación de este modelo es el llamado “Ingeniería del software de sala limpia” La ambigüedad, el estado incompleto y la inconsistencia se descubren y corrigen con mayor facilidad. DESVENTAJAS • Es muy caro y consume mucho tiempo • Se requiere una capacitación detallada al personal • Dificulta la comunicación con los clientes
  17. 17. Modelos Especializados de Proceso CARACTERÍSTICAS Conocido también como Programación Orientada a Aspectos (POA). Incluye los intereses generales que cubren la arquitectura total del sistema. Proporciona un proceso y enfoque metodológico para definir, especificar, diseñar y construir aspectos (mecanismos más allá de subrutinas).
  18. 18. El Proceso Unificado CARACTERÍSTICAS Es un ciclo de vida incremental e iterativo propuesto por los creadores de UML (Unified Modeling Language). Dirigido por los casos de uso Centrado en la arquitectura Iterativo e incremental Distingue 6 fases: inicio, elaboración, construcción, transición, producción.
  19. 19. Fase de Producción Se realiza el monitoreo continuo y el soporte. Fase de Transición Transfiere el software del desarrollador al usuario final para realizar las pruebas beta y obtener la aceptación. Fase de Construcción Refina y después traduce el modelo de diseño en componentes de software implementados. Fase de elaboración Abarca la comunicación con el cliente y las actividades de modelado con un enfoque en la creación de modelos de análisis y diseño, con énfasis en las definiciones de clase y representaciones arquitectónicas. Fase Inicio Abarca la comunicación con el cliente y las actividades de planeación y destaca el desarrollo y el refinamiento de casos de uso como un modelo primario. Fases del Proceso Unificado
  20. 20. El Proceso Unificado Elaboración Inicio Construcción Transición Incremento del software Lanzamiento Producción
  21. 21. Productos de trabajo del proceso unificado Fasedeconstrucción Fasedeelaboración Fasedetransición Fasedeinicio Documento de la visión Modelo inicial de caso de uso Glosario inicial del proyecto Caso inicial de negocio Evaluación inicial del riesgo Plan de Proyecto, fases e iteraciones Modelo del negocio si es necesario Uno o más prototipos Modelo de casos de uso Requisitos suplementarios, se incluyen los no funcionales Modelo de análisis Descripción de la arquitectura del software Prototipo arquitectónico ejecutable Modelo de diseño preliminar Lista revisada de riesgo Plan de proyecto que incluye: • Plan de iteración • Flujos de trabajo adoptados • Fundamentos • Productos técnicos del trabajo • Manual preliminar del usuario Modelo del diseño Componentes del software Incremento integrado del software Plan y procedimiento de pruebas Casos de prueba Documentación del soporte Manuales del usuario Manuales de instalación Descripción del incremento actual Incremento de software integrado Reportes de las pruebas beta Retroaliment ación general del usuario
  22. 22. Bruegge, B., Dutoit, A.H., Ingeniería del Software Orientado a Objetos, cap. 1 Jacobson, I., Booch, G., Rumbaugh, J., El Proceso Unificado de Desarrollo de Software, cap. 1 Pressman, R.S., Ingeniería del Software. Un enfoque práctico, cap. 1 y 2 Sommerville, I., Ingeniería de Software, cap. 1, 2 y 3 Referencias

×