Metodologías de Desarrollo de Software: Características, Tipos y Fases
Enviado por Programa Chuletas y clasificado en Diseño e Ingeniería
Escrito el en español con un tamaño de 5,42 KB
Metodología de Desarrollo de Sistemas de Información
Una metodología es un conjunto de filosofías, fases, procedimientos, reglas, técnicas, herramientas, documentación y otros aspectos de formación para los desarrolladores de sistemas de información.
Objetivos de una Metodología
- Registrar los requisitos de un sistema de información de una forma adecuada.
- Proporcionar un método de desarrollo de forma que se pueda controlar el progreso y construir un sistema bien documentado y fácil de mantener.
- Ayudar a identificar cualquier cambio necesario dentro del proceso de desarrollo.
- Proporcionar un sistema satisfactorio para todas las personas afectadas.
Características de una Metodología
- Existencia de reglas predefinidas.
- Cobertura total del ciclo de desarrollo.
- Verificaciones intermedias.
- Planificación y control.
- Comunicación efectiva.
- Utilización sobre un abanico amplio de proyectos.
- Herramientas CASE.
- Fácil información.
- Actividades que mejoren el proceso.
- Soporte al mantenimiento.
- Soporte de la reunión SW.
Tipos de Metodologías
- Desarrollo convencional.
- Metodología estructurada.
- Orientación a Objetos (RUP).
- Metodologías en tiempo real.
Problemas en la Captura de Requisitos
Los problemas comunes en la captura de requisitos se pueden clasificar en:
- Problemas de Alcance: Límites del sistema mal definidos.
- Problemas de Comprensión: Los clientes no están seguros de lo que necesitan.
- Problemas de Volatilidad: Los requisitos cambian con el tiempo.
JAD (Joint Application Design/Development)
JAD es una técnica de definición de requisitos y de diseño de la interfaz de usuario, basada en reuniones participativas entre clientes, directivos y desarrolladores. Esta técnica se beneficia de su uso en modelos incrementales, ya que permite pulir poco a poco el sistema en función de las necesidades del cliente. Bien utilizada, permite identificar conflictos entre requisitos y eliminar aquellos menos útiles.
Fases de una Entrevista (Aplicable a JAD)
- Preparación: Investigar la situación, identificar a los entrevistados, preparar el objetivo y los contenidos, planificar el lugar y la hora.
- Realización: Apertura, desarrollo y término de la entrevista.
- Análisis: Pasar las notas a limpio, reorganizar la información, contrastar con otras entrevistas, evaluación de la entrevista.
RUP (Rational Unified Process)
RUP es un proceso de desarrollo de software que se basa en el modelo iterativo e incremental.
Fases de RUP
- Inicio: Se definen los casos de uso (10-20%), se identifican los actores y escenarios, se establece el ámbito del proyecto y sus límites, y se crea un documento de visión general de los requerimientos del proyecto.
- Elaboración: Se analiza el dominio del problema, se establecen los cimientos de la arquitectura, se desarrolla el plan del proyecto y se eliminan los mayores riesgos.
- Construcción: Se optimizan los recursos, se consiguen versiones funcionales, modelos completos de casos de uso, análisis, diseño, despliegue e implementación, y se actualiza el caso de negocio.
- Transición: Se crea un prototipo operacional, se generan documentos legales, se completa el caso de negocio y se describe la arquitectura completa y corregida.
Artefacto
Un artefacto es un trozo de información que es producido, modificado o usado durante un proceso de desarrollo del software.
Factores que Determinan la Calidad del Software (SW)
- Características operativas.
- Capacidad de soportar cambios.
- Adaptabilidad a nuevos entornos.
Ingeniería de Software (INS)
La ingeniería de software (INS) supone la aplicación del conocimiento científico al diseño y construcción de software, y la documentación asociada requerida para su desarrollo, operación y mantenimiento.
Ciclo de Vida del Software
El ciclo de vida se refiere a las etapas por las que atraviesa el software a lo largo de su existencia.
Tipos de Ciclos de Vida
- Clásico o en cascada.
- Clásico con prototipado.
- Programación automática.
- Modelos evolutivos: Incremental, Espiral, Modelo en ensamblaje de componentes, Extreme Programming.
Especificación de Requerimientos del Software
La especificación de requerimientos del software forma parte de la documentación asociada al software. Ayuda al cliente a describir claramente lo que desea mediante cierto software y ayuda a los desarrolladores a entender al cliente.
Características de una Buena Especificación de Requisitos
- Correcta.
- No ambigua.
- Completa.
- Verificable.
- Consistente.
- Modificable.
- Concisa.
- Organizada.
Qué NO Debe Incluirse en una Especificación de Requisitos
- Requisitos de proyecto.
- Diseños.
- Planes de garantía del producto.