Вы находитесь на странице: 1из 37

UML y RUP

ndice
Conceptos Lenguajes de modelado: UML Metodologas:
Metodologas RUP

Componentes bsicos
RUP. Tcnicas y su aplicacin a la gestin de proyectos software orientados a objeto. UML. Diagramas, elementos notacionales y semntica de los modelos generados.

Modelado con UML

Qu es UML?
El UML modela sistema mediante el uso de objetos que forman parte de l as como, las relaciones estticas o dinmicas que existen entre ellos. UML puede ser utilizado por cualquier metodologa de anlisis y diseo orientada por objetos para expresar los diseos.

Qu es UML?
UML es un Lenguaje de Modelado Unificado basado en una notacin grfica la cual permite: especificar, construir, visualizar y documentar los objetos de un sistema programado. Este lenguaje es el resultado de la unificacin de los mtodos de modelado orientados a objetos de Booch, Rumbaugh (OMT: Object Modeling Technique) y Jacobson (OOSE: Object-Oriented Sotfware Engineering).

UML
UML es un lenguaje de modelado que sirve para visualizar, especificar , construir y documentar un sistema software. Lenguaje de modelado:
Lenguaje cuyo vocabulario y reglas se centran en la representacin conceptual y fsica de un sistema (Booch, Jacobson y Rumbaugh).

UML para visualizar


Smbolos con semntica bien definida. UML transciende al lenguaje de programacin. Modelo explcito, que facilita la comunicacin.

UML para especificar


Especificar es equivalente a construir modelos que cumplan las condiciones de no ambigedad y completitud. UML cubre la especificacin del anlisis, diseo e implementacin de un sistema software.

UML para construir


Es posible hacer Ingeniera Directa corresponder con los lenguajes Modelo CDIGO de programacin UML (Java, C#, Ingeniera Inversa B.Datos, etc.).

UML para documentar


UML cubre la documentacin de un sistema: Requisitos Arquitectura Diseo Cdigo fuente Planificacin Pruebas Prototipos Versiones

UML aglutina enfoques OO


Rumbaugh
Booch Odell Shlaer-Mellor
Object life cycles

Jacobson

Meyer
Pre- and Post-conditions

UML
State Charts

Harel

Gamma et. al.


Frameworks, patterns, notes

Embly
Singleton classes

Wirfs-Brock
Fusion
Responsabilities Operation descriptions, message numbering

Historia de UML
2001 2000 UML 2.0 UML 1.4 UML 1.3
UML aprobado por el OMG Revisiones menores

1999
1998 Nov 97

UML 1.2

Actualizaciones de UML
UML 1.3 es una versin madura de UML a la que se le han aadido una serie de pequeas revisiones, las cuales corrigen o mejoran la especificacin base (UML 1.2). UML 1.4 incorpora ciertas modificaciones sobre el estndar en base a los comentarios recogidos de los usuarios finales y de los fabricantes de software compatible con UML. UML 2.0 promete la puesta a punto del estndar para poder integrarse con el desarrollo basado en componentes que demanda el mercado.

UML 2.0
Arquitectura: refinamiento del ncleo del estndar para que est en consonancia con el resto de estndares del mercado. Personalizacin: mejora de los mecanismos de extensibilidad y personalizacin. Componentes: mejor soporte para el desarrollo basado en componentes (CORBA, EJB, COM+). Mecanismos generales: nuevos mecanimos para el control de las versiones dentro del modelo, as como el intercambio de los metadatos del mismo con XMI (XML Metadad Interchange).

Modelos y Diagramas
Un proceso de desarrollo de software debe ofrecer un conjunto de modelos que permitan expresar el producto desde cada una de las perspectivas de inters El cdigo fuente del sistema es el modelo ms detallado del sistema (y adems es ejecutable). Sin embargo, se requieren otros modelos ... Cada modelo es completo desde su punto de vista del sistema, sin embargo, existen relaciones de trazabilidad entre los diferentes modelos

Modelos y Diagramas

Modelo: captura una vista de un sistema del mundo real. Es una abstraccin de dicho sistema, considerando un cierto propsito.

Diagrama: representacin grfica de una coleccin de elementos


de modelado, a menudo dibujada como un grafo con vrtices conectados por arcos.

Organizacin de Modelos

Vista de Diseo

Vista de los Casos de Uso


Vista de Procesos

Vista de Implementacin

Vista de Despliegue

Diagramas de UML
Use Case Use Case Diagramas de Diagrams Diagrams Secuencia Scenario Scenario Diagramas de Diagrams Diagrams Colaboracin Scenario Scenario Diagramas de Diagrams Diagrams Estados Use Case Use Case Diagramas de Diagrams Diagrams Casos de Uso State State Diagramas de Diagrams Diagrams Clases State State Diagramas de Diagrams Diagrams Objetos State State Diagramas de Diagrams Diagrams Componentes
Component Component Diagrams Diagramas Diagrams de

Modelo

Diagramas de Actividad

Distribucin

Mecanismos comunes en UML


Especificaciones. Es ms que un lenguaje grfico (semntica detrs de la notacin). Adornos. Detalles sobre un clase, nivel de acceso de sus mtodos, notas. Divisiones Comunes: Clase/Objecto o Interfaz/Implementacin. Extensibilidad. Estereotipos, valores etiquetados o restricciones.

Mecanismos comunes en UML

{orderById}

utility Producto -Paginas : int +Insert() +Update() +Delete() #GetNumPaginas() : int IDataManaged

utility p1 : Producto Paginas : int

utility p2 : Producto Paginas : int

Definicin de un producto gestionado desde base de datos

RUP: El Proceso Unificado de Rational

Proceso Unificado de Rational


Orgenes
Modelo original Objectory definido por Ivan Jacobson (1987) Rational Software compra la empresa de Objectory (1995) Surge la primera versin de UML (1997) Se publica la primera versin del Proceso Unificado de Rational - RUP (junio 1998)

Casos de uso

Dirigido por casos de uso

Se centra en la funcionalidad que el sistema debe poseer para satisfacer las necesidades de un usuario (persona, sistema externo, dispositivo) que interactua con l Casos de uso como el hilo conductor que orienta las actividades de desarrollo

Casos de Uso
<<defineNecesidades>>
<<realiza>> Anlisis Recopilar, Clarificar y Validar los requerimientos Diseo <<verifica>> Pruebas Verificar que se satisfacen los casos de uso

Realizar los casos de uso

Arquitectura
Centrado en la arquitectura
Concepto similar a la arquitectura de un edificio
Varios planos con diferentes aspectos del edificio Tener una imagen completa del edificio antes que comience la construccin

Arquitectura en software
Diferentes vistas del sistema: estructural, funcional, dinmico, etc. Plataforma en la que va a operar Determina la forma del sistema

Arquitectura: determina la forma del sistema Casos de uso: determinan la funcin del sistema

Modelo que implementa


Iterativo e incremental
Descomposicin de un proyecto grande en mini-proyectos Cada mini-proyecto es una iteracin Las iteraciones deben estar controladas Cada iteracin trata un conjunto de casos de uso Deteccin temprana de riesgos Administracin adecuada del cambio Mayor grado de reutilizacin Mayor experiencia para el grupo de desarrollo

Ventajas del enfoque iterativo

Estructura
Dinmica
Ciclo: cada ciclo una nueva versin del producto Fase: Etapas de un ciclo que finalizan en un HITO Iteracin: Proceso de ingeniera sobre una funcionalidad limitada del sistema

Esttica - Flujos de trabajo


Artefactos Actividades Roles

Estructura
Roles Actividades Artefactos Flujo de Trabajo QUIN? CMO? QU? CUNDO?

realiza responsable de

diseador
diagrama de secuencia

diseo de caso de uso

Roles
Definicin del comportamiento y responsabilidades de los participantes Propietario de una serie de artefactos Recurso Patricia Juan Mnica Pedro Rol
Diseador Analista Dominio Diseador Funcional

Actividad
Diseo de Objetos Definicin de CU Diseo de CU

Artefacto
DC DCU DS

Actividades
Unidad de trabajo que puede ejecutar un individuo en un rol especfico Tiene un propsito claro y se expresa en trminos de actualizar artefactos La granularidad de la actividad es generalmente de horas o pocos das Ejemplos de actividades
Planear una iteracin (administrador del proyecto) Encontrar caso de uso y actores (analista del dominio) Revisin del diseo (probador)

Artefactos
Pieza de informacin producida, modificada y utilizada en un proceso Productos tangibles del proyecto Utilizados por los roles como entrada para la realizacin de sus actividades Resultado de las actividades realizadas por los roles Metamodelo: Clase rol tiene como mtodos las actividades y como parmetros los artefactos

Flujos de trabajo
Forma de describir significativamente la secuenciencias de actividades que producen resultados y las interacciones entre cargos En trminos de UML se puede utilizar: diagrama de actividades, de secuencia, de colaboracin En RUP hay nueve tipos de flujos de trabajo
De ingeniera
Negocio, Requerimiento, Anlisis, Diseo, Pruebas, Liberacin

De soporte
Administracin del proyecto, Administracin del cambio, Ambiente

Dimensin dinmica
fase

ciclo

Concepcin Elaboracin

Construccin

Transicin

hito 1
Iter. 1

hito 2
Iter. 2

hito 3
Iter. 3 Iter. 4 Iter. 5

hito 4
Iter. 6

Hito: punto en el tiempo en donde se evaluan objetivos logrados y se pueden tomar decisiones crticas

Desarrollo iterativo
Construccin Ciclo de desarrollo 1 Ciclo de desarrollo 2 Ciclo de desarrollo n

Perfeccionar el plan Anlisis Diseo

Sincronizar Artefactos Construccin Pruebas

Fase de concepcin
Objetivo: definir la razn de ser y el alcance del proyecto. Estudio de oportunidad.
Visin = QU + PARA QU + CUNTO

Actividades
Especificacin de los criterios de xito del proyecto Definicin de los requerimientos Estimacin de los recursos necesarios Cronograma inicial de fases

Artefactos
Documento de definicin del proyecto

Fase de elaboracin
Objetivo: establecer un plan de proyecto y una arquitectura correcta del sistema Actividades
Anlisis del dominio del problema Definicin de la arquitectura bsica Anlisis de riesgos Planificacin del proyecto Modelo del dominio Modelo de procesos Modelo funcional de alto nivel Arquitectura bsica

Artefactos

Fase de construccin
Objetivo: desarrollar el sistema a lo largo de una serie de iteraciones Actividades
Anlisis Diseo Codificacin Pruebas (individuales, de integracin)

Вам также может понравиться