Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Ciclo de Vida Del Software
Ciclo de Vida Del Software
Facultad de Informtica
contenidos
Modelo de cdigo y adaptacin Paradigmas de ingeniera del software Ciclo de vida clsico o en cascada Desarrollo rpido de aplicaciones (DRA) La tcnica del prototipado Construccin de prototipos CASE Aproximacin basada en transformaciones Aproximacin incremental Aproximacin evolutiva Ciclo de vida en espiral Variante del modelo en espiral Otros modelos de procesos de desarrollo Criterios para evaluar un paradigma Referencias bibliogrficas
Ciclo de vida del software 3
Primero se codificaba y luego se pensaba en los requisitos, diseo, pruebas y mantenimiento. Desventajas
Despus de muchas adaptaciones, el cdigo estaba pobremente estructurado de manera que las sucesivas adaptaciones resultaban muy caras. Era necesario un diseo previo a la codificacin. A pesar de existir un buen diseo, poda no corresponderse con los requisitos del usuario. Era necesario un anlisis previo al diseo. El cdigo era difcil de adaptar debido a la pobre preparacin para las pruebas y modificaciones. Era necesario planificar estas tareas a priori.
RU RS DP DD TR
Fases RU: Requerimiento del usuario RS: Requerimiento del software DP: Diseo preliminar DD: Diseo detallado y produccin TR: Transferencia OM: Operacin y mantenimiento
OM
Ventajas
Fcil adaptacin de mtodos (estructurados, orientados a objetos...) Constituye la base de los dems paradigmas. Es el ms ampliamente utilizado.
10
construccin de prototipos
comienzo parada
RRR
PI
DR
Fases RRR: Recoleccin y refinamiento de requisitos DR: Diseo rpido CP: Construccin del prototipo EPC: Evaluacin del prototipo por el cliente RP: Refinamiento del prototipo PI: Producto de ingeniera
RP
CP
EPC
11
Desventajas
Usar el prototipo como 1 versin del software (Brooks, 1975): por presin del cliente al ver el prototipo funcionando o por comodidad de los desarrolladores.
Justificacin
No se ha considerado aspectos de calidad y mantenimiento La tecnologa seleccionada puede no ser la apropiada
12
CASE
Acrnimo de Computer Aided Software Engineering (Ingeniera del software asistida por ordenador). Tecnologa software que proporciona la automatizacin de las tareas de desarrollo, mantenimiento y direccin del software. El CASE proporciona un conjunto de herramientas bien integradas que ahorran trabajo, enlazando y automatizando todas las fases del ciclo de vida del software. Ejemplos de CASE Ejemplos de CASE
Herramientas de diagramacin Herramientas de diagramacin Diccionario de datos Diccionario de datos Herramientas de validacin de especificaciones Herramientas de validacin de especificaciones Generadores de cdigo Generadores de cdigo Generadores de documentacin Generadores de documentacin
Ciclo de vida del software 13
E DL DF C
14
Desventajas
Requieren especificaciones iniciales muy detalladas. Restringen el mbito de la aplicacin. Requieren una maduracin previa del proceso de desarrollo.
15
aproximacin incremental
Las fases de diseo detallado, transferencia, operacin y mantenimiento se dividen en unidades ms manejables. Se desarrollan mltiples versiones, con mayor funcionalidad y capacidad que las anteriores: versini=versini-1 + funcionalidad y capacidad
RU RS DP DD1 TR1 OM1 Fases RU: Requerimiento del usuario RS: Requerimiento del software DP: Diseo preliminar DD: Diseo detallado y produccin TR: Transferencia OM: Operacin y mantenimiento
17
Desventajas
Se requieren pruebas de regresin. Aumento del coste del software debido a las pruebas.
18
aproximacin evolutiva
Desarrollo planificado de mltiples versiones. Cada versin incorpora la experiencia de las anteriores. Se deben reconocer las prioridades del usuario. Todos los requerimientos no han de ser implementados en cada ciclo.
DES 1 OM 1
DES 2 OM 2
Fases DES: RU+RS+DP+DD+TR RU: Requerimiento del usuario RS: Requerimiento del software DP: Diseo preliminar DD: Diseo detallado y produccin TR: Transferencia OM: Operacin y mantenimiento
19
20
Desventajas
Si los requisitos estn muy incompletos para empezar. Las nuevas versiones son ms caras. Soluciones temporales empotradas en el sistema. Impaciencia de los usuarios. En cada ciclo, declaracin de requisitos completa y diseo adaptable para evitar riesgos.
21
22
23
24
25
referencias bibliogrficas
Amescua, A. Ingeniera del software de gestin. Paraninfo, 1995. Fairley, R. Ingeniera del software. McGraw-Hill, 1987. Mazza, C. Software engineering standars. Prentice Hall, 1994. McClure, C. CASE. La automatizacin del software. Ra-Ma, 1992. Pressman, R. Ingeniera del software: un enfoque prctico. McGrawHill, 1993.
27