Autores: Mauro Benito Montoya Arenas (mauro2017pre@gmail.com)
Introducción a UML
UML (unified Modeling Language) es un lenguaje visual. Vamos a usar elementos visuales para indicar lo que nosotros deseamos. Es necesario conocer los elementos de los diagramas. El UML nos permite modelar procesos, sistemas y software. Además es extensible , flexible y escalable.
UML desciende de tres metodologías: Object Modeling Technique, Object-Oriented Software Enigneering y Booch Method. Rational software combino las 3 metodologías. UML es un lenguaje que puede usarse con diferentes metodologías pero no es una metodología en si mismo.
Conceptos que vamos a definir definir:
Modelo:
Modelar es construir un plan basándonos en un patrón. En UML lo podemos considerar una forma visual de describir un negocio y sus reglas. Es decir, observamos un negocio y creamos un modelo visual para describirlo. Modelar nos ayuda a comprender el negocio y sus procesos, a comunicar diseños, clarificar problemas complejos, etc. No debemos abusar del modelamiento ya que no se vuelve útil. Existen diferentes modelos:
Modelo 4+1:
Vista Lógica: Nos enfocaremos en las partes que tienen el sistema y sus interacciones. Enfatiza las clases y objetos y representa abstracciones. Los diagramas que incluye la vista lógica son: Clases, estado, objetos, secuencia y comunicación.
Vista de Procesos: Aquí encontramos la comunicación que se llevan entre los procesos del sistema. Es muy útil si tienen procesos simultáneos o hilos. Aquí se incluye el diagrama de actividad.
Vista Física: Modela el ambiente de ejecución. Mapea el software en el hardware que lo ejecutará. El diagrama incluido es el de implementación.
Vista de desarrollo: Tendremos los elementos que construyen el sistema (módulos o componentes). Utilizaremos los diagramas de componente y de paquetes.
Vista de Casos de Uso: Es la vista mas importante. Se mostrara la funcionalidad del sistema y de las otras vistas. A partir de esta vista surgen las demás. En esta vista podemos conocer los objetivos y escenarios de nuestro sistema. Además nos da una perspectiva del sistema desde el exterior.
Modelo Estático: Muestra las características estructurales del sistema (las partes que lo conforman). Con este modelo definimos las clases, atributos. métodos y paquetes. Los diagramas que se incluyen aquí son las clases, objeto y Casos de Uso.
Modelo Dinámico: Muestra las características de comportamiento del sistema (lo que se esta llevando a cabo). También muestra como se comporta el sistema ante los eventos externos. Identifica como los objetos trabajan entre ellos por medios de sus métodos y mensajes. Ademas nos permite diseñar la lógica y el comportamiento del sistema. Los diagramas que se incluyen son: de secuencia, comunicación y actividad.
Modelo de Implementación: Muestra los elementos necesarios para la implementación del sistema y organiza los componentes y recursos físicos. Los diagramas que se incluyen son: componentes e implementación.
Diagrama:
El diagrama es una visualización de diferentes elementos de modelado descritos en UML. Cada diagrama tiene un propósito especifico, con sus propios símbolos que representan un proceso o un sistema.
Existen 2 tipos de diagramas:
Diagramas estáticos: Muestran la estructura estática de los elementos del sistema (las partes del sistema o estructura). Ejemplo: diagrama de clases, componentes, objetos, implementación, paquetes, etc.
Diagramas dinámicos: Muestran el comportamiento dinámico (comportamiento) de los elementos del sistema (que es lo que van a estar haciendo y colaborando entre ellos). Pueden ser: diagramas de actividad, casos de uso, de estado, colaboración, secuencia, etc.
Composición de UML:
-> Notación: Son los elementos que trabajan entre si adentro de un diagrama. Pueden ser: conectores, símbolos, etc.
-> Diagrama
-> Object Management Group
Fuente:
https://www.facebook.com/NicolasArrio...
https://www.youtube.com/user/nicosiored
https://www.youtube.com/channel/UCwxc...
https://plus.google.com/+nicosiored/p...
https://www.youtube.com/watch?v=DUjBnEvIm1M&list=PLM-p96nOrGcaw5dhv8wOA5tVVWEmXtA2F&index=5