Please enable JavaScript.
Coggle requires JavaScript to display documents.
METODOLOGÍAS DE DESARROLLO DE SOFTWARE - Coggle Diagram
METODOLOGÍAS DE DESARROLLO DE SOFTWARE
¿Qué es?
Hay quienes hablan de ella como organización sistemática para el ciclo de vida del sistema y sus partes, pero también hay quienes la definen como un conjunto de herramientas, procedimientos y técnicas para lograr el desarrollo de un nuevo software
¿Qué objetivos tiene?
Establecer requisitos de una sistema software
Suministrar un método sistemático de desarrollo, para controlas su proceso
Hacer un sistema de software con un tiempo apropiado y costo aceptable
Hacer la construcción de aún sistema que además de apropiado sea fácil de mantener
Ayudar a identificar fácilmente los cambios necesarios en el proceso de desarrollo
Proveer un sistema que satisfaga a las personas afectadas por el mismo
¿Qué aspectos debería cubrir?
Un proceso que comprenda aspectos tanto del negocio como los de origen técnico
Un conjunto completo de conceptos y modelos que sean internamente consientes
Descripción completa dede artefactos a desarrollar
Conjunto de técnicas aprobadas
Guías para la gestión de proyectos y aseguramiento de la calidad
Asesoramiento para la gestión de bibliotecas y reutilización
Modelo de cascada
Si definición:
Cada etapa de este enfoque representa una unidad de desarrollo con un pequeño descanso en el medio
Aunque se considera como anticuado aún sigue aplicando los proyectos con metas claras y requisitos que demandan hasta 100 horas de desarrollo
Es una gran opción para los pequeños proyectos donde todos los aspectos de desarrollo son conocidos de antemano y una mala solución para proyectos complicados
Características
Solo cuando se finaliza una fase comienza otra
En ocasiones antes de iniciar la siguiente fase se realiza una revisión por si hay algún cambio
Las revisiones se realizan también para asegurarse que la fase haya sido totalmente finalizada
Los criterios para completar una fase se conocen como "gate" (puerta)
Este modelo desaconseja revisitar y revisar fases que hayan completado
Modelo espiral
La metodología espiral refleja la relación de tareas con prototipos rapidos, mayor paralelismo y concurrencia en las actividades de diseño y construcción
Modelo basado en prototipos
Es un procedimiento de desarrollo especializado que permite a los desarrolladores la posibilidad de poder solo hacer la muestra de la resolución para poder validar su escencia funcional antes que los clientes y hacer cambios antes de la solución final
Ayuda a reducir riesgos inherentes del proyecto establecido el desarrollo en fragmentos pequeños, logrando que los cambios tengan un menor impacto
El usuario involucrado en el desarrollo incrementa la aceptación de la implementación del producto final
Se muestran pequeños prototipos al cliente para confirmar que tenga los requisitos
Algunos de los prototipos mostrados pueden evolucionar y convertirse en el producto final
Se tienen que entender los problemas del negocio para evitar resolver problemas incorrectos, despilfarrando tiempo y esfuerzo
Desarrollo rápido de aplicaciones
Se trata de un enfoque que está destinado a proporcionar un excelente proceso de desarrollo con la ayuda de otros enfoques, y que además está diseñado para variar el procedimiento de desarrollo marcando la participación del usuario
Ventajas
Hace todo el proceso de desarrollo sin esfuerzo
Asiste al cliente en la realización de revisiones rápidas
Alienta la retroalimentación de los clientes para su mejora
Método de desarrollo de sistemas dinámicos
Este se trata de un enfoque iterativo e incremental que se centra en la participación del usuario y cuya tarea es proporcionar sistemas de desarrollo de software dentro del plazo especificado y el presupuesto asignado
Es una metodología de alta demanda dentro del mundo del desarrollo de software
Metodología de programación
extrema (XP)
Se conoce actualmente como metodología de XP (eXtreme Programing), se utiliza principalmente para evitar el desarrollo de funciones que actualmente no se necesitan pero sobre todo para atender proyectos complicados
Desarrollo conducido por características
Es una metodología iterativo para el desarrollo de software, la cuál está dirigida a servir a un gran número de equipos que trabajan en un proyecto basado en la tecnología orientada a objetos
Lo utilizan las empresas que están pasando de un método basado en la fase a un enfoque iterativo
Metodología de Scrum
Es un enfoque bastante flexible que ayuda al equipo a reaccionar rápidamente en los diferentes cambios en los requisitos, pero además provee la gran ventaja de que puede ser aplicado consecutivamente a todos los proyectos
Este modelo se inicia con una planificación efímera, una conferencia y se completa una revisión final
Se utiliza para el desarrollo rápido de software que pasa a incluir una serie de iteraciones para generar el software necesario
Modelo de madurez de capacidades de integración (CMMI)
No es una metodología, pero es importante hacer mención de este modelo de procesos porque este es fundamental para que el desarrollo de software sea realmente óptimo, y contiene las mejores prácticas de la industria del desarrollo de software
¿Por qué es prioritario el uso de un modelo para desarrollar software?
Aporta años de experiencia
Ayudan a mejorar la satisfacción del cliente
Permiten producir productos y servicios de alta calidad
Proporciona un marco y un lenguaje común, traducido como la ruptura de la barreras de comunicación en el interior de las organizaciones
Permite que los usuarios puedan enfocarse específicamente en la mejora, ya que ayudan a que no pierda la idea global
Beneficios del modelo CMMI para el desarrollo de Software
Cumplir de forma mucho más completa con las normas ISO
Poder aplicar prácticas de alta madurez mucho más robustas
Permite hacer la incorporación de la experiencia adquirida en otras zonas de las mejores prácticas
La ingeniería y la gestión están entrelazadas lo que facilita el reconocimiento de los objetivos del negocio