UML: Los Diagramas mas usados para el Diseño de Software
Diagramas UML Lenguaje unificado de modelado
Diagramas Estructurales
- Diagrama de clases
- Diagrama de objetos
- Diagrama de Componentes
- Diagrama de Distribución
- Diagrama de paquetes
- Diagrama de estructura compuesta
- Diagrama de depligue
Diagramas Dinámicos
- Diagrama de casos de uso
- Diagrama de Interacción
- Diagrama de secuencia
- Diagrama de comunicación
- Diagrama de Revision de la interacción
- Diagrama de cronometraje o tiempos
- Diagrama de actividades
- Diagrama de maquina de estado
- Diagrama de casos de uso
Diagramas de Casos de uso
Los principales símbolos son el actor y el ovlalo del caso de uso. Son utilizados para documentar los macrorrequisitos del sistemas. Piense en estos diagramas como la lista de las capacidades que debe proporcionar el sistema.(Lo que puede llegar hacer el sistema).
Este diagrama responde a la pregunta ¿que hace hace el sistema?
Actores
Son los que interactúan con el sistema, puede ser un usuario u otro sistema.
Relaciones
- include: Es un comportamiento común entre casos de uso, básicamente un caso de uso incluye el comportamiento de otro. si el actor realiza el caso de uso base tendrá que realizar también el caso de uso incluido.
- extens: Este tipo de relación es opcional en el flujo del comportamiento del sistema. Significa que un caso de uso extiende de otro para ejecutarse pero puede que no ocurra.
- herencia o generalización: cuando un caso de uso hereda acciones de otro.
Documentación
Cada caso de uso debe tener su ficha de especificaciónLos casos de uso se documentan con texto informal. En general, se usa una lista numerada de los pasos que sigue el actor para interactuar con el sistema. Ejemplo
Este tipo de diagrama noes adecuado en situaciones donde ocurren eventos asincrónicos
Diagrama de Actividades
Es la versión UML de un diagrama de flujo. Son utilizados para analizar procesos. Este diagrama es una buena herramienta para analizar problemas que el sistema debe resolver e incluso para refinar proceso que comprenden el problema.
Este tipo de diagrama noes adecuado en situaciones donde ocurren eventos asincrónicos
Componentes
Acción: Es una representación de un estado, El uso normal de una acción es modelar un paso o un conjunto de pasos en la ejecución de un algoritmo.
Decisiones: Un diagrama de actividad expresa una decisión cuando una condición es usada para indicar diferentes transiciones
posibles que dependen de un valor booleano.
Andariveles:Los andariveles se usan para organizar las responsabilidadesde las actividades. La utilidad de los andariveles aparece en estos casos, cuando quiero mostrar que la secuencia de pasos que el usuario está expresando como parte del procesamiento del sistema es realizada por personas de distintas áreas o distintos tipos de máquinas.
Diagrama de Clases
Utilizados para mostrar las clases de un sistema y las relaciones entre ellas. Lo ideal es mostrar las clases y sus relaciones desde varias perspectivas para transmitir una mejor compresión. Estos diagramas no describen los comportamientos o como interactúan los ejemplos de las clases.
Representa los objetos fundamentales del sistema, los que percibe el usuario, la clase define un conjunto de objetos, cada objeto pertenece a una clase.
Partes
Atributos
Son las características de la clase y los atributos puede contener la siguiente información
- Tipo: por ejemplo, Int, String, Double.
- Valor Inicial: el valor que tendrá un atributo al crear un objeto.
- Visibilidad: Es la visibilidad que va tener el atributo con respecto a otros objetos. (-) Privado (~) Package (#) Protegido (+) publicos.
Métodos
Son las acciones que puede llegar a realizar esa clase y puede contener la siguiente información.
- Tipo Devuelto: es el tipo de datos que se va a devolver por ejemplo Int, String, Double.
- Parámetros: Son los datos que va requerir el método para que funcione.
- Visibilidad
Relaciones
Asociación
Una asociación es una abstracción de la relación
existente en los enlaces entre los objetos. Este tipo de asociación el tiempo de vida de un objeto no depende del otro.
Bidireccional
Esta relación es cuando las dos clases se comunican entre
Esta relación es cuando las dos clases se comunican entre
Unidireccional
pero es posible indicar que la
navegación ocurrirá en una sola dirección.
En este tipo de relación puede que haya la multiplicidad donde un objeto o clase puede estar relacionada con varios de la otra clase.
Este tipo de relación ocurre cuando una clase puede contener a la otra, si la clase que lo contiene es destruida de igual forma la clase que está dentro de la clase que se destruyo no se destruira seguirá.
Composición
Este tipo de relación es igual a la de agregación solamente que en este caso si el objeto o la clase que contiene a la otra se destruye la otra también se destruye.
Generalización o herencia
Este tipo de relación es igual a la de agregación solamente que en este caso si el objeto o la clase que contiene a la otra se destruye la otra también se destruye.
Generalización o herencia
En esta relación se indica que una clase u objeto hereda características de otra.
Diagramas de Interacción
Este tipo de diagramas muestra la interacción entre objetos y los mensajes que pasan entre ellos. Estos diagramas se dividen en dos tipos:
Secuencia: Muestran las clases las clases y los mensajes modelando un solo flujo a través de los objetos del sistema.
Colaboración: usa las mismas clases y mensajes pero su ubicación es espacial y no en el tiempo como lo es el de secuencia.
Diagramas de estado
Muestra el estado cambiante de un solo objeto conforme por el paso por un sistema. Son adecuados para describir el comportamiento de las interfaces de los usuarios y de los controladores de dispositivos para sistemas en tiempo real.
Diagramas de Interacción
Este tipo de diagramas muestra la interacción entre objetos y los mensajes que pasan entre ellos. Estos diagramas se dividen en dos tipos:
Secuencia: Muestran las clases las clases y los mensajes modelando un solo flujo a través de los objetos del sistema.
Colaboración: usa las mismas clases y mensajes pero su ubicación es espacial y no en el tiempo como lo es el de secuencia.
Diagramas de estado
Muestra el estado cambiante de un solo objeto conforme por el paso por un sistema. Son adecuados para describir el comportamiento de las interfaces de los usuarios y de los controladores de dispositivos para sistemas en tiempo real.
Diagrama de Despliegue
REFERENCIAS
- https://www.youtube.com/watch?v=CQuHWsqT1KY
- https://www.seas.es/blog/informatica/tipos-de-relaciones-en-diagramas-de-casos-de-uso-uml/
- https://es.wikipedia.org/wiki/Diagrama_de_casos_de_uso
- http://www-2.dc.uba.ar/materias/isoft1/2001_2/apuntes/CasosDeUso.pdf
- https://www.youtube.com/watch?v=x4l1Sp03vQo&t=348s
- http://www-2.dc.uba.ar/materias/isoft1/Apuntes/DiagramasDeActividad.pdf
- http://www-2.dc.uba.ar/materias/isoft1/is1-2005_2/apuntes/SlidesDC.pdf