Tm02 introducción a uml

47
Técnicas de Modelamiento Sesión 2 Introducción a UML (Unified Model Language) Prof. César Luza Montero Facultad de Ingeniería de Sistemas e Informática Universidad Nacional Mayor de San Marcos Copyright © 2008, Cesar Luza, Lima-Perú Copyright © 2008, Cesar Luza, Lima-Perú

Transcript of Tm02 introducción a uml

Page 1: Tm02 introducción a uml

Técnicas de Modelamiento Sesión 2

Introducción a UML (Unified Model Language)

Prof. César Luza MonteroFacultad de Ingeniería de Sistemas e Informática

Universidad Nacional Mayor de San Marcos

Copyright © 2008, Cesar Luza, Lima-PerúCopyright © 2008, Cesar Luza, Lima-Perú

Page 2: Tm02 introducción a uml

2

Contenido ¿Por qué modelamos? La importancia de modelar Principios del modelado ¿Qué es UML?. Presentación del UML Bloques de construcción de UML Diagramas Utilizados en UML (ejemplos)

Page 3: Tm02 introducción a uml

3

¿Por qué Modelamos?

El modelado es una técnica de hacer

modelos, que ofrece

Una visión global del sistema.

Page 4: Tm02 introducción a uml

4

Importancia de Modelar

Objetivos del Modelar:

Visualizar, especificar la estructura, proporcionan plantillas, documentan decisiones

Page 5: Tm02 introducción a uml

5

Principios del Modelado

La elección de qué modelos crear, y dar forma a una solución.

Todo modelo puede ser expresado a diferentes niveles de precisión.

Los mejores modelos están ligados a la Realidad Un único modelo no es suficiente.

Page 6: Tm02 introducción a uml

6

¿Qué es el UML? UML es un Lenguaje de Modelado Unificado

basado en una notación gráfica la cual permite:

Especificar Construir Visualizar Documentar

los artefactos de un sistema software orientado a objetos

Page 7: Tm02 introducción a uml

7

¿Qué es el UML? UML puede ser utilizado por cualquier metodología

de análisis y diseño orientada a objetos para expresar los modelos de diseño.

Este lenguaje es el resultado de la unificación de los métodos de modelado orientados a objetos de: Booch, Rumbaugh (OMT:Object Modeling Technique) Jacobson (OOSE:Object-Oriented Sotfware

Engineering) .

Page 8: Tm02 introducción a uml

8

¿Qué es UML? Un lenguaje de modelado permite expresar los

distintos modelos que se producen en el proceso de desarrollo de software.

Artefacto es información que es utilizada o producida durante un proceso de desarrollo de software.

Page 9: Tm02 introducción a uml

9

¿Qué es UML? Un modelo es una abstracción que se elabora para

comprender algo antes de construirlo. Un modelo es una representación abstracta de una especificación, un diseño o un sistema desde un punto de vista particular.

Un diagrama es una representación gráfica de una colección de elementos del modelo (grafo). Un diagrama es una representación de (parte de) un modelo de diseño.

Un modelo se representa por uno o más diagramas

Page 10: Tm02 introducción a uml

10

¿Qué es UML? ¿Dónde puede utilizarse UML?

Sistema de Información Institucionales Bancos y Servicios Financieros Telecomunicaciones Transporte Comercio Electrónica médica Ámbito científico Servicios distribuidos basados en la Web

Page 11: Tm02 introducción a uml

11

Bloques de Construcción UML

Bloques

Elementos

Relaciones

Diagramas

Page 12: Tm02 introducción a uml

12

UML 2.0 Elementos primitivos de modelado (estáticos, dinámicos, agrupamiento, anotaciones)

Relaciones Dependencia Asociación Generalización Realización

Diagramas UML (13 diagramas) Diagramas estáticos Diagramas de comportamiento

Page 13: Tm02 introducción a uml

13

Bloques de Construcción UML

Elementos Relaciones Diagramas

Estructurales

Clase

Ventana O rigen T amaño A brir( ) Cerrar() M over( ) D ibujar( )

interfaz

Cadena de responsabilidad

Casos de uso Realizar Pedido

Clase activa GestorEventos

Suspender () VaciarCola()

nodo

servidor

Esperando

EstadosComportamiento Dibujar

Mensajes

Agrupación

Reglas del negocio

Anotación

componente

Interacción

Page 14: Tm02 introducción a uml

14

Elementos Estructurales

Elementos estructurales, son la parte estática de un modelo.

Page 15: Tm02 introducción a uml

15

Elementos Estructurales Clase: representa un conjunto de objetos que

comparten los mismos atributos, operaciones, relaciones y semántica.

Publicación

Código P Cadena(2)Copias EnteroImporte Decimal(10,2)

Agregar()Consultar()Listar()

Nombre de la clase

Atributos

Operaciones

Page 16: Tm02 introducción a uml

16

Elementos Estructurales Atributo: Representa una propiedad de una entidad.

Cada atributo de un objeto tiene un valor que pertenece a un dominio de valores determinado.

Objeto: Se caracteriza por tener una identidad única, un estado definido por un conjunto de valores de atributos y un comportamiento representado por sus operaciones y métodos

Page 17: Tm02 introducción a uml

17

Elementos Estructurales Interfaz: define un conjunto de especificaciones de

operaciones

Colaboración: define una iteración y es una sociedad de roles y otros elementos que colaboran cooperativamente

Cadena de Responsabilidad

Page 18: Tm02 introducción a uml

18

Elementos Estructurales

Caso de Uso: Conjunto de secuencia de acciones que se ejecutan y el resultado es de interés para un actor en particular.

Realizar pedido

Page 19: Tm02 introducción a uml

19

Elementos Estructurales Clase Activa: Son similares a las clases excepto

que sus objetos representan elementos cuyo comportamiento es concurrente con otros elementos

Gestor Ventas

Suspender()VaciarCola()

Nombre

Operaciones

Page 20: Tm02 introducción a uml

20

Elementos Estructurales Componentes: Es empaquetamiento físico de

diferentes elementos lógicos como clases, interfaces, y colaboraciones.

Orderform.java

Page 21: Tm02 introducción a uml

21

Elementos Estructurales

Nodo: Es elemento físico es decir un recurso computacional

Servidor

Page 22: Tm02 introducción a uml

22

Elementos Comportamiento

Son la parte dinámica, y representan comportamiento en el tiempo y el espacio.

Page 23: Tm02 introducción a uml

23

Elementos Comportamiento

Interacción: Conjunto de mensajes intercambiados entre objetos.

Estado: Identifica un período de tiempo del objeto (no instantáneo) en el cual el objeto esta esperando alguna operación, recibe cierto tipo de estímulos y especifica la secuencia de estado por las que pasa un objeto

Esperado

Page 24: Tm02 introducción a uml

24

Elementos Agrupación

Elementos Agrupación son las partes organizativas

Paquete: Mecanismo de propósito general para organizar elementos.

Reglas del Negocio

Page 25: Tm02 introducción a uml

25

Elementos de Anotación

Elementos de Anotación son las partes explicativas, son comentarios, para describir, clasificar, y hacer observaciones

Nota: Sirve para hacer comentarios a un conjunto de elementos

Devuelve unaCopia del objetoreceptor

Page 26: Tm02 introducción a uml

26

Bloques de Construcción UML

Elementos Relaciones Diagramas

Dependencia Relación entre dos elementos uno independiente a otro

dependiente y puede afectar la semántica Asociación

Son conexiones entre objetos (rol, multiplicidad, calificador) Generalización

Especificación en donde el hijo comparte la estructura y el comportamiento del padre

Realización Es una relación semántica entre clasificadores

0...1 *Patrón empleado

Page 27: Tm02 introducción a uml

27

RELACIONES

Dependencia

Es una relación semántica entre dos elementos, tal

que un cambio en una de ellos (el independiente)

Puede afectar al otro (el dependiente).

A B

“B depende de A”

Page 28: Tm02 introducción a uml

28

RELACIONESAsociación

Es una relación estructural que describe un

conjunto de links, siendo un link una conexión

entre objetos

0..1 *

empleador empleado

Page 29: Tm02 introducción a uml

29

RELACIONESGeneralización

Una relación de generalización/especialización en la

que el elemento especializado (descendiente) se

construye sobre la especificación del elemento

generalizado (ancestro)

Page 30: Tm02 introducción a uml

30

RELACIONESRealización

Es una relación semántica en la que un clasificador, tal

como una interfaz o un caso de uso, especifica un

“contrato” que otro clasificador, tal como una clase o

una colaboración, garantiza llevar a cabo.

Page 31: Tm02 introducción a uml

31

Elementos Relaciones Diagramas

Use CaseDiagramsDiagramasCaso de Uso

ScenarioDiagramsDiagramasColaboración

StateDiagramsDiagramas

Componentes

ComponentDiagramsDiagramasDespliegue

StateDiagramsDiagramas

Objecto

ScenarioDiagramsDiagramas

Estado

Use CaseDiagramsDiagramasSecuencia

StateDiagramsDiagramas

Clase

DiagramasActividades

Modelos

Bloques de Construcción UML

Page 32: Tm02 introducción a uml

32

DIAGRAMAS UMLDiagramas estáticos

Diagrama de clases

Diagrama de objetos

Diagrama de componentes

Diagrama de estructura compuesta

Diagrama de paquetes

Diagrama de despliegue

Page 33: Tm02 introducción a uml

33

Diagrama de clases

Muestra un conjunto de clases, interfaces, colaboraciones y sus relaciones

Page 34: Tm02 introducción a uml

34

Diagrama de objetos

Muestra una instantánea de un conjunto de objetos y sus relaciones

Page 35: Tm02 introducción a uml

35

Diagrama de componentes

Muestra la organización ydependencias entre un conjunto de componentes conocida como vista de implementación de unsistema.

Están relacionados a Diagramas de clases en donde un componente seCorresponde con una o más clases interfaces ocolaboraciones.

Page 36: Tm02 introducción a uml

36

Diagrama de estructura compuesta(Composite Structural Diagram)

Muestra la estructura

interna (incluyendo

partes y conectores) de

un clasificador o una

colaboración

estructurada.

Page 37: Tm02 introducción a uml

37

Diagrama de paquetes

Muestra la

descomposición del

modelo en unidades de

organización y sus

dependencias.

Page 38: Tm02 introducción a uml

38

Diagrama de despliegue

Muestra los enlaces de

comunicación física

entre elementos de

hardware y las relaciones

entre máquinas físicas y

procesos: qué se ejecuta

y dónde

Page 39: Tm02 introducción a uml

39

Diagramas UML

Diagramas de comportamiento Diagramas de casos de uso Diagrama de secuencia Diagrama de colaboración Diagrama de estados Diagrama de actividades Diagrama cronológico Diagrama general de interacciones

Page 40: Tm02 introducción a uml

40

Diagrama de casos de uso

Muestra un conjunto de casos de uso y actores y sus

relaciones

Page 41: Tm02 introducción a uml

41

Diagrama de secuencia

Es un diagrama de

interacción que muestra

los objetos y actores

Que participan en una

colaboración poniendo

El énfasis en el

Ordenamiento en el

tiempo de los mensajes

Page 42: Tm02 introducción a uml

42

Diagrama de colaboración

Un diagrama de

Interacción que pone el

énfasis en la organización

estructural de los objetos

o roles que envían y

reciben mensajes.

Page 43: Tm02 introducción a uml

43

Diagrama de estados

Muestra un autómata

que consiste de estados,

transiciones, eventos y

actividades

Page 44: Tm02 introducción a uml

44

Diagrama de actividades

Muestra la estructura de

un proceso u otro cálculo

como el flujo de control

y datos paso a paso en el

cálculo.

Page 45: Tm02 introducción a uml

45

Diagrama cronológico(Timing Diagram)

Es un diagrama de

interacción que muestra

tiempos a lo largo de

diferentes objetos o

roles, y no secuencias

relativas de mensajes

Page 46: Tm02 introducción a uml

46

Diagrama de interacciones general(Interaction Overview Diagram)

Es un híbrido de

diagramas de actividad

y de secuencia.

Page 47: Tm02 introducción a uml

47

BibliografíaEl lenguaje unificado de modelado

Grady BoochJames Rumbaugh

Ivar Jacobson

El libro introductorio a UML

Addison Wesley