Fundamentos de UML y POO: Estructura, Vistas y Clasificación de Diagramas de Modelado
Enviado por Programa Chuletas y clasificado en Informática y Telecomunicaciones
Escrito el en
español con un tamaño de 4,33 KB
UML: Lenguaje Unificado de Modelado
Como su sigla lo indica, **UML** (Lenguaje Unificado de Modelado) es la abreviación de los diagramas cuya clasificación corresponde a los lenguajes de un modelado orientado a objetos.
Programación Orientada a Objetos (POO)
La Programación Orientada a Objetos (**POO**) se sustenta en tres características fundamentales:
- Herencia
- Encapsulamiento
- Polimorfismo
Herencia
Es la cualidad del objeto que permite agregar o incorporar características adicionales no existentes en su estructura propia, pero sí presentes en las características de un objeto relacionado, el cual puede ser su padre o la instancia de una superclase.
Encapsulamiento
Es la característica que indica que un objeto puede presentar propiedades o atributos los cuales no podrán ser modificados. De igual manera, existirán métodos los cuales no podrán ser alterados en su estructura o funcionalidad, permitiendo solo el uso de ellos, usualmente por medio de parámetros.
Polimorfismo
Es la capacidad de un objeto de tomar distintas representaciones o ejecuciones dependiendo del parámetro que se aplica, lo que permite que el objeto muestre distintos resultados de acuerdo con las vistas que maneja.
Conceptos Clave: Objeto y Clase
Objeto
Es la representación de una clase. El objeto **varía** según los valores que presenten sus atributos.
Clase
Es la plantilla lógica que permite describir el nombre, las propiedades o atributos, y las acciones o métodos que un objeto puede desarrollar. Usualmente, encontramos tres elementos de una clase:
- Nombre
- Atributos
- Métodos
Origen y Estandarización de UML
UML surge como la necesidad de estandarizar los diagramas de la Programación Orientada a Objetos. Encontramos, por ejemplo, el primer diagrama a partir de 1996, el cual busca integrar técnicas de Booch, Jacobson, Odell, Fusion, entre otras.
Clasificación de Diagramas UML
La combinación de elementos posibles de utilizar por los diagramas de UML permite que existan **nueve clasificaciones básicas**:
- Diagrama de Caso de Uso o Caja de Uso
- Diagrama de Clase
- Diagrama de Objetos
- Diagrama de Componentes
- Diagrama de Secuencias
- Diagrama de Distribución
- Diagrama de Estado
- Diagrama de Colaboración
Vistas de los Diagramas UML
La clasificación de los diagramas describe la existencia de **vistas**, las cuales se agrupan en 5 categorías principales:
- Caso de Uso
- Diseño
- Procesos
- Implementación
- Despliegue
Composición de las Vistas
- La vista de **Caso de Uso** la componen los diagramas de colaboración, estado y actividad.
- La vista de **Diseño** la componen los diagramas de estado, clases, objetos, colaboración y actividad.
- La vista de **Proceso** la forman los diagramas de diseño, destacando los diagramas de clases y objetos.
- La vista de **Implementación** la componen los diagramas de estados, actividad y colaboración.
- La vista de **Despliegue** la componen los diagramas de interacción, despliegue, estados y actividad.
Visiones Generales del Sistema: Estática y Dinámica
Adicionalmente, podemos destacar que existen dos diagramas de UML que describen visiones generales de la representación de un sistema, mencionando por ejemplo la visión estática y la visión dinámica.
Visión Estática
La visión estática se representa por medio de los diagramas de clase, objeto, componente y de despliegue. Usualmente, puede considerarse el diagrama de caso de uso también como una vista estática, aunque también para algunos [falta de contenido en el original] este diagrama puede ser dinámico.
Visión Dinámica
Entre los diagramas dinámicos encontramos tres diagramas, los que son: diagrama de secuencia, diagrama de estado y diagrama de actividad.
La representación de cada diagrama depende de la herramienta de diagramación que se emplee.
Diagrama de Caso de Uso
El diagrama de caso de uso presenta los siguientes elementos:
- Sistema
- Usuarios (Actores)
- Casos o Procesos