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
Es un conjunto de etapas que se ejecutan una tras otra. Se le conoce como modelo de cascada porque sus capas van colocada una encima de  otra.
Es un modelo de software evolutivo que conjuga con la naturaleza de construcción de prototipos con aspectos controlados y sistemáticos.
Es especialmente para proyectos con requisitos imprecisos y muy cambiantes, y en donde existe un alto riesgo técnico.
Son aquellas que permiten adaptar a la forma de trabajo, consiguiendo la flexibilidad, para amoldar el proyecto.
Etapas
Requisitos: son las necesidades del cliente, para que determinen las características del software.
Diseño: Se describe la estructura interna del software, se establece una lista de requerimientos.
Implementación: Lleva la formulación del problema de computación.
Verificación: se encarga de que todo el sistema funcione correctamente
Mantenimiento: Modificar el software después de haber sido entregado.
Planeación: determinación de los objetivos, alternativas y restricciones
Análisis de riesgo : análisis de alternativas e identificación/resolución de riesgos
Ingeniería: desarrollo del producto hasta "el siguiente nivel".
Evaluación: valoración por parte del cliente de los resultados obtenidos.
 El principio de pruebas
 Proceso de planificación
El cliente en el lugar Programación en parejas
Integración continua
Refactorización
Entregas pequeñas
 Diseño simple
Metáfora Propiedad colectiva del código
 Estándar de codificación
 La semana de 40 horas
Planeamiento: realiza los requerimientos necesarios.
Desarrollo: en esta fase interviene el cliente.
Finalización: la documentación la integración y las pruebas.
Roles
Analista
Diseñador
Tester
Investigador principal
Líder
Desarrollador
Tester
Desarrollador
Clientes
Manager
Entrenador
Tester
Líder.
Accionista o clientes.
Técnicos.
Ventajas
Documentación exhaustiva
Proyecto muy estructurado
Fácil de entender
Proyectos estables
Se puede aplicar a lo largo de la vida del software.
Construcción de prototipos.
Utilizado en sistemas de productividad.
Reduce los riesgos antes de que se conviertan en problema.
Programación organizada.
Menor taza de errores.
Permite adaptarse a las necesidades.
Se divide el trabajo en grupos independientes.
Los clientes pueden realizar las pruebas que deseen.
Desventajas
No saben los requisitos necesarios.
No se muestra avances a los clientes
Proyectos a largo plazo
Resulta difícil convencer a grandes clientes.
No se aconseja utilizarlo en pequeños sistemas.
Solo es para proyectos de corto plazo.
Altas comisiones en caso de fallas.
Tener un objetivo claro.
Realizar presupuestos presisos.
Número de integrantes de los equipos
5 personas
5-9 personas
7 personas
5-9 personas
Nombre de una empresa que la emplea
Coca cola
Nestle
Zara
Apple
Facebook
PayPal
País que emplea dicha metodología
Chile
Estados unidos
China
México
México
Estados unidos.

Comentarios

Entradas más populares de este blog

¿Qué es UML (Unified Modeling Language)?

¿Qué es un paradigma de programación?