PDF de programación - Tema 11 - Lenguaje Unificado de Modelado - Ingeniería del Software

Imágen de pdf Tema 11 - Lenguaje Unificado de Modelado - Ingeniería del Software

Tema 11 - Lenguaje Unificado de Modelado - Ingeniería del Softwaregráfica de visualizaciones

Publicado el 18 de Diciembre del 2018
212 visualizaciones desde el 18 de Diciembre del 2018
1,9 MB
102 paginas
Creado hace 4a (03/12/2015)
Tema 11 –

Lenguaje Unificado de Modelado

Ingeniería del Software

Rubén Fuentes Fernández

Dep. Ingeniería del Software e Inteligencia Artificial

Facultad de Informática

Universidad Complutense Madrid

Trabajando con Antonio Navarro, Juan Pavón y Pablo Gervás

Contenidos



Introducción
– Modelado

• Lenguaje Unificado de Modelado

– Perspectiva general
– Modelo de casos de uso
– Modelo estructural
– Modelo de comportamiento
– Modelo de implementación

Rubén Fuentes Fernández

Ingeniería del Software

2

Modelar

• No se construye un edificio sin tener antes unos planos.
• Permite estructurar la solución a un problema.

– abstrayendo para gestionar la complejidad
– experimentando varias soluciones
– reduciendo los costes
– gestionando el riesgo de errores

• Ventajas de modelar:

– Permite ver el sistema desde varias perspectivas haciendo más sencillo su 

entendimiento y desarrollo.

– Mejora la comunicación.

• con el cliente
• del equipo de desarrollo

• El mero hecho de modelar no constituye ni análisis ni diseño, 

depende de la información que se incluye en los modelos.

Rubén Fuentes Fernández

Ingeniería del Software

3

Lenguajes de modelado

• Una buena notación libera al analista o diseñador de los 

aspectos repetitivos del modelado para que se concentre en 
el estudio de los aspectos específicos de su problema.
– Indica cuáles son las primitivas que se utilizan para modelar en un 

dominio.

– Aunque a cambio restringe los conceptos con los que se puede 

trabajar.

• Una notación estándar expresiva posibilita además:

– Describir un universo o formular una arquitectura y comunicar estas 

decisiones de forma no ambigua.

– Permite comprobar la consistencia y corrección de las decisiones 

adoptadas mediante herramientas automáticas.

Rubén Fuentes Fernández

Ingeniería del Software

4

Lenguaje Unificado de Modelado

• El Lenguaje Unificado de Modelado (Unified Modeling

Language, UML) [OMG, 2011a; OMG, 2011b] es un lenguaje 
gráfico para el modelado de sistemas.
– Especificar, visualizar, construir, documentar

• Especificado como un estándar abierto por el Grupo para la 

Gestión de Objetos (Object Management Group, OMG).

• Soportado por herramientas.

– Rational Software Architect (RSA), Together, Objecteering, Paradigm

Plus, Eclipse, ...

Rubén Fuentes Fernández

Ingeniería del Software

5

Ámbito de UML

• Se trata de un lenguaje de modelado de propósito general.

– No vinculado a dominios, tareas o entornos de desarrollo específicos.

• Soporta todo el ciclo de vida de desarrollo del software.

– Especificaciones de requisitos, análisis, arquitectura, diseño, 

implementación e implantación

• Soporta distintas áreas de aplicación.

– Sistemas distribuidos, tiempo real, aplicaciones monoproceso…
– Sistemas de Información Corporativos (Management Information
Systems, MIS), Telecomunicaciones, Banca / Finanzas, Defensa / 
Espacio, Transporte, Distribución, Electro‐medicina, Ciencia…

Rubén Fuentes Fernández

Ingeniería del Software

6

Ámbito de UML

• Metodologías de desarrollo de software Orientado a Objetos 

(OO)

Proceso

Técnicas

de

Modelado

Notación

Recursos

Herramientas

...

Experiencia

Rubén Fuentes Fernández

Ingeniería del Software

7

Objetivos de UML

• Definir un lenguaje de modelado visual fácil de aprender pero rico en 

significado.
Estándar, estable y configurable.
– Unificar las metodologías de análisis y diseño OO más conocidas.








• Notación Booch de G. Booch
• Técnica de Modelado de Objetos (Object Modeling Technique, OMT) de J. Rumbaugh et 

al.
Ingeniería del Software Orientada a Objetos (Object‐Oriented Software Engineering , 
Objectory) de I. Jacobson



– E incluir ideas de otros lenguajes de modelado.
Ser independiente de lenguajes de programación o procesos particulares.
Soportar conceptos de desarrollo de alto nivel.
– Ej. colaboraciones, frameworks, patrones y componentes.
Tratar aspectos del desarrollo de software actual.
– Ej. escalabilidad, concurrencia, distribución, ejecutabilidad…

Rubén Fuentes Fernández

Ingeniería del Software

8

Evolución de UML

Revisiones en OMG,
1999, 2001, 2011 (v 2.4.1)

UML 2.0

UML 1.4

contribuciones
de múltiples
fuentes

Aceptación en OMG, Nov 1997
Propuesta final al OMG, Sep ‘97
Primera propuesta al OMG, Ene ´97

UML 1.3

UML 1.1

UML partners
En la Web - Jun ´96

UML 1.0

UML 0.9 & 0.91

OOPSLA, Oct ´95
Inicio, Ene ´95

Unified Method 0.8

Otros métodos

Método Booch

OMT

(Rumbaugh)

Rubén Fuentes Fernández

Ingeniería del Software

 Guía de usuario
 Manual de referencia
 Proceso unificado

OOSE

(Jacobson)

9

Contribuciones a la definición de UML (OMG)

Aonix
Colorado State University
Computer Associates
Concept Five
Data Access
EDS
Enea Data
Hewlett-Packard
IBM
I-Logix
InLine Software
Intellicorp
Kabira Technologies
Klasse Objecten
Lockheed Martin

Microsoft
ObjecTime
Oracle
Ptech
OAO Technology Solutions
Rational Software
Reich
SAP
Softeam
Sterling Software
Sun
Taskon
Telelogic
Unisys


Rubén Fuentes Fernández

Ingeniería del Software

10

PERSPECTIVA GENERAL DE LA 
NOTACIÓN

Rubén Fuentes Fernández

Ingeniería del Software

11

Lenguajes basados en grafos





Los lenguajes de modelado basados en grafos incluyen los siguientes 
elementos básicos:
– Nodos / entidades

• Representan los conceptos del dominio

– Arcos / relaciones

• Representan las asociaciones de cualquier tipo entre nodos
• Ej. relaciones todo‐parte, semántica o requisito‐implementación

y opcionales:
– Extremos de los arcos / roles

• Caracterizan cada uno de los extremos de una relación

– Propiedades

– Grafos / diagramas

• Atributos y valores de cualquiera de los elementos anteriores

• Agrupaciones de los elementos anteriores

• UML es un lenguaje de modelado basado en grafos que incluye todos los 

elementos anteriores.

Rubén Fuentes Fernández

Ingeniería del Software

12

Diagramas de la notación

Generalización

Fuente: http://en.wikipedia.org/wiki/Unified_Modeling_Language

Rubén Fuentes Fernández

Ingeniería del Software

13

Diagramas de la notación

Vistas
Lógica

Estructural
Diagrama de Casos de uso
Diagrama de Clases
Diagrama de Componentes
Diagrama de Estructura 
compuesta
Diagrama de Objetos

Física

Diagrama de Despliegue

Dinámica
Diagrama de Actividades
Diagrama de Secuencia
Diagrama de Comunicación

(UML‐1.x  Diagramas de 
Colaboración)

Diagrama de Máquina de Estados
Diagrama de Tiempo

• UML se encuentra actualmente en la versión 2.4.1 (2011) 

[OMG, 2011a; OMG, 2011b].
– Hay diferencias sustanciales entre las versiones 1.x y 2.x.

Rubén Fuentes Fernández

Ingeniería del Software

14

Modelos
• Casos de uso
• Clase
• Objetos
• Estructura compuesta
• Secuencia
• Comunicación
• Máquina de estados
• Actividades
• Tiempo
• Componentes
• Despliegue

Modelo de casos de uso

Modelo estructural

Modelo de comportamiento

Modelo de implementación

Rubén Fuentes Fernández

Ingeniería del Software

15

Elementos de UML

• Diagramas
• Entidades

– Estructurales
– Comportamiento
– Agrupamiento

• Relaciones
• Propiedades

Globalmente, los tipos de
entidades de UML se
denominan ”clasificadores”,
y sus elementos concretos
“instancias”.

• Elementos comunes

– Generalmente, entidades asociables a cualquier otro elemento.

Rubén Fuentes Fernández

Ingeniería del Software

16

Ejemplo: entidades estructurales
• Casos de uso

• Clases



Interfaces

• Colaboraciones

• Componentes

• Nodos

Se pueden emplear
representaciones
icónicas o con
estereotipos
(nombres entre <<
y >>).

La columna
izquierda muestra
representaciones
icónicas estándar, y
la derecha con el
icono al lado del
nombre. El icono al
lado del nombre se
puede omitir
siempre que figure
el estereotipo.

Rubén Fuentes Fernández

Ingeniería del Software

17

Ejemplo: entidades de comportamiento

• Máquinas de estado


o de comunicación

Interacciones
– Diagramas de secuencia                                                                                   

Cash Withdrawal
exit: cash delivered

Correct
PIN-code

Created

PIN code

Open

do: verify PIN-code

Wrong
PIN-code

Ready

Closed

exit: eject Card

Card
Trans-
action

Cash

Withdrawal

Cash

Bank
System
interface

Los diagramas
también se
manipulan como
parte de UML.
Ej. agrupación
en paquetes

Rubén Fuentes Fernández

Ingeniería del Software

18

Ejemplo: entidades de agrupamiento

• Paquete

• Modelo

• Subsistema

Rubén Fuentes Fernández

Ingeniería del Software

19

Ejemplo: relaciones
• Dependencia

• Asociación

• Generalización

Rubén Fuentes Fernández

Ingeniería del Software

20

Elementos comunes
• Comentarios

– Texto libre asociado a 

cualquier elemento.

• Restricciones

– Representan condiciones que 
han de cumplir los elementos 
asociados.

– Pueden representarse dentro 
de comentarios o asociados 
directamente al elemento.

{}

• Flujo de información

– Paso de datos o mensajes 

entre dos elementos.

Rubén Fuentes Fernández

Ingeniería del Software

21

Estereotipos

• Un estereotipo extiende el vocabulario de UML.

– Se usa en la propia definición de UML.

• Los estereotipos permiten crear nuevas primitivas de 

modelado.
– Las nuevas primitivas derivan de las existentes.
– Pero son específicas para un problema.

• Se representan con el nombre del estereotipo encerrado 

entre comillas angulares « y » .
– También puede asociársele un icono.

<<servidor>>

Extensión

UML estándar

Rubén Fuentes Fernández

Ingeniería del Software

22

Perfiles

• Un perfil es una extensión del UML para un propósito 

específico.
– Ej. dominio, plataforma o metodología.

• Define una serie de nuevos elementos del lenguaje:

– Estereotipos para nuevas primitivas.
– Nuevas entidades, relaciones, propiedades y restricciones de 

primitivas existentes.

– Sintaxis para constructoras que no la tienen o cambios para otras que 

la tienen.

• Ej. para acciones o cambiar el icono de los nodos de los diagramas de 

despliegue.

Rubén Fuentes Fernández

Ingeniería del
  • Links de descarga
http://lwp-l.com/pdf14584

Comentarios de: Tema 11 - Lenguaje Unificado de Modelado - Ingeniería del Software (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios
Es necesario revisar y aceptar las políticas de privacidad