Para adherirse a los principios de RUP, su equipo puede utilizar
Rational Systems Developer para
aplicar las prácticas probadas del ciclo de vida de desarrollo de software.
- Recopilación de requisitos y modelado de casos de uso
Los requisitos pueden tener distintos orígenes, pero los
arquitectos y los analistas del sistema deben consolidarlos en documentación de requisitos y gestionarlos. A partir de
los requisitos, el equipo puede diseñar casos de uso del sistema y comportamientos del sistema de nivel alto.
Los
equipos que utilizan Rational
RequisitePro pueden utilizar la
perspectiva Gestión de requisitos para correlacionar las definiciones de requisitos existentes con elementos de modelo
UML existentes, como por ejemplo casos de uso. También puede crear requisitos de elementos de modelo existentes o crear
elementos de modelo a partir de definiciones de requisitos existentes.
El arquitecto de software crea un modelo
de caso de uso para definir casos de uso y comportamientos del sistema y actores del sistema, así como para especificar
flujos de trabajo del usuario.
- Análisis de dominio
Los analistas y los arquitectos describen el dominio del sistema definiendo un modelo
funcional del sistema de nivel alto. La fase de análisis identifica los datos que se almacenarán en el sistema y cómo
se procesarán.
El arquitecto crea un modelo de análisis para describir una vista lógica de los requisitos
funcionales. Este modelo define objetos de nivel alto en el sistema y en sus interacciones.
- Diseño de arquitectura detallado
El arquitecto, conjuntamente con el equipo de desarrollo de software diseña la
arquitectura del sistema a nivel de detalle.
Durante el diseño detallado, el equipo de desarrollo toma el modelo
de nivel alto creado durante las actividades de análisis y crea el modelo de diseño. Los desarrolladores añaden
detalles al modelo para describir la implementación del sistema, como por ejemplo tecnologías y construcciones de
programación que se utilizan para la persistencia, seguridad, anotaciones y despliegue.
El modelo de diseño puede
refinarse más aplicando patrones de diseño probados y transformaciones automatizadas de modelo a modelo.
- Implementación
El equipo de desarrollo utiliza el diseño aprobado para implementar la aplicación.
Los desarrolladores pasan del diseño a la implementación mediante transformaciones automatizadas para convertir el
modelo en código (como por ejemplo C++,
Java o CORBA IDL) y continúan
desarrollando la aplicación mediante las prestaciones de desarrollo de software en el entorno de trabajo, como por
ejemplo el Kit de herramientas de desarrollo de C y C++ y el Kit de de herramientas de desarrollo de Java.
Los
desarrolladores de aplicaciones C, C++ y Java también puede utilizar la posibilidad de visualización de UML para
explorar y desarrollar su código en una representación gráfica basada en UML de ese código.
Los desarrolladores de aplicaciones Java pueden sacar
partido de características de control y análisis de estructuras adicionales para asegurarse de que el código se ajusta
a las reglas estructurales predefinidas y definidas por el usuario. Además, los desarrolladores pueden buscar código
Java para patrones estructurales conocidos mediante una característica automatizada de búsqueda de patrones llamada
Descubrimiento de arquitectura.