1 UMLUML Wilson Peláez Hernández. 2 MODELO CONCEPTUAL.

Post on 06-Jan-2015

1 views 4 download

Transcript of 1 UMLUML Wilson Peláez Hernández. 2 MODELO CONCEPTUAL.

1

UMLUMLUMLUML

Wilson Peláez HernándezWilson Peláez Hernández

2

MODELO MODELO CONCEPTUALCONCEPTUAL

UML –Modelo Conceptual Wilson Peláez H. 3

Estructura de UML

Modelos•Estructura(características estáticas)

•Comportamiento (características dinámicas)

capturan

Vistas Arquitectonicas

organizado en

Diagramasvisualizado en

•Vista del Modelo de Usuario•Vista del Modelo Estructural•Vista del Modelo de Comportamiento•Vista del Modelo de Implementación•Vista del Modelo Despliegue

•Diagramas de Casos de Uso•Diagramas de Clases•Diagramas de Objetos•Diagramas de Secuencia•Diagramas de Colaboración•Diagramas de Estado•Diagramas de Actividad•Diagramas de Componentes•Diagramas de Despliegue

UML –Modelo Conceptual Wilson Peláez H. 4

Modelo conceptual de UML

Para comprender UML, se necesita adquirir un modelo conceptual del lenguaje.

Este modelo lo conforman: Bloques básicos de construcción Reglas de combinación Mecanismos de Extensión

UML –Modelo Conceptual Wilson Peláez H. 5

Modelo Conceptual Comprende tres elementos principales:

Bloques basicos de construcción Elementos

Estructurales Comportamiento Agrupación Notación

Relaciones Diagramas

Reglas para combinar estos bloques Mecanismos comunes de UML

Modelo conceptual UML

UML

• Bloques básicos

de construcción

• Mecanismos Comunes

• Reglas de uso

Elementos

Relaciones

Diagramas

Estructurales, Comportamiento, Agrupación (paquetes),

Anotación (notas, comentarios)

Dependencia, Asociación (Agregación), Generalización,

Realización

Clases, Objetos, Casos de Uso, Secuencia, Colaboración,

Actividad, Statecharts, Componentes, Despliegue

Nombres, Alcance, Visibilidad, Integridad, Ejecución

Especificaciones, Dicotomía, Adornos (detalles),

Mecanismos de Extensibilidad

UML –Modelo Conceptual Wilson Peláez H. 7

Bloques de construcción de UML

Elementos Bloques básicos de construcción OO “Abstracciones” de primera clase en un modelo

Relaciones Ligan los diferentes elementos entre sí

Diagramas Representación gráfica de un conjunto de

elementos y sus relaciones entre sí

UML –Modelo Conceptual Wilson Peláez H. 8

Elementos de UML

Hay 4 tipos de elementos en UML

Elementos Estructurales

Elementos de comportamiento

Elementos de agrupación

Elementos de anotación

UML –Modelo Conceptual Wilson Peláez H. 9

Elementos Estructurales

Los elementos estructurales son los nombres de los modelos de UML.

Representan “cosas” conceptuales o materiales de un modelo.

Son 7 tipos de elementos estructurales: Clases Interfaz Colaboración Caso de Uso Clases Activas – Componentes y Nodos

UML –Modelo Conceptual Wilson Peláez H. 10

Elementos Estructurales: Clases

Clase: Es una descripción de un conjunto de objetos que comparten los mismos atributos, operaciones, relaciones y semántica.

Graficamente una clase se representa como un rectangulo dividido en secciones, que normalmente incluye nombre, atributos y operaciones.

UML –Modelo Conceptual Wilson Peláez H. 11

Elementos Estructurales: Interfaz

Una Interfaz, es una colección de operaciones, que especifican un servicio de una clase o un componente.

Una interfaz define un conjunto de especificaciones de operaciones, pero no su implementación.

Gráficamente una interfaz se representa como un circulo junto con cu nombre.

iDibujable

UML –Modelo Conceptual Wilson Peláez H. 12

Elementos Estructurales: Colaboración

Colaboración: define una interacción entre elementos y roles que participan para proporcionar un comportamiento cooperativo.

Las colaboraciones tienen dimensión tanto estructural como de comportamiento.

Gráficamente se representan como una elipse de borde discontinuo.

prueba

UML –Modelo Conceptual Wilson Peláez H. 13

Elementos Estructurales: Caso de Uso

Caso de Uso: Es una descripción de un conjunto de secuencia de acciones que un sistema ejecuta y que produce un resultado de interés para un actor.

Se utilizan para estructurar los aspectos de comportamiento de un modelo.

Gráficamente un caso de uso se representa como una elipse de borde continuo.

Solicitar pedido

UML –Modelo Conceptual Wilson Peláez H. 14

Elementos Estructurales: Clase Activa

Clase Activa: Es una clase cuyos objetos tienen uno o más procesos de ejecución que pueden dar origen a actividades de control.

Es igual que una clase, pero su comportamiento puede ser concurrente con otros elementos.

Gráficamente se representa igual que una clase, pero su entorno es mas grueso.

UML –Modelo Conceptual Wilson Peláez H. 15

Elementos Estructurales: Componente

Componente: Es una parte física y reemplazable de un sistema, representan todos los tipos de elementos software que entran en la fabricación de aplicaciones

Representa el empaquetamiento físico de diferentes elementos lógicos, como clases, interfaces y colaboraciones.

Gráficamente se representa como un rectangulo con pestañas.

UML –Modelo Conceptual Wilson Peláez H. 16

Elementos Estructurales: Nodos

Nodo: Es un elemento físico que existe en tiempo de ejecución y representa un recurso computacional.

Por lo general dispone de algo de memoria y capacidad de procesamiento

Un nodo se utiliza para modelar la topología del hardware el que se ejecuta el sistema.

Gráficamente se representa como un cubo.

Nodo

UML –Modelo Conceptual Wilson Peláez H. 17

Elementos Estructurales

UML –Modelo Conceptual Wilson Peláez H. 18

Elementos de comportamiento Los elementos de comportamiento son la parte

dinámica de UML y representan el proceder del sistema, tanto en el tiempo como en el espacio.

Son los verbos de un modelo

Existen dos clases de comportamiento: La interacción La máquina de estados.

UML –Modelo Conceptual Wilson Peláez H. 19

Elementos comportamiento: Interacción Interacción es un comportamiento que

comprende un conjunto de mensajes que intercambia una colección de objetos dentro de un contexto particular para acompañar un propósito específico.

El comportamiento de una sociedad de objetos o de una operación individual puede especificarse con una interacción, involucrando otros elementos: mensajes, secuencias de acción y enlaces.

dibujar

UML –Modelo Conceptual Wilson Peláez H. 20

Elementos comportamiento: Máquinas de Estado

La máquina de estados es un comportamiento que especifica la secuencia de estados que un objeto o una interacción tiene durante su tiempo de vida al responder a eventos.

Una máquina de estados puede especificar el comportamiento de una clase individual o de una colaboración de clases.

Gráficamente un estado se representa como un rectangulo con esquinas redondeadas

UML –Modelo Conceptual Wilson Peláez H. 21

Elementos comportamiento

UML –Modelo Conceptual Wilson Peláez H. 22

Enfoque de los Elementos de Comportamiento Vista del sistema enfocada desde la dinámica y

comportamiento de los objetos

UML –Modelo Conceptual Wilson Peláez H. 23

Elementos de agrupación

Los elementos de agrupación son la parte organizacional de UML.

Representan las partes en las que se puede descomponer un modelo.

Hay un solo elemento de agrupación denominado paquete.

UML –Modelo Conceptual Wilson Peláez H. 24

Un paquete es un mecanismo de propósito general para organizar elementos en grupos.

En un paquete se pueden agrupar elementos estructurales, de comportamiento y otros.

Contrario a los componentes, los cuales existen en el tiempo de ejecución, un paquete es puramente conceptual.

Gráficamente un paquete se representa como una carpeta.

Elementos de agrupación: Paquetes

UML –Modelo Conceptual Wilson Peláez H. 25

Elementos de anotación

Los elementos de anotación son la parte de UML que sirve para documentar los modelos.

Estos son comentarios que pueden describir, clarificar y remarcar aspectos de cualquier elemento en el modelo.

Hay un tipo principal de elemnto de anotación denominado nota

UML –Modelo Conceptual Wilson Peláez H. 26

Elementos de anotación: Nota

Una nota es simplemente un símbolo para mostrar restricciones y comentarios junto a un elemento o una colección de elementos.

Gráficamente una nota se representa como un rectángulo con una esquina doblada.

UML –Modelo Conceptual Wilson Peláez H. 27

Relaciones en UML

Estas nos permiten modelar el enlace entre diferentes elementos estructurales.

Mostrando además información adicional como multiplicidad (número de instancias de una clase que pueden estar relacionadas con la clase asociada) y nombres de roles (identificación del extremo de una asociación).

UML maneja cuatro clases de relaciones: dependencia, asociación, generalización y realización.

UML –Modelo Conceptual Wilson Peláez H. 28

Relación de dependencia

Una dependencia es una relación semántica entre dos clases en la cual un cambio de un elemento (independiente) puede afectar la semántica de otro (dependiente).

Gráficamente una dependencia se representa como una línea discontinua, dirigida.

UML –Modelo Conceptual Wilson Peláez H. 29

Relación de asociación

Una asociación es una relación estructural que describe un conjunto de enlaces, las cuales representan conexiones a través de objetos.

La agregación es una clase especial de asociación que representa una relación de estructura entre un conjunto y sus partes

Gráficamente una asociación se representa como una línea continua, que puede incluir multiplicidad.

UML –Modelo Conceptual Wilson Peláez H. 30

Relación de generalización

La generalización es una relación de especialización/generalización en la cual los objetos de un elemento especializado (hijos) son consistentes con los objetos de un elemento generalizable (el padre).

De esta forma, los hijos comparten la estructura y comportamiento del padre.

Gráficamente una generalización se representa como una flecha con la punta vacía dirigida al padre.

UML –Modelo Conceptual Wilson Peláez H. 31

Relación de realización

Una realización es una relación semántica entre clasificadores, en donde un clasificador especifica un contrato que otro clasificador garantiza llevar a cabo.

Se pueden encontrar realizaciones en dos partes: entre interfaces y las clases o componentes que las realizan, y entre casos de uso y las colaboraciones que los realizan.

Gráficamente es la combinación de una dependencia y una generalización.

UML –Modelo Conceptual Wilson Peláez H. 32

Diagramas UML

Un diagrama es la representación gráfica de un conjunto de elementos conectados entre sí.

Estos diagramas son en forma de grafos conectados donde los vértices representan elementos y los arcos relaciones.

Los diagramas sirven para visualizar un sistema desde diferentes perspectivas.

Un mismo elemento puede aparecer en varios diagramas, en sólo algunos o en ninguno.

UML –Modelo Conceptual Wilson Peláez H. 33

Diagramas de UML Estructurales

Sirven para visualizar, especificar, construir y documentar los aspectos estáticos de un sistema.

De comportamiento Sirven para visualizar, especificar, construir y

documentar los aspectos dinámicos de un sistema

UML –Modelo Conceptual Wilson Peláez H. 34

Diagramas de UML

Use CaseDiagramsUse Case

DiagramsDiagramas de Casos de Uso

ScenarioDiagramsScenario

DiagramsDiagramas deColaboración

StateDiagramsState

DiagramsDiagramas deComponentes

ComponentDiagramsComponent

DiagramsDiagramas deDistribución

StateDiagramsState

DiagramsDiagramas de Objetos

ScenarioDiagramsScenario

DiagramsDiagramas deEstados

Use CaseDiagramsUse Case

DiagramsDiagramas deSecuencia

StateDiagramsState

DiagramsDiagramas deClases

Diagramas deActividad

Modelo

“Un modelo es una descripción completa de un sistema desde una perspectiva concreta”

Diagramas de UML

Use CaseDiagramsUse Case

DiagramsDiagramas de Casos de Uso

ScenarioDiagramsScenario

DiagramsDiagramas deColaboración

StateDiagramsState

DiagramsDiagramas deComponentes

ComponentDiagramsComponent

DiagramsDiagramas deDespliegue

StateDiagramsState

DiagramsDiagramas de Objetos

ScenarioDiagramsScenario

DiagramsDiagramas deEstados

Use CaseDiagramsUse Case

DiagramsDiagramas deSecuencia

StateDiagramsState

DiagramsDiagramas deClases

Diagramas deActividad

Modelo

Interacción

Implementación

Estru

ctura

l

Com

port

am

ien

to

UML –Modelo Conceptual Wilson Peláez H. 36

Diagramas de Clase

Los diagramas de clase muestran la vista estática de un sistema a través de un conjunto de clases, interfaces y colaboraciones junto con sus relaciones.

Un Diagrama de Clases muestra la abstracción de una parte del dominio.

Son los diagramas más comunes en el modelado de sistemas orientados a objetos

UML –Modelo Conceptual Wilson Peláez H. 37

Diagramas de Clase

UML –Modelo Conceptual Wilson Peláez H. 38

Diagramas de Objetos

Un diagrama de objetos muestra un conjunto de objetos y sus relaciones.

Representan un instante de la instancia de los elementos encontrados en el diagrama de clases.

Un objeto se puede ver desde dos perspectivas relacionadas: como una entidad de un determinado instante de tiempo que posee un valor específico y como un poseedor de identidad que tiene distintos valores a lo largo del tiempo

UML –Modelo Conceptual Wilson Peláez H. 39

Diagramas de Casos de Uso

Un diagrama de casos de uso muestra la vista estática de casos de uso a través de un conjunto de casos de uso, actores y sus relaciones.

No pertenece estrictamente al enfoque orientado a objeto, es una técnica para captura de requisitos.

Los casos de uso intervienen durante todo el ciclo de vida. El proceso de desarrollo estará dirigido por los casos de uso.

UML –Modelo Conceptual Wilson Peláez H. 40

Diagramas de Casos de Uso

UML –Modelo Conceptual Wilson Peláez H. 41

Diagramas de Interacción

Un diagrama de interacción permite visualizar como un conjunto de objetos interactúan entre sí mediante sus relaciones y mensajes.

Existen dos tipos de diagramas de interacción, los de secuencia y los de colaboración.

El diagrama de secuencia las acciones entre objetos se ordenan de acuerdo al tiempo en que ocurren los mensajes.

El de colaboración el énfasis es en la organización estructural de los objetos que envían y reciben mensajes.

UML –Modelo Conceptual Wilson Peláez H. 42

Diagramas de Interacción

UML –Modelo Conceptual Wilson Peláez H. 43

Diagramas de Estado

El diagrama de estados también maneja la vista dinámica del sistema, y consiste en una máquina de estados formada por estados, transiciones, eventos y actividades.

Estos diagramas permiten el modelado del comportamiento de una interface, clase o colaboración.

Muestra el conjunto de estados por los cuales pasa un objeto durante su vida en una aplicación, junto con los cambios que permiten pasar de un estado a otro.

UML –Modelo Conceptual Wilson Peláez H. 44

Diagramas de Estado

UML –Modelo Conceptual Wilson Peláez H. 45

Diagramas de Actividades

El diagrama de actividades es una clase especial del diagrama de estados y muestra el flujo desde una actividad a otra dentro del sistema y sirven para modelar las funciones del mismo.

Un diagrama de actividades es provechoso para entender el comportamiento de alto nivel de la ejecución de un sistema, sin profundizar en los detalles internos de los mensajes.

UML –Modelo Conceptual Wilson Peláez H. 46

Diagramas de Actividades

UML –Modelo Conceptual Wilson Peláez H. 47

Diagramas de Componentes

Los diagramas de componentes describen los elementos físicos del sistema y sus relaciones.

Muestran las opciones de realización incluyendo código fuente, binario y ejecutable.

Los componentes representan todos los tipos de elementos software que entran en la fabricación de aplicaciones informáticas.

UML –Modelo Conceptual Wilson Peláez H. 48

Diagramas de Componentes

UML –Modelo Conceptual Wilson Peláez H. 49

Diagramas de despliegue

Los diagramas de despliegue muestran la disposición física de los distintos nodos que componen un sistema y el reparto de los componentes sobre dichos nodos.

La vista de despliegue representa la disposición de las instancias de componentes de ejecución en instancias de nodos conectados por enlaces de comunicación.

UML –Modelo Conceptual Wilson Peláez H. 50

Diagramas de despliegue

UML –Modelo Conceptual Wilson Peláez H. 51

Diagramas de Casos de Uso

Actor A

Use Case 1

Use Case 2

Actor B

Use Case 3

Diagramas de Clases

GrpFile

read( )open( )create( )fillFile( )

rep

Repository

name : char * = 0

readDoc( )readFile( )

(from Persistence)

FileMgr

fetchDoc( )sortByName( )

DocumentList

add( )delete( )

Document

name : intdocid : intnumField : int

get( )open( )close( )read( )sortFileList( )create( )fillDocument( )

fList

1

FileList

add( )delete( )

1

File

read( )

read() fill the code..

Window95

¹®¼ °ü¸® Ŭ¶óÀ̾ðÆ®.EXE

WindowsNT

¹®¼ °ü¸® ¿£Áø.EXE

WindowsNT

Windows95

Solaris

ÀÀ¿ë¼ ¹ö.EXE

AlphaUNIX

IBM Mainframe

µ¥ÀÌŸº£À̽º¼ ¹ö

Windows95

¹®¼ °ü¸® ¾ÖÇø´

Document

FileManager

GraphicFileFile

Repository DocumentList

FileList

Diagramas de Componentes

Diagramas de Despliegue

user : Clerk

mainWnd : MainWnd

fileMgr : FileMgr

repository : Repositorydocument : Document

gFile : GrpFile

9: sortByName ( )

1: Doc view request ( )

2: fetchDoc( )

5: readDoc ( )

7: readFile ( )

3: create ( )

6: fillDocument ( )

4: create ( )

8: fillFile ( )

Diagramas de Colaboracion

[operación insertada]

Validar y Completar Operación

Generar Avances para Extranjero

[error operación]

Notificar Error a FO

Identificar Motivo Rechazo

[operacion no contratada]

[operación contratada]

Enviar Confirmación

[ prima es en divisa ]

Determinar Acciones Correcion

Registrar Error

-Operador BO-K+ (interfaz)

-Operador BO

-KBO-Host: Liquidaciones (interfaz)

-KBO-Host:SWIFT (interfaz)

-KBO

-Operador BO-KBO (interfaz)

-Operador BO

Contabilizar Operación

Calcular Flujos de Caja

[ ok ]

-KBO

-KBO-Host:Contabilidad (interfaz)

Evalua Confirmación

[ confirmación rechazada ]

ContrapartidaBO

Diagramas de Actividad

Openning

Writing

ReadingClosing

add file [ numberOffile==MAX ] / flag OFF

add file

close file

close file

Diagramas de Estados

user

mainWnd fileMgr : FileMgr

repositorydocument : Document

gFile

1: Doc view request ( )

2: fetchDoc( )

3: create ( )

4: create ( )

5: readDoc ( )

6: fillDocument ( )

7: readFile ( )

8: fillFile ( )

9: sortByName ( )

ƯÁ¤¹®¼ ¿¡ ́ ëÇÑ º¸±â¸¦ »ç¿ëÀÚ°¡ ¿äûÇÑ´Ù.

È ÀÏ°ü̧ ®ÀÚ´Â Àоî¿Â ¹®¼ ÀÇ Á¤º¸¸¦ ÇØ´ç ¹®¼

°´Ã¼¿¡ ¼³Á¤À» ¿äûÇÑ´Ù.

È ̧é °´Ã¼´Â ÀоîµéÀÎ °´Ã¼µé¿¡ ´ëÇØ ÀÌ̧ §º°·Î

Á¤·ÄÀ» ½ÃÄÑ È ̧é¿¡ º¸¿©ÁØ´Ù.

Diagramas de Secuencia

mainWnd : MainWnd

fileMgr : FileMgr

repository : Repositorydocument : Document

gFile : GrpFilefileMgr : FileMgr

Diagramas de Objetos

Diagramas Dinámicos

Diagramas Estáticos

Resúmen de Diagramas UML de un Sistema Software

UML –Modelo Conceptual Wilson Peláez H. 52

Reglas de UML

Los bloques de construcción de UML no se pueden combinar de cualquier manera.

UML tiene un número de reglas que especifican a qué debe parecersce un modelo bien formado.

UML tiene reglas semánticas para: Nombres

Como llamar a los elementos, relaciones y diagramas

UML –Modelo Conceptual Wilson Peláez H. 53

Reglas de UML

UML tiene reglas semánticas para: Alcance

El contexto que da un significado específico a un nombre

Visibilidad Cómo se pueden ver y utilizar esos nombre por

otros Integridad

Cómo se relacionan apropiada y consistentemente unos elementos con otros

Ejecución Qué significa ejecutar o simular un modelo

UML –Modelo Conceptual Wilson Peláez H. 54

Reglas de UML

Además de los modelos bien formados, se pueden construir modelos que sean: Abreviados: Ciertos elementos se ocultan para

simplificar la vista del modelo. Incompletos: Pueden estar ausente ciertos

elementos Inconsistentes: No se garantiza la integridad del

modelo

UML –Modelo Conceptual Wilson Peláez H. 55

Mecanismos comunes

UML cuenta con ciertos patrones comunes que se pueden utilizar en los diferentes diagramas con el fin de ayudar asu interpretación y calridad.

Los mecanismos son: Especificaciones Adornos Divisiones comunes Mecanismos de extensibilidad

UML –Modelo Conceptual Wilson Peláez H. 56

Mecanismos comunes: Especificaciones

Las especificaciones de UML proporcionan una base semántica que incluye a todos los modelos de un sistema.

Cada elemento esta relacionado con otros de manera consistente.

UML es algo más que un lenguaje gráfico. La notación gráfica de UML se utiliza para

visualizar un modelo. La especificación de UML se utiliza para enunciar

los detalles del sistema.

UML –Modelo Conceptual Wilson Peláez H. 57

Mecanismos comunes: Adornos

La mayoria de los elementos de UML tienen una única y clara notación gráfica que proporciona una representación visual de los aspectos más importantes del elemento.

A estas notaciones se les puede agregar detalles “que aclaren” o complementen la información que se quiere mostrar.

A estos detalles adicionales se les conoce como adornos.

UML –Modelo Conceptual Wilson Peláez H. 58

Mecanismos comunes: Divisiones comunes

En el modelado OO, se pueden ver las cosas desde la generalidad (abstración) y/o lo particular (concreto).

Casi todos los bloque de construcción presentan esta posibilidad. Clase / Objeto Casos de Uso / Instancias casos de uso Componentes / Instancias de componentes

UML –Modelo Conceptual Wilson Peláez H. 59

Mecanismos comunes: Divisiones comunes

Otra dicotomía que se suele presentar es la de que un elemento nos presenta una “declaración” –interfaz- y otro lo complementa haciendo su implementación.

UML –Modelo Conceptual Wilson Peláez H. 60

Mecanismos comunes: Extensibilidad

UML proporciona un lenguaje estándar para escribir planos de software, pero es posible que no sea suficiente para cubrir todos los matices de todos los modelos en todos los dominios y en todos los modelos.

Los mecanismos de extensibilidad permiten configurar y extender UML para las necesidades de un proyecto.

Los mecanismos que permiten extender el lenguaje en UML son:

Esteriotipos Valores etiquetados Restricciones

UML –Modelo Conceptual Wilson Peláez H. 61

Mecanismos comunes extensibilidad

Los esteriotipos permiten crear nuevos tipos de bloques de construcción que deriven de los existentes, pero que sean específicos a un problema.

Valor Etiquetado, extiende las propiedades de un bloque de construcción, permitiendo añadir nueva información en la especificación de un elemento.

Restricciones extiende la semántica de un bloque de construcción de UML.

UML –Modelo Conceptual Wilson Peláez H. 62

Metodología de desarrollo

Modelo Casos de Uso

Modelo Análisis

Modelo de Componentes

Modelo de Despliegue

Modelo de Certificación

Diagr. de Casos de Uso

Diagr. de Clases/Objetos

Diagr. de Componentes

Diagr. de Despliegue

Diagr. de Colaboración

Diagr. deEstados

Diagr. de Secuencia

Diagr. de Actividad

ModeloDiseño

Requerimientos Análisis Diseño Implementación Certificación

UML –Modelo Conceptual Wilson Peláez H. 63

Lecturas Recomendadas

UML –Modelo Conceptual Wilson Peláez H. 64

Bibliografia El Lenguaje Unificado de Modelado UML –G. Booch-

J. Rumbauhugh – I Jacobson. UML Distilled Martin Fowler – Kendall Scott www.vico.org

UML –Modelo Conceptual Wilson Peláez H. 65

FinFin