tm02 introducción a uml
TRANSCRIPT
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ú
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)
3
¿Por qué Modelamos?
El modelado es una técnica de hacer
modelos, que ofrece
Una visión global del sistema.
4
Importancia de Modelar
Objetivos del Modelar:
Visualizar, especificar la estructura, proporcionan plantillas, documentan decisiones
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.
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
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) .
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.
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
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
11
Bloques de Construcción UML
Bloques
Elementos
Relaciones
Diagramas
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
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
14
Elementos Estructurales
Elementos estructurales, son la parte estática de un modelo.
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
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
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
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
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
20
Elementos Estructurales Componentes: Es empaquetamiento físico de
diferentes elementos lógicos como clases, interfaces, y colaboraciones.
Orderform.java
21
Elementos Estructurales
Nodo: Es elemento físico es decir un recurso computacional
Servidor
22
Elementos Comportamiento
Son la parte dinámica, y representan comportamiento en el tiempo y el espacio.
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
24
Elementos Agrupación
Elementos Agrupación son las partes organizativas
Paquete: Mecanismo de propósito general para organizar elementos.
Reglas del Negocio
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
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
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”
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
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)
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.
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
32
DIAGRAMAS UMLDiagramas estáticos
Diagrama de clases
Diagrama de objetos
Diagrama de componentes
Diagrama de estructura compuesta
Diagrama de paquetes
Diagrama de despliegue
33
Diagrama de clases
Muestra un conjunto de clases, interfaces, colaboraciones y sus relaciones
34
Diagrama de objetos
Muestra una instantánea de un conjunto de objetos y sus relaciones
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.
36
Diagrama de estructura compuesta(Composite Structural Diagram)
Muestra la estructura
interna (incluyendo
partes y conectores) de
un clasificador o una
colaboración
estructurada.
37
Diagrama de paquetes
Muestra la
descomposición del
modelo en unidades de
organización y sus
dependencias.
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
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
40
Diagrama de casos de uso
Muestra un conjunto de casos de uso y actores y sus
relaciones
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
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.
43
Diagrama de estados
Muestra un autómata
que consiste de estados,
transiciones, eventos y
actividades
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.
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
46
Diagrama de interacciones general(Interaction Overview Diagram)
Es un híbrido de
diagramas de actividad
y de secuencia.
47
BibliografíaEl lenguaje unificado de modelado
Grady BoochJames Rumbaugh
Ivar Jacobson
El libro introductorio a UML
Addison Wesley