Rational Unified Process - RUP

Anuncio
1
INGENIERÍA DE SOFTWARE
Rational Unified Process RUP
Rubby Casallas
Departamento de Sistemas y Computación
Facultad de Ingeniería
Universidad de los Andes
Referencias
2

http://www.rational.com/

http://www-306.ibm.com/software/awdtools/rup/

The Rational Unified Process: An Introduction. Philippe Kruchten.
Addison-Wesley Professional; 2 edition (March 14, 2000)
Agenda
3





Introducción
Principio 1: Iterativo e incremental
Disciplinas y Actividades
Principio 2: Guiado por los casos de uso
Principio 3: Centrado en la arquitectura
Introducción: Principios
4



Principio 1: Iterativo e incremental
Principio 2: Guiado por los casos de uso
Principio 3: Centrado en la arquitectura
Introducción: Principios (cont.)
5

Precisa artefactos


entregables concretos, basados en UML
Define roles

precisa quienes intervienen en las actividades
Introducción: Ciclo de Vida Global
6

Varios ciclos: cada uno termina con un producto
utilizable (POR ESTO ES INCREMENTAL PRINCIPIO 1)

4 Fases: termina con un hito donde se debe tomar una
decisión importante
 Varias
Iteraciones: cada una termina con el cumplimiento
de un objetivo preciso que puede ser:



La producción de un prototipo para validar con el usuario
El refinamiento de un caso de uso
La mitigación de un riesgo
 POR
ESTO ES ITERATIVO
Agenda
7
 Introducción




Principio 1: Iterativo e incremental
Disciplinas y Actividades
Principio 2: Guiado por los casos de uso
Principio 3: Centrado en la arquitectura
PRINCIPIO 1: Incremental e Iterativo
8


Es incremental porque en cada ciclo se agrega un
incremento que es un conjunto de casos de uso.
Es iterativo porque cada fase se realiza en varias
iteraciones cada una con un objetivo definido.
Un Ciclo
9
INICIO
ELABORACION
CONSTRUCCION
TRANSICION
Cuatro grandes fases.
Al final del ciclo debe haber un producto
funcionando que satisface un conjunto de casos
de uso
Propósito de las fases
10
INICIO
ELABORACION
CONSTRUCCION
TRANSICION
Definir los
objetivos del
cicIo
Definir la
arquitectura del
producto
Desarrollar el
producto
Liberar el
producto
Propósito de las fases
11
INICIO
ELABORACION
CONSTRUCCION
TRANSICION
Definir los
objetivos del
cicIo
Definir la
arquitectura del
producto
Desarrollar el
producto
Para lograr el propósito de cada fase se
pueden realizar varias iteraciones.
Liberar el
producto
Una Iteración
12



Conformada por un conjunto de actividades clasificadas en nueve
disciplinas:
Disciplinas de ingeniería:
1. Disciplina de modelaje del negocio
2. Disciplina de requerimientos
3. Disciplina de análisis y diseño
4. Disciplina de implementación
5. Disciplina de pruebas
6. Disciplina de despliegue
Disciplinas de soporte:
7. Disciplina de administración de la configuración y control de cambios
8. Disciplina de administración de proyectos
9. Disciplina de entorno y soporte del ambiente de desarrollo
Una Iteración (cont.)
13
 Las disciplinas de ingeniería siguen un modelo en cascada
Business
Modeling
Requirements
Analysis &
Design
Implementation
Test
Deploy
Una Iteración (cont.)
14

Las disciplinas de soporte se realizan a lo largo de
toda la iteración
Business
Modeling
Requirements
Analysis &
Design
Implementation
Test
Deploy
Entorno y Soporte
Administration de Configuración y Cambios
Administration del Proyecto
Una Iteración (cont.)
15
Business
Modeling
Requirements
Analysis &
Design
Implementation
Dependiendo de la fase se
hace más o menos énfasis
en la disciplina
Test
Deploy
Iteraciones en la fase de Inicio
16
Business
Modeling
Requirements
Analysis &
Design
Implementation
Se hace un plan de fases
Se identifican los principales
casos de uso
Se identifican los riesgos
Test
Deploy
Iteraciones en la fase de Elaboración
17
Business
Modeling
Requirements
Analysis &
Design
Implementation
Se hace un plan de proyecto
Se completan los casos de uso
Se eliminan los riesgos
Test
Deploy
Iteraciones en la fase de Construcción
18
Business
Modeling
Requirements
Analysis &
Design
Implementation
Test
Se elabora un producto
totalmente operativo y eficiente
Se escribe el manual de usuario
Deploy
Iteraciones en la fase de Transición
19
Business
Modeling
Requirements
Analysis &
Design
Implementation
Test
Se implanta el producto en el sitio del cliente
Se entrena a los usuarios.
Deploy
Iteraciones (cont.)
20

Cada iteración comprende:
Planificar la iteración
 Estudio de riesgos
 Análisis de los casos de uso y escenarios
 Diseño de opciones arquitectónicas
 Codificación y pruebas
 Evaluación de la entrega ejecutable
 Preparación de la entrega

El famoso diagrama RUP
21
CYCLE
Agenda
22
 Introducción
 Principio 1: Iterativo e incremental



Disciplinas y Actividades
Principio 2: Guiado por los casos de uso
Principio 3: Centrado en la arquitectura
Disciplinas y Actividades
23



Cada disciplina puede tener asociada varias
actividades (Steps)
Cada actividad se describe como un flujo de
trabajo (Workflow)
Cada flujo de trabajo describe:
el qué: los entregables o artefactos
 el cómo: las tareas
 el quién: los roles

Anexo: Disciplinas y actividades
Ejemplo de un flujo de trabajo
24
Se expresa en un diagrama
de actividades UML
Tomado de: http://www-128.ibm.com/developerworks/rational/library/5383.html
Ejemplo de un flujo de trabajo
25
Se expresa en un diagrama
de actividades UML
Tomado de: http://www-128.ibm.com/developerworks/rational/library/5383.html
Ejemplo de un flujo de trabajo
detallado
26
Tomado de: http://www-128.ibm.com/developerworks/rational/library/5383.html
Ejemplo de un flujo de trabajo
detallado
27
Artefactos
Roles
Tareas
Roles
28

Analyst
 Business-Process Analyst
 Business Designer
 Business-Model Reviewer
 Requirements Reviewer
 System Analyst
 Use-Case Specifier
 User-Interface Designer

Developer
 Architect
 Architecture Reviewer
 Capsule Designer
 Code Reviewer
 Database Designer
 Design Reviewer
 Designer
 Implementer
 Integrator
Roles (cont.)
29

Testing professional



Test Designer
Tester
Manager






Change Control Manager
Configuration Manager
Process Engineer
Deployment Manager
Project Manager
Project Reviewer

Other






Course Developer
Graphic Artist
Stakeholder
System Administrator
Technical Writer
Tool Specialist
Artefactos
30
 Resultado parcial o final que es producido y utilizado
durante el proyecto.
 Entradas y salidas de las actividades
 Puede ser un documento, un modelo o un elemento de
modelo
Artefactos (cont.)
31
 Conjuntos de Artefactos









Business Modeling
Requirements
Analysis & Design
Implementation
Test
Deployment
Project Management
Configuration & Change Management
Environment
32
Ejemplo: Artefactos de la disciplina de
modelaje del negocio
Agenda
33
 Introducción
 Principio 1: Iterativo e incremental
 Disciplinas y Actividades


Principio 2: Guiado por los casos de uso
Principio 3: Centrado en la arquitectura
PRINCIPIO 2: Guiado por los casos de uso
34




Iteraciones y Casos de Uso
Fases y Casos de Uso
Roles y Casos de Uso
Rastreabilidad de los Casos de Uso
35
Business
Modeling
Requirements
Analysis &
Design
Implementation
Test
Deploy
Fases y Casos de Uso
36
Roles y Casos de Uso
37
Rastreabilidad de los Casos de Uso
38
«trace»
Caso de Uso
«trace»
Realización de Análisis
Realización de Diseño
«trace»
«trace»
Pruebas
Unitarias
Pruebas Funcionales
X
Caso de Prueba
[The Unified Software Development Process. I. Jacobson, G. Booch and J. Rumbaugh. Addison-Wesley]
Agenda
39
 Introducción
 Principio 1: Iterativo e incremental
 Disciplinas y Actividades
 Principio 2: Guiado por los casos de uso

Principio 3: Centrado en la arquitectura
PRINCIPIO 3: Centrado en la
arquitectura
40






Arquitectura 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 enfatiza la definición de una arquitectura básica desde las
primeras iteraciones
La arquitectura evoluciona en cada iteración
Se van capturando restricciones de la arquitectura a medida que se
avanza
Gradualmente se van identificando los componentes y su reutilización
PRINCIPIO 3: Centrado en la
arquitectura (cont.)
41



La definición de la arquitectura no es un proceso
prescriptivo
Existe un conjunto de guías
Hay extensiones de RUP para tipos de aplicaciones
específicos como por ejemplo J2EE
La Arquitectura y las Fases
42

RUP establece refinamientos sucesivos de una
arquitectura ejecutable, construida como un prototipo
evolutivo
Inception
Elaboration
Construction
Architecture
Transition
Proceso para definir una arquitectura
43
Tomado de:http://www.enterpriseunifiedprocess.com/essays/enterpriseArchitecture.html
44
45
Anexo: Disciplinas y actividades
46


Tomado de:
www.x-tier.com/public/RUPUPIn10EasySteps.doc
Process Disciplines
Business Modeling
47
(Business Understanding)
Requirements
(User/System
Requirements
Gathering)
Steps
Human Actions
Artifacts Produced*
1.
2.
For initial iteration, ELICIT Business Rules, Business
Needs, Business Understanding ; for all
subsequent x iterations DETAIL Business Rules,
Needs, Understanding
For initial iteration, IDENTIFY all significant Business
Use-Cases, Specifications, Models, Rules,
Vision, and Architecture; for all subsequent x
iterations DETAIL Business Use-Cases,
Specifications, Models, Rules, Vision,
Architecture
Target Organizational Assessment
Document, Business Glossary
Document, Business Rules
Document, Business UseCase Model, Business Vision,
Object Model, Business
Architecture Document,
Supplementary Business
Specification, Business
Glossary
3.
4.
5.
For initial iteration, ELICIT Requirements (Requests),
& Rules; for all subsequent x iterations DETAIL
Requirements (Requests), & Rules.
For initial iteration, IDENTIFY all significant Use-Cases
and classify by risk; for all subsequent x
iterations DETAIL Use-Cases (high risk Usecases first), Specifications, Models,
Realizations to match all lower-level Analysis
Classes and Analysis Diagrams and higherlevel Business Rules, & Requests.
PRIORITIZE or REPRIORITIZE USE-CASES by RISK.
Stakeholder Requests
Requirements Management
Plan, Supplementary
Specification, Use-Case
Specification, Use-Case
Model, Glossary, Software
Requirements Specification,
Storyboard, Use-Case
Package Diagrams, User
Interface Prototype
Process Disciplines
Analysis & Design
48
(Behavioral & Structural
Modeling)
Steps
6.
7.
8.
9.
Human Actions
Artifacts Produced*
For initial iteration, CREATE Collaboration Diagrams,
Analysis Classes, Analysis Packages, Charts,
Realizations, Definitions, & Analysis Models;
for all subsequent x iterations DETAIL
Collaboration Diagrams, Analysis Classes,
Analysis Packages, Charts, Realizations,
Definitions, & Analysis Models to match all
lower-level Design Class Diagrams and higherlevel Use-Case Models.
For initial iteration, CREATE Sequence Diagrams,
Analysis Classes, Analysis Packages, Charts,
Realizations, Definitions, & Analysis Models;
for all subsequent x iterations DETAIL Sequence
Diagrams, Classes, Packages, Charts,
Realizations, Definitions, & Models to match all
lower-level Design Class Diagrams and higherlevel Use-Case Models.
For initial iteration, CREATE Design Classes & Class
Diagrams; for all subsequent x iterations ns
DETAIL Design Classes & Class Diagrams to
match all higher-level Analysis Classes,
Diagrams, & Models.
For initial iteration, CREATE Data Models; for all
subsequent x iterations DETAIL Data
Models.
Communication Diagrams, Object
Diagrams, Sequence
Diagrams, State Charts,
Activity Diagrams, Package
Diagrams, Class Diagrams,
Software Architecture
Document, Deployment
Model, Analysis Model,
Design Model, Proof-ofConcept Prototype, UseCase Realizations, Design
Packages, Subsystem
Design Packages, Design
Classes, Unit Test Classes,
Analysis Classes, Data
Models, Data Definitions
Process Disciplines
49
Steps
Human Actions
Artifacts Produced*
Implementation
(Process Modeling)
10.
For initial iteration, CREATE Component
Diagrams & Models; for all subsequent x
iterations DETAIL Component Diagrams
& Models to reflect any changes to
Design Classes, Diagrams, & Models.
Implementation
Model, Component
Diagrams
Test
(Quality Assurance)
11.
For initial iteration, CREATE Class Diagrams,
Logs, Lists, Components, Classes &
Architecture; for all subsequent x
iterations DETAIL Class Diagrams, Logs,
Lists, Components, Classes &
Architecture.
Test Cases, Test Classes, Test
Plan, Test Evaluation
Summary, Test Scripts,
Test Ideas List,
Workload Analysis
Model, Test Data, Test
Results, Test Log, Test
Guidelines, Test Classes,
Test Components, Test
Interface Specification,
Test Automation
Architecture, Test
Environment
Configuration
Process Disciplines
Deployment
50
(Environmental
Modeling)
Steps
12.
13.
Human Actions
Artifacts Produced*
For initial iteration, CREATE Deployment
Diagrams, Builds, Instructions, Plans,
Notes, Releases; for all subsequent x
iterations DETAIL Deployment Diagrams,
Builds, Instructions, Plans, Notes,
Releases.
For initial iteration, CREATE Component
Diagrams, Builds, Instructions, Plans,
Notes, Releases; for all subsequent x
iterations DETAIL Component Diagrams,
Builds, Instructions, Plans, Notes,
Releases.
Deployment Diagrams,
Alpha Software Build
Releases, Beta Software
Build Releases,
Versioned Software
Build Releases, Release
Notes, Deployment
Plan, Bill of Materials,
Installation Instructions,
End-User Support
Material, Training
Materials, Artwork
Process Disciplines
Steps
Human Actions
Artifacts Produced*
Change Management
(Risk & Capacity
Planning)
14.
For initial iteration, CREATE Change
Management Plan, Requests, Findings;
for all subsequent x iterations DETAIL
Change Management Plan, Requests,
Findings.
Change Management Plan,
Change Request,
Configuration Audit
Findings
Project Management
(Resource & Time
Management)
15.
For initial iteration, CREATE Project
Management & Iteration Plans, Lists,
Records, Cases, Orders, Assessments;
for all subsequent x iterations DETAIL
Project Management & Iteration Plans,
Lists, Records, Cases, Orders,
Assessments.
Project Plan, Iteration Plan,
Business Case, Software
Development Plan,
Iteration Assessment,
Status Assessment,
Problem Resolution
Plan, Risk Management
Plan, Risk List, Work
Orders, Product
Acceptance Plan,
Measurement Plan,
Quality Assurance Plan,
Issues List, Project
Measurements, Review
Records
51
Descargar