El documento describe varios métodos de desarrollo de software, incluyendo el modelo en cascada, el modelo de prototipos, el modelo en espiral y el proceso unificado. Cada método tiene varias fases y se diferencian principalmente en su grado de iteración y flexibilidad para hacer cambios. El proceso unificado se destaca por ser iterativo e incremental, centrado en la arquitectura y dirigido por casos de uso.
2. DEFINICIONES BÁSICAS Metodología.-es aquella guía que se sigue a fin realizar las acciones propias de una investigación. Desarrollo.-el término hace referencia a explicar una teoría o idea, ampliándola y atravesando por todos sus pasos lógicos. Software.-es el soporte lógico e inmaterial que permite que la computadora pueda desempeñar tareas inteligentes. En conclusión: Metodología de desarrollo de software es un marco de trabajo usado para estructurar, planificar y controlar el proceso de desarrollo en sistemas de información.
3. TIPOS DE MODELOS MODELO EN CASCADA.-ordena rigurosamente las etapas del ciclo de vida del software, de tal forma que el inicio de cada etapa debe esperar la finalización de la anterior. Las fases son las siguientes: Análisis de requerimientos.-En esta fase se analizan las necesidades de los usuarios finales del software para determinar qué objetivos debe cubrir. Diseño del Sistema.- Se descompone y organiza el sistema en elementos que puedan elaborarse por separado, aprovechando las ventajas del desarrollo en equipo. Diseño del Programa.- Es la fase en donde se realizan los algoritmos necesarios para cumplir con el objetivo propuesto. Codificación.- Es la fase en donde se implementa el lenguaje de programación que utilizaremos. Pruebas.- Los elementos, ya programados, se ensamblan para componer el sistema y se comprueba que funciona correctamente y que cumple con los requisitos. Verificación.- Es la fase en donde el usuario final ejecuta el sistema. Mantenimiento.-Se utilizara en caso no cumpla con todos los requerimientos.
4. Desventajas: Cualquier error de diseño detectado en la etapa de prueba conduce necesariamente al rediseño y nueva programación del código afectado, aumentando los costos del desarrollo.
5. MODELO DE PROTOTIPOS.- debe ser construido en poco tiempo, usando los programas adecuados y no se debe utilizar mucho dinero pues a partir de que éste sea aprobado nosotros podemos iniciar el verdadero desarrollo del software. Fases: Plan rápido Modelado, diseño rápido Construcción del Prototipo Desarrollo, entrega y retroalimentación Comunicación Desventajas: El usuario tiende a crearse falsas expectativas cuando ve el proyecto terminado. A causa de la intención de crear un prototipo de forma rápida, se suelen desatender aspectos importantes, tales como la calidad y el mantenimiento a largo plazo.
6. MODELO EN ESPIRAL.-Las actividades de este modelo se conforman en una espiral, en la que cada bucle o iteración representa un conjunto de actividades. Las actividades no están fijadas a priori, sino que las siguientes se eligen en función del análisis de riesgo, comenzando por el bucle interior. Pasos: -Determinar o fijar objetivos: -Análisis del riesgo -Desarrollar, verificar y validar(probar) Tareas de la actividad propia y de prueba. Análisis de alternativas e identificación resolución de riesgos. Dependiendo del resultado de la evaluación de los riesgos, se elige un modelo para el desarrollo, el que puede ser cualquiera de los otros existentes, como formal, evolutivo, cascada, etc. -Planificar: Revisamos todo lo hecho, evaluándolo, y con ello decidimos si continuamos con las fases siguientes y planificamos la próxima actividad. Desventajas: Genera mucho tiempo en el desarrollo del sistema Modelo costoso Requiere experiencia en la identificación de riesgos
7. Proceso unificado de desarrollo.-se caracteriza por estar dirigido por casos de uso, centrado en la arquitectura y por ser iterativo e incremental. Características: Iterativo e Incremental: porque esta compuesto de cuatro fases denominadas Inicio, Elaboración, Construcción y Transición. Cada una de estas fases es a su vez dividida en una serie de iteraciones Dirigido por los casos de uso: En el Proceso Unificado los casos de uso se utilizan para capturar los requisitos funcionales y para definir los contenidos de las iteraciones. Centrado en la arquitectura: El Proceso Unificado asume que no existe un modelo único que cubra todos los aspectos del sistema. Por dicho motivo existen múltiples modelos y vistas que definen la arquitectura de software de un sistema. Enfocado en los riesgos:ElProceso Unificado requiere que el equipo del proyecto se centre en identificar los riesgos críticos en una etapa temprana del ciclo de vida.