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

Lenguaje de modelado unificado (UML)

El Management Group (OMG) Objeto es un consorcio sin fines de lucro que produce y mantiene los estndares y
especificaciones de la industria de computacin para aplicaciones empresariales.
UML es una especificacin de modelado de aplicaciones de OMG. El objetivo principal de UML es simplificar el
proceso de ingeniera de software complejo. Usando UML, se puede especificar, visualizar y crear artefactos de
software y sistemas nonsoftware.
Es de sealar que UML es slo un lenguaje de modelado - que es que define las palabras y la gramtica, pero no el
proceso o procedimiento para la creacin de modelos.
UML: UNA REFERENCIA RPIDA
UML ofrece 12 diagramas hacia lo que representa el anlisis de requerimientos y solucin de diseo de una
aplicacin. Cada uno de estos 12 diagramas se pueden clasificar en 3 categoras como sigue.
DIAGRAMAS DE ESTRUCTURA. UML ofrece los siguientes cuatro diagramas de estructura, que pueden ser
utilizados para representar la estructura esttica de una aplicacin.
1. Los diagramas de clases
2. Los diagramas de objetos
3. Los diagramas de componentes
4. Los diagramas de despliegue
DIAGRAMAS DE COMPORTAMIENTO. UML ofrece los siguientes cinco diagramas de comportamiento, que pueden
ser utilizados para representar los aspectos de comportamiento dinmico de una aplicacin.
1. Los diagramas de casos de uso
2. Los diagramas de secuencia
3. Los diagramas de actividades
4. Los diagramas de colaboracin
5. Diagrama Statechart
ESQUEMAS DE GESTIN DE MODELO. UML ofrece los tres diagramas de la gerencia siguiente modelo que se
pueden utilizar para representar cmo se organizan y gestionan diferentes mdulos de aplicacin.
1. Paquetes
2. Los subsistemas
3. Modelos
Los diagramas de clases y de secuencia se han proporcionado para ejemplos de este libro. En esta seccin se ofrece
una breve introduccin a los diagramas de clases y de secuencia y explica los diferentes elementos del diagrama de
clases / secuencias utilizadas en este libro.
DIAGRAMAS DE CLASES. Los diagramas de clases son parte de la estructura y diagramas se utilizan para describir
la estructura esttica de un sistema. La estructura y el comportamiento de las clases y su asociacin con otras clases
se representan dentro de un diagrama de clases.
Class
La Figura 2.1 muestra la representacin genrica de una clase. Se compone de tres compartimientos (secciones
rectangulares). El nombre de clase se coloca en el compartimiento superior. El conjunto de atributos (ambas variables
de instancia y variables de clase) se enumeran en el segundo compartimiento debajo del compartimiento del nombre
de la clase. El conjunto de mtodos / operaciones aparece en el tercer compartimiento.
Aunque la representacin genrica consta de tres compartimentos como se ha descrito anteriormente, los
compartimentos pueden variar en nmero y tipo. Uno puede suppr compartimentos ess y tambin tienen
compartimentos adicionales para dar cabida a aspectos tales como las limitaciones y los valores etiquetados. La
Figura 2.2 muestra un ejemplo de una clase.
Clase interior
Una clase interna es una clase definida dentro de otra clase. Existe el concepto de una clase interna en algunos de los
lenguajes orientados a objetos como Java, C ++ (a travs de estructura y enumeracin) y C # (con verdaderas clases
internas), pero no es un concepto orientado a objetos estndar.
UML no proporciona una manera definida de lo que representa una clase interna. La notacin se muestra en la Figura
2.3 se usa en este libro para representar una clase interna, donde la clase interna se coloca en la seccin de
operaciones de clase en la que se define la clase interna.
La figura 2.4 muestra un ejemplo de un Memento clase interna definida dentro de la clase DataConverter

ESPECIFICADORES DE ACCESO. En Java, la visibilidad de los diferentes miembros de un objeto y su accesibilidad


por los diferentes objetos de cliente se controla mediante especificadores de acceso. Especificadores de acceso para
atributos y operaciones se pueden especificar utilizando los smbolos de la Tabla 2.1.
Tabla 2.2 listas especificadores de acceso de Java y su alcance. En la Figura 2.2 (clase Cliente) nombre es un atributo
privado y getName es un mtodo pblico.
ESTTICO. Subrayando una variable o mtodo de una clase especifica como esttica (con mbito de nivel de clase).
En la Figura 2.5, el mtodo getInstance es un mtodo esttico de la clase FileLogger. Objetos de cliente pueden
invocar el mtodo getInstance de la clase FileLogger sin tener que crear sus instancias.

Resumen Clase / Mtodo. Un mtodo sin cuerpo, en una clase, se conoce como un mtodo abstracto. Una clase con
al menos un mtodo abstracto se trata como una clase abstracta. Objetos de cliente no pueden crear instancias de
una clase abstracta. Una subclase de una clase abstracta debe implementar todos los mtodos abstractos de la clase
abstracta o ser declarado como una misma clase abstracta.
Viendo un nombre de clase / mtodo en cursiva especifica como una clase / mtodo abstracto. La clase Creador en la
Figura 2.6 es una clase abstracta con un mtodo factoryMethod abstracto
EXCEPCIN. Una flecha de trazos con una etiqueta estereotipo "tira" se utiliza para indicar que un mtodo especfico
produce una excepcin. La flecha apunta desde el mtodo a la clase de excepcin. Tanto los mtodos isValid y
ahorrar en la Figura 2.7 a declarar (posiblemente) una excepcin del tipo java.rmi.RemoteException.

Nota. Una nota se adjunta a un diagrama UML para proporcionar informacin adicional para un smbolo tal como
comentarios, limitaciones o cdigo. En general, las notas pueden estar unidos a cualquier elemento del diagrama en
cualquier diagrama UML.
Una nota es denotada por un rectngulo manoseado y se une a un elemento del diagrama por una lnea de puntos. La
figura 2.8 muestra una nota adjunta al atributo de una clase.
GENERALIZACIN. Generalizacin se utiliza para representar el concepto orientado a objetos de la herencia cuando
hay una clase base con el comportamiento comn y cada una de sus clases derivadas contiene detalles /
comportamiento especfico.

En la Figura 2.9, la punta de flecha cerrada y hueca que apunta desde la subclase Shark / Whale a la superclase de
pescado representa la generalizacin.
INTERFAZ. Una interfaz especifica las operaciones externamente visibles de una clase, pero no la ejecucin efectiva
de las operaciones. Una interfaz especfica a menudo slo una parte del comportamiento de una clase implementador
real. Una interfaz puede extraerse utilizando una configuracin rectangular de clase similar, con el texto "interfaz" por
encima del nombre de la interfaz. La figura 2.10 muestra una interfaz llamada VisitorInterface.
REALIZACIN. Una realizacin representa la relacin entre una interfaz y una clase que proporciona la
implementacin real. Esto se puede dibujar en dos maneras, dependiendo de cmo se representa la interfaz.
1. Usando una punta de flecha cerrada y hueca que apunta desde la clase que implementa la interfaz con una lnea
discontinua
2. Con una lnea y un crculo, donde el crculo representa la interfaz (con el nombre de la interfaz mantenido cerca del
crculo) y la lnea se puede extraer que apunta a la clase que implementa la interfaz representada por el crculo.
Tanto en la Figura 2.11 y la Figura 2.12, la clase OrderVisitor implementa la interfaz declarada por la interfaz
VisitorInterface (Java).
Dependencia. Una dependencia representa la relacin entre una fuente y un componente de destino, cuando hay una
relacin de dependencia entre los dos. Esto significa que, cuando hay un cambio en el objetivo, el elemento de origen
sufre un cambio necesario, pero no viceversa.
La clase de pedido en la figura 2.13 utiliza el mtodo de ejecucin de la clase DBUtil para ejecutar (Structured Query
Language) sentencias SQL y, por tanto, depende de ella.

La flecha de trazos de la clase Order dependiente de la clase DBUtil objetivo.


Asociacin Clase. Asociacin Clase especifica la relacin estructural entre las clases. El concepto de
multiplicidad se discute ms adelante est muy estrechamente ligada a las asociaciones de clase.
Multiplicidad. La multiplicidad se utiliza para indicar el nmero de instancias de una clase vinculados a
una instancia de la otra clase. Tabla 2.3 listas diferentes valores que pueden ser utilizados para indicar
la multiplicidad. Los siguientes tres tipos de asociaciones se utilizan en los diagramas UML ejemplo en
este libro.
Navegabilidad. Cuando Clase A contiene la informacin necesaria para llegar a la Clase B, a
continuacin, la navegabilidad es de Clase A a la Clase B. En otras palabras, la clase A sabe de Clase B,
pero no viceversa.
En la figura 2.14, una instancia de la clase LogAbstraction mantiene internamente un objeto
LoggerBridge y por lo tanto ser capaz de llegar a ella directamente. Por lo tanto un objeto
LoggerBridge es navegable desde una instancia LogAbstraction.
Tambin es posible para los que la navegacin sea bidireccional. En ese caso, la lnea slida de
asociacin entre las dos clases ya sea contiene puntas de flecha en ambos extremos o ninguna.
Las dos asociaciones siguientes son aplicables cuando existe una relacin todo-parte entre dos clases.
En otras palabras, una clase contiene el otro.
Composicin. Clase A incluye acciones de Clase B. Esta afirmacin denota una fuerte identificacin
entre la Clase A, el conjunto, y de clase B, con su parte. En otras palabras, la clase parte no puede
existir de manera significativa por s sola sin toda la clase.
En la figura 2.15:
_ Un elemento de lnea es parte de una orden.
_ Un elemento de lnea no puede existir sin una orden.
Agregacin. Esta es una forma ms ligera de la composicin. Toda la clase desempea un papel ms
importante que la clase parte, pero a diferencia del caso de la composicin, la clase parte puede existir
de manera significativa por s sola sin toda la clase.
En la figura 2.16:
_ Un jugador es parte de un equipo.
_ Un jugador puede formar parte de ms de un equipo y por lo tanto, cuando se disuelve un equipo, el
jugador sigue siendo.

Los diagramas de secuencia. Los diagramas de secuencia se utilizan para describir las interacciones
entre los objetos colaborar en trminos de mensajes intercambiados en el tiempo para un resultado
especfico. Adems, un diagrama de secuencia tambin puede ser usada para modelar los flujos de
negocio. Echemos un rpido vistazo a algunos de los elementos del diagrama utilizados en la creacin
de diagramas de secuencia.
Objeto. Un objeto se representa con el nombre de la clase en un rectngulo precedido por dos puntos.
La figura 2.17 muestra un objeto denominado Controlador.
Mensaje. Un mensaje es una comunicacin entre objetos. La lnea horizontal slida que indica que un
mensaje puede ser etiquetado con el nombre del mensaje / operacin junto con sus valores de los
argumentos. Figura 2.18 es una llamada mensaje named salve.
En general, un mensaje de llamada en un diagrama de secuencia se asigna a una operacin de clase.
Las principales excepciones son cuando no est modelando directamente una interaccin de clase.
Por ejemplo, un diagrama de secuencia puede utilizarse para modelar un usuario utilizando una
mquina ATM donde la interaccin es ms largo de las lneas del usuario el envo de un mensaje al
sistema o el sistema de enviar una respuesta al usuario. En este caso, el modelado es a un nivel
conceptual diferente y la nocin de mapeo directo a las operaciones de clase puede no ser apropiado.
Los diagramas de secuencia tambin se pueden utilizar para modelar los flujos de negocio, en cuyo caso
el mensaje puede representar el paso de una nota, un archivo, una carta, etc.
Auto Call. Este es un llamado mensaje de un objeto en s mismo. Figura 2.19 es un llamado auto de un
mensaje llamado createSQL.
Vamos a crear un diagrama de secuencia muestra (Figura 2.20) con la siguiente funcionalidad, el uso de
diferentes smbolos de diagramas de secuencia descritas anteriormente.
_ Un usuario de Internet introduce datos en un formulario de registro en lnea y lo presenta.
_ Todos los envos de los usuarios se recibi por primera vez por un objeto del controlador.
_ El objeto controlador crea un objeto Cuenta con los datos presentados por el usuario.
_ El objeto Cuenta crea y utiliza un objeto DBManager para guardar los datos en una base de datos.

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