Triángulo de Desarrollo de
software: UML, PUDS y
Rational Rose
Prof. Mg. José Antonio Ogosi A.
1
Agenda
• Triángulo de Desarrollo de software.
• Metodologías de desarrollo de software.
– Ciclos de vida del software.
– El Proceso Unificado de Desarrollo PUD.
• Herramienta Visual Rational Rose.
2
El Triángulo de Desarrollo de Software
Concepción Elaboración Construcción Transición
Metodología de
desarrollo de
software: PUD
Herramienta
Notación Visual
3
METODOLOGÍA DE
DE DESARROLLO DE
SOFTWARE
4
Descripción del Ciclo de vida del
Software según la norma ISO 12207-1
• Las actividades a realizar durante el ciclo de vida
del software se agrupan en cinco procesos
principales, ocho procesos de soporte y cuatro
procesos de la organización, así como un proceso
especial que permite adaptar el ciclo de vida a
cada proyecto concreto.
• A destacar que la norma no recomienda ningún
modelo concreto de ciclo de vida, ni de gestión del
software, ni detalla cómo realizar ninguna de las
actividades.
5
Ciclo de vida del Software
(ISO 12207-1)
PROCESOS PRINCIPALES PROCESOS DE SOPORTE
DOCUMENTACIÓN
ADQUISICIÓN GESTIÓN DE CONFIGURACIÓN
ASEGURAMIENTO DE CALIDAD
SUMINISTRO
VERIFICACIÓN
VALIDACIÓN
EXPLOTACIÓN REVISIÓN CONJUNTA
DESARROLLO
AUDITORÍA
MANTENIMIENTO
RESOLUCIÓN DE PROBLEMAS
PROCESOS DE LA ORGANIZACIÓN
GESTIÓN INFRAESTRUCTURA
MEJORA FORMACIÓN 6
Ciclos de Vida del Software
Ciclos de Vida Clásicos:
Modelo en Cascada (Waterfall).
Modelo Incremental.
Modelo en Espiral.
Modelo Fuente.
Modelo Remolino.
Otros
La programación extrema o eXtreme
7
Scrum aplicado al desarrollo de software.
PROCESO UNIFICADO
DE DESARROLLO PUD
Concepción Elaboración Construcción Transición
8
Metodología de desarrollo PUD
9
Metodología de desarrollo
Fases
Procesos Generales Concepción Elaboración Construcción Transición
Modelo de Negocio
Requerimientos
Análisis
Diseño
Implementación
Certificación
Entrega
Procesos de Soporte
Control de cambios
Gestión del Proyecto
Entorno
Iteraciones 10
Vistas de un modelo
“Un modelo es una descripción completa de un sistema desde una perspectiva concreta”
Diagrama de Objetos
Vista de
Diagrama de Secuencia
implementación
Vista de Diagrama de Colaboración
requerimientos
Vista de Diagrama de Estado
despliegue Diagrama de Actividad
Diagrama de Componentes
Vista de
Diagrama de Despliegue
procesos
11
Herramientas de la Metodología
12
NOTACION:
Lenguaje Unificado de Modelamiento
13
El Lenguaje Unificado de Modelado
Definición:
Rumbaugh
Booch Jacobson
Odell
Clasificación Meyer
Pre y Post condiciones
Shlaer-Mellor
Ciclo de vida de objetos
Harel
Máquinas de estado
Gamma et. al.
Marcos de trabajo,
patrones, notas
Embly Wirfs-Brock
Singleton clases Responsabilidades
Fusion
Descripción de operaciones,
numeración de mensajes
15
Características del UML
- Proporciona a los desarrolladores un lenguaje de
modelamiento ampliamente aceptado y listo para usar.
- Integra las mejores prácticas del desarrollo de software.
- Permite la intercambio de modelos entre las diferentes
herramientas de software.
- Es independiente del lenguaje de programación y de
métodos y procesos particulares de desarrollo de software.
- Proporciona sus propios mecanismos de extensión
- Agrupa los conceptos de orientación a objetos definiendo
su significado.
16
Por qué aprender UML
-Porque UML es el lenguaje de modelado de objetos
estándar dominante.
-Porque es apoyado por metodólogos y empresas
importantes en Tecnologías de Información.
-Porque cuenta con la aprobación de la OMG como
notación estándar.
-Porque todas las herramientas modernas proporcionan
soporte para UML.
-Porque nos facilita el aprendizaje del enfoque orientado
a objetos pues basta con aprender este estándar y no
perdernos en toda la jungla de métodos y notaciones
existentes.
17
Breve historia del UML
- Los lenguajes de modelado
orientados al objeto
comenzaron a aparecer a
mediados de la década de '70.
Use Case
Use Case State
Diagramas de
Diagrams State
Diagrams Diagramas de
Diagrams
Component Casos de Uso Diagrams
Component
Diagramas Clases State
Diagrams de
Diagrams State
Despliegue Diagramas de
Diagrams
Diagrams
Objetos
Scenario
Scenario Scenario
Diagramas de Scenario Diagramas de
Diagrams
Diagramas de
Diagrams Diagrams
Actividad Diagrams Colaboración
Estados
21
HERRAMIENTA
•
VISUAL:
Rational Rose 22
LAS CUATRO VISTAS DE LA
ARQUITECTURA EN ROSE
• En el explorador tenemos cuatro carpetas que
representan cuatro vistas de la arquitectura del
sistema.
• Cada vista muestra una proyección de la arquitectura
y usa un conjunto de diagramas.
• Cada vista se puede estructurar en paquetes, de
manera que el diagrama Main suele estar formado
por paquetes y sus relaciones.
• Las vistas de Rose son las siguientes:
23
1. La Vista de Casos de Uso
(Use Case View)
• Que es la vista en la que se presenta el
comportamiento deseado del sistema: en
ella se encontrarán los modelos
relacionados con la captura de requisitos.
Según el proceso que hemos visto en
clase, en esta vista se ubicarían el modelo
del negocio, el modelo conceptual, el
modelo de casos de uso del sistema y los
diagramas de secuencia del sistema.
24
2. La Vista Lógica
(Logical View)
• En la que encontraríamos los modelos que
muestran el vocabulario y la funcionalidad
(estructura y comportamiento) del sistema, a
través de un conjunto de colaboraciones que
realizan los casos de uso de la vista de casos de
uso (colaboraciones que se modelan mediante
diagramas de clases y diagramas de
interacción: secuencia y colaboración).
25
3. La Vista de Componentes
(Component View)
• En la que se representa la implementación del
sistema mediante componentes, la organización
modular del software. Esta vista está relacionada
con la gestión de la configuración del software.
Los paquetes en esta vista se organizan en niveles.
Un componente está relacionado con un archivo
de software y un lenguaje de programación. Las
clases de la vista lógica se asignarían a los
componentes de la vista de componentes.
26
4. La Vista de Despliegue
(Deployment View)
27