Ing software
El Proceso de Desarrollo de Software Ciclos de vida Métodos de desarrollo de software El Proceso Unificado de Desarrollo de Software
1
Ingeniería del Software
Fases principales del desarrollo de software
Captura de requerimientos:
cuál es el problema?
análisis:
qué debe hacerse? qué sistema debemos construir?
diseño:
cómo podemossolucionar el problema?
codificación:
trasladar el diseño a programas...
pruebas:
... que funcionen...
implantación:
... en un entorno productivo ...
mantenimiento:
... y que pueden estar sujetos a posibles modificaciones o mejoras posteriores!
2
Ingeniería del Software
Ciclo de vida en cascada
Análisis Diseño Codificación Pruebas Mantenimiento
3Ingeniería del Software
4
Ingeniería del Software
Ciclo de vida en cascada - A veces no se dispone de las especificaciones correctas ni completas al principio de la fase de desarrollo
Imprecisión del SI a desarrollar Se identifican nuevas necesidades! Falta de (buena) comunicación!
+ Se identifican y separan las distintas tareas + No se empieza una fase hasta terminar la anterior+ Se pospone la implementación
5
Ingeniería del Software
Otros ciclos de vida Hay otras formas de organizar el ciclo de vida del desarrollo del software. Cada una tiene sus ventajas e inconvenientes. Modelo con Prototipos: se construye un sistema muy elemental, se muestra al cliente, se clarifican los requisitos, se mejora ... “ extreme programming” , Modelo en Espiral: similar alanterior, pero con un ciclo de vida en cascada completo para cada prototipo. Modelo iterativo e incremental: construir un buen sistema pero de funcionalidad reducida, se entrega, se completan las funcionalidades extra.
6
Ingeniería del Software
IS como proceso formal Lo importante es formalizar el proceso. Un proyecto debe adoptar un patrón de desarrollo. Este patrón define las fasesdel ciclo de vida y sus entregas o productos. Este proceso da estructura al proyecto, ayudando a su gestión y proporcionando una guía a sus desarrolladores. También proporciona una forma natural de comparar proyectos (y problemas) y aprender de la experiencia.
7
Ingeniería del Software
Métodos de desarrollo de IS Se han propuesto varios métodos de IS. Un método deberíacontemplar:
un proceso de desarrollo un lenguaje de notación Una colección de herramientas CASE (Computer-Aided Software Engineering)
Un método debería ser suficientemente general para permitir su adaptación a un problema particular o una metodología de programación concreta.
8
Ingeniería del Software
IS Orientada a Objetos (SIOO) Se han propuesto distintos métodos SIOO. Los tresmétodos principales han sido:
el método Booch El método OMT (Object Modelling Technique) desarrollado por Rumbaugh et. al. el método Jacobson (OOSE)
Cada uno de ellos propone un proceso, una notación y sus herramientas de soporte.
9
Ingeniería del Software
El método OMT La fase de análisis elabora tres modelos distintos:
El modelo objeto:
cuáles son las clases yobjetos del sistema y cómo están relacionados?
El modelo dinámico:
cómo interaccionan los objetos entre ellos?
El modelo funcional:
cómo fluyen los datos a través del sistema, y qué restricciones debe satisfacer el sistema?
10
Ingeniería del Software
El método Booch Se da énfasis a la evolución: el resultado de cada fase es refinada en la siguiente fase. Los documentosBooch incluyen:
Diagramas de clases y objetos Diagramas de transición entre estados Diagramas de interacción
Los programas Orientados a Objetos encajan bien con un desarrollo evolutivo.
Los objetos del mundo real mencionados en los requerimientos evolucionan hasta convertirse en objetos en la implementación. A medida que avanza el desarrollo se detallan (completan) mejor los...
Regístrate para leer el documento completo.