You are on page 1of 20

INTRODUCCION A UML

entidades y bloques de construcción de un sistema. mientras que el modelo de clases es un modelo más riguroso y enfocado al diseño.El Modelo Lógico Un modelo lógico es una vista estática de los objetos y las clases que cubren el espacio de análisis y diseño. En el modelo lógico se usa UML para modelar los elementos estructurales estáticos. Las clases (y las interfaces) son los elementos de diseño que corresponden a los artefactos de software codificados o desarrollados . de alto nivel de los objetos de negocio y de las entidades. Captura y define los objetos.. Los componentes se construyen a partir de las clases. un modelo de dominio es una vista más pobre. Las clases son los moldes genéricos a partir de los que se crean los objetos en tiempo de ejecución del sistema. Típicamente.

un lenguaje de modelamiento y no un método o un proceso. estados y cómo modelar la relación entre esos elementos. tal como su nombre lo indica. flujos de trabajo. casos de uso. componentes. El UML está compuesto por una notación muy específica y por las reglas semánticas relacionadas para la construcción de sistemas de software. Describe la notación para clases. El UML soporta un conjunto rico en elementos de notación gráficos. objetos. nodos.Introducción al UML El Lenguaje Unificado de Modelado (UML) es. El UML en sí mismo no prescribe ni aconseja cómo usar esta notación en el proceso de desarrollo o como parte de una metodología de diseño orientada a objetos. . actividades. El UML también soporta la idea de extensiones personalizadas a través elementos estereotipados.

UML ofrece nueve diagramas en los cuales modelar sistemas. Mientras que ha habido muchas notaciones y métodos usados para el diseño orientado a objetos. y describe la semántica esencial de lo que estos diagramas y símbolos significan.El UML provee beneficios significativos para los ingenieros de software y las organizaciones al ayudarles a construir modelos rigurosos. El Lenguaje Unificado de Modelado preescribe un conjunto de notaciones y diagramas estándar para modelar sistemas orientados a objetos. sistemas de hardware. . ahora los modeladores sólo tienen que aprender una única notación. y organizaciones del mundo real. UML se puede usar para modelar distintos tipos de sistemas: sistemas de software. trazables y mantenibles. que soporten el ciclo de vida de desarrollo de software completo.

‡ Diagramas de Componentes para modelar componentes.. ‡ Diagramas de Implementación para modelar la distribución del sistema . ‡Diagramas de Secuencia para modelar el paso de mensajes entre objetos. ‡Diagramas de Estado para modelar el comportamiento de los objetos en el sistema. objetos u operaciones.‡ Diagramas de Casos de Uso para modelar los procesos ¶business¶. ‡ Diagramas de Actividad para modelar el comportamiento de los Casos de Uso. ‡ Diagramas de Objetos para modelar la estructura estática de los objetos en el sistema. ‡Diagramas de Colaboración para modelar interacciones entre objetos. ‡Diagramas de Clases para modelar la estructura estática de las clases en el sistema.

los diagramas tradicionales de modelado de datos capturan más información sobre la base de datos relacional y son más adecuados para modelarla. UML incluye los diagramas de casos de uso. y el problema que necesitamos solucionar.Aunque las bases de datos orientadas a objetos se están volviendo más populares. El Diagrama de Caso de Uso nos da el punto de entrada para analizar los requisitos del sistema. la base de datos relacional sigue siendo el método predominante para almacenar datos. se le considera estar dotado de una aproximación al diseño centrada en el problema con los casos de uso. en el entorno de desarrollo actual. sin embargo. Los diagramas de clases de UML se pueden usar para modelar la base de datos relacional en la que el sistema está basado. .

. se representa con diagramas de clase.. El desarrollo de sistemas se enfoca en tres modelos diferentes del sistema: Modelo Funcional: Funcionalidad del sistema desde el punto de vista del usuario. diagrama de gráfica de estado y diagramas de actividad. . proporcionando construcciones para un amplio rango de sistemas y actividades.UML es una notación que se produjo como resultado de la unificación de la técnica de modelados de objetos. se representa con diagramas de secuencia. Modelo Dinámico:Comportamiento interno del sistema. Modelo de Objetos: Estructura del sistema desde el punto de vista de objetos. es representado con diagramas de caso. ha sido diseñado para un amplio rango de aplicaciones. atributos..

describiendo una función proporcionada por el sistema que produce un resultado visible para un actor. se dice que se comunican. Un actor describe cualquier entidad que interactúa con el sistema (un usuario. otro sistema. un ambiente físico del sistema.. se enfocan en el comportamiento del sistema desde el punto de vista externo. Cuando los actores y los casos de uso intercambian información.. .): La identificación de los actores y los casos de uso da como resultado la definición de la frontera del sistema..Diagramas de caso de uso Los casos de uso se utilizan durante la obtención de requerimientos y el análisis para representar la funcionalidad del sistema.

Requerimientos especiales : Aquellos que no están relacionados con la funcionalidad del sistema. etc. Flujo de eventos : Secuencia de acciones del caso de uso. para referirnos a un escenario se usa una plantilla de tres campos: Nombre: Identificador único. Los casos de uso se describen en lenguaje natural.La descripción de un caso de uso se hace mediante una plantilla de seis campos: Nombre: Identificador único. se subraya para indicar que es una instacia Instancias de actores participantes: Instancias de los actores involucrados. plataformas. . Flujo de eventos: Secuencia de eventos paso a paso. subrayados. una descripción del conjunto de acciones concretas. Restricciones sobre el desempeño del sistema. es decir. Numeradas Condiciones de salida : descripción de las condiciones que se satisfacen cuando termina el caso de uso. esto es una instancia de un caso de uso. Actores participantes : actores que interactúan con el caso de uso Condiciones iniciales : Aquellas que se deben satisfacer antes de que se inicie el caso de uso. Cuando nos referimos a un caso de uso en particular. herramientas. hablamos de un escenario.

Relaciones de los casos de uso Comunicación: Intercambio de información entre actores y casos de uso. son los casos de uso con comportamiento compartido. Línea continua. Dos casos de uso están relacionados por una relación de inclusión si alguno de ellos incluye al segundo en su flujo de eventos. Se representa con una flecha discontinua. . se etiqueta con <<incluye>>. estos las incluyen (evitando inconsistencias y redundancias). tras identificar las cosas comunes de diferentes casos de uso. que se inicia en el caso que incluye al otro. Inclusión: Una forma de simplificación del modelado.

los errores. . añadiendo más detalles. desde la extensión hacia el caso de uso con etiqueta <<extiende>>. Una relación extendida indica que una instancia del caso de uso extendido puede incluir el comportamiento especificado por el caso de uso que se extiende.Extensión:Un caso de uso puede extender a otro caso de uso mediante la adición de eventos. de forma excepcional. Suelen tratarse como extensiones las ayudas. etc. Generalización/Especialización: Un caso de uso puede especializar a otro más general. Se representan por una flecha discontinua.

Cada objeto tiene una identidad: se puede hacer referencia a él de manera individual y es distinguible con respecto a otros objetos. con el nombre. En UML las clases y objetos se representan en cuadrados. por claridad).Diagramas de clase. La conexión entre objetos se llaman vínculos. Las clases son abstracciones que especifican los atributos y comportamientos de un conjunto de objetos. Los objetos son entidades que encapsulan estado y comportamiento. Los diagramas de clase se usan para describir la estructura de un sistema. Los nombres de clase comienzan con mayúscula. formalizan el conocimiento del dominio de la aplicación. atributos y operaciones (estas dos se pueden omitir. las conexiones entre clases asociaciones (que serán grupos de vínculos). se pueden etiquetar con papeles . con el fin de aclarar el propósito de la asociación. Los nombres de objetos estarán subrayados para indicar que son instancias.

Cuando una asociación tiene atributos y operaciones se denomina clase asociación y se conecta a la asociación mediante una línea de guiones. Cuando una asociación tiene atributos y operaciones se denomina clase asociación y se conecta a la asociación mediante una línea de guiones. subclases y relaciones de herencia. . La agregación enfatiza los aspectos jerárquicos de la relación. La generalizaciones la aplicación típica de objetos. con la superclase.Cada extremo de una asociación puede ser etiquetado con números para indicar la cantidad de vínculos que se pueden originar a partir de una instancia de la clase. pueblo) en UML se utiliza la agregación. una línea con un rombo en el extremo del contenedor de la asociación.región. Cuando se quiere representar la composición(estado.La clase abstracta se nombra en cursiva.

El eje vertical representa el tiempo de arriba a abajo. a su vez puede enviar mensajes a otros objetos En los diagramas de secuencia cada columna representa un objeto que participa en la interacción. La recepción de un mensaje por parte de un objeto activa la ejecución de una operación. Un objeto interactúa con otro objeto enviando mensajes. Son útiles para la identificación de objetos adicionales que participen en los casos de uso. la cual. Los mensajes se indican con flechas.Diagramas de secuencia Los diagramas de secuencia se usan para formalizar el comportamiento del sistema y para visualizar la comunicación entre objetos. . cuyos rótulos son el nombre del mensaje y pueden contener argumentos.

Mediante los diagramas de secuencia se pueden indicar situaciones con un nivel de detalle variable. La repetición se indica mediante un asterisco '*'. Una condición en un mensaje se indica por una expresión entre corchetes de forma que si la condición es cierta se envía en mensaje. cuando la secuencia es abstracta (es decir. . describe todas las interacciones posibles) los diagramas de secuencia también proporcionan notaciones para condiciones e iteraciones.

es decir. Para reducir la complejidad se pueden utilizar transiciones internas o gráficas de estado aisladas. .Diagramas de gráfica de estado Los diagramas de gráfica de estado describen el comportamiento de un objeto individual como varios estados y transiciones entre esos estados. Una transición representa cambios de estado activados por eventos. una abstracción de los valores de atributo de una clase. es una notación para la descripción de la secuencia de estados por los que pasa un objeto en respuesta a eventos externos. condiciones o tiempo. Un estado es una condición que satisface un objeto. Las transiciones internas son transiciones que permanecen dentro de un sólo estado.

Estas acciones se pueden separar en carriles si interesa indicar el objeto o subsistema que realiza las acciones. La sincronización de varias actividades o la división del flujo de control en varios hilos se indican con transiciones complejas. Una actividad se puede definir como estados que representan la ejecución de un conjunto de operaciones.Diagramas de actividad Un diagrama de actividad describe un sistema desde el punto de vista de las actividades. que son acciones que pueden sucederen paralelo. rotuladas con las condiciones que permiten seleccionar la rama. . cuya terminación dispara una transición hacia otra actividad (se pueden asimilar al DFD y al DFC). Los diagramas de actividad pueden representar decisiones (ramificaciones del flujo de control) como un rombo con una o más flechas entrantes y dos o más flechas salientes.

Se debe de tener en cuenta que un paquete es una forma de organización por ello no tiene los comportamientos asociados a un objeto (mensajes . esta complejidad puede manejarse agrupando en paquetes los elementos relacionados.) Se puede asociar una nota a un diagrama con el fin de agregar información a los modelos y a los elementos de los modelos. ..Organización de los diagramas Los modelos crecen en complejidad conforme se van refinando. Los paquetes no son necesariamente jerárquicos. Un paquete es un agrupamiento de elementos del modelo (similar a una organización de ficheros y directorios).. la misma clase puede aparecer en más de un paquete. es decir.

que se añade a un elemento UML.Extensiones al diagrama. como una clase o una asociación. se usa para crear nuevos tipos de bloque de construcción que se necesitan en el dominio. Una restricción es una regla que se añade a un bloque de construcción UML. es que difícilmente se consigue modelar una amplia clase de sistemas mediante una notación fija. Si algo se ha aprendido en la historia del modelado de sistemas software. permite representar fenómenos. . Un estereotipo es un texto encerrado entre paréntesis angulares <<texto>>. La notación es un texto entre corchetes. Por esta razón UML proporciona varios mecanismos de extensión del lenguaje.