Un diagrama de objeto en el Lenguaje de modelado unificado (UML), es un diagrama que muestra una vista completa o parcial de la estructura de un sistema modelado en un momento específico.
Descripción general
En el lenguaje de modelado unificado (UML), un diagrama de objetos se centra en un conjunto particular de objetos y atributos , y los vínculos entre estas instancias. Un conjunto correlacionado de diagramas de objetos proporciona información sobre cómo se espera que evolucione una vista arbitraria de un sistema con el tiempo. En las primeras especificaciones de UML, el diagrama de objetos se describe como:
- " Un diagrama de objeto es un gráfico de instancias, que incluye objetos y valores de datos. Un diagrama de objeto estático es una instancia de un diagrama de clases; muestra una instantánea del estado detallado de un sistema en un momento determinado. El uso de diagramas de objeto es bastante limitado, es decir, para mostrar ejemplos de estructura de datos ". [1] [2]
La última especificación UML 2.5 no define explícitamente diagramas de objetos, [3] pero proporciona una notación para instancias de clasificadores. [4]
Los diagramas de objetos y los diagramas de clases están estrechamente relacionados [5] y utilizan una notación casi idéntica. [6] Ambos diagramas están destinados a visualizar la estructura estática de un sistema. Mientras que los diagramas de clases muestran clases , los diagramas de objetos muestran instancias de clases ( objetos ). [7] Los diagramas de objetos son más concretos que los diagramas de clases . A menudo se utilizan para proporcionar ejemplos o actuar como casos de prueba para diagramas de clases. Normalmente, en un diagrama de objetos solo se muestran los aspectos de interés actual en un modelo.
Temas de diagramas de objetos
Especificaciones de la instancia
Cada objeto y enlace en un diagrama de objetos está representado por una InstanceSpecification . Esto puede mostrar el clasificador de un objeto (por ejemplo, una clase abstracta o concreta ) y el nombre de la instancia, así como los atributos y otras características estructurales que utilizan ranuras . Cada intervalo corresponde a un único atributo o característica y puede incluir un valor para esa entidad.
El nombre en una especificación de instancia muestra opcionalmente un nombre de instancia, un separador ':' y, opcionalmente, uno o más nombres de clasificadores separados por comas. El contenido de las ranuras, si las hubiera, se incluye debajo de los nombres, en un compartimento de atributos separado. Un vínculo se muestra como una línea continua y representa una instancia de una asociación .
Ejemplo de diagrama de objetos
Considere una posible forma de modelar la producción de la secuencia de Fibonacci .
En el primer diagrama de objetos UML a la derecha, la instancia en la especificación de instancia más a la izquierda se llama v1 , tiene IndependentVariable como su clasificador, desempeña el papel NMinus2 dentro del FibonacciSystem y tiene una ranura para el atributo val con un valor de 0 . El segundo objeto se llama v2 , es de la clase IndependentVariable , desempeña el papel NMinus1 y tiene val = 1 . El objeto DependentVariable se denomina v3 y desempeña la función N. La instancia superior, una especificación de instancia anónima, tiene FibonacciFunction como su clasificador y puede tener un nombre de instancia, un rol y ranuras, pero estos no se muestran aquí. El diagrama también incluye tres enlaces con nombre, que se muestran como líneas. Los enlaces son instancias de una asociación.
En el segundo diagrama, en un momento ligeramente posterior, los objetos IndependentVariable y DependentVariable son los mismos, pero las ranuras para el atributo val tienen valores diferentes. Los nombres de los roles no se muestran aquí.
En el último diagrama de objetos, una instantánea aún posterior, están involucrados los mismos tres objetos. Sus ranuras tienen diferentes valores. Los nombres de la instancia y el rol no se muestran aquí.
Uso
Si está utilizando una herramienta de modelado UML , normalmente dibujará diagramas de objetos utilizando algún otro tipo de diagrama, como en un diagrama de clases . Una instancia de objeto puede denominarse especificación de instancia o simplemente instancia . Un vínculo entre instancias generalmente se denomina vínculo . Otras entidades UML, como un símbolo de agregación o composición (un diamante) también pueden aparecer en un diagrama de objeto.
Referencias
- ^ Especificación UML 1.4 de Object Management Group (2001), septiembre de 2001
- ^ Anne Banks Pidduck, John Mylopoulos , Carson C. Woo (2002) Ingeniería de sistemas de información avanzada . p.776.
- ^ Clasificación de diagramas UML 2.5 en uml-diagrams.org. Consultado el 7 de diciembre de 2012
- ^ Especificación UML 2.5 de Object Management Group (2015), sección 9.8.4 sobre notación de InstanceSpecification, marzo de 2015
- ^ Marcus Fontoura, Wolfgang Pree y Bernhard Rumpe (2002) El perfil UML para arquitecturas marco . p.19
- ^ Kassem A. Saleh (2009) Ingeniería de software . p.47
- ^ Bianca Scholten (2007) El camino hacia la integración: una guía para aplicar el estándar ISA-95 en la fabricación . p.155
enlaces externos
- Información general sobre UML, incluida la especificación oficial de UML 2.0. Vea especialmente la sección sobre InstanceSpecification.
- El poder expresivo de los diagramas de objetos , una ilustración del mundo real
- Diagramas de objetos modales , una extensión de los diagramas de objetos con modos existencial / universal y positivo / negativo.