La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

METODOLOGÍAS DEL CICLO DE VIDA DEL SOFTWARE

Presentaciones similares


Presentación del tema: "METODOLOGÍAS DEL CICLO DE VIDA DEL SOFTWARE"— Transcripción de la presentación:

1 METODOLOGÍAS DEL CICLO DE VIDA DEL SOFTWARE

2 ¿QUÉ ES UNA METODOLOGÍA DEL CICLO DE VIDA?
Es un modo sistemático para realizar, gestionar y administrar un proyecto de software con el objetivo de obtener altas posibilidades de éxito. Una metodología de desarrollo revela: La división de un proyecto en etapas Acciones que corresponden a cada una de las etapas Entradas y salidas para cada una de las etapas Pautas para administrar el proyecto

3 NECESIDAD DE UNA METODOLOGÍA DEL CICLO DE VIDA
Se requiere de una metodología de desarrollo de software porque: Se deben ajustar los sistemas informáticos a las exigencias del mercado atendiendo a un plan de trabajo. Se debe administrar y supervisar el proceso de desarrollo de software con el ánimo de retroalimentarlo constantemente. El software ahora es más complejo y esta característica requiere de pautas que faciliten el logro de objetivos. Se requiere de análisis, planificación, gestión de recursos y documentación para evitar el aumento en tiempo de desarrollo y mala calidad del producto final.

4 METODOLOGÍA DEL CICLO DE VIDA LINEAL
Descompone la actividad global del proyecto en etapas que son realizadas linealmente, es decir, cada etapa se realiza una vez: a continuación de la etapa anterior y antes de la etapa siguiente. Las actividades de cada una de las etapas son independientes y no hay retroalimentación entre ellas, aunque pueden permitirse procesos de retroalimentación correctiva. Hay rigidez con respecto a lo que va a suceder en cada una de las etapas antes de comenzarlas, lo que permite reducir la posibilidad de errores durante la codificación y la necesidad de requerir información de los usuarios. Se destaca la sencillez de su gestión y administración en el desarrollo de programas pequeños. No es apto para desarrollos que suponen retroalimentación entre etapas por los costos que pueden presentarse al retomar una etapa anterior.

5 METODOLOGÍA DEL CICLO DE VIDA LINEAL
Preanálisis Análisis Diseño Desarrollo Pruebas Implantación Mantenimiento Preanálisis Análisis Diseño Desarrollo Pruebas Implantación Mantenimiento Preanálisis Análisis Diseño Desarrollo Pruebas Implantación Mantenimiento

6 METODOLOGÍA DEL CICLO DE VIDA EN CASCADA
Admite iteraciones Después de cada etapa se realiza una o varias revisiones para comprobar si se puede pasar a la siguiente. Es un modelo rígido, poco flexible y con muchas restricciones. Se destaca la sencillez de su planificación. Provee un producto con un elevado grado de calidad sin necesidad de un personal altamente calificado. Se debe contar con todos los requerimientos al comienzo del proyecto Si se han cometido errores y no se detectan en la fase siguiente, es costoso volver atrás para realizar la corrección. Los resultados no se observan hasta que no se encuentren las etapas finales del ciclo; por eso, cualquier error detectado trae retraso y aumento de costos. Es un ciclo adecuado para desarrollar software del cual se tienen los requerimientos desde el comienzo.

7 METODOLOGÍA DEL CICLO DE VIDA EN CASCADA
Preanálisis Análisis Diseño Desarrollo Pruebas Implantación Mantenimiento

8 VENTAJAS Y DESVENTAJAS
Excelente cuando se tiene un producto estable y se conoce la tecnología. Es un método muy estructurado que funciona bien con gente de poca experiencia. Provee estabilidad en los requerimientos. La planeación se puede hacer anticipadamente. Recomendado para elaboración de proyectos grandes. DESVENTAJAS. Tiene poca flexibilidad. Los proyectos en la práctica raramente siguen un flujo secuencial. Siempre es difícil para el cliente mostrar los requerimientos explícitamente y con mucha anticipación. El cliente debe tener paciencia. Es flexible y no motiva al cambio. Poco apropiado para aplicaciones para la toma de decisiones. Los usuarios tienen una participación limitada.

9 METODOLOGÍA DEL CICLO DE VIDA POR PROTOTIPOS
Un prototipo es un producto parcial o provisional El objetivo de esta metodología de ciclo de vida es lograr un producto intermedio antes de realizar el producto final con el propósito de conocer como responderán las funcionalidades previstas para el producto final. Antes de adoptar esta metodología de ciclo de vida debe evaluarse si vale la pena adoptar el esfuerzo de crear un prototipo. Se utiliza en la elaboración de productos con innovaciones importantes o en el uso de tecnologías nuevas o poco probadas, en las que la incertidumbre sobre los resultados a obtener impiden el uso de una metodología secuencial. Es útil en actividades de migración de programas para adoptar sus nuevas funcionalidades. La ventaja de esta metodología radica en que no es necesario conocer las especificaciones o tecnología a utilizar. La desventaja radica en la dificultad de administración y en el alto costo.

10 METODOLOGÍA DEL CICLO DE VIDA POR PROTOTIPOS

11 CARACTERÍSTICAS Es un método menos formal de desarrollo.
El prototipo es una técnica para comprender las especificaciones. Un prototipo puede ser eliminado. Un prototipo puede llegar a ser parte del producto final. Se caracteriza por ser un diseño rápido que conduce a la construcción de un prototipo, el cual es evaluado por el usuario para una retroalimentación; gracias a ésta se refinan los requisitos del software que se desarrollará. La iteración ocurre cuando el prototipo se ajusta para satisfacer las necesidades del cliente. Esto permite que al mismo tiempo el desarrollador entienda mejor lo que se debe hacer y el cliente vea resultados a corto plazo.

12 VENTAJAS Y DESVENTAJAS
Útiles cuando los requerimientos son cambiantes. Cuando no se conoce bien la aplicación. Cuando el usuario no se quiere comprometer con los requerimientos. Cuando se quiere probar una arquitectura o tecnología. Cuando se requiere rapidez en el desarrollo. DESVENTAJAS. No se conoce cuando se tendrá un producto aceptable. No se sabe cuantas iteraciones serán necesarias. Da una falsa ilusión al usuario sobre la velocidad del desarrollo. El prototipo deber ir acompañado de otro modelo pasa su desarrollo. Sus desventajas son que debido a que el usuario ve que el prototipo funciona piensa que este es el producto terminado y no entienden que recién se va a desarrollar el software.

13 METODOLOGÍA DEL CICLO DE VIDA EN ESPIRAL
Puede considerarse una evolución del modelo por prototipos Se basa en una serie de ciclos repetitivos para ir ganando madurez en el producto final. Toma más en cuenta el concepto de riesgo que aparece debido a la incertidumbre o la ignorancia de los requerimientos proporcionados al principio del proyecto o que surgirán durante el desarrollo. A medida que avanza el espiral, se obtienen prototipos que van ganando la satisfacción del cliente. Consta de cuatro actividades que envuelven las etapas: planificación (relevamiento de requerimientos iniciales o luego de una iteración), análisis de riesgo (de acuerdo con el relevamiento de requerimientos se decide si se continua con el desarrollo), Implementación (se desarrolla un prototipo basado en los requerimientos) y evaluación (el cliente evalúa el prototipo).

14 METODOLOGÍA DEL CICLO DE VIDA EN ESPIRAL

15 Se caracteriza principalmente por:
CARACTERÍSTICAS Se caracteriza principalmente por: Un enfoque cíclico para el crecimiento incremental del grado de definición e implementación de un sistema, mientras que disminuye su grado de riesgo. Un conjunto de puntos de fijación para asegurar el compromiso del usuario con soluciones de sistema que sean factibles y mutuamente satisfactorias. El modelo espiral captura algunos principios básicos: Decidir qué problema se quiere resolver antes de resolverlo. Examinar tus múltiples alternativas de acción y elegir una de las más convenientes. Evaluar qué tienes hecho y qué tienes que haber aprendido después de hacer algo. No ser tan ingenuo para pensar que el sistema que estás construyendo será "EL" sistema que el cliente necesita. Conocer (comprender) los niveles de riesgo, que tendrás que tolerar.

16 El producto termina con todos los riesgos resueltos.
VENTAJAS VENTAJAS. El producto avanza a pasos firmes solucionando el riesgo en cada iteración. El producto termina con todos los riesgos resueltos. Se pueden incluir otros métodos de desarrollo en las iteraciones. A medida que el costo aumenta, los riesgos se reducen. Se tienen puntos de control en cada iteración.

17 MODELO EVOLUTIVO La idea detrás de este modelo es el desarrollo de una implantación del sistema inicial, exponerla a los comentarios del usuario, refinarla en N versiones hasta que se desarrolle el sistema adecuado. En la Figura 14 se observa cómo las actividades concurrentes: especificación, desarrollo y validación, se realizan durante el desarrollo de las versiones hasta llegar al producto final. Una ventaja de este modelo es que se obtiene una rápida realimentación del usuario, ya que las actividades de especificación, desarrollo y pruebas se ejecutan en cada iteración. Este modelo es efectivo en proyectos pequeños (menos de líneas de código) o medianos (hasta líneas de código) con poco tiempo para su desarrollo y sin generar documentación para cada versión.

18 MODELO EVOLUTIVO

19 Existen dos tipos de desarrollo evolutivo:
MODELO EVOLUTIVO Existen dos tipos de desarrollo evolutivo: Desarrollo Exploratorio: El objetivo de este enfoque es explorar con el usuario los requisitos hasta llegar a un sistema final. El desarrollo comienza con las partes que se tiene más claras. El sistema evoluciona conforme se añaden nuevas características propuestas por el usuario. Enfoque utilizando prototipos: El objetivo es entender los requisitos del usuario y trabajar para mejorar la calidad de los requisitos. A diferencia del desarrollo exploratorio, se comienza por definir los requisitos que no están claros para el usuario y se utiliza un prototipo para experimentar con ellos. El prototipo ayuda a terminar de definir estos requisitos.

20 VENTAJAS Y DESVENTAJAS
La especificación puede desarrollarse de forma creciente. Los usuarios y desarrolladores logran un mejor entendimiento del sistema. Esto se refleja en una mejora de la calidad del software. Es más efectivo que el modelo de cascada, ya que cumple con las necesidades inmediatas del cliente. DESVENTAJAS. Proceso no Visible: Los administradores necesitan entregas para medir el progreso. Si el sistema se necesita desarrollar rápido, no es efectivo producir documentos que reflejen cada versión del sistema. Sistemas pobremente estructurados: Los cambios continuos pueden ser perjudiciales para la estructura del software haciendo costoso el mantenimiento. Se requieren técnicas y herramientas: Para el rápido desarrollo se necesitan herramientas que pueden ser incompatibles con otras o que poca gente sabe utilizar.

21 METODOLOGÍA DEL CICLO DE VIDA EN COMPONENTES
Al igual que el modelo en espiral, esta metodología es evolutiva Concibe la iteración entre las etapas Configura aplicaciones desde componentes preparados de software llamados “clases”. La tecnología de objetos proporciona el marco de trabajo técnico para esta metodología. Enfatiza en la creación de clases que encapsulan tanto los datos como los algoritmos que se utilizan para manejarlos. Puntualiza en la reusabilidad del código

22 METODOLOGÍA DEL CICLO DE VIDA EN COMPONENTES

23 MODELO DESARROLLO RÁPIDO DE APLICACIONES (DRA)
Es un proceso que comprende el desarrollo iterativo, la construcción de prototipos y el uso de herramientas CASE. Tradicionalmente, el desarrollo rápido de aplicaciones tiende a englobar también la usabilidad, utilidad y la rapidez de ejecución. El Desarrollo Rápido de Aplicaciones (DRA) es un modelo de proceso del desarrollo del software lineal secuencial que enfatiza un ciclo de desarrollo extremadamente corto. DRA es una adaptación a “Alta velocidad” en el que se logra el desarrollo rápido utilizando un enfoque de construcción basado en componentes. Si se comprenden bien los requisitos y se limita el ámbito del proyecto, el proceso DRA permite al equipo de desarrollo crear un “sistema completamente funcional” dentro de periodos cortos de tiempo.

24 MODELO DESARROLLO RÁPIDO DE APLICACIONES (DRA)

25 MODELO DESARROLLO RÁPIDO DE APLICACIONES (DRA)
Cuando se utiliza principalmente para aplicaciones de sistemas de información, el enfoque DRA comprende las siguientes fases: Modelado de gestión: El flujo de información entre las funciones de gestión se modela de forma que responda a las siguientes preguntas: ¿Qué información conduce el proceso de gestión? ¿Qué información se genera? ¿Quién la genera? ¿A dónde va la información?. Modelado de datos: Se definen las características (llamadas atributos) de cada uno de los objetos y las relaciones entre estos objetos. Modelado de proceso: Las descripciones del proceso se crean para añadir, modificar, suprimir, o recuperar un objeto de datos. Es la comunicación entre los objetos. Generación de aplicaciones: El DRA asume la utilización de técnicas de cuarta generación. En lugar de crear software con lenguajes de programación de tercera generación, el proceso DRA trabaja para volver a utilizar componentes de programas ya existentes (cuando es posible) o a crear componentes reutilizables (cuando sea necesario). Pruebas de entrega: Como el proceso DRA enfatiza la reutilización, ya se han comprobado muchos de los componentes de los programas. Esto reduce tiempo de pruebas.

26 VENTAJAS Y DESVENTAJAS
Comprar puede ahorrar dinero en comparación con construir. Los entregables pueden ser fácilmente trasladados a otra plataforma. Visibilidad temprana. Mayor flexibilidad. Menor codificación manual. Mayor involucramiento de los usuarios. Posiblemente menos fallas. Posiblemente menor costo. Ciclos de desarrollo más pequeños. Interfaz gráfica estándar. DESVENTAJAS Comprar puede ser más caro que construir. Costo de herramientas integradas y equipo necesario. Menos eficiente. Menor precisión científica. Prototipos pueden no escalar, un problema mayúsculo. Dependencia en componentes de terceros: funcionalidad de más o de menos, problemas legales.

27 MODELO INCREMENTAL Mills sugirió el enfoque incremental de desarrollo como una forma de reducir la repetición del trabajo en el proceso de desarrollo y dar oportunidad de retrasar la toma de decisiones en los requisitos hasta adquirir experiencia con el sistema. Es una combinación del Modelo de Cascada y Modelo Evolutivo. Reduce el rehacer trabajo durante el proceso de desarrollo y da oportunidad para retrasar las decisiones hasta tener experiencia en el sistema. Durante el desarrollo de cada incremento se puede utilizar el modelo de cascada o evolutivo, dependiendo del conocimiento que se tenga sobre los requisitos a implementar. Si se tiene un buen conocimiento, se puede optar por cascada, si es dudoso, evolutivo.

28 MODELO INCREMENTAL

29 VENTAJAS Y DESVENTAJAS
Los clientes no esperan hasta el fin del desarrollo para utilizar el sistema. Pueden empezar a usarlo desde el primer incremento. Los clientes pueden aclarar los requisitos que no tengan claros conforme ven las entregas del sistema. Se disminuye el riesgo de fracaso de todo el proyecto, ya que se puede distribuir en cada incremento. Las partes más importantes del sistema son entregadas primero, por lo cual se realizan más pruebas en estos módulos y se disminuye el riesgo de fallos. La solución se va mejorando en forma progresiva a través de las múltiples iteraciones. DESVENTAJAS. Cada incremento debe ser pequeño para limitar el riesgo (menos de líneas). Cada incremento debe aumentar la funcionalidad. Es difícil establecer las correspondencias de los requisitos contra los incrementos. Es difícil detectar las unidades o servicios genéricos para todo el sistema.

30 METODOLOGÍA Vs CICLO DE VIDA
Una metodología puede seguir uno o varios modelos de ciclo de vida, es decir, el ciclo de vida indica qué es lo que hay que obtener a lo largo del desarrollo del proyecto pero no cómo hacerlo. La metodología indica cómo hay que obtener los distintos productos parciales y finales


Descargar ppt "METODOLOGÍAS DEL CICLO DE VIDA DEL SOFTWARE"

Presentaciones similares


Anuncios Google