Metodologías de desarrollo de software Clásicas PDF

Title Metodologías de desarrollo de software Clásicas
Author Wilberth Daniel Corona Guinto
Course fundamentos de ingenieria de software
Institution Instituto Tecnológico de Acapulco
Pages 24
File Size 621.6 KB
File Type PDF
Total Downloads 107
Total Views 158

Summary

Descripción, fases/etapas, diagrama, características, ventajas, desventajas, aplicación y conclusiones sobre las metodologías de desarrollo clásicas cascada, incremental, evolutiva, espiral y prototipos...


Description

Tecnológico Nacional de México

Instituto Tecnológico de Acapulco Ingeniería en Sistemas Computacionales Fundamentos de Ingeniería de software Profesora: Ing. García Castro María Nancy 1.3 Metodologías de desarrollo de software 1.3.1 Clásicas

Integrantes: 19320926 - Corona Guinto Wilberth Daniel 19320931 - Cruz Ojendiz Ana Patricia 19321016 - Medina Casares Cecilia 19321022 – Méndez Pérez Alison Guadalupe 19321030 - Moreno García Verónica

Horario: 12:00-13:00

Grupo: IS2

Contenido Índice de diagramas ............................................................................................................................ 4 Metodologías clásicas ......................................................................................................................... 5 Metodología de cascada: ................................................................................................................ 5 Fases del modelo ......................................................................................................................... 5 Diagrama ..................................................................................................................................... 6 Características ............................................................................................................................. 6 Ventajas ....................................................................................................................................... 7 Inconvenientes ............................................................................................................................ 7 ¿Para qué tipo de sistema se utiliza o es su aplicación? ............................................................. 8 Conclusión ................................................................................................................................... 8 Metodología incremental................................................................................................................ 8 Fases del modelo ......................................................................................................................... 8 Diagrama ..................................................................................................................................... 9 Características ........................................................................................................................... 10 Ventajas ..................................................................................................................................... 10 Inconvenientes .......................................................................................................................... 10 ¿Para qué tipo de sistema se utilizan o es su aplicación? ......................................................... 11 Conclusión ................................................................................................................................. 11 Metodología evolutiva .................................................................................................................. 11 Fases del modelo ....................................................................................................................... 12 Diagrama ................................................................................................................................... 12 Características ........................................................................................................................... 13 Ventajas ..................................................................................................................................... 13 Desventajas ............................................................................................................................... 14 ¿Para qué tipo de sistema se utiliza o es su aplicación? ........................................................... 14 Conclusiones.............................................................................................................................. 14 Metodología en espiral: ................................................................................................................ 14 Fases del modelo ....................................................................................................................... 15 Diagrama ................................................................................................................................... 16 Características ........................................................................................................................... 16 Ventajas ..................................................................................................................................... 17 Desventajas ............................................................................................................................... 17

¿Para qué tipo de sistema se utiliza o es su aplicación? ........................................................... 17 Conclusión ................................................................................................................................. 18 Metodología de prototipos ........................................................................................................... 18 Fases del modelado ................................................................................................................... 18 Diagrama ................................................................................................................................... 19 Características ........................................................................................................................... 19 Tipos de Modelo de Prototipos ................................................................................................. 19 Tipos de prototipos ................................................................................................................... 20 Ventajas ..................................................................................................................................... 21 Desventajas ............................................................................................................................... 21 ¿Para qué tipo de sistema se utiliza o es su aplicación? ........................................................... 21 Conclusiones.............................................................................................................................. 21 Bibliografía ........................................................................................................................................ 23

Índice de diagramas Diagrama 1 Modelo de cascada .......................................................................................................... 6 Diagrama 2 Metodología Incremental ................................................................................................ 9 Diagrama 3 Modelo evolutivo ........................................................................................................... 12 Diagrama 4 Modelo en espiral .......................................................................................................... 16 Diagrama 5 Modelo de prototipo ..................................................................................................... 19

Metodologías clásicas Las metodologías clásicas son aquellas que siguen una secuencia lógica y cada etapa es directamente dependiente de que se culmine la etapa anterior. Estas metodologías pueden ser clasificadas en: − − − − − −

Cascada Método evolutivo Prototipos Desarrollo basado en componentes Espiral Incremental

Metodología de cascada: La metodología Cascada es un proceso de desarrollo secuencial de proyectos que suele utilizarse en el desarrollo de software. Esta metodología concibe el trabajo en un conjunto de etapas que deben ejecutarse una tras otra. Su nombre viene dado por las diferentes fases que componen el proyecto, ya que deben colocarse una encima de otra siguiendo un orden concreto y estricto de arriba hacia abajo. No podemos, por ejemplo, empezar la fase de diseño sin haber terminado la de los requisitos. Cascada impulsa la filosofía paso a paso, por bloques de tareas. (Sommerville, 2005) Fases del modelo − Análisis y definición de requerimientos Los servicios, restricciones y metas del sistema se definen a partir de las consultas con los usuarios. Entonces, se definen en detalle y sirven como una especificación del sistema. − Diseño del sistema y del software El proceso de diseño del sistema se divide requerimientos en sistemas hardware o software. Establece una arquitectura completa del sistema. El diseño del software identifica y describe las abstracciones fundamentales del sistema software y sus relaciones. − Implementación y prueba de unidades Durante esta etapa, el diseño del software se lleva a cabo como conjunto o unidades de programas. La prueba de unidades implica verificar que cada una cumpla su especificación. − Integración y prueba del sistema 5

Los programas o las unidades individuales de programas se integran y prueban como un sistema completo para asegurar que se cumplan los requerimientos del software. Después de las pruebas, el software se entrega al cliente. − Funcionamiento y mantenimiento Por lo general (aunque no necesariamente), esta es la fase más larga del ciclo de vida. El sistema se instala y se pone en funcionamiento práctico. El mantenimiento implica corregir errores no descubiertos en las etapas anteriores del ciclo de vida, mejorar la implementación de las unidades del sistema y resaltar los servicios del sistema una vez que se descubren nuevos requerimientos. (Sommerville, 2005) Diagrama

Diagrama 1 Modelo de cascada

(Sommerville, 2005)

Características -

Se trata del primer modelo de procesos de desarrollo de software y sienta las bases para otras metodologías como Agile. Todos los trabajadores se centran en una única fase y, hasta que no se complete, no se pasa a la siguiente. Los resultados de cada fase deben documentarse de forma exhaustiva. No es posible realizar un desarrollo iterativo, puesto que los procesos se desarrollan en una sola gran iteración. Se trata del modelo menos complejo que existe.

6

-

-

El resultado de todo el proceso solo se comprueba al final, por lo que es difícil solucionar errores a causa de su aparición cuando ya ha terminado el proyecto. La poca comunicación con el cliente puede dificultar el establecimiento de objetivos y requisitos. En ocasiones, es posible que se produzcan bloqueos en algún punto del proceso. Las fases del proyecto no se mezclan, ya que está muy organizado. Perfecto para proyectos rígidos en los que los requerimientos se especifiquen con concreción y se conozcan las herramientas a utilizar.

(Digital Talent Agency) Ventajas − El tiempo que se pasa en diseñar el producto en las primeras fases del proceso puede evitar problemas que serían más costosos cuando el proyecto ya estuviese en fase de desarrollo. − La documentación es muy exhaustiva y si se une al equipo un nuevo desarrollador, podrá comprender el proyecto leyendo la documentación. − Al ser un proyecto muy estructurado, con fases bien definidas, es fácil entender el proyecto. − Ideal para proyectos estables, donde los requisitos son claros y no van a cambiar a lo largo del proceso de desarrollo. (StudentPlace, 2018) Inconvenientes − En muchas ocasiones, los clientes no saben bien los requisitos que necesitarán antes de ver una primera versión del software en funcionamiento. Entonces, cambiarán muchos requisitos y añadirán otros nuevos, lo que supondrá volver a realizar fases ya superadas y provocará un incremento del coste. − No se va mostrando al cliente el producto a medida que se va desarrollando, si no que se ve el resultado una vez ha terminado todo el proceso. Esto cual provoca inseguridad por parte del cliente que quiere ir viendo los avances en el producto − Los diseñadores pueden no tener en cuenta todas las dificultades que se encontrarán cuando estén diseñando un software, lo que conllevará rediseñar el proyecto para solventar el problema. − Para proyectos a largo plazo, este modelo puede suponer un problema al cambiar las necesidades del usuario a lo largo del tiempo. Si, por ejemplo, tenemos un proyecto que va a durar 5 años, es muy probable que los requisitos necesiten adaptarse a los gustos y novedades del mercado. 7

(StudentPlace, 2018) ¿Para qué tipo de sistema se utiliza o es su aplicación? En la industria del desarrollo de juegos, todos los requisitos suelen desarrollarse y perfeccionarse antes de que comience el proyecto, lo que permite que el equipo de desarrollo trabaje en el modelo de cascada pura También se puede pensar en sistemas de salud en hospitales, sistemas bancarios, sistemas de control para procesos industriales que involucran químicos peligrosos, materiales nucleares o condiciones extremas, sistemas militares. (Brull, 2018) Conclusión La aplicación de la metodología es esencialmente el inicio y el alcance del proyecto. Para comenzar la aplicación, se necesita tener el análisis de los requerimientos bien definidos, el resultado del desarrollo dependerá de que estos requerimientos sean los adecuados para satisfacer la necesidad del proyecto, por ejemplo, si el cliente quiere intervenir en el proceso una vez iniciado, este método no sería el indicado, sino un método iterativo.

Metodología incremental: El modelo incremental combina elementos del modelo en cascada con la filosofía interactiva de construcción de prototipos. Se basa en la filosofía de construir incrementando las funcionalidades del programa. Este modelo aplica secuencias lineales de forma escalonada mientras progresa el tiempo en el calendario. Cada secuencia lineal produce un incremento del software. En cada incremento, el producto debe mostrar una evolución con respecto a la fecha anterior; nunca puede ser igual. Cuando se utiliza un modelo incremental, el primer incremento es a menudo un producto esencial, sólo con los requisitos básicos. Este modelo se centra en la entrega de un producto operativo con cada incremento. Los primeros incrementos son versiones incompletas del producto final, pero proporcionan al usuario la funcionalidad que precisa y también una plataforma para la evaluación. (Ortiz, s.f.) Fases del modelo El modelo de gestión incremental no es un modelo necesariamente rígido, es decir, que puede adaptarse a las características de cualquier tipo de proyecto, existen al menos 7 fases que debemos tener en cuenta a la hora de implementarlo: 8

• •



• •





Requerimientos: son los objetivos centrales y específicos que persigue el proyecto. Definición de las tareas y las iteraciones: teniendo en cuenta lo que se busca, el siguiente paso es hacer una lista de tareas y agruparlas en las iteraciones que tendrá el proyecto. Esta agrupación no puede ser aleatoria. Cada una debe perseguir objetivos específicos que la definan como tal. Diseño de los incrementos: establecidas las iteraciones, es preciso definir cuál será la evolución del producto en cada una de ellas. Cada iteración debe superar a la que le ha precedido. Esto es lo que se denomina incremento. Desarrollo del incremento: posteriormente se realizan las tareas previstas y se desarrollan los incrementos establecidos en la etapa anterior. Validación de incrementos: al término de cada iteración, los responsables de la gestión del proyecto deben dar por buenos los incrementos que cada una de ellas ha arrojado. Si no son los esperados o si ha habido algún retroceso, es necesario volver la vista atrás y buscar las causas de ello. Integración de incrementos: una vez son validados, los incrementos dan forma a lo que se denomina línea incremental o evolución del proyecto en su conjunto. Cada incremento ha contribuido al resultado final. Entrega del producto: cuando el producto en su conjunto ha sido validado y se confirma su correspondencia con los objetivos iniciales, se procede a su entrega final.

(Pérez, 2016) Diagrama

Diagrama 2 Metodología Incremental

(Pérez, 2016)

9

Características Las características esenciales de este modelo son: -

Los incrementos son pequeños. Permite una fácil administración de las tareas en cada iteración. La inversión se materializa a corto plazo. Es un modelo propicio a cambios o modificaciones. Se adapta a las necesidades que surjan. Para que esto sea posible, se debe tener en cuenta que las iteraciones no pueden ser demasiado rígidas y que no existan tareas simultáneas. El modelo incremental exige un encadenamiento progresivo de cada tarea. Scrum y Kanban son las herramientas más conocidas que emplean este modelo de gestión.

(Pérez, 2016) Ventajas Entre las ventajas que puede proporcionar un modelo de este tipo encontramos las siguientes: − Mediante este modelo se genera software operativo de forma rápida y en etapas tempranas del ciclo de vida del software. − Es un modelo más flexible, por lo que se reduce el coste en el cambio de alcance y requisitos. − Es más fácil probar y depurar en una iteración más pequeña. − Es más fácil gestionar riesgos. − Cada iteración es un hito gestionado fácilmente (Ortiz, s.f.) Inconvenientes Para el uso de este modelo se requiere una experiencia importante para definir los incrementos y distribuir en ellos las tareas de forma proporcionada. Entre los inconvenientes que aparecen en el uso de este modelo podemos destacar los siguientes: − Cada fase de una iteración es rígida y no se superponen con otras. − Pueden surgir problemas referidos a la arquitectura del sistema porque no todos los requisitos se han reunido, ya que se supone que todos ellos se han definido al inicio (Ortiz, s.f.) 10

¿Para qué tipo de sistema se utilizan o es su aplicación? El modelo incremental es uno de los modelos más adoptados de proceso de desarrollo de software y se utiliza más en empresas basadas en aplicaciones y productos web. Cuando el proyecto tiene cronogramas de desarrollo prolongados es donde mejor se aplica el modelo incremental. Además, cuando se entrega un incremento es imposible realizarle cambios. Así que es vital estar al tanto de todos requerimientos desde el inicio. Si los requisitos del sistema se entienden claramente y el equipo de ingeniería de software no está muy capacitado, el modelo incremental es una opción viable. También cuando surge la demanda de un lanzamiento anticipado de un producto o si están involucradas características y objetivos de alto riesgo, el modelo incremental es una opción a considerar. (Sanabria, 2021) Conclusión Este modelo nos permite una implementación con actualizaciones sucesivas (ampliaciones y/o mejoras). Con cada incremento se agregan nuevas funcionalidades, se cubren nuevos requisitos, o bien se mejora la versión anterior del producto.

Metodología evolutiva: Propuesto por Mills en 1980. 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. Surge porque en los primeros desarrollos se podía esperar largo tiempo hasta que el software estuviese listo. Las reglas del negocio de hoy no lo permiten. Se basa en la idea de desarrollar una implementación inicial, exponiéndola a los comentarios del usuario y refinándola a través de diferentes versiones hasta que se ha desarrollado un sistema adecuado. Estos modelos se aplican cuando se reconoce la naturaleza evolutiva del proyecto de ingeniería de software. • Están diseñados para ajustarse al cambio durante el desarrollo del proyecto. • En este tipo de modelos se tiene el modelo de construcción de prototipos, el modelo en espiral y el modelo de desarrollo concurrente. •

(Sommerville, 2005) 11

Fases del model...


Similar Free PDFs