Profesor Profesor Abraham Oliver Oliver Jara Miranda Miranda ± JornSoft JornSoft S.A.
Introducción a Rational Unified Process (RUP) www.dsic.upv.es/~letelier/pub
1
III. Proceso de Desarrollo de SW basado en UML
¿Qué es un Proceso de Desarrollo de SW?
Define Quién debe hacer Qué ué,, Cuándo y Cómo debe hacerlo
Requisitos nuevos o modificados
Proceso de Desarrollo de Software
Sistema nuevo o modificado
No existe un proceso de software universal. universal . Las características de cada proyecto (equipo de desarrollo, d esarrollo, recursos, etc.) exigen que el proceso sea configurable 2
www.dsic.upv.es/~letelier/pub
III. Proceso de Desarrollo de SW basado en UML
Rational Unified Process (RUP) Rational Unified Process 1998
Rational Objectory Process 1996-1997
Objectory Process
Pruebas funcionales Pruebas de desempeño Gestión de requisitos Gestión de cambios y configuración Ingeniería de Negocio Ingeniería de datos Diseño de interfaces
UML
1987-1995
Enfoque Ericsson 3 www.dsic.upv.es/~letelier/pub
III. Proceso de Desarrollo de SW basado en UML
FA SES
DEL RUP
4 www.dsic.upv.es/~letelier/pub
III. Proceso de Desarrollo de SW basado en UML
Fases
e Hitos (Milestones)
Inception
Elaboration
Objetivos (Vision)
Construction
A rquitectura
Transition
Capacidad Operacional Inicial
Release del Producto
tiempo
www.dsic.upv.es/~letelier/pub
5
III. Proceso de Desarrollo de SW basado en UML
Elementos en RUP
Workflows (Disciplinas) Workflows Primarios
Business Modeling (Modado del Negocio) Requirements (Requisitos) A nalysis & Design ( A nálisis y Diseño) Implementation (Implementación) Test (Pruebas) Deployment (Despliegue)
Workflows de
Apoyo
Environment (Entorno) Project Management (Gestión del Proyecto) Configuration & Change Management (Gestión de Configuración y Cambios)
www.dsic.upv.es/~letelier/pub
6
III. Proceso de Desarrollo de SW basado en UML
... Elementos en RUP Workflow, Workflow Detail , Workers, A ctividades y A rtefactos Ejemplo Workflow: Requirements
Workflow Detail: A nalyse the Problem
Workers www.dsic.upv.es/~letelier/pub
A rtefactos A ctividades
7
III. Proceso de Desarrollo de SW basado en UML
... Elementos en RUP Workers A nalyst
workers
Business-Process A nalyst Business Designer Business-Model Reviewer Requirements Reviewer System A nalyst Use-Case Specifier User-Interface Designer
Developer workers A rchitect A rchitecture Reviewer Capsule Designer Code Reviewer Database Designer Design Reviewer Designer Implementer Integrator www.dsic.upv.es/~letelier/pub
Testing professional workers
Test Designer Tester
Manager workers
Change Control Manager Configuration Manager Deployment Manager Process Engineer Project Manager Project Reviewer
Other workers
A ny
Worker Course Developer Graphic A rtist Stakeholder System A dministrator Technical Writer Tool Specialist 8
III. Proceso de Desarrollo de SW basado en UML
... Elementos en RUP Workers, A ctividades, A rtefactos Ejemplo: System A nalyst Worker
www.dsic.upv.es/~letelier/pub
9
III. Proceso de Desarrollo de SW basado en UML
... Elementos en RUP A rtefactos
Resultado parcial o final que es producido y usado durante el proyecto. Son las entradas y salidas de las actividades
Un artefacto puede ser un documento, un modelo o un elemento de modelo
Conjuntos de A rtefactos
Business Modeling Set
Deployment Set
Requirements Set
Project Management Set
Configuration & Change Management Set
Environment Set
A nalysis
& Design Set
Implementation Set
Test Set
www.dsic.upv.es/~letelier/pub
10
III. Proceso de Desarrollo de SW basado en UML
... Elementos en RUP A rtefactos,
Workers, A ctividades
Ejemplo:Business Modeling A rtifact Set
www.dsic.upv.es/~letelier/pub
11
III. Proceso de Desarrollo de SW basado en UML
Características Esenciales de RUP
Proceso Dirigido por los Casos de Uso
Proceso Iterativo e Incremental
Proceso Centrado en la A rquitectura
www.dsic.upv.es/~letelier/pub
12
III. Proceso de Desarrollo de SW basado en UML
Proceso dirigido por los Casos de Uso Capturar, definir y validar los casos de uso
Requisitos Análisis
& Diseño
Implementación Pr uebas
www.dsic.upv.es/~letelier/pub
Casos de Uso integr an el tr abajo
Realizar los casos de uso Verificar que se satisfacen los casos de uso
13
III. Proceso de Desarrollo de SW basado en UML
... Proceso dirigido por los Casos de Uso trace»
«
Caso
de Uso
«
trace»
Realización de Análisis
«
Realización de Diseño
trace»
«
trace»
Pruebas Unitarias
X
Pruebas Funcionales Caso
de Prueba
[The Unified Software Development Process. I. Jacobson, G. Booch and J. Rumbaugh. A ddison-Wesley, 1999] www.dsic.upv.es/~letelier/pub
14
III. Proceso de Desarrollo de SW basado en UML
... Proceso dirigido por los Casos de Uso
www.dsic.upv.es/~letelier/pub
15
III. Proceso de Desarrollo de SW basado en UML
Proceso Iterativo e Incremental
El ciclo de vida iterativo se basa en la evolución de prototipos ejecutables que se muestran a los usuarios y clientes En el ciclo de vida iterativo a cada iteración se reproduce el ciclo de vida en cascada a menor escala Los objetivos de una iteración se establecen en función de la evaluación de las iteraciones precedentes
www.dsic.upv.es/~letelier/pub
16
III. Proceso de Desarrollo de SW basado en UML
... Proceso Iterativo e Incremental
Las actividades se encadenan en una minicascada con un alcance limitado por los objetivos de la iteración Análisis Diseño Codific.
n veces
www.dsic.upv.es/~letelier/pub
Pruebas e Integración 17
III. Proceso de Desarrollo de SW basado en UML
... Proceso Iterativo e Incremental
Cada iteración comprende:
Planificar la iteración (estudio de riesgos) A nálisis de los Casos de Uso y escenarios Diseño de opciones arquitectónicas Codificación y pruebas. La integración del nuevo código con el existente de iteraciones anteriores se hace gradualmente durante la construcción Evaluación de la entrega ejecutable (evaluación del prototipo en función de las pruebas y de los criterios definidos) Preparación de la entrega (documentación e instalación del prototipo)
www.dsic.upv.es/~letelier/pub
18
III. Proceso de Desarrollo de SW basado en UML
Proceso Iterativo e Incremental Enfoque
Secuencial
Enfoque
Iterativo e Incremental
www.dsic.upv.es/~letelier/pub
19
III. Proceso de Desarrollo de SW basado en UML
... Proceso Iterativo e Incremental Grado de Finalización de Artefactos
www.dsic.upv.es/~letelier/pub
20
III. Proceso de Desarrollo de SW basado en UML
Proceso Centrado en la A rquitectura
A rquitectura
de un sistema es la organización o estructura de sus partes más relevantes Un arquitectura ejecutable es una implementación parcial del sistema, construida para demostrar algunas funciones y propiedades RUP establece refinamientos sucesivos de una arquitectura ejecutable, construida como un prototipo evolutivo
Inception
Elaboration
Construction
Transition
A rchitecture www.dsic.upv.es/~letelier/pub
21
Fases,
Release, Base Line, Generación ciclo de desarrollo
release (producto al final de una iteración)
ciclo de evolución
base line
generación
(release asociada a un hito)
(release final de un ciclo de desarrollo) 22
www.dsic.upv.es/~letelier/pub
III. Proceso de Desarrollo de SW basado en UML
Esfuerzo y dedicación por Fases en RUP
Inicio
Elaboración
Construcción
Transición
Esfuerzo
5%
20 %
65 %
10%
Tiempo Dedicado
10 %
30 %
50 %
10%
23 www.dsic.upv.es/~letelier/pub
III. Proceso de Desarrollo de SW basado en UML
Distribución de Recursos por Fases en RUP
24 www.dsic.upv.es/~letelier/pub
Fin
Introducción a Rational Unified Process (RUP) Patricio Letelier
[email protected]
Departamento Sistemas Informáticos y Computación (DSIC) Universidad Politécnica de Valencia (UPV) - España
www.dsic.upv.es/~letelier/pub
25