1 umluml wilson peláez hernández. 2 modelo conceptual
TRANSCRIPT
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