Fundamentos del Modelado de Sistemas y Elementos Esenciales de UML

Introducción a las Metodologías Orientadas a Objetos

Cada método es completo dentro de su contexto, pero cada uno tiene sus puntos fuertes y sus debilidades. Por ejemplo, la metodología de Booch es particularmente expresiva durante las fases de diseño y construcción de proyectos; la OOSE (Object-Oriented Software Engineering) proporciona un soporte excelente para los casos de uso como forma de dirigir la toma de requisitos, el análisis y el diseño de alto nivel; y la OMT-2 (Object Modeling Technique) es importante para el análisis y para los sistemas de información con gran cantidad de datos.

Cuando los creadores de UML comenzaron con la unificación, establecieron tres objetivos fundamentales para su trabajo:

  1. Que se pudieran modelar sistemas, desde la descripción conceptual hasta los elementos ejecutables, utilizando técnicas orientadas a objetos.
  2. Cubrir las cuestiones relacionadas con el tamaño inherente a los sistemas complejos y críticos.
  3. Crear un lenguaje de modelado que pueda ser utilizado tanto por las personas como por máquinas.

MODELADO DE SISTEMAS

El modelado es una parte central de todas las actividades que conducen a la producción de un buen software. Se construyen modelos para comunicar la estructura deseada y el comportamiento de un sistema. Se construyen modelos para visualizar y controlar mejor el sistema a construir.

Principios de Modelado

El modelado se rige por cuatro principios esenciales:

  1. Primero: La elección de los modelos a crear tiene una profunda influencia sobre cómo se acomete un problema y cómo se le da forma a una solución.
  2. Segundo: Todo modelo es expresado a distintos niveles de precisión.
  3. Tercero: Los mejores modelos están ligados a la realidad.
  4. Cuarto: Un único modelo no es suficiente. Cualquier sistema no trivial es abordado mejor a través de modelos independientes entre sí.

Modelo Estructural Básico (UML)

Elementos

Los modelos UML se componen de diversos elementos clasificados según su función:

Elementos Estructurales

Los elementos estructurales son las partes estáticas de un modelo y representan objetos conceptuales o concretos del dominio.

  • Clase: Descripción de un conjunto de objetos que comparten los mismos atributos.
  • Interfaz: Es una colección de operaciones que especifican un servicio de una clase o componente.
  • Caso de uso: Es una descripción de una secuencia de acciones que un sistema ejecuta.
  • Clase activa: Es una clase cuyos objetos tienen uno o más procesos o hilos de ejecución.
  • Componente: Es una parte física y reemplazable de un sistema que forma un conjunto de interfaces.
  • Nodo: Es un elemento físico que existe en tiempo de ejecución y representa un recurso computacional que, por lo general, dispone de algo de memoria.
Elementos de Comportamiento

Los elementos de comportamiento son las partes dinámicas de los modelos UML.

  • Interacción: Es un comportamiento que comprende un conjunto de mensajes intercambiados entre un conjunto de objetos.
  • Máquina de estados: Es un comportamiento que especifica las secuencias de estados por los que pasa un objeto o una interacción durante su vida en respuesta a eventos.
Elementos de Agrupación y Anotación

Los elementos de agrupación son las partes organizativas de los modelos UML.

  • Paquete: Es el elemento de agrupación principal. Es un mecanismo de propósito general para organizar elementos en grupos.

Los elementos de anotación son las partes explicativas de los modelos UML. Son comentarios que se pueden aplicar para describir elementos.

Relaciones

Las relaciones definen cómo los elementos estructurales y de comportamiento se conectan entre sí:

  • Dependencia: Es una relación semántica entre dos clases en la cual un cambio de un elemento (independiente) puede afectar la semántica de otro (dependiente).
  • Asociación: Es una relación estructural que describe un conjunto de ligas, las cuales representan conexiones a través de objetos.
  • Agregación: Es una clase especial de asociación que representa una relación de estructura entre un conjunto y sus partes.
  • Generalización: Es una relación de especialización/generalización en la cual los objetos de un elemento especializado (hijos) son consistentes con los objetos de un elemento generalizable (el padre).
  • Realización: Es una relación semántica entre clasificadores, en donde un clasificador especifica un contrato que otro clasificador garantiza llevar a cabo.

Diagramas

Los diagramas son las representaciones gráficas de las vistas estáticas y dinámicas del sistema:

  • Diagramas de clases: Muestran la vista estática de un sistema a través de un conjunto de clases, interfaces y colaboraciones junto con sus relaciones.
  • Diagrama de objetos: Muestra un conjunto de objetos y sus relaciones.
  • Diagrama de casos de uso: Muestra la vista estática de casos de uso a través de un conjunto de casos de uso, actores y sus relaciones.
  • Diagrama de interacción: Permite visualizar cómo un conjunto de objetos interactúan entre sí mediante sus relaciones y mensajes. Estos diagramas abordan la vista dinámica de un sistema.

Existen dos tipos de diagramas de interacción:

  • Los diagramas de secuencias: Las acciones entre objetos se ordenan de acuerdo al tiempo en que ocurren los mensajes.
  • Los diagramas de colaboración: El énfasis está en la organización estructural de los objetos que envían y reciben mensajes.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.