CICLO DE VIDA DE DESARROLLO DEL SOFTWARE
Concepto:
El término ciclo de vida del software describe el desarrollo de software, desde la fase inicial hasta la fase final. El propósito de este programa es definir las distintas fases intermedias que se requieren para validar el desarrollo de la aplicación, es decir, para garantizar que el software cumpla los requisitos para la aplicación y verificación de los procedimientos de desarrollo: se asegura de que los métodos utilizados son apropiados.
Estos programas se originan en el hecho de que es muy costoso rectificar los errores que se detectan tarde dentro de la fase de implementación. El ciclo de vida permite que los errores se detecten lo antes posible y por lo tanto, permite a los desarrolladores concentrarse en la calidad del software, en los plazos de implementación y en los costos asociados.
-El ciclo de vida básico de un software consta de los siguientes procedimientos:
v Definición de objetivos: definir el resultado del proyecto y su papel en la estrategia global.
v Análisis de los requisitos y su viabilidad: recopilar, examinar y formular los requisitos del cliente y examinar cualquier restricción que se pueda aplicar.
v Diseño general: requisitos generales de la arquitectura de la aplicación.
v Diseño en detalle: definición precisa de cada subconjunto de la aplicación.
v Programación (programación e implementación): es la implementación de un lenguaje de programación para crear las funciones definidas durante la etapa de diseño.
v Prueba de unidad: prueba individual de cada subconjunto de la aplicación para garantizar que se implementaron de acuerdo con las especificaciones.
v Integración: para garantizar que los diferentes módulos se integren con la aplicación. Éste es el propósito de la prueba de integración que está cuidadosamente documentada.
v Prueba beta (o validación), para garantizar que el software cumple con las especificaciones originales.
v Documentación: sirve para documentar información necesaria para los usuarios del software y para desarrollos futuros.
v Mantenimiento: para todos los procedimientos correctivos (mantenimiento correctivo) y las actualizaciones secundarias del software (mantenimiento continuo).
El orden y la presencia de cada uno de estos procedimientos en el ciclo de vida de una aplicación dependen del tipo de modelo de ciclo de vida acordado entre el cliente y el equipo de desarrolladores.
MODELOS DEL CICLO DE VIDA DEL DESARROLLO DEL SOFTWARE
MODELOS DE CICLO DE VIDA:
Para facilitar una metodología común entre el cliente y la compañía software, los modelos del ciclo de vida se han actualizado para reflejar las etapas de desarrollo involucradas y la documentación requerida, de manera que cada etapa se valide antes de continuar con la siguiente etapa. Al final de cada etapa se arregla las revisiones de manera que ( texto faltante).
MODELO EN CASCADA:
El modelo de ciclo de vida encascada comenzó a diseñarse en 1966 y se termino alrededor de 1970 se define como una secuencia de fases en la que al final de cada una de ellas promueve la documentación para garantizar que cumple las especificaciones y los requisitos antes de pasar a la fase siguientes.
MODELO V:
El modelo del ciclo de vida V proviene del principio que establece que los procedimiento utilizados para probar si la aplicación cumple las especificaciones ya deben haberse creado en la fase de diseño.
MODELO DE DESARROLLO INCREMENTAL:
Los riesgos asociados con el desarrollo de sistemas largos y complejos son enormes, provee algunos beneficios significativos para los proyectos.
MODELO DESARROLLO EVOLUTIVOS:
Construye una seria de grandes versiones sucesivas de un producto, los requerimientos son cuidadosamente examinados, y solo esos que son comprendidos son seleccionados para el primer incremento.
MODELO PROTOTIPIADOS DE REQUERIMIENTO:
Es la incrementacion de una implementación parcial de un sistema para el propósito explicito de aprender sobre los requerimientos del sistema
MODELO ESPIRA:
Es un modelo de ciclo de meta-vida en este modelo, el esfuerzo de desarrollo es iterativo.
INGENIERIA DE SOFTWARE
El término ingeniería de software abarca al grupo de métodos, técnicas y herramientas que se utilizan en la producción del software, más allá de la actividad principal de programación.
El término "ingeniería" es una referencia directa a la ingeniería civil, una referencia al estudio de la construcción. En programación se aplica el mismo principio que en la construcción de un edificio: poner simplemente ladrillos y cemento no es suficiente. La construcción de un edificio consta de diversos pasos antes de comenzar con la fase de construcción, tales como el diseño arquitectónico, la albañilería, la fontanería, el diseño eléctrico, y durante este período se calculan los presupuestos y los plazos.
Por lo tanto, la ingeniería de software requiere la gestión de proyectos para que se pueda desarrollar una aplicación en el plazo previsto y con el presupuesto establecido que sea satisfactoria para el cliente (el concepto de calidad).