Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Test Designer
Tester
Manager workers
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
IV. Proceso de Desarrollo de SW basado en UML
Workers, Actividades, Artefactos
Ejemplo: System Analyst Worker
IV. Proceso de Desarrollo de SW basado en UML
Artefactos
Conjuntos de Artefactos
Deployment Set
Environment Set
Requirements Set
Implementation Set
Test Set
IV. Proceso de Desarrollo de SW basado en UML
Artefactos, Workers, Actividades
Ejemplo:Business Modeling Artifact Set
IV. Proceso de Desarrollo de SW basado en UML
Proceso Dirigido por los Casos de Uso
Proceso Iterativo e Incremental
Proceso Centrado en la Arquitectura
IV. Proceso de Desarrollo de SW basado en UML
Requisitos
Capturar, definir y
validar los casos de uso
Realizar los
casos de uso
Verificar que se
satisfacen los casos
de uso
Proceso dirigido por los Casos de Uso
Anlisis & Diseo
Implementacin
Pruebas
Casos de Uso
integran el
trabajo
IV. Proceso de Desarrollo de SW basado en UML
Caso de Uso Realizacin de Anlisis Realizacin de Diseo
Caso de Prueba
X
trace trace
trace
trace
Pruebas Funcionales
Pruebas
Unitarias
... Proceso dirigido por los Casos de Uso
[The Unified Software Development Process. I. Jacobson, G. Booch and J. Rumbaugh. Addison-Wesley, 1999]
IV. Proceso de Desarrollo de SW basado en UML
... Proceso dirigido por los Casos de Uso
IV. Proceso de Desarrollo de SW basado en UML
El ciclo de vida iterativo se basa en la evolucin
de prototipos ejecutables que se muestran a los
usuarios y clientes
En el ciclo de vida iterativo a cada iteracin se
reproduce el ciclo de vida en cascada a menor
escala
Los objetivos de una iteracin se establecen en
funcin de la evaluacin de las iteraciones
precedentes
IV. Proceso de Desarrollo de SW basado en UML
Las actividades se encadenan en una mini-cascada con
un alcance limitado por los objetivos de la iteracin
Anlisis
Diseo
Codific.
Pruebas e
Integracin
n veces
IV. Proceso de Desarrollo de SW basado en UML
Cada iteracin comprende:
Planificar la iteracin (estudio de riesgos)
Anlisis de los Casos de Uso y escenarios
Diseo de opciones arquitectnicas
Codificacin y pruebas. La integracin del nuevo cdigo
con el existente de iteraciones anteriores se hace
gradualmente durante la construccin
Evaluacin de la entrega ejecutable (evaluacin del
prototipo en funcin de las pruebas y de los criterios
definidos)
Preparacin de la entrega (documentacin e
instalacin del prototipo)
IV. Proceso de Desarrollo de SW basado en UML
Enfoque
Cascada
Enfoque
Iterativo e
Incremental
IV. Proceso de Desarrollo de SW basado en UML
Grado de Finalizacin de Artefactos
IV. Proceso de Desarrollo de SW basado en UML
Arquitectura de un sistema es la organizacin o estructura
de sus partes ms relevantes
Un arquitectura ejecutable es una implementacin parcial
del sistema, construida para demostrar algunas funciones y
propiedades
RUP establece refinamientos sucesivos de una arquitectura
ejecutable, construida como un prototipo evolutivo
Architecture
Inception Elaboration Construction Transition
IV. Proceso de Desarrollo de SW basado en UML
El ciclo de vida consiste en una serie de ciclos, cada uno de los cuales produce una
nueva versin del producto
Cada ciclo est compuesto por fases y cada una de estas fases est compuesta por un
nmero de iteraciones
Las fases son:
Inicio o Estudio de oportunidad
Elaboracin
Construccin
Transicin
IV. Proceso de Desarrollo de SW basado en UML
Inicio o Estudio de oportunidad (inception)
Define el mbito y objetivos del proyecto
Se define la funcionalidad y capacidades del producto
Elaboracin
Tanto la funcionalidad como el dominio del problema
se estudian en profundidad
Se define una arquitectura bsica
Se planifica el proyecto considerando recursos
disponibles
IV. Proceso de Desarrollo de SW basado en UML
Construccin
El producto se desarrolla a travs de iteraciones donde
cada iteracin involucra tareas de anlisis, diseo e
implementacin
Las fases de estudio y anlisis slo dieron una arquitectura
bsica que es aqu refinada de manera incremental
conforme se construye (se permiten cambios en la
estructura)
Gran parte del trabajo es programacin y pruebas
Se documenta tanto el sistema construido como el manejo
del mismo
Esta fase proporciona un producto construido junto con la
documentacin
IV. Proceso de Desarrollo de SW basado en UML
Transicin
Se libera el producto y se entrega al usuario para un
uso real
Se incluyen tareas de marketing, empaquetado
atractivo, instalacin, configuracin, entrenamiento,
soporte, mantenimiento, etc.
Los manuales de usuario se completan y refinan con la
informacin anterior
Estas tareas se realizan tambin en iteraciones
IV. Proceso de Desarrollo de SW basado en UML
Esfuerzo respecto de las Workflows
15%
10%
15%
30%
15%
10% gestin cambios 5% mantenimiento
P r e l i m i n a r y
I t e r a t i o n ( s )
i t e r .
# 1
i t e r .
# 2
i t e r .
# n
i t e r .
# n + 1
i t e r .
# n + 2
i t e r .
# m
i t e r .
# m + 1
I n c e p t i o n E l a b o r a t i o n C o n s t r u c t i o n T r a n s i t i o n
Una iteracin en la
fase de elaboracin
Requisitos
Diseo
Implementacin
Pruebas
Anlisis
...Esfuerzo respecto de las Fases
P r e l i m i n a r y
I t e r a t i o n ( s )
i t e r .
# 1
i t e r .
# 2
i t e r .
# n
i t e r .
# n + 1
i t e r .
# n + 2
i t e r .
# m
i t e r .
# m + 1
I n c e p t i o n E l a b o r a t i o n C o n s t r u c t i o n T r a n s i t i o n
Esfuerzo: 5% 20% 65% 10%
Duracin: 10% 30% 50% 10%
Una iteracin en la
fase de elaboracin
Requisitos
Diseo
Implementacin
Pruebas
Anlisis
IV. Proceso de Desarrollo de SW basado en UML
Claves en el Desarrollo de SI
Herramientas
p.e. Rational Rose
Proceso
p.e. Rational Unified Process
Notacin
UML
V. Conclusiones
Contexto de Desarrollo:
Grado de Complejidad
V. Conclusiones
Modelado de SI: Algunas Reflexiones
Modelar para la concebir el sistema y/o para la documentarlo
Pragmatismo, los modelos deben ser tiles
Sencillez y Elegancia
Distintos nivel de abstraccin, diferentes modelos
Seguimiento de transformaciones durante el proceso
(Traceability)
Sincronizacin de modelos
Dificultades para la introduccin de tcnicas y herramientas de
modelado
V. Conclusiones
Apostar por enfoque Orientado a Objetos
usando notacin UML
Problemas actuales en implementacin, al
usar entornos de programacin visual y/o
bases de datos relacionales
Posibles mejoras a mediano plazo
Evolucin: Uso de BDOO y/o mejoras en los LPOO
Revolucin: Generacin Automtica de Cdigo a partir de
Modelos OO (Compilacin de Modelos)
V. Conclusiones
UML
www.omg.org/uml/
Meta-links www.celigent.com/uml/ y www.cetus-links.org/oo_uml.html
Pierre-Alain Muller Instant UML
Martin Fowler, UML Destilled (UML Gota a Gota)
Terry Quatrani, Visual Modeling ..., un caso de estudio
Herramientas CASE
Herramientas basadas en UML www.objectsbydesign.com/tools/umltools_byPrice.html
International Council in SE (INCOSE) www.incose.org/tools/
Herramientas basadas en UML www.objectsbydesign.com/tools/umltools_byPrice.html
Otras
Revista IEEE Software, Conferencias: OOPSLA, ECOOP
Patrones www.enteract.com/~bradapp/docs/patterns-intro.html,
Tutoriales en ingls www.celigent.com/omg/umlrtf/tutorials.htm
V. Conclusiones