El UML permite modelar, construir y documentar los elementos que forman un sistema software orientado a objetos. Un lenguaje de modelado permite expresar los distintos modelos que se producen en el proceso de desarrollo. Un modelo es una representacin abstracta de una especificacin. Un diagrama es una representacin de un modelo de diseo. UML define una notacin y semntica comn, pues su objetivo era posibilitar el intercambio de modelos. Su estructura. Diagrama de clases. Describe la estructura esttica del sistema. Presenta clases, interfaces, colaboraciones y relaciones. Una clase es la definicin de un conjunto de objetos con caractersticas similares. Existen las clases abstractas (no tiene instancias directas) y concretas (instanciables). Restricciones: reglas a atributos o relaciones. Estereotipo: define el propsito del conjunto de elementos a modelar con el mismo tipo. Relaciones entre clases: Conexin semntica entre elementos del modelo. Tipos. -Dependencia. Un cambio en una clase puede afectar a la que se est usando. -Asociacin. Invocacin significativa entre dos o ms clases. descripcin, rol y multiplicidad. La asociacin puede ser reflexiva
Incluye
-Agregacin (es parte de o contiene)
-Composicin (compuesto por). -Generalizacin. Se crea una superclase que generaliza las propiedades comunes de varias clases. -Especializacin. Dada una clase, se crean otras que especializan la clase dada. Diagrama de objetos. Muestra un conjunto de objetos y sus relaciones en un momento determinado. Diagramas de casos de uso. Describen lo que hace un sistema, enfatizando el qu en vez del cmo. Describen las funcionalidades del sistema a partir de las interacciones del usuario, se usan para visualizar el contenido del sistema. -Actores: entidad externa que interacta con el sistema.
-Casos de uso: define una funcionalidad del sistema. Constituye un flujo de
eventos. Produce un resultado observable y vlido para el actor involucrado en la secuencia de acciones. Relaciones entre casos de uso: -Generalizacin: Define la especializacin de un caso de uso. -Extensin: especifica como un caso de uso puede insertarse en otro para extender la funcionalidad de un caso de uso base. -Inclusin: define un caso de uso es parte obligatoria de un caso de uso base.
Diagrama de Actividades. Define la lgica de los procedimientos, los
procesos de negocio y flujos de trabajo del sistema. Demuestran la serie de actividades que deben ser realizadas en un caso de uso, as como las distintas rutas que pueden irse desencadenando. -Actividad: Representa una accin que ser realizada por el sistema. -Subactividad: Una actividad puede ser descompuesta en varias actividades. -Ramificacin (Branch): Surge cuando existe la posibilidad de que ocurra ms de una transicin al terminar determinada actividad. -Especificaciones Join: Divisin, unin. -Seales: Algunas acciones responden a seales.
Diagramas de secuencia. Describen como colaboran y se comunican
(interaccin) los objetos del sistema. Muestra los objetos que participan en una interaccin. Diagrama de colaboracin: Describe la interaccin entre los objetos, numerando la secuencia de mensajes. Diagrama de Despliegue: Muestra las relaciones fsicas entre los componentes hardware y software en el sistema final, i.e., la configuracin de los elementos de procesamiento en tiempo de ejecucin y los componentes software. -Nodo: Elemento donde se ejecutan los componentes, representa el despliegue fsico de estos componentes.
-Asociacin: Representa el tipo de relacin que soporta la comunicacin entre
nodos. Diagramas de componentes: Muestra la relacin entre componentes de software, sus dependencias, su ubicacin, su comunicacin y otras condiciones. Define los mdulos fsicos del software y sus relaciones. Diagrama de estados: Muestran los diferentes estados de un objeto durante su vida.