Please enable JavaScript.
Coggle requires JavaScript to display documents.
PROCESO DE DESARRALLO - Coggle Diagram
PROCESO DE DESARRALLO
-
MODELO EN CASCADA
El primer modelo publicado sobre el proceso de desarrollo de software se derivo a partir de procesos mas generales de ingenieria de sistenmas (ROYSE 1970). Este modelo se ilustra en la figura 2.1
ANALISIS Y DEFINICIÓN DE REQUERIMIENTOS: Los servicios, las restricciones y las metas del sistema se establecen mediante consulta a los usuarios del sistema. Luego se definen con detalle y sirven como una especificación del sistema.
DISEÑO DEL SISTEMA Y DEL SOFTWARE: El proceso del diseño de sistemas asigna los requerimientos, para hardware o de software, al establecer una arquitectura de sistema global. El diseño de software implica identificar y descubrir las abstracciones fundamentales del sistema de software y sus relaciones.
IMPLEMENTACION Y PRUEBA DE UNIDAD: Durante esta etapa, el diseño de software se realiza como un conjunto de programas o unidades de programa. La prueba de unidad consiste en verificar que cada unidad cumpla con sus especificaciones.
INTEGRACION Y PRUEBA DEL SISTEMA: Las unidades del programa o los programas individuales se integran y prueban como un sistema completo para asegurarse de que se cumplan los requerimientos de software. Después de probarlo, se libera el sistema de software al cliente.
OPERACIÓN Y MANTENIMIENTO: Por lo general (aunque no necesariamente ), esta es la fase mas larga del ciclo de vida, donde el sistema se instala y se pone en practica. El mantenimiento incluye corregir los errores que no se detectaron en etapas anteriores del ciclo de vida, mejorar la implementación de las unidades del sistema e incrementar los servicios del sistema conforme se descubren nuevos requerimientos.
DESARROLLO INCREMENTAL
El desarrollo de software incremental, que es una parte fundamental de los enfoques agiles, es mejor que un enfoque en cascada para la mayoría de sistemas empresariales, comercio electrónico y personales.
Comparado con el modelo en cascada, el desarrollo incremental tiene tres beneficios importantes:
Se reduce el coste de adaptar los requerimientos cambiables del cliente. La cantidad de análisis y la documentación que tiene que reelaborarse son mucho menores de lo requerido con el modelo en cascada.
El desarrollo incremental ahora es en cierta forma el enfoque mas común para el desarrollo de sistemas de aplicación. Este enfoque puede estar basado en un plan, ser ágil, o mas usualmente, una mezcla de dichos enfoques.
La estructura del sistema tiende a degradarse conforme se tienen nuevos incrementos. A menos que se gaste tiempo y dinero en la refactorización para mejorar el software, el cambio regular tiende a corromper su estructura.
Los problemas del desarrollo incremental se tornan particularmente agudos para sistemas grandes, complejos y de larga duración, donde diversos equipos desarrollan diferentes partes del sistema.
-
Se puede desarrollar un sistema incremental y exponerlo a los clientes para su comentario, sin realmente entregarlo e implementarlo en el entorno del cliente. La entrega y la implementación incrementales significan que el software se usa en proceso operaciones reales.
-
Es mas sencillo tener retroalimentación del cliente sobre el trabajo de desarrollo que se realizo. Los clientes pueden comentar las demostraciones del software y darse cuenta de cuantos se ha implementado. Los clientes encuentran difícil juzgar el avance a partir de documentos de diseño de software.