proceso unificado de rational
TRANSCRIPT
CPDBA – CPNA – ECPMSD Miguel Arturo Valle Pelaez 2
CPDBA – CPNA – ECPMSD Miguel Arturo Valle Pelaez
CPDBA – CPNA – ECPMSD Miguel Arturo Valle Pelaez 3
¿QUÉ ES UN PROCESO DE DESARROLLO DESOFTWARE?
Define Quién debe hacer Qué, Cuándo y Cómo debe hacerlo
Requisitos nuevos
o modificadosProceso de
Desarrollo de Software
Sistema nuevo
o modificado
No existe un proceso de software universal. Las características de
cada proyecto (equipo de desarrollo, recursos, etc.) exigen que el proceso sea configurable
EL TRIANGULO DEL DESARROLLODE SOFTWARE
Proceso
Notación
HerramientaVisual
PROCESO UNIFICADO DE RATIONAL (RUP)
Ultima Versión
2003.06.00
Rational Unified Process
1998
Rational Objectory Process
1996-1997
• 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
Objectory Process
1987-1995
UML
Enfoque Ericsson
¿QUÉ ES UN DESARROLLOITERATIVO E INCREMENTAL?
El desarrollo iterativo e incremental es el proceso
de construir el sistema en pequeños pasos
Beneficios
Reducción de riesgos basado en una respuesta temprana
Mejor flexibilidad para acomodar requerimientos nuevos o modificados
Incrementar la calidad del programa
CPDBA – CPNA – ECPMSD Miguel Arturo Valle Pelaez 6
CPDBA – CPNA – ECPMSD Miguel Arturo Valle Pelaez 6
¿QUÉ ES UNA ITERACIÓN?
Una iteración es un ciclo de desarrollo que termina en la entrega
de un subconjunto de productos finales
Cada iteración pasa por todos los aspectos de desarrollo del programa
Análisis de Requerimientos
Diseño e Implementación
Prueba
Documentación
Cada entrega iterativa es una “pieza” totalmente documentada
del sistema final
CPDBA – CPNA – ECPMSD Miguel Arturo Valle Pelaez 7
Iteración preliminar
Iteración arquitect.
Iteración arquitect.
Iteración desarrollo
Iteración desarrollo
Iteración desarrollo
Iteración de transición
Iteración de transición
CPDBA – CPNA – ECPMSD Miguel Arturo Valle Pelaez 8
ITERACIONES PARA LA CONDUCCIÓNDE LA REDUCCIÓN DE RIESGOS
Riesgo inicial
Definir la iteración para consignarel mayor riesgo
Campo de acción inicial del proyecto
Planificar y desarrollar la iteración
Iteración N
Estimar la iteración
Revisión del plan
del proyecto
CPDBA – CPNA – ECPMSD Miguel Arturo Valle Pelaez 9
Revisión de la Evaluación de riesgo
Eliminación del riesgo
PROCESO DE PLANIFICACIÓNDE UNA ITERACIÓN
Identificar y priorizar los riesgos del proyecto
Seleccionar un número pequeño de escenarios que contengan los mayores riesgos
Los escenarios seleccionados son usados por:
Los desarrolladores para identificar lo que será implementado para la iteración
Los probadores para desarrollar el plan de pruebas y el procedimiento de prueba para la iteración
Al final de la iteración
Determinar qué riesgo ha sido reducido o
eliminado
Determinar si algún nuevo riesgo ha sido descubierto
Poner al día el plan para las iteraciones restantes
CPDBA – CPNA – ECPMSD Miguel Arturo Valle Pelaez 10
1
EL CICLO DE VIDA DE UNPROGRAMA
El ciclo de vida de un programa desencadena una secuencia
de ciclos de desarrollo, en la cual el resultado de estos ciclos es la generación de un producto (Ejecutable)
Cada ciclo es una sucesión de fases
Concepción
Elaboración
Construcción Transición
Concepción Elaboración Construcción Transición
CPDBA – CPNA – ECPMSD Miguel Arturo Valle Pelaez 11
1
tiempo
PROCESO UNIFICADO DE RATIONAL
CPDBA – CPNA – ECPMSD Miguel Arturo Valle Pelaez 12
1
FASES E HITOS (MILESTONES)
Inception Elaboration Construction Transition
Objetivos(Visión)
Arquitectura CapacidadOperacional
Inicial
Releasedel Producto
Tiempo
ELEMENTOS EN RUP Workflows
(Disciplinas)
Workflows
Primarios• Business Modeling (Modado del Negocio)• Requirements (Requisitos)• Analysis & Design (Aná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)
TRABAJADOR
Un trabajador define el comportamiento y las responsabilidades de un individuo.
Es como un “sombrero” que la persona usa durante
el proyecto: Una persona puede tener varios sombreros,
es el rol que desempeña en un momento dado.
Las responsabilidades: hacer una serie de actividades,
ser el responsable de una serie de artefactos.
ACTIVIDADESUna actividad es una
unidad de trabajo que se asigna a un trabajador: crear o
modificar un artefacto.
Una actividad lleva entre un par de
horas y un par de días, involucra un
solotrabajador y un número pequeño
de artefactos.
Las actividades se consideran en
la planificación y evaluación del progreso del proyecto.
Ejemplos:
Planific
ar una iteración - Administrador de proyecto.
Encontrar actores y casos de uso - Analista.
Revisar el diseño - Revisor de diseño.
Ejecutar pruebas de performance - Ing. de pruebas de performance.
ASIGNACIÓN DE ACTIVIDADES
Recurso Trabajador Actividad
Pablo Diseñador Diseño de Objetos
María Autor de Casos de Uso Detallar un Caso de Uso
José Diseñador de Casos de Uso Diseñar un Caso de Uso
Silvia Revisor de Diseño Rever el Diseño
Eduardo Arquitecto Análisis de ArquitecturaDiseño de Arquitectura
ARTEFACTOS
Elemento de información
producido, modificado o usado por el proceso.
Son los productos tangibles del proyecto.
Son usados por los trabajadores para realizar nuevas actividades y son el resultado de esasactividades.
Ejemplos: Un modelo como el
modelo de casos de uso o el modelo de diseño.
Un elemento del modelo, como una clase o un caso de uso.
Un documento tal como el Caso del Negocio o la Arquitectura del Software.
Código fuente. Código ejecutable.
... ELEMENTOS EN RUP
Workflow, Workflow Detail , Workers, Actividades yArtefactosWorkflow: Requirements
Workflow Detail:Analyse the Problem
Workers ArtefactosActividad
es
... ELEMENTOS EN RUPWorkers
Analyst workers Business-Process Analyst Business Designer Business-Model Reviewer Requirements Reviewer System Analyst Use-Case Specifier User-Interface Designer
Developer workers
Architect Architecture Reviewer Capsule Designer Code Reviewer Database Designer Design Reviewer
Designer Implementer
Integrator
Testing professional workers Tester Test Designer
Manager workers Change Control Manager Configuration Manager Deployment Manager Process Engineer
Project Manager Project Reviewer
Other workers Any Worker Course Developer Graphic Artist Stakeholder System Administrator Technical Writer Tool Specialist
... ELEMENTOS EN RUP
Artefactos
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 elementode modelo
Conjuntos de Artefactos
Business Modeling Set
Requirements Set
Analysis & Design Set
Implementation Set
Test Set
Deployment Set
Project Management Set
Configuration & Change Management Set
Environment Set
2
FASES DEL PROCESOUNIFICADO DE
RATIONAL (RUP)
2
FASE DE CONCEPCION Propósito
Establecer el caso de negocio para un nuevo sistemao para la puesta al día de un sistema ya existente
Artefactos desarrollados
El núcleo de lo solicitado para el proyecto
Una asesoría de riesgo inicial
Artefactos opcionales:
Un prototipo conceptual
Un modelo inicial de dominio (10% - 20%completo)
CPDBA – CPNA – ECPMSD Miguel Arturo Valle Pelaez 21
2
CPDBA – CPNA – ECPMSD Miguel Arturo Valle Pelaez 22
2
FASE DE ELABORACIÓN
Propósito
Analizar el dominio del problema
Establecer una arquitectura sólida
Abordar el elemento más riesgoso del proyecto
Desarrollar un plan integral para mostrar cómo el proyecto será terminado
CPDBA – CPNA – ECPMSD Miguel Arturo Valle Pelaez 23
2
FASE DE ELABORACIÓN (CONT.) Productos
Un modelo del comportamiento del sistema, incluyendo el contexto del sistema, escenarios y modelos del dominio (80% terminado)
Una arquitectura ejecutable
Una visión de la línea base del producto a partir del modelo del dominio
Una evaluación del riesgo
Un plan de desarrollo
Criterios de evaluación
Un manual preliminar para el usuario (opcional)
Estrategias de pruebas Plan de pruebas
CPDBA – CPNA – ECPMSD Miguel Arturo Valle Pelaez 24
2
CPDBA – CPNA – ECPMSD Miguel Arturo Valle Pelaez 231
2
FASE DE CONSTRUCCIÓN Objetivo
Desarrollar incrementalmente un producto completo (un programa) que está listo para introducirse en la comunidad de los usuarios
Productos
Una secuencia de ejecutables
Prototipos de comportamiento
Resultados de calidad asegurados
Documentación del usuario y del sistema
Plan de despliegue
Criterios de evaluación para al menos la siguiente iteración
CPDBA – CPNA – ECPMSD Miguel Arturo Valle Pelaez 26
2
CPDBA – CPNA – ECPMSD Miguel Arturo Valle Pelaez 27
2
FASE DE TRANSICIÓN
Propósito Implantar el software en su entorno de operación
Productos Una secuencia de ejecutables.
Resultados de calidad asegurados
Documentación del usuario y del sistema actualizada
Análisis del rendimiento del proyecto“Postmortem”
CPDBA – CPNA – ECPMSD Miguel Arturo Valle Pelaez 28
2
CPDBA – CPNA – ECPMSD Miguel Arturo Valle Pelaez 29
3
PROCESO UNIFICADO DE RATIONAL
30
3
FLUJOS DE TRABAJO DELPROCESO UNIFICADO
DE RATIONAL (RUP)
3
FLUJOS DE TRABAJO
Una lista de actividades,
trabajadores y artefactosno constituye un proceso.
Análisis deArquitectura
Arquitecto
Diseño deArquitectura
DescribirConcurrencia
DescribirDistribución
Un flujo de trabajo es una secuencia de actividades
Diseñador deCasos de Uso
Análisis deCasos de Uso
Diseño deCasos de Uso
que produce un resultadoAnálisis de
Objetos
valioso.No siempre es posible
DiseñadorObjetos Diseño de
representar fl uj o s de trabajo.
3
Revisor de
Diseño
Revisar elAnálisis
Revisar elDiseño
Revisar laArquitectura
CPDBA – CPNA – ECPMSD Miguel Arturo Valle Pelaez 32
MODELADO DEL NEGOCIO
Existen habitualmente problemas de comunicación entre ingenieros de software e ingenieros denegocios.
RUP proporciona un lenguaje y proceso común para ambos ámbitos.
Para el modelado del negocio se usan “business use cases”: la forma en que el software dará apoyo al negocio.
CPDBA – CPNA – ECPMSD Miguel Arturo Valle Pelaez 33
FLUJO DE TRABAJO:MODELADO DE NEGOCIOS
CPDBA – CPNA – ECPMSD Miguel Arturo Valle Pelaez 34
ARTEFACTOS DEL MODELADO DENEGOCIO
CPDBA – CPNA – ECPMSD Miguel Arturo Valle Pelaez 35
REQUERIMIENTOS
Los desarrolladores y
clientes deben acordar qué es lo que el sistema
Cliente Reciclar
Imprimir Informe
Administrar Depósito
Operador
debe hacer: relevar requerimientos,
documentar funcionalidad
y restricciones,
documentar decisiones,
identificar actores, identificar casos
de uso
Los casos de uso describen la funcional
idad.
Los requerimientos no funcionales se incluyen en una especificación complementaria.
CPDBA – CPNA – ECPMSD Miguel Arturo Valle Pelaez 36
FLUJO DE TRABAJO:REQUERIMIENTOS
CPDBA – CPNA – ECPMSD Miguel Arturo Valle Pelaez 37
ARTEFACTOS DE REQUERIMIENTOS
CPDBA – CPNA – ECPMSD Miguel Arturo Valle Pelaez 38
ANÁLISIS Y DISEÑO
Descripción de cómo se
implementará el sistema: un plano.
Debe: ejecutar las tareas y
funciones descritas en los casos de uso,
satisfacer todos los requerimientos,
flexible a cambios.
El diseño se centra en la noción de
arquitectura.
Diseñar y validad laarquitectura es una tarea esencial.
El modelo de diseño consta
de clases
estructuradas en paquetes,
diseños de subsistemas con interfaces definidas (componentes),
forma de colaboración entre las clases.
CPDBA – CPNA – ECPMSD Miguel Arturo Valle Pelaez 39
4
FLUJO DE TRABAJO:ANALISIS Y DISEÑO
CPDBA – CPNA – ECPMSD Miguel Arturo Valle Pelaez 40
4
ARTEFACTOS DEL ANALISIS YDISEÑO
CPDBA – CPNA – ECPMSD Miguel Arturo Valle Pelaez 41
4
IMPLEMENTACIÓN
Propósito: definir la organización del código,
implementar clases y objetos en forma de componentes
(fuente, ejecutables, etc.),
probar las componentes desarrolladas, integrar las componentes en un sistema ejecutable.
CPDBA – CPNA – ECPMSD Miguel Arturo Valle Pelaez 42
4
FLUJO DE TRABAJO:IMPLEMENTACION
CPDBA – CPNA – ECPMSD Miguel Arturo Valle Pelaez 43
4
ARTEFACTOS DE LA IMPLEMENTACION
CPDBA – CPNA – ECPMSD Miguel Arturo Valle Pelaez 44
4
PRUEBAS
Propósitos: verificar la
interacción entre los objetos,
verificar la integración apropiada de componentes,
verificar que se satisfacen los requerimientos,
identificar los defectos y corregirlos antes de la instalación.
RUP describe como planear
y ejecutar estas pruebas.
4
RUP propone probar las
componentes desde el principio:
confiabili
dad, funcionalidad y performance.
Las pruebas de regresión son importantes en desarrollos iterativos.
Rational tiene herramientas para automatizar algunas pruebas.
CPDBA – CPNA – ECPMSD Miguel Arturo Valle Pelaez 45
FLUJO DE TRABAJO:PRUEB
A
CPDBA – CPNA – ECPMSD Miguel Arturo Valle Pelaez 46
ARTEFACTOS DE PRUEBA
CPDBA – CPNA – ECPMSD Miguel Arturo Valle Pelaez 47
DESPLIEGUE
Producir un producto y hacerlo llegar a sus usuarios finales.
Incluye varias actividades:
producir un “release”,
empaquetar el software,
distribuir el software,
instalarlo,
asistir a los
usuarios
A veces también incluye:
realizar pruebas beta,
migración de datos,
aceptación formal.
La mayor parte de
la distribución ocurre durantela transición.
Este es uno de los flujos de trabajo menosdocumentados en RUP.
CPDBA – CPNA – ECPMSD Miguel Arturo Valle Pelaez 48
FLUJO DE TRABAJO:DESPLIEGU
E
CPDBA – CPNA – ECPMSD Miguel Arturo Valle Pelaez 49
5
ARTEFACTOS DEL DESPLIEGUE
CPDBA – CPNA – ECPMSD Miguel Arturo Valle Pelaez 50
5
CONFIGURACIÓN YADMINISTRACION DE CAMBIOS
Forma de controlar los artefactos producidos por las personas que trabajan en el proyecto.
Algunos problemas habituales:
actualizaciones simultáneas,
notificación limitada,
múltiples versiones.
RUP da guías para
desarrollos en paralelo,
automatizar la construcción, administrar defectos.
CPDBA – CPNA – ECPMSD Miguel Arturo Valle Pelaez 51
5
FLUJO DE TRABAJO:CONFIGURACION & ADMINISTRACION DE CAMBIOS
CPDBA – CPNA – ECPMSD Miguel Arturo Valle Pelaez 52
5
ARTEFACTOS DE CONFIGURACION &ADMINISTRACION DE CAMBIOS
CPDBA – CPNA – ECPMSD Miguel Arturo Valle Pelaez 53
5
ADMINISTRACIÓN DEPROYECTOS
Es el arte de balancear objetivos contrarios,manejar riesgos y producir software que satisfacea clientes y usuarios.
Existen pocos proyectos realmente exitosos.
RUP incluye: un framework para manejo de proyectos de software,
guías para planificación, provisión de personal, ejecución y monitoreo de planes,
5
un framework para manejar riesgos.
CPDBA – CPNA – ECPMSD Miguel Arturo Valle Pelaez 54
5
FLUJO DE TRABAJO:ADMINISTRACION DEL PROYECTO
CPDBA – CPNA – ECPMSD Miguel Arturo Valle Pelaez 55
5
ARTEFACTOS DE LAADMINISTRACION DEL PROYECTO
CPDBA – CPNA – ECPMSD Miguel Arturo Valle Pelaez 56
5
ENTORNO
Ambiente y herramientas de desarrollo que harán posible llevar a cabo el proyecto.
RUP guía en la configuración de un ambiente de proceso apropiado a cada proyecto.
5
CPDBA – CPNA – ECPMSD Miguel Arturo Valle Pelaez 57
5
FLUJO DE TRABAJO:ENTORN
O
CPDBA – CPNA – ECPMSD Miguel Arturo Valle Pelaez 58
5
ARTEFACTOS DEL ENTORNO
CPDBA – CPNA – ECPMSD Miguel Arturo Valle Pelaez 59