Relaciones entre administración de requerimientos y modelos de ciclos de vida

Resultado de imagen para ciclos de vida del software
La ingeniería de software contiene tres elementos básicos:


  • la metodología (o conjunto de métodos) los cuales establecen como construir el software.
  • Los paradigmas o modelos que definen la secuencia en la que se aplican los métodos.
  • Las herramientas utilizadas para dar soporte a los métodos.


Un modelo es una secuencia de pasos a seguir para alcanzar el final de un proyecto. Al
modelo o proceso de desarrollo de software se le conoce como ciclo de vida del software,
porque describe la vida de un producto de software desde su concepción hasta su
implantación, entrega, utilización y mantenimiento.


Los métodos de la ingeniería de software abarcan las siguientes tareas: 
  1. Planeación y estimación del proyecto
  2. Recolección de los requerimientos
  3. Análisis de los requerimientos del problema
  4. Diseño de las estructuras de datos
  5. arquitectura de los programas y procedimientos algorítmicos
  6. Codificación
  7. Prueba
  8. Implantación
  9. Mantenimiento

Roles de los desarrolladores de software


Modelo en Cascada


Esta metodología es lineal y consta de algunas fases que hay que seguir y completar para poder avanzar a la fase siguiente. No es precisamente la mejor metodología, pero si se utiliza de forma correcta los resultados pueden ser muy buenos. Esta compuesta por las siguientes fases:


1. Requerimientos

2. Diseño
3. Implementación y Desarrollo
4. Integración
5. Pruebas o Validación
6. Despliegue o Instalación
7. Mantenimiento




Modelos evolutivos


Los evolutivos son modelos iterativos, permiten desarrollar versiones cada vez más completas y complejas, hasta llegar al objetivo final deseado; incluso evolucionar más allá, durante la fase de operación. Los modelos “Iterativo Incremental” y “Espiral” (entre otros) son dos de los más conocidos y utilizados del tipo evolutivo.



Modelos de componentes re-utilizables


Es el proceso de creación de sistemas de software a partir de un software existente, en lugar de tener que rediseñar desde el principio.

Podemos definirla como el empleo de elementos de software u otros de nivel superior, creados en desarrollo anteriores, para de este modo reducir los tiempos y simplificar el desarrollo del software, mejorando la calidad y reduciendo su costo.

· Elementos que intervienen en la reutilización son:

  • Especificaciones de requerimientos previamente concebidas
  • Diseños previamente definidos (Estructuras de datos, algoritmos, etc.)
  • Código probado y depurado con anterioridad
  • Planes y casos de prueba previamente utilizados
  • Personal cualificado (aprovechamiento de la experiencia de los ingenieros de un proyecto a otro)
  • Paquetes de software de propósito general