Fases del desarrollo disciplinas
Modelado del negocio.
El objetivo es establecer un canal de comunicación entre los ingenieros del negocio y los ingenieros del software.
Los ingenieros del software deben conocer la estructura y dinámica de la organización objetivo (el cliente), los problemas actuales y sus posibles mejoras.
Se plasma en la identificación del modelo del dominio en el que se visualizan los aspectos básicos del dominio de aplicación.
Requisitos.
El objetivo es describir que es lo que tiene que hacer el sistema y poner a los desarrolladores y al cliente de acuerdo en esta descripción.
Análisis y diseño.
Describe como el software será realizado en la fase de implementación.
Se plasma en un modelo de diseño que consiste en una serie de clases (agrupadas en paquetes y subsistemas) con interfaces bien definidos.
También contiene descripciones de cómo los objetos colaboran para realizar las acciones incluidas en los casos de uso.
Implementación.
Se implementan las clases y objetos en términos de componentes (ficheros fuentes, binarios, ejecutables, entre otros).
Prueba.
Se comprueba que el funcionamiento es correcto analizando diversos aspectos: los objetos como unidades, la integración entre objetos, la implementación de todos los requisitos, entre otros.
Despliegue.
Se crea la versión externa del producto, se empaqueta, se distribuye y se instala en el lugar de trabajo. También se da asistencia y ayuda a los usuarios.
Gestión de configuraciones y cambios.
Gestiona aspectos como los sistemas de control de versiones.
Controla las peticiones de cambios clasificándolas según su estado (nueva, registrada, aprobada, asignada, completa, entre otros).
Los datos se almacenan en una base de datos y se pueden obtener informes periódicos.
Herramientas como Rational ClearQuest o Bugzilla.
Gestión del proyecto.
Encargada de definir los planes del proyecto global, los planes de fase y los planes de iteración.
Entorno.
Se centra en las actividades necesarias para configurar el proceso de un proyecto.
El objetivo es proveer a la organización de desarrollo software de un entorno de trabajo (que incluye procedimientos y herramientas) que soporten al equipo de desarrollo.