UNIVERSIDAD ABIERTA Y A DISTANCIA DE MEXICO
Carrera: Ingeniería en Desarrollo de Software
Materia: Introducción a la ingeniería de software
Grupo: DS-DIIS-1502S-B2-006
Docente en línea: Jaime Ledesma Ortiz
Alumno: Yosef Alejandro Salinas Islas
Actividad 2. Métodos de desarrollo de software
1. A partir de lo estudiando en la unidad y de una investigación que realices, analiza los diferentes métodos de desarrollo de software existentes y enlista sus principales características.
Métodos alternativos:
Método Cascada Método en prototipos Modelo incremental Método en vida espiral
Métodos agiles:
Programación extrema Metodología scrum
Alternativas: Productos, roles y condiciones.Método Definición Características Fases VentajasCascada Es el enfoque
metodológico que ordena rigurosamente las etapas del proceso para el desarrollo de software.
El inicio de cada etapa debe esperar a la finalización de la inmediatamente anterior
Análisis, diseño, codificación, pruebas y mantenimiento.
Sencillez, calidad y facilidad de aprendizaje.
Construcciónde prototipos
Es un modelo del comportamiento del sistema que puede ser usado para entenderlo completamente o ciertos aspectos de él y así clarificar los requerimientos
El prototipo debe ser construido en poco tiempo, usando los programas adecuados y no se debe utilizar muchos recursos
Recolección de información, diseño, construcción, evaluación, refinamiento, ciclo del producto.
No modifica el flujo del código, mantiene el producto estable del código, reduce costos, maneja herramientas apropiadas.
Incremental El Modelo Incremental combina elementos del Modelo Lineal Secuencial con la filosofía interactiva de Construcción de Prototipos.
Combina elementos del MLS con la filosofía interactiva de construcción de prototipos.
Recolección de información, diseño, construcción, evaluación, refinamiento, ciclo de producto.
Al construir sistemas pequeños se detectan los errores con facilidad.
Vida Espiral Es un modelo de proceso de software evolutivo que acompaña la naturaleza interactiva de construcción de prototipos con los aspectos controlados y
Interacción, incremento, análisis de riesgos, incremento e interacción.
Comunicación, planificación, análisis, ingeniería, desarrollo, construcción, evaluación del cliente.
Es evolutivo por lo que mantiene la satisfacción del cliente. Requiere todos los requerimientos necesarios.
2 Yosef Alejandro Salinas Islas
sistemáticos del modelo cascada.
Alternativas: Productos, roles y condiciones.Método Definición Características Fases VentajasProgramación extrema
Es el más destacado de los procesos ágiles de desarrollo de software
Pone más énfasis en la adaptabilidad que en la previsibilidad.
Historia, descripción de la historia, codificación, liberación de software, evaluación del cliente.
Evaluación del cliente, planificación incremental, diseños detallados, refactorización
Scrum Es un proceso en el que se aplican de manera regular un conjunto de buenas prácticas para trabajar colaborativamente, en equipo, y obtener el mejor resultado posible de un proyecto.
Está especialmente indicado para proyectos en entornos complejos, donde se necesita obtener resultados pronto, donde los requisitos son cambiantes o poco definidos, donde la innovación, la competitividad, la flexibilidad y la productividad son fundamentales.
Demostración, retrospectiva del trabajo y de la modificación, nueva construcción.
La interacción es ágil, se puede usar para proyectos medianos y grandes, identifica y elimina obstáculos a largo plazo.
Conclusión
El objetivo principal que busca la ingeniería de software es convertir el desarrollo de software en un proceso formal, con resultados predecibles, que permitan obtener un producto final de alta calidad y satisfaga las necesidades y expectativas del cliente.
Las metodologías han evolucionado de manera significativa en las últimas décadas como se puede observar en la tabla 2.7 Permitiendo así el éxito o el fracaso de muchos de los sistemas desarrollados para distintas áreas.
Algunas de las metodologías tradicionales más utilizadas para el desarrollo de software han sido, la denominada “proceso personal de software (PSP)” y la “proceso en equipo para el software TSP”. El TSP toma sus fundamentos en que los ingenieros deben de dar a conocer bien su trabajo y que puedan implementar un plan para poderlo realizar mejor, cuando el plan se implementa, pueden ahorrarse tiempo en realizar el trabajo y por ende generar productos de calidad. El TSP contempla dos componentes principales:
1) Creación de equipo
2) Trabajo en equipo o componente de gestión.
3 Yosef Alejandro Salinas Islas