Cuadro comparativo de los modelos y metodologías de desarrollo de software

   
Métodos y metodologías en el desarrollo de software

Nombre

Cascada
Espiral
Extreme Programming
Metodologías Ágiles
Descripción
Propuesto por Winston Royce en 1970
Conocido como modelo secuencial lineal Encadenamiento secuencial de las actividades
Permite retroalimentación y solapamiento entre fases.
Es un modelo iterativo y no lineal.
Para facilitar la terminación de metas y tareas, es normal congelar partes del desarrollo después de cierto punto en la iteración.
Propuesto por Barry Boehm en 1988
Desarrollo en ciclos.
En cada ciclo:
– se define el objetivo,
– se analizan los riesgos,
– desarrollo y verificación de la solución
obtenida,
– revisión de resultados y planificación del
siguiente ciclo
La Programación Extrema es una metodología ligera de desarrollo de software que se basa en la simplicidad, la comunicación y la realimentación o reutilización del código desarrollado.
Las metodologías de desarrollo de software ágiles ayuda a reducir el trabajo y a optimizarlo de manera que facilita al momento de desarrollar software   
Etapas

  1. Análisis de requisitos.
  2. Diseño del sistema.
  3. Diseño del programa.
  4. Codificación.
  5. Pruebas.
  6. Implementación del programa.
  7. Mantenimiento.
 1. Definición de objetivos: Para esta fase del proyecto se definen los objetivos específicos.
2. Evaluación y reducción de riesgos: Se lleva a cabo un análisis detallado para cada uno de los riesgos del proyecto. Se definen los pasos para reducir dichos riesgos.
3. Desarrollo y validación: Después de la evaluación de riesgos, se elige un modelo para el desarrollo del sistema.
4. Planeación: El proyecto se revisa y se toma la decisiones. 
1. Tipo de desarrollo iterativo e incremental.
2.Pruebas unitarias.
3. Trabajo en equipo.
4. Alguien del equipo deberá trabajar como cliente.
5. Corrección de errores.
6. Reestructuración del código.
7. El código es de todos.

8. Código simple es la clave.
Dependerá de el tipo de metodologías que utilice al ser un conjunto de metodologías, van cambiando las etapas     
Roles
Especificación
desarrollo,
validación y evolución. 

En todo ello interviene el analista, diseñador y el jefe del proyecto
-Investigador Principal
-Jefe de Proyecto
-Desarrollador-Documentador

-Encargado de Datos y Tester
  1.  Tester.
  2. Tracker.
  3. Entrenador.
  4. Consultor.
  5. Gestor.

  1.  Tester.
  2. Tracker.
  3. Entrenador.
  4. Consultor.
  5. Gestor.
Ventajas
 – Planificación sencilla.
– Una plantilla estructurada para ingeniería de sw.
-Definición de arquitectura en sus fases iniciales.
-Basado en un proceso continuo de verificación de la calidad.
-Ideal para productos con un nivel alto de inestabilidad de los requerimientos.
-Programación organizada.
-Menor taza de errores.

-Satisfacción del programador.
-Los modelos de desarrollo suelen ser muy flexibles.
 -El proyecto se divide en pequeñas tareas desarrolladas por grupos independientes que trabajan simultáneamente e interaccionan entre ellos.
-Es especialmente útil cuando el objetivo del proyecto no está claramente definido
Desventajas
 – Evolución de los Requisitos . 
– Resultados al final.
– Retrasos innecesarios.
-No aplicable a proyectos bajo contrato.
– No recomendable en proyectos simples.
-Es recomendable emplearlo solo en proyectos a corto plazo.

-Altas comisiones en caso de fallar
-Muestra una estructura muy débil.
-La comunicación, la implicación personal y la colaboración se necesitan para garantizar el éxito del proyecto.
-Son mucho más dependientes de la presencia de las mismas personas desde el principio hasta el final del proyecto.
Número de integrantes de los equipos
No tiene un limite especifico, lo recomendable es que sea en grupos pequeños
No tiene limite 
Dependiendo de los roles que tengan se establecerán los integrantes 
menor a 10 integrantes 
¿En la construcción de qué tipo de aplicaciones se usa?
Aplicaciones de industria y aplicaciones académicas 
Aplicaciones móviles,diseño de sistemas operativos y navegadores  
Industrias financieras 
Se adaptan en cualquier tipo de aplicación, se adaptan a las necesidades actuales de todo tipo 
Nombre de una empresa que la emplea
BioMotion
Android
Google 
HSBC
BBVA
VUHL,BBC, BellSouth, British Telecom, DoubleYou, Motorola, Nokia.
País que emplea dicha metodología
EUA,Alemania,España
EUA, Alemania, Francia, etc.
EUA, Alemania, Francia, Rusia, etc.
La gran mayoría de países de primer mundo

Referencias
S.A (septiembre del 2007) Modelos de desarrollo de software. Recuperado el 7 de marzo del 2018 de http://moodle2.unid.edu.mx/dts_cursos_mdl/lic/IEL/SI/AM/06/Modelos.pdf

D. Gutierrez (julio del 2011) Métodos de desarrollo de software. Recuperado el 7 de marzo del 2018 de http://www.codecompiling.net/files/slides/IS_clase_13_metodos_y_procesos.pdf

S.A  (S.F) Metodología del desarrollo de software. Recuperado el 7 de marzo del 2018 de https://okhosting.com/blog/metodologias-del-desarrollo-de-software

Valdéz (S.F) modelos y metodología para del desarrollo de software. Recuperado el 7 de marzo del 2018 de http://www.eumed.net/tesis-doctorales/2014/jlcv/software.htm



Comentarios