INSTITUTO SUPERIOR JAPÓN
Carrera: Desarrollo de Software
Cátedra: Análisis y Diseño de Sistemas
Estudiante: Aedra Delgado CI: 1759206467
Profesora: Ing. Graciela Trujillo
LENGUAJE UNIFICADO DE MODELADO, TIPOS DE DIAGRAMA Y EJEMPLOS
Fecha de entrega: 24/08/2023
En el ámbito del desarrollo de software y la representación visual de sistemas, surge el
Lenguaje Unificado de Modelado. Este conjunto de normas y estándares gráficos ha obtenido
reconocimiento global por parte de diversas organizaciones y empresas. Su propósito es
elaborar esquemas, diagramas y documentación esencial para los procesos de desarrollo de
software, así como para otros contextos empresariales.
UML representa las iniciales de "Unified Modeling Language" o "Lenguaje Unificado
de Modelado", un estándar aceptado globalmente por diversas organizaciones y compañías
para elaborar representaciones gráficas, esquemas y documentación vinculada a los procesos
de desarrollo de software.
El término “lenguaje” ha generado bastante confusión respecto a lo que es UML, ya
que no es un lenguaje sino una serie de normas y estándares gráficos para representar esquemas
y diagramas gráficos; su uso se ha extendido más allá del desarrollo de software, ya que algunos
de sus diagramas son usados en ámbitos empresariales.
Sin embargo, el mayor uso de UML es de personas que tienen conocimientos
relativamente avanzados de programación. Por ejemplo, por analistas funcionales, quienes
definen qué debe hacer un programa sin entrar a escribir el código. O también analistas-
programadores, quienes se encargan de solucionar un problema dado mediante el desarrollo
del código en algún lenguaje de programación, como Java, Python, C#, etc.
Su desarrollo se remonta a la década de 1980, pero fue en 1997 que el UML, conocido
como tal, fue publicado por medio de la organización OMG, gracias a tres ingenieros de
software. Sus nombres son Grady Booch, Ivar Jacobson y James Rumbaugh, los tres ya habían
escrito sus propias metodologías para tratar de estandarizar un poco el creciente paradigma
orientado a objetos. Al final, decidieron asociarse y mejorar las tres metodologías, creando un
único Lenguaje de Modelado Unificado, a finales de los 90.
Hoy en día, UML está consolidado como el lenguaje estándar en el análisis y diseño de
sistemas. Su importancia radica en que hace posible establecer la serie de requerimientos y
estructuras necesarias para plasmar un sistema de software previo al proceso intensivo de
escribir código.
Si bien posee más características visuales, estas mismas son la que la que facilitan a
equipos grandes (compuestos por analistas, diseñadores, especialistas y programadores) a
comprender y comunicarse de forma más eficaz, ya que sus múltiples diagramas están
diseñados justamente con este fin. Como ventaja adicional, es que estas ayudas visuales pueden
usarse con personas ajenas a la programación pero que estén interesadas en el desarrollo del
proyecto, como los propietarios.
Como su nombre implica, el UML sirve para “modelar” un sistema, el proceso de
análisis y diseño antes de proceder a codificar; sin embargo, los diagramas siguen usándose
durante el desarrollo y posteriormente, a la hora de realizar mantenimiento o mejoras evolutivas
sobre el sistema.
Los diagramas de UML son representaciones gráficas que muestran de forma parcial
un sistema de información, bien esté siendo desarrollado o ya lo haya sido. Es recomendable
usar diferentes diagramas para plasmar distintos ángulos del sistema, ya que no hay un solo
diagrama que abarque todo lo que contiene un sistema, cómo funciona y qué hace, sino que
son varios que funcionan entre sí para apoyar al equipo desarrollador. Si se puede buscar una
desventaja, se puede decir que se trata de un lenguaje muy amplio, haciendo, en ocasiones,
complicado utilizar todas las posibilidades que ofrece.
Según el uso que decida darse, estos pueden ser más complejos y completos, pero los
sistemas a crear se benefician de esto. Los diagramas ofrecen una visión global que hace más
sencillo detectar las dificultades implícitas y aspectos a mejorar, y también ayudar a agilizar
los cambios que tengan que ir realizándose en comparación al análisis inicial, ya que pueden
ser bastante dinámicos y sencillos de comprender. Este tipo de estrategia en su funcionalidad
está fuertemente ligada a la programación orientada a objetos. El hecho de que la mayoría de
los lenguajes de programación estén adaptados a este paradigma, significa que todos son
fácilmente adaptables a trabajar con UML.
Tanto para P.O.O. como para UML, utilizan conceptos similares para describir los
componentes de un sistema. Ya sean los objetos como entidades del mundo alrededor que
pueden representar gráficamente y que se pueden usar para describir (o modelar) un sistema a
desarrollar, así como también pueden descomponerse en representaciones más sencillas de un
sistema complejo, haciéndolo sencillo de entender y accesible para todo el mundo. O también
las clases, como aquello que es anterior al objeto y, junto a métodos y atributos, funciona como
una “plantilla” previo a la instanciación.
Tomando esto en cuenta y que UML busca la manera de explicar un sistema, mediante
la descomposición de sus objetos y su representación en diagramas, estos se separan en dos
tipos: Estructurales y de comportamiento. Los estructurales abarcan los aspectos estáticos,
propios de la estructura del sistema. Mientras que los diagramas de comportamiento describen
los aspectos dinámicos del sistema, su secuencia y actividades, por ejemplo. De estos
diagramas, según la versión más actualizada de UML, existe 13.
A continuación, los diagramas estructurales, junto a sus ejemplos:
• Diagrama de clases: Es el más usado y la base principal de la programación orientada
a objetos. El diagrama describe cada clase con atributos y métodos, y sus relaciones
entre ellas.
• Diagrama de componentes: Muestra la relación de los distintos elementos del sistema
y cómo estos se comunican entre ellos por medio de interfaces. Se emplean
mayoritariamente en sistemas complejos que requieran múltiples componentes.
• Diagrama de estructura compuesta: Este diagrama muestra la estructura interna de una
clase.
• Diagrama de implementación: Permiten visualizar el hardware, el software y los
artefactos del sistema y cómo se comunican entre sí. Es muy útil para máquinas con
configuración única.
• Diagrama de objetos: Muestra la relación entre objetos y cómo se relacionan y
comunican entre ellos. Junto a los datos almacenados dentro de los mismos objetos,
ayuda a clarificar las relaciones entre uno y otro.
• Diagrama de paquetes: Son utilizados para organizar los elementos de un sistema. Son
utilizados para describir la organización de alto nivel de un proyecto de software,
enseñan la estructura junto a las dependencias entre los módulos.
Siguiente, tenemos los otros tipos de diagramas, estos son más dinámicos y más accesibles a
agentes externos al equipo de programadores externos. A continuación, se describen junto a
sus ejemplos, los diagramas de comportamiento:
• Diagramas de actividades: Describen el flujo del proceso que se realiza para distintas
acciones como parte de una actividad más grande. Es decir, muestra los eventos
requeridos para lograr alguna operación, e ilustra como los eventos en un singular caso
de uso se relaciona con otro.
• Diagrama de comunicación: modela la funcionalidad de un sistema, específicamente
visualiza la relación entre los objetos colaborando entre sí para desempeñar una tarea
particular y modelar la lógica de la implementación para una operación compleja.
• Diagrama de panorama de interacciones: Describe el flujo de mensajes dentro de un
sistema y ofrecen contexto para una o más líneas de vida dentro de un sistema.
• Diagrama de secuencia: Muestra cómo los objetos interactúan entre sí y el orden de la
ocurrencia. Representan interacciones para un escenario concreto.
• Diagrama de máquina de estados: Describen todos los posibles estados de un objeto
mientras hay ocurrencia de eventos. Se enfoca más en mostar el el tiempo de vida de
un objeto desde su creación hasta su culminación.
• Diagrama de temporización: Representan en una línea temporal los cambios que se
producen en uno o varios objetos, respondiendo a los eventos que se producen en el
sistema. Si hay más de un objeto, las interacciones de los objetos se muestran durante
ese período de tiempo particular. Son muy similares a los diagramas de secuencia.
• Diagrama de caso de uso: Representa una funcionalidad particular de un sistema y cómo
se relacionan todas estas funcionalidades con actores internos o externo. Por lo tanto,
un diagrama de casos de uso describe visualmente ese conjunto de secuencias y
representa los requisitos funcionales del sistema.
Para concluir, podemos decir que el UML ha demostrado ser una herramienta esencial
en el campo del desarrollo de software y más allá. A pesar de que su denominación pueda
causar confusiones, su impacto trasciende el ámbito de programación, alcanzando áreas
empresariales. Ha evolucionado desde sus raíces en la década de 1980 hasta convertirse en un
estándar reconocido internacionalmente.
Sus múltiples diagramas y representaciones gráficas proporcionan un enfoque
estructurado y colaborativo para diseñar sistemas complejos. UML brinda claridad y eficiencia
a los equipos de desarrollo, permitiéndoles comunicar ideas y conceptos de manera efectiva a
través de diagramas estructurales y de comportamiento. En última instancia, UML ha
redefinido la forma en que conceptualizamos y materializamos sistemas, contribuyendo de
manera significativa al proceso de creación y evolución de software.
Bibliografía
¿Qué es y para qué sirve UML? Versiones de UML (Lenguaje Unificado de Modelado). Tipos
de diagramas UML. (n.d.). Www.aprenderaprogramar.com.
https://www.aprenderaprogramar.com/index.php?option=com_content&view=article&id=68
8:ique-es-y-para-que-sirve-uml-versiones-de-uml-lenguaje-unificado-de-modelado-tipos-de-
diagramas-uml&catid=46&Itemid=163
“Todos los diagramas UML. Teoría y ejemplos.” (n.d.). DiagramasUML.com.
https://diagramasuml.com/
Importancia de UML. (n.d.). Www.osmosislatina.com.
https://www.osmosislatina.com/lenguajes/uml/basico.htm
UML, lenguaje de modelado gráfico. (2018, October 26). IONOS Digital Guide.
https://www.ionos.es/digitalguide/paginas-web/desarrollo-web/uml-lenguaje-unificado-de-
modelado-orientado-a-objetos/
Diferentes diagramas UML – Propósito y uso. (n.d.). Www.edrawsoft.com.
https://www.edrawsoft.com/es/uml-introduction.html