Sunteți pe pagina 1din 9

Construccin de una casa para fido

Lenguaje de Modelado Unificado


UML: Unified Modeling Language Ms. Ing Carlos Castillo Diestra, Dr(c)
Departamento de Informtica Universidad Nacional de Trujillo

Puede hacerlo una sola persona Requiere: Modelado mnimo Proceso simple Herramientas simples

Extrada desde la presentacin Software Architecture and UML de Grady Booch

Construccin de una casa

Construccin de un rascacielos

Construida eficientemente y en un tiempo razonable por un equipo Requiere: Modelado Proceso bien definido Herramientas ms sofisticadas
Extrada desde la presentacin Software Architecture and UML de Grady Booch Extrada desde la presentacin Software Architecture and UML de Grady Booch

Claves en Desarrollo de SI
Notacin

Abstraccin - Modelado Visual (MV)


El modelado captura las partes esenciales del sistema
Orden Item

envo

Herramientas

Proceso

Proceso de Negocios Sistema Computacional

Figura Triangle for Success adaptada desde Visual Modeling with Rational Rose and UML de Terry Quatrani

Notacin (Visual) - Beneficios


Manejar la complejidad

Qu es UML?
UML = Unified Modeling Language Un lenguaje de propsito general para el modelado orientado a objetos Documento OMG Unified Modeling Language Specification

Interface de Usuario (Visual Basic, Java, ..)

Lgica del Negocio (C++, Java, ..)

Mltiples Sistemas

Servidor de BDs (C++ & SQL, ..)

UML combina notaciones provenientes desde: Modelado Orientado a Objetos Modelado de Datos Modelado de Componentes Modelado de Flujos de Trabajo (Workflows) UML es el lenguaje Standard para visualizacin, especificacin, construccin, y documentacin de los elementos de un sistema software intensivo Puede ser utilizado a travs de todo el ciclo de vida de desarrollo

Modelar el sistema independientemente del lenguaje de implementacin

Componentes Reutilizados

Promover la Reutilizacin

Situacin de Partida
Diversos mtodos y tcnicas OO, con muchos aspectos en comn pero utilizando distintas notaciones Inconvenientes para el aprendizaje, aplicacin, construccin y uso de herramientas, etc. Pugna entre distintos enfoques (y correspondientes gurs) Establecer una notacin estndar

Historia de UML
Comenz como el Mtodo Unificado, con la participacin de Grady Booch y Jim Rumbaugh. Se present en el OOPSLA95 El mismo ao se uni Ivar Jacobson. Los Tres Amigos son socios en la compaa Rational Software. Herramienta CASE Rational Rose

Historia de UML
2007 2003 2001 1999 1998 Nov 97
UML aprobado por el OMG

UML 2.0 UML 1.5 UML 1.4 UML 1.3


Revisiones menores

Participantes en UML 1.0


Rational Software (Grady Booch, Jim Rumbaugh y Ivar Jacobson) Digital Equipment Hewlett-Packard i-Logix (David Harel) IBM ICON Computing (Desmond DSouza) Intellicorp and James Martin & co. (James Odell) MCI Systemhouse Microsoft ObjecTime Oracle Corp. Platinium Technology Sterling Software Taskon Texas Instruments Unisys

UML 1.2

Entradas a UML
Meyer
Before and after conditions

Harel
Statecharts

Diagramas de UML
Los diagramas expresan grficamente partes de un modelo
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

Gamma, et al
Frameworks and patterns,

Booch
Booch method

HP Fusion
Operation descriptions and message numbering

Rumbaugh
OMT

Embley
Singleton classes and high-level view

Jacobson
OOSE

Wirfs-Brock
Responsibilities

Modelos

Shlaer - Mellor
Object lifecycles

Odell
Classification

Diagramas de Actividad

Distribucin

Un modelo es una descripcin completa de un sistema desde una perspectiva particular

Aspectos Novedosos
Definicin semi-formal del Metamodelo de UML Mecanismos de Extensin en UML: Stereotypes Constraints Tagged Values Permiten adaptar los elementos de modelado, asignndoles una semntica particular

Inconvenientes en UML
Definicin del proceso de desarrollo usando UML. UML no es una metodologa Falta integracin con respecto de otras tcnicas tales como patrones de diseo, interfaces de usuario, documentacin, etc. Ejemplos aislados Monopolio de conceptos, tcnicas y mtodos en torno a UML

Beneficios del Lenguaje de Modelado Unificado


Define un mapa parecido para el anlisis y el diseo de implementaciones Define una notacin expresiva y consistente
Hace ms fcil el comunicarse con otros Ayuda a detectar omisiones e inconsistencias Permite anlisis y diseo a pequea y gran escala

Perspectivas de UML
UML ser el lenguaje de modelado orientado a objetos estndar predominante los prximos aos Razones: Participacin de metodlogos influyentes Participacin de importantes empresas Aceptacin del OMG como notacin estndar Evidencias: Herramientas que proveen la notacin UML Edicin de libros Congresos, cursos, camisetas, etc.

Modelos y Diagramas

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 ...

Un modelo captura una vista de un sistema del mundo real. Es una abstraccin de dicho sistema, considerando un cierto propsito. As, el modelo describe completamente aquellos aspectos del sistema que son relevantes al propsito del modelo, y a un apropiado nivel de detalle.

Diagrama: una representacin grfica de una coleccin de elementos de modelado, a menudo dibujada como un grafo con vrtices conectados por arcos
Cada modelo es completo desde su punto de vista del sistema, sin embargo, existen relaciones de trazabilidad entre los diferentes modelos

OMG UML 1.4 Specification

Diagramas de UML
Diagrama de Casos de Uso Diagrama de Clases Diagrama de Objetos Diagramas de Comportamiento Diagrama de Estados Diagrama de Actividad Diagramas de Interaccin Diagrama de Secuencia Diagrama de Colaboracin Diagramas de implementacin Diagrama de Componentes Diagrama de Despliegue

Organizacin de Modelos
4+1 vistas de Kruchten (1995)
Vista de Realizacin

Vista Lgica Vista de los Casos de Uso Vista de Procesos

Vista de Distribucin

Este enfoque sigue el browser de Rational Rose

Organizacin de Modelos
Propuesta de Rational Unified Process (RUP)

UML 2.0
Unified Modeling Language (UML) specification, version 2.1.1, is available. There are two specifications that comprise the UML 2.1.1 specification: Superstructure and Infrastructure. There are also two specifications that relate to the UML2 specification (Diagram Interchange and Object Constraint Language).

M. de Casos de Uso del Negocio (Business Use-Case Model) M. de Objetos del Negocio (Business Object Model) M. de Casos de Uso (Use-Case Model) M. de Anlisis (Analysis Model) M. de Diseo (Design Model) M. de Despliegue (Deployment Model) M. de Datos (Data Model) M. de Implementacin (Implementation Model) M. de Pruebas (Test Model)

Objetivos del UML 2.0


1. Hacer el lenguaje de modelado mucho ms extensible de lo que era. 2. Permitir la validacin y ejecucin de modelos creados mediante el UML.

UML y la Industria del Software


El UML se ha vuelto el estndar de facto (impuesto por la industria y los usuarios) para el modelado de aplicaciones de software. En los ltimos aos, su popularidad trascendi al desarrollo de software y, en la actualidad, el UML es utilizado para modelar muchos otros dominios, como por ejemplo el modelado de procesos de negocios.

Conceptos bsicos sobre UML


Lenguaje: el UML es, precisamente, un lenguaje. Lo que implica que ste cuenta con una sintaxis y una semntica. Por lo tanto, al modelar un concepto en UML, existen reglas sobre cmo deben agruparse los elementos del lenguaje y el significado de esta agrupacin. Modelado: el UML es visual. Mediante su sintaxis se modelan distintos aspectos del mundo real, que permiten una mejor interpretacin y entendimiento de ste. Unificado: unifica varias tcnicas de modelado en una nica. Ya que el UML proviene de tcnicas orientadas a objetos, se crea con la fuerte intencin de que este permita un correcto modelado orientado a objetos.

Estndares que conforman el UML 2.0


Superestructura: Es la especificacin que usamos todos los das. Aqu se encuentran todos los diagramas que la mayora de los desarrolladores conocen. Infraestructura: Conceptos de bajo nivel. Meta-Modelo da soporte a la superestructura, entre otras. OCL: Lenguaje de restriccin. De utilidad para especificar conceptos ambiguos sobre los distintos elementos del diagrama. XMI / Intercambio de diagramas: Permite compartir diagramas entre diferentes herramientas de modelado UML.

La Superestructura del UML


Es en la Superestructura donde encontramos los cambios que ms afectan en el da a da a quienes trabajan como desarrolladores de aplicaciones de negocios, es decir, profesionales que, en general, deben interpretar o crear modelos que especifiquen el dominio de tales aplicaciones. Es aqu dnde se definen los diagramas y los elementos que los componen. La Superestructura se encuentra dividida en niveles. Estos niveles se conocen como: Bsico (L1): Contiene los elementos bsicos del UML 2.0, entre ellos: Diagramas de clases, Diagramas de actividades, Diagramas de Interacciones, y Diagramas de Casos de Uso Intermedio (L2): Contiene los siguientes diagramas: Diagramas de estado, Perfiles, Diagramas de Componentes y Diagramas de despliegue. Completo (L3): Representa la especificacin del UML 2.0 completa, como por ejemplo: las Acciones, Caractersticas avanzadas y PowerTypes entre otros. Es importante destacar que basta con que una herramienta implemente el nivel de conformidad Bsico (L1), para que se considere UML 2.0 compatible. Por eso, es normal ver una disparidad de caractersticas (features) bastante amplia entre dos herramientas distintas, aunque stas sean UML 2.0 compatibles

Breve descripcin sobre los diagramas


Diagrama Diagrama de Clases Descripcin Muestra una coleccin de elementos de modelado declarativo (estticos), tales como clases, tipos y sus contenidos y relaciones. Representa los componentes que componen una aplicacin, sistema o empresa. Los componentes, sus relaciones, interacciones y sus interfaces pblicas. Prioridad Alta

Diagrama de Componentes

Media

Diagrama de Estructura de Composicin

Representa la estructura interna de un clasificador (tal como una clase, un componente o un caso de uso), incluyendo los puntos de interaccin de clasificador con otras partes del sistema.

Baja

Breve descripcin sobre los diagramas


Diagrama Descripcin Prioridad

Breve descripcin sobre los diagramas


Diagrama Diagrama de Actividades Descripcin Representa los procesos de negocios de alto nivel, incluidos el flujo de datos. Tambin puede utilizarse para modelar lgica compleja y/o paralela dentro de un sistema. Es un diagrama que enfoca la interaccin entre lneas de vida, donde es central la arquitectura de la estructura interna y cmo ella se corresponde con el pasaje de mensajes. La secuencia de los mensajes se da a travs de un esquema de numerado de la secuencia. Los Diagramas de Revisin de la Interaccin enfocan la revisin del flujo de control, donde los nodos son Interacciones u Ocurrencias de Interacciones. Las Lneas de Vida los Mensajes no aparecen en este nivel de revisin Un diagrama que representa una interaccin, poniendo el foco en la secuencia de los mensajes que se intercambian, junto con sus correspondientes ocurrencias de eventos en las Lneas de Vida. Prioridad Alta

Diagrama de Despliegue Fsico

Un diagrama de despliegue fsico muestra cmo y dnde se desplegar el sistema. Las mquinas fsicas y los procesadores se representan como nodos y la construccin interna puede ser representada por nodos o artefactos embebidos. Como los artefactos se ubican en los nodos para modelar el despliegue del sistema, la ubicacin es guiada por el uso de las especificaciones de despliegue.

Media Diagrama de Comunicaciones (anteriormente: Diagrama de colaboraciones)

Baja

Diagrama de Objetos

Un diagrama que presenta los objetos y sus relaciones en un punto del tiempo. Un diagrama de objetos se puede considerar como un caso especial de un diagrama de clases o un diagrama de comunicaciones. Un diagrama que presenta cmo se organizan los elementos de modelado en paquetes y las dependencias entre ellos, incluyendo importaciones y extensiones de paquetes.

Baja

Diagrama de Revisin de la Interaccin

Baja

Diagrama de Paquetes

Baja

Diagrama de Secuencias

Alta

Breve descripcin sobre los diagramas


Diagrama Diagrama de Mquinas de Estado Descripcin Un diagrama de Mquina de Estados ilustra cmo un elemento, muchas veces una clase, se puede mover entre estados que clasifican su comportamiento, de acuerdo con disparadores de transiciones, guardias de restricciones y otros aspectos de los diagramas de Mquinas de Estados, que representan y explican el movimiento y el comportamiento. El propsito primario del diagrama de tiempos es mostrar los cambios en el estado o la condicin de una lnea de vida (representando una Instancia de un Clasificador o un Rol de un clasificador) a lo largo del tiempo lineal. El uso ms comn es mostrar el cambio de estado de un objeto a lo largo del tiempo, en respuesta a los eventos o estmulos aceptados. Los eventos que se reciben se anotan, a medida que muestran cundo se desea mostrar el evento que causa el cambio en la condicin o en el estado. Un diagrama que muestra las relaciones entre los actores y el sujeto (sistema), y los casos de uso. Prioridad Media

Breve descripcin sobre los diagramas


Diagrama Diagrama de Clases Descripcin Muestra una coleccin de elementos de modelado declarativo (estticos), tales como clases, tipos y sus contenidos y relaciones. Representa los componentes que componen una aplicacin, sistema o empresa. Los componentes, sus relaciones, interacciones y sus interfaces pblicas. Prioridad Alta

Diagrama de Tiempos

Baja

Diagrama de Componentes

Media

Diagrama de Estructura de Composicin Media

Representa la estructura interna de un clasificador (tal como una clase, un componente o un caso de uso), incluyendo los puntos de interaccin de clasificador con otras partes del sistema.

Baja

Diagrama de Casos de Uso

S-ar putea să vă placă și