Curso de UML - PowerPoint PPT Presentation

About This Presentation
Title:

Curso de UML

Description:

Curso de UML Actividad 4 Diagramas de Clases, de objetos y de Estructura compuesta Dra. Anaisa Hern ndez Gonz lez Un diagrama de clases es una colecci n est tica ... – PowerPoint PPT presentation

Number of Views:241
Avg rating:3.0/5.0
Slides: 57
Provided by: Julio84
Category:
Tags: uml | curso | datos | diagrama | flujo

less

Transcript and Presenter's Notes

Title: Curso de UML


1
Curso de UML
  • Actividad 4 Diagramas de Clases, de objetos y de
    Estructura compuesta
  • Dra. Anaisa Hernández González

2
Diagrama de clases
3
Qué es un Diagrama de clases?
Modela los conceptos del dominio de la
aplicación, así como los conceptos internos
generados como parte de la implementación de la
aplicación. Es un paso esencial en el análisis
OO. Es una colección de elementos declarativos
del modelo (clases y sus relaciones), conectados
como un grafo.
4
Diagrama de clases
  • Un diagrama de clases es una colección estática
    de los elementos declaratorios del modelo, como
    clases, tipos y sus relaciones, conectados unos a
    otros y a sus contenidos.

5
Clases
  • Definición Descriptor para un juego de datos con
    estructura, conducta, y relaciones similares.
    UML

Ícono estereotipo
Nombre
Definición de abstracta
Estereotipo
Atributos
Visibilidad
Operaciones
6
Atributos de las Clases
  • Definición Identifican las características
    propias de cada clase. Son de tipos simples.
  • Sintaxis
  • visibilidad nombre tipo valor_inicial cadena
    de propiedades
  • Visibilidad
  • pública
  • protegida
  • - privada

7
Operaciones de las Clases
  • Definición El conjunto de operaciones describen
    el comportamiento de los objetos de una clase.
  • Sintaxis
  • visibilidad nombre(lista_parametros)
    expresion_tipo_retorno cadena de propiedades
  • lista_parametros una lista separada por comas de
    parámetros formales

8
Restricciones de las clases
  • Invariantes Siempre es cierta
  • Se definen sobre los atributos

DNI ? Not Empty()
Estudiante Nombre string DNI string Sexo
char Total de asignaturas matrículadas
integer Actualizar asignaturas matrículadas
(Cantidad string)
9
Restricciones de las clases
  • Pre/Postcondiciones Se definen sobre los
    métodos. Se chequean antes/después de que se
    ejecute. Se usan para validar entradas/Muestra
    cómo deben quedar los atributos después de
    ejecutarse el método.

Estudiante Nombre string DNI string Sexo
char Total de asignaturas matriculadas
integer Actualizar asignaturas matriculadas
(Cantidad integer)
Actualizar asignaturas matriculadas
(cantidadinteger) Pre Total de asignaturas
matriculadas gt 0 Post Total de asignaturas
matriculadas lt0
10
Modelo de objetos del negocio
11
Modelo de objetos del negocio
  • El modelo de objetos del negocio identifica todos
    los ROLES y COSAS en el negocio, los cuales
    son representados como clases en la Vista Lógica.
  • Existen dos tipos diferentes de clases en el
    modelo de negocio

Trabajador del negocio
Entidad del negocio
12
de dónde salen las clases?
13
Modelo de objetos del negocio
Económico
Jefe de obra
Evalúa técnicamente, aprueba/rechaza
Evalúa económicamente
Proyecto
14
Diagrama de clases del análisis
15
Diagrama de clases del análisis
1. Clases 2. Atributos 3. Relaciones entre
las clases
  • Asociaciones
  • Agregación/Composición
  • Generalización/Especialización
  • Tipos asociativos

16
Clases del análisis
  • Se centran en los requisitos funcionales.
  • Es más evidente en el contexto del dominio del
    problema porque representa conceptos y relaciones
    del dominio.
  • Tiene atributos reconocibles en el dominio.
  • Estereotipos en clases
  • Interfaz
  • Control
  • Entidad

Esta clasificación da robustez al modelo porque
los cambios al modelo tienden a afectar a un área
en específico
17
Clases de Interfaz
CI_Aprobar/Rechazar proyecto
Modelan la interacción entre el sistema y sus
actores
18
Clases de interfaz
Ejemplo
19
Clases de interfaz
Ejemplo
20
Clases de Entidad
Proyecto
  • Modelan información que posee una vida larga y
    que es a menudo persistente.
  • Modelan la información y el comportamiento
    asociado de algún fenómeno o concepto, como una
    persona, un objeto del mundo real o un suceso del
    mundo real.

21
Clases de control
CC-Aceptar/Rechazar proyecto
Coordinan la realización de uno o unos pocos CU,
coordinando las actividades de los objetos que
implementan la funcionalidad del CU
  • Definen el flujo de control y transacciones
    dentro de un CU.
  • Delegan trabajo a otros objetos.

EN PRINCIPIO, SE DEFINE UNA CLASE DE CONTROL POR
CU
22
Clases de control
Ejemplo
23
Niveles de abstracción
Patrón Controlador
24
Resumiendo...Identificar clases del análisis
1. Identificar clases de entidad a partir del
estudio de los CU del sistema y del modelo de
objetos, extrayendo la información que debe
utilizarse y manipularse en la realización del
CU. 2. Identificar una clase de interfaz por
cada actor que sea un sistema externo (SW y HW) y
dejar que esta clase represente la interfaz de
comunicación.
25
Resumiendo...Identificar clases del análisis
3. Identificar una clase de interfaz por cada
actor humano y dejar que esta clase represente la
ventana principal del interfaz de usuario con el
cual interactúa el sistema. 4. Identificar una
clase de control responsable del tratamiento de
control y de coordinación de la realización del
CU.
26
Atributos
Atributo Características o propiedades de todas
las instancias de la clase.
  • Reglas para definirlos
  • Incluir aquellos atributos que se requieren según
    los requerimientos de información de los casos de
    uso en los que está involucrada la clase.
  • Conservar atributos simples, los complejos
    sugieren relaciones entre clases.
  • Ningún atributo como llave foránea.

27
Asociaciones
Relaciones estructurales entre instancias que
especifican que los objetos de un elemento están
conectados con los objetos de otros.
28
Multiplicidad de las relaciones
Multiplicidad Describe la cardinalidad de la
relación, es el indicador de cuántos objetos
pueden participar en una relación. Rango de las
cardinalidades permisibles que un conjunto puede
asumir.
1.. 0..constante
0.. 1..1 0..1
1..constante constante..constante
Ejemplo
29
Rol en las relaciones
Rol Un extremo puede ser explícitamente nombrado
con una etiqueta, ésta describe la semántica de
la relación en el sentido indicado (opcionalmente
se documenta con un nombre).
Ejemplo
30
Navegabilidad de las relaciones
Navegabilidad Indica el grado de visibilidad que
tienen las instancias de una clase respecto a
otra. Indica la posibilidad de navegar
unidireccionalmente en una asociación.
Las asociaciones por defecto son bidireccionales
si usted quiere especificar unidirección debe
especificarlo con una flecha.
31
Asociación cualificada
Reduce la multiplicidad del rol opuesto al
considerar el valor del cualificador
32
Tipo asociativo
CENTRO DE TRABAJO
0..

PERSONA
PUESTO
Clase que modela una abstracción que se genera
por la relación entre dos o más clases.
33
Agregación Compositiva o Composición
Es una forma fuerte de agregación donde el tiempo
de vida de la parte coincide con el todo. Las
partes no deben sobrevivir fuera del todo.
Operaciones de copia o eliminación al todo deben
propagarse a las partes. La multiplicidad en el
extremo del compuesto puede ser a lo sumo 1.
Indica que únicamente el compuesto posee la parte
y que se encuentra en una jerarquía de partes con
estructura de árbol.
34
Agregación compartida
Se identifican con relaciones entre tipos que
impliquen que uno tiene a otro. Es aquella, en
que la parte puede estar en muchas instancias
compuestas porque la relación entre el todo y sus
partes no liga las vidas del todo y las partes.
Cuando deja de existir la agregada no
necesariamente dejan de existir las partes.
35
Generalización/Especialización
Actividad que consiste en identificar aspectos
comunes entre conceptos y definir las relaciones
entre el supertipo (concepto general) y el
subtipo (concepto específico).
Concepto
36
Generalización/Especialización
  • Restricciones predefinidas en UML
  • disjunta - no disjunta
  • total (completa) - parcial (incompleta)
  • Estática/dinámica

disjunta/incompleta/estática
37
Relaciones entre las clases
1. Entre clases de un mismo tipo
  • Asociaciones
  • Agregación/Composición
  • Generalización/Especialización

2. Entre clases de diferentes tipos
38
Restricciones XOR
  • Una de las varias asociaciones potenciales que
    pueden ser instanciadas en cada momento para
    cualquier objeto.

Reservación
Suscripción
Reservación individual
0..1
(XOR)
0..1
Ticket
3..6
1
39
Resumiendo
Asociación
Generalización
Realización
lt lt tipo gt gt
Dependencia
40
Diagrama de clases del diseño
41
Clases del diseño
  • Tienen operaciones, parámetros, atributos, tipos,
    etc. necesarios para su implementación en el
    lenguaje de programación elegido.

ltltentitygtgt
Persona
Nombre
e-mail
GetNombre()
GetCorreo()
42
(No Transcript)
43
(No Transcript)
44
Diagrama de objetos
45
Muestra la abstracción de una parte del dominio
Diagrama de clases
Representa una situación concreta del dominio
Diagrama de objetos
46
Diagrama de objetos
Se usa para representar cómo los objetos en un
determinado escenario trabajan juntos, por lo que
no están todas las clases ni todas sus
características
47
Diagrama de estructura compuesta
48
Diagrama de estructura compuesta
  • Diagrama que muestra la estructura interna de las
    clases y las relaciones que se establecen entre
    ellas en un contexto dado.
  • Es una forma alternativa de mostrar las
    relaciones de asociación y agregación/composición.

Concepto
49
Estructura interna de una clase
  • Estructura interna de las clases y las
    relaciones.
  • Contiene un conjunto de partes unidas por
    conectores
  • Una parte tiene un tipo y una multiplicidad
    dentro de un contenedor.

Partes
multplicidad
Contenedor
50
Estructura interna de una clase
  • Un conector es una relación contextual entre las
    partes.
  • Es un mecanismo fuerte que encapsula las
    relaciones entre el medio externo y las partes
    internas al establecer que la relación es por un
    puerto.

Partes
Contenedor
51
Estructura interna de una clase
  • Un puerto es un tipo de interacción con el medio.
  • Los mensajes que recibe un puerto, los pasa a las
    partes.
  • Un puerto tiene un conjunto de interfaces que
    definen las operaciones que son permitidas con el
    medio externo.

52
Estructura interna de una clase
  • Las interfaces pueden ser
  • Interfaz proporcionada Conjunto de servicios

  • disponibles de esa clase
  • Interfaz requerida Conjunto de servicios que
    esa
  • clase
    necesita que le proporcione
  • otro
    elemento

?
Nombre tipo
conector
?
Nombre1 tipo1
53
Diagrama de estructura compuesta
Artículo
empieza 1 1 desarrolla
Introducción
Cuerpo
Artículo
1 Empieza Introducción
1 Desarrolla Cuerpo
54
Diagrama de estructura compuesta
Artículo
escrito 0..3 1 desarrolla
Autor
Cuerpo
Artículo
0..3 Escrito Autor
1 Desarrolla Cuerpo
55
Diagrama de estructura compuesta
CAJERO AUTOMÁTICO
CC Controlador del cajero
1
IC Interfaz cajero

ISC Servicio de tarjeta de crédito
56
Resumiendo
  1. Los diagramas de clases resultan esenciales en la
    modelación OO pues son su columna vertebral.
  2. Representan clases y asociaciones.
  3. Muestran atributos y operaciones.
  4. Tipos de asociaciones Asociaciones, Agregación y
    Generalización-especialización.
  5. Los diagramas de objetos muestran algunas de las
    clases y algunas de sus características.
  6. Los diagramas de estructura compuesta muestran
    las partes que contienen las clases y las
    relaciones entre ellas.
Write a Comment
User Comments (0)
About PowerShow.com