Está en la página 1de 16

Notacin bsica UML

Modelos
Un Modelo en UML, es representarlos a travs de los siguientes diagramas: Diagrama de Estructura Esttica. Diagrama de Casos de Uso. Diagrama de Comportamiento o Diagramas de Estado o Diagramas de Actividad o Diagramas de Secuencia o Diagramas de Colaboracin Diagrama de implantacin. o Diagramas de Colaboracin o Diagramas de Implantacin

Use Diagramas Use de Ca Ca Secuencia Scenari Diagramas Scenari de oo Colaboracin Scenari Diagramas Scenari de oo Estados

Use Diagramas Use de Ca CasosCa de Uso

State State Diagramas de Diagram Diagram


Clases

State Diagramas State de Diagram Diagram Objetos State de Diagramas State Componentes Diagram Diagram

Modelo

Diagramas de Actividad

Compone Compone de Diagramas nt Distribucin nt

Figura 1: Diagramas de UML

Elementos Comunes a Todos los Diagramas


Notas
Una nota sirve para aadir un de comentario a un diagrama o a un elemento de un diagrama. La representacin grafica de una nota se realiza mediante rectngulo con una esquina doblada con texto en su interior.

Figura 2: Ejemplo de nota

Dependencias
Es una relacin de uso, la relacin de dependencia entre dos elementos de un diagrama significa que un cambio en el elemento destino puede implicar un cambio en el elemento origen. Una dependencia se representa por medio de una lnea de trazo discontinuo entre los dos elementos con una flecha en su extremo.

Figura 3: Ejemplos de Dependencias

Diagramas de Estructura Esttica


Clases Una clase puede representarse de forma esquemtica (plegada), con los detalles como atributos y operaciones suprimidos, siendo entonces tan solo un rectngulo con el nombre de la clase.

Figura 4 Notacin para clases a distintos niveles de detalle Objetos

Es una unidad atmica que integra estado y comportamiento. Se representa por medio de una caja subdividida. En el compartimento superior aparece el nombre del objeto junto con el nombre de la clase subrayado, segn la siguiente sintaxis: nombre_del_objeto: nombre_de_la_clase Puede representarse un objeto sin un nombre especfico, entonces slo aparece el nombre de la clase.

Figura 5: Ejemplos de objetos Asociaciones Las asociaciones entre dos clases se representan mediante una lnea que las une. La lnea puede tener una serie de elementos grficos que expresan caractersticas particulares de la asociacin. Las caractersticas ms importantes son:

Nombre de la Asociacin y Direccin


El nombre de la asociacin es opcional y se muestra como un texto que est prximo a la lnea. Se puede aadir un pequeo tringulo negro slido que indique la direccin en la cual leer el nombre de la asociacin.
Director -End1 * -End2 * Empleado

Figura 6 Ejemplo de asociacin con nombre y direccin Multiplicidad La multiplicidad es una restriccin que se pone a una asociacin, que limita

el nmero de instancias posibles que una expresarse de las siguientes formas:

clase puede tener. Puede

Con un nmero fijo: 1 Con un intervalo de valores: 2..5. Con un rango en el cual uno de los extremos es un asterisco. Significa que es un intervalo abierto. Por ejemplo, 2..* significa 2 o ms. Con una combinacin de elementos como los anteriores separados por comas: 1, 3..5, 7, 15..*. Con un asterisco: *. En este caso indica que puede tomar cualquier valor (cero o ms).

Figura 7: Ejemplos de multiplicidad en asociaciones Roles Indica el papel que desempea una clase en una asociacin, para lo cual se especificar un nombre de rol [Hurtado2001]. La representacin de un rol es en el extremo de la asociacin junto a la clase que desempea dicho rol. Por ejemplo el rol de Empresa es contratante mientras el de trabajador es empleado.

Figura 8: Ejemplo de roles en una asociacin Agregacin Representa una relacin parte_de entre objetos. El smbolo de agregacin es un diamante colocado en el extremo en el que est la clase que representa el todo.

Figura 9: Ejemplo de agregacin Clases Asociacin

Cuando una asociacin tiene propiedades propias se representa como una clase unida a la lnea de la asociacin por medio de una lnea a trazos. Cuando la clase asociacin slo tiene atributos el nombre suele ponerse sobre la lnea. Si por el contrario, la clase asociacin tiene alguna operacin o asociacin propia, se puede eliminar la lnea que une, y se coloca el nombre correspondiente a la clase d e asociacin

Figura 10: Ejemplo de clase asociacin Asociaciones N-Arias En el caso de una asociacin en la que participan ms de dos clases, las clases se unen con una lnea a un diamante central.

Figura 11: Ejemplo de asociacin ternaria Herencia Podemos ver la herencia como una generalizacin de una clase en la cual se muestra ciertas caractersticas especificas a una en la cual se definen una ms generales. La relacin de herencia se representa mediante un tringulo en el extremo de la relacin que corresponde a la clase ms general o clase padre.

Figura 12: Ejemplo de herencia

Elementos Derivados Un elemento derivado es aquel cuyo valor se puede calcular a partir de otros elementos presentes en el modelo, que se incluye por motivos de claridad o como decisin de diseo. Se representa con una barra / precediendo al nombre del elemento derivado.

Figura 13: Ejemplo de atributo derivado Persona

Diagrama de Casos de Uso


Un Diagrama de Casos de Uso muestra a relacin entre los actores y los casos de uso del sistema desde el punto de vista del usuario. Permite definir los lmites y la funcionalidad que ofrece el sistema en lo que se refiere a su interaccin externa. Actores Un actor es una entidad externa al sistema que realiza algn tipo de interaccin con el mismo, un persona fsica puede ser interpretada como uno o varios actores al mismo tiempo. Se representa mediante una figura humana dibujada con palotes.

Actor A

Figura 14: ejemplo Actor Casos de Uso Un caso de uso es una descripcin de la secuencia de interacciones que se producen entre un actor y el sistema, Expresa una unidad coherente de funcionalidad, y se representa en el Diagrama de Casos de Uso mediante una elipse con el nombre del caso de uso en su interior. El nombre del caso de uso debe reflejar la tarea especfica que el actor desea llevar a cabo usando el sistema.
Sistema

C aso de uso X

A ctor A Actor B C aso de uso Y

Figura 15: Ejemplo de Casos de Uso

Relaciones entre Casos de Uso Entre dos casos de uso puede haber las siguientes relaciones: Extiende: Cuando un caso de uso especializa a otro extendiendo su funcionalidad Usa: Cuando un caso de uso utiliza a otro. Hereda: el Caso de uso origen hereda la especificacin del caso de de uso destino, posiblemente la modifica y/o ampla Se representan como una lnea que une a los dos casos de uso relacionados, con una flecha en forma de tringulo y con una etiqueta <<extiende>> o <<usa>> segn sea el tipo de relacin.

Figura 16: Ejemplo Diagrama de Casos de Uso

Diagramas de Interaccin
En los diagramas de interaccin se muestra un patrn de interaccin entre objetos y se utilizan para moldear una vista dinmica del anlisis y el diseo de un sistema. Hay dos tipos de diagrama de interaccin,: Diagramas de Secuencia y Diagramas de Colaboracin. Diagrama de Secuencia Un diagrama de Secuencia muestra una interaccin ordenada como en un grfico en dos dimensiones en el eje vertical los objetos y en el horizontal el tiempo segn la secuencia temporal de eventos sin orden prefijado Cada objeto o actor tiene una lnea vertical, y los mensajes se representan mediante flechas entre los distintos objetos. El tiempo fluye de arriba abajo. Se pueden colocar etiquetas bien en el margen izquierdo o bien junto a las transiciones o activaciones a las que se refieren.

Figura 17 Diagrama de Secuencia Diagrama de Colaboracin Un Diagrama de Colaboracin muestra una interaccin organizada basndose en los objetos que toman parte en la interaccin y los enlaces entre los mismos, permite moldear los objetos y los enlaces implicados en la implementacin de una interaccin sin hacer caso de las dems, destacndose por la organizacin de los objetos, muestran las relaciones entre los roles de los objetos. La secuencia de los mensajes y los flujos de ejecucin concurrentes deben determinarse explcitamente mediante nmeros de secuencia.

Figura 18: Ejemplo Diagrama de Colaboracin

Diagrama de Estados
Un Diagrama de Estados muestra la secuencia de estados por los que pasa un caso de uso o un objeto a lo largo de su vida, indicando qu eventos hacen que se pase de un estado a otro y cules son las respuestas y acciones que genera. En cuanto a la representacin, un diagrama de estados es un grafo cuyos nodos son estados y cuyos arcos dirigidos son transiciones etiquetadas con los nombres de los eventos.

Figura 19: Ejemplo Diagrama de Estados

Modelado Dinmico
Diagramas De Actividades
En los diagramas de actividades que la idea fundamental es modelar el flujo de control entre actividades. Grficamente un diagrama de actividades ser un conjunto de arcos y nodos, Desde un punto de vista conceptual, el diagrama de actividades muestra cmo fluye el control de unas clases a otras con la finalidad de culminar con un flujo de control total que se corresponde con la consecucin de un proceso ms complejo
[no hay
Buscar

[no [hay

[hay
Poner caf en

Aadir agua al

Coger

Poner filtro en

Coger zumo

Encender

cafetera
Caf en

indicado
Servir caf Beber

. Figura 20: Ejemplo de Diagrama de actividad

Contenido del diagrama de actividades


Bsicamente un diagrama de actividades contiene: Estados de actividad Estados de accin Transiciones Objetos

Estados de actividad y estados de accin La representacin de ambos es un rectngulo con las puntas redondeadas, en cuyo interior se representa bien una actividad o bien una accin., se puedre utilizar lenguaje natural, una especificacin formal de expresiones, un metalenguaje, etc. Esto es un estado de accin con una accin simple

Esto es un estado de accin con una expresin Figura 21 Ejemplos de Estados de Accin En cambio un estado de actividad, s puede descomponerse en ms subactividades representadas a travs de otros diagramas de actividades. En los estados de actividad podemos encontrar otros elementos adicionales como son: acciones de entrada (entry) y de salida (exit) del estado, as como definicin de submquinas

Figura 22 Estado de Actividad Transiciones Las transiciones reflejan el paso de un estado a otro, bien sea de actividad o de accin. Como todo flujo de control debe empezar y terminar en algn momento, podemos indicar esto utilizando dos disparadores de inicio y fin tal

Figura 23: Ejemplo de Transiciones sin disparadores Bifurcaciones Para poder representar caminos alternativos o bifurcacin se utilizar como smbolo el rombo. En cada transicin de salida se colocar una expresin booleana que ser evaluada una vez al llegar a la bifurcacin, para poder cubrir todas las posibilidades se puede utilizar la palabra ELSE, para indicar una transicin obligada a un determinado estado cuando el resto de guardas han fallado.

Figura 24: Ejemplo de Bifurcacin Divisin y unin No slo existe el flujo secuencial y la bifurcacin, tambin hay algunos casos en los que se requieren tareas concurrentes. UML representa grficamente el proceso de divisin, que representa la concurrencia, y el momento de la unin de nuevo al flujo de control secuencial, por una lnea horizontal ancha

. Figura 25: Ejemplo de Divisin y unin Calles Cuando se modelan flujos de trabajo de organizaciones, es especialmente til dividir los estados de actividades en grupos, cada grupo tiene un nombre concreto y se denominan calles.

Figura 26: Ejemplo de Calles

Modelado Fsico De Un Sistema OO


Componentes
Los componentes pertenecen al mundo fsico y reemplazable que conforma un conjunto de interfaces, una caracterstica bsica de un componente es que: debe definir una abstraccin precisa con una interfaz bien definida, y permitiendo reemplazar fcilmente los componentes ms viejos con otros ms nuevos y compatibles. UML proporciona una representacin grfica para estos como se puede ver en la Figura, XXXX.dll, es el nombre del componente.

Figura 27: Representacin de un componente Cada componente debe tener un nombre que lo distinga de los dems. Al igual que las clases los componentes pueden enriquecerse con compartimentos adicionales que muestran sus detalles.

Figura 28 Representacin extendida de un componente Interfaces Tanto los servicios propios de una clase como los de un componente, se especifican a travs de una Interfaz. La relacin entre un componente y sus interfaces se puede representar de dos maneras diferentes, de forma icnica, y de forma expandida .

Figura 29: Componentes e interfaces, formato icnico

Figura 30 Componentes e interfaces, formato extendido Tipos de componentes Existen bsicamente tres tipos de componentes: Componentes de despliegue Componentes producto del trabajo Componentes de ejecucin

Organizacin de componentes Los componentes se pueden agrupar en paquetes. Adems se pueden especificar entre ellos relaciones de dependencia, generalizacin, asociacin, y realizacin.

Despliegue
Nodos Al igual que los componentes los nodos pertenecen al mundo material. Los nodos sirven para modelar la topologa del hardware sobre el que se ejecuta el sistema. Un nodo representa normalmente un procesador o un dispositivo sobre el que se pueden desplegar los componentes.

Figura 31: Nodos Nodos y componentes Los nodos se pueden agrupar en paquetes igual que los las clases y los componentes. Los tipos de relacin ms comn entre nodos es la asociacin. Una asociacin entre nodos viene a representar una conexin fsica entre nodos.

Figura 32: Relacin entre nodos y componentes

Figura 33: Conexiones entre nodos Existen dos tipos de diagramas que sirven para modelar los aspectos fsicos de un sistema orientado a objetos: Diagramas de Componentes Diagramas de Despliegue

Diagramas de Componentes
Un diagrama de componentes muestra la organizacin y las dependencias entre un conjunto de componentes. Para todo sistema OO se han de construir una serie de diagramas que modelan tanto la parte esttica, como dinmica, pero llegado el momento todo esto se debe materializar en un sistema implementado Algunos conceptos Un diagrama de componentes muestra un conjunto de componentes y sus relaciones de manera grfica a travs del uso de nodos y arcos entre estos. Normalmente los diagramas de componentes contienen: Componentes Interfaces Relaciones de dependencia, realizacin. Paquetes o subsistemas Instancias de algunas clases

generalizacin,

asociaciones

Usos ms comunes a) Modelado de Cdigo Fuente b) Modelado de una versin ejecutable y bibliotecas. c) Modelado de una base de datos fsica

Diagramas de Despliegue
Tcnicas ms comunes de modelado a) Modelado de un sistema empotrado Para modelar un sistema empotrado es necesario: Identificar los dispositivos y nodos propios del sistema. Proporcionar seales visuales, sobre todo para los dispositivos poco usuales. Modelar las relaciones entre esos procesadores y dispositivos en un diagrama de despliegue. Si es necesario hay que detallar cualquier dispositivo inteligente, modelando su estructura en un diagrama de despliegue ms pormenorizado.

b) Modelado de un sistema cliente servidor Para modelar un sistema cliente/servidor hay que hace lo siguiente: Destacar los dispositivos relacionados con el comportamiento del sistema. Proporcionar seales visuales para esos procesadores y dispositivos a travs de estereotipos. Modelar la tipologa de esos nodos mediante un diagrama de despliegue. Identificar los nodos que representan los procesadores cliente y servidor del sistema.

Arquitectura del Sistema


Arquitectura de tres niveles La llamada Arquitectura en Tres Niveles, es la ms comn en sistemas de informacin, una descripcin de los tres niveles sera la siguiente: Nivel 1: Presentacin ventanas, informes, etc. Nivel 2: Lgica de la Aplicacin tareas y reglas que gobiernan el proceso. Nivel 3: Almacenamiento mecanismo de almacenamiento. Arquitectura de tres niveles orientadas a objetos Descomposicin del nivel de lgica de la aplicacin Objetos del Dominio Servicios Arquitectura MULTI-nivel La arquitectura de tres niveles puede pasar a llamarse de Mltiples

Niveles si tenemos en cuenta el hecho de que todos los niveles de la arquitectura de tres niveles se pueden descomponer cada uno de ellos cada vez ms. El motivo que lleva a descomponer la arquitectura del sistema en diferentes niveles es mltiple: Separacin de la lgica de la aplicacin en componentes separados que sean ms fcilmente reutilizables. Distribucin de niveles en diferentes nodos fsicos de computacin. Reparto de recursos humanos en diferentes niveles de la arquitectura. Paquetes La forma que tiene UML de agrupar elementos en subsistemas es a travs del uso de Paquetes, pudindose anidar los paquetes formando jerarquas de paquetes.

Figura 34: Representacin de un paquete en UML

Figura 35: Arquitectura de un sistema utilizando paquetes Identificacin de Paquetes La siguiente serie de reglas que nos pueden ser de utilidad a la hora de agrupar los diferentes elementos en paquetes. Conviene agrupar elementos que proporcionen un mismo servicio. Los elementos que se agrupen en un mismo paquete han de presentar un alto grado de cohesin, es decir deben estar muy relacionados. Los elementos que estn en diferentes paquetes deben tener poca relacin, es decir deben colaborar lo menos posible.

También podría gustarte