Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Objetivos Generales
Contenido de Agenda
1
División de Alta Tecnología
UML 2.4.1 for Developer – Enterprise Architect
1.1. Introducción
2
División de Alta Tecnología
UML 2.4.1 for Developer – Enterprise Architect
ALCANCE
Ciclo de Vida Organización/Negocio: Empresa
Ciclo de Vida
Desarrollo Software
Tipos de Proceso
Ciclo de Vida de Desarrollo Software
Este ciclo de vida incluye las actividades necesarias para desarrollar un sistema.
Ejemplos:
RUP
eXtreme Programming (XP) Ciclo de Vida Organización/Negocio: Empresa
Ciclo de Vida
Desarrollo Software
Ciclo de Vida
Desarrollo Software
3
División de Alta Tecnología
UML 2.4.1 for Developer – Enterprise Architect
Tipos de Procesos
Ciclo de Vida de TI
Este ciclo de vida incluye las actividades de un departamento de TI, añade disciplinas
requeridas para manejar adecuadamente, el portafolio de sistemas de una empresa.
Ejemplos:
• EUP (Enterprise Unified Process) Ciclo de Vida Organización/Negocio: Empresa
Ciclo de Vida
Desarrollo Software
Tipos de Procesos:
Ciclo de Vida Organización/Negocio: Empresa
Este ciclo de vida incluye las actividades completas de su organización, incluye ambas:
las de TI y aspectos de negocio.
Para que sea efectivo, el ciclo de vida de TI debe encajar en el ciclo de vida de la
organización.
Ciclo de Vida Organización/Negocio: Empresa
Ciclo de Vida
Desarrollo Software
1.2. Metodologías
Conjunto de métodos que se utilizan para desarrollar una actividad con el objetivo
de formalizarla y optimizarla.
Elementos de una metodología:
Ciclo de vida:
secuencia ordenada del desarrollo completo (cascada, prototipo, espiral)
Productos
documentos, entregables, evidencias, etc.
Procedimientos y herramientas.
¿Cómo?, ¿Con qué?
Criterios de evaluación.
¿cómo nos fue?
4
División de Alta Tecnología
UML 2.4.1 for Developer – Enterprise Architect
1.2. Metodologías
1.2.1. Elementos
Herramientas
Productos Procedimientos
Ciclo de
Evaluación
vida
Roles
Figura:
http://apexsistemas.com/images/cliente6.png
5
División de Alta Tecnología
UML 2.4.1 for Developer – Enterprise Architect
6
División de Alta Tecnología
UML 2.4.1 for Developer – Enterprise Architect
1 Estructuradas
2 Tradicionales
3 Ágiles
Estructuradas
Los métodos estructurados comenzaron a desarrollarse a fines de los 70’s con la
Programación Estructurada, luego a mediados de los 70’s, aparecieron técnicas para el
Diseño primero y luego, para el Análisis.
Crea los modelos de forma descendente.
Son las orientadas a procesos, a datos y las mixtas.
Ejemplos:
MERISE (Francia),
MÉTRICA (España),
SSADM (Reino Unido).
Tradicionales
Son aquellas que están guiadas por una fuerte planificación durante todo el
proceso de desarrollo.
Se realiza una intensa etapa de análisis y diseño antes de la construcción del
sistema.
Ejemplo:
RUP (Rational Unified Process)
Métrica V3
© Copyright IBM Corp. 1987, 2006.
7
División de Alta Tecnología
UML 2.4.1 for Developer – Enterprise Architect
Ágiles
Un proceso es ágil cuando el desarrollo de software es:
incremental (entregas pequeñas de SW, con ciclos rápidos)
cooperativo (cliente y desarrolladores trabajan juntos con una cercana comunicación)
sencillo (el método en sí mismo es fácil de aprender y modificar, bien documentado)
adaptable (permite realizar cambios de último momento)
Ejemplo:
XP (eXtreme Programming)
SCRUM (Considerado un framework)
1.3.1. Métrica v3
MÉTRICA V3
PROCESOS INTERFASES
Gestión de la Configuración
(GC)
- Estudio de viabilidad (EVS)
Seguridad (SEG)
- Análisis del SI (ASI)
Aseguramiento de la Calidad
- Diseño del SI (DSI)
(CAL)
- Construcción del SI (CSI)
8
División de Alta Tecnología
UML 2.4.1 for Developer – Enterprise Architect
1.3.1. Métrica v3
1.3.1. Métrica v3
Objetivos:
Proporcionar o definir Sistemas de Información que ayude a conseguir los fines
de la organización, mediante la definición de un marco estratégico para el
desarrollo de los mismos.
Mejorar la productividad de los Departamentos de Sistemas y Tecnologías de la
Información, y las Comunicaciones, permitiendo una mayor capacidad de
adaptación a los cambios, además, teniendo en cuenta la reutilización en la
medida de lo posible.
Facilitar la comunicación y entendimiento entre los distintos participantes en la
producción de software.
Facilitar la operación, mantenimiento y uso de los productos de software
obtenido.
9
División de Alta Tecnología
UML 2.4.1 for Developer – Enterprise Architect
Características:
Desarrollo Iterativo.
Administración de requerimientos.
Usa UML (Unified Modeling Language).
Produce artefactos.
Arquitectura basada en componentes.
Modelamiento visual.
Proceso complejo.
Es un marco de trabajo.
Configurable; adecuado para proyectos medianos y grandes.
Business Modeling
Estudio de Viabilidad del Sistema
Requirements
Análisis del Sistema de Información
Analysis & Design
Diseño del Sistema de Información
Construcción del Sistema de Información Implementation
10
División de Alta Tecnología
UML 2.4.1 for Developer – Enterprise Architect
12 PRINCIPIOS:
Programación en pares.
Propiedad colectiva del código.
Refactoring.
Pequeños releases.
Diseño simple (yagni).
Unidad de pruebas.
Planear el juego.
Estándares de codificación.
40 horas a la semana.
Metáfora.
Participación del cliente.
Integración continua.
Historia de Usuario
Número: 1 Nombre: Enviar artículo
Usuario: Autor
Modificación de Historia Número: Iteración Asignada: 2
Prioridad en Negocio: Alta
Puntos Estimados:
(Alta / Media / Baja)
Riesgo en Desarrollo:
Puntos Reales:
(Alto / Medio / Bajo)
Descripción:
Se introducen los datos del artículo (título, fichero adjunto, resumen, tópicos) y de los autores (nombre, e-mail,
afiliación). Uno de los autores debe indicarse como autor de contacto. El sistema confirma la correcta recepción
del artículo enviando un e-mail al autor de contacto con un userid y password para que el autor pueda
posteriormente acceder al artículo.
Observaciones: Fuente: www.dsic.upv.es
11
División de Alta Tecnología
UML 2.4.1 for Developer – Enterprise Architect
Fuente: www.dsic.upv.es
¿Qué es un Framework?
“La palabra inglesa "framework" (marco de trabajo) define, en términos
generales, un conjunto estandarizado de conceptos, prácticas y criterios para
enfocar un tipo de problemática particular que sirve como referencia, para
enfrentar y resolver nuevos problemas de índole similar.”
Fuente: http://es.wikipedia.org/wiki/Framework
1.4.1. SCRUM
SCRUM
En palabras de Ken Schwaber:
“Scrum no es una metodología, es un marco de trabajo. Eso quiere decir que Scrum no dice
exactamente lo que debes hacer”.
“Scrum es considerado un framework de desarrollo ágil de software”
12
División de Alta Tecnología
UML 2.4.1 for Developer – Enterprise Architect
1.4.1. SCRUM
Características:
Es liviano, iterativo e incremental.
Simple.
Adaptable.
Enfocado en la productividad.
Comunicación directa con Stakeholders.
Equipo de trabajo coordinado.
Divide el trabajo en Sprints (2-4 semanas).
En cada Sprint se diseña, codifica y prueba.
1.4.1. SCRUM
Roles:
Product Owner
Scrum Master
Team
Reuniones:
Sprint (planificación, revisión
y retrospectiva)
Daily scrum meeting
Artefactos:
Product Backlog
Sprint backlog
Burndown chart
13
División de Alta Tecnología
UML 2.4.1 for Developer – Enterprise Architect
Elección de un Framework
1.4.2. TOGAF
14
División de Alta Tecnología
UML 2.4.1 for Developer – Enterprise Architect
1.4.2. TOGAF
• Estrategia • Blueprint
NEGOCIO
APLICACI
ONES
DATOS TI
• Estructura • HW / SW
1.4.2. TOGAF
Características:
Metodología de desarrollo de arquitectura de empresa..
Historia en defensa.
Estándar abierto.
Neutral.
Amplia aceptación.
Perspectiva holística.
Proceso /
herramienta de
Planificación.
CMMI
BPM
15
División de Alta Tecnología
UML 2.4.1 for Developer – Enterprise Architect
El Modelo de Madurez y
Capacidad Integrado (CMMI) es
un conjunto de prácticas y
técnicas importantes que pueden
ser implantadas por cualquier
entidad empresarial o de
cualquier otra índole, que
desarrolla o mantiene software,
que desee entrar a un esquema
de mejora continua de procesos.
NIVEL DESCRIPCIÓN
Punto base. La organización tiene procesos ad-hoc o caóticos. El éxito se debe a personas
1- Inicial
heroicas.
La organización empieza a guardar información. Hay definiciones, pueden repetirse éxitos
2- Repetible
anteriores.
Se usan datos recolectados. Las decisiones están basadas en datos cuantitativos. Los procesos
4- Administrado
son medidos, hay retroalimentación.
16
División de Alta Tecnología
UML 2.4.1 for Developer – Enterprise Architect
1- Inicial
17
División de Alta Tecnología
UML 2.4.1 for Developer – Enterprise Architect
ÁREAS CLAVE DE
REVISIÓN
PROCESO
Gestión y acuerdo de RUP no menciona nada sobre administración de acuerdos, es algo no
suministros considerado.
18
División de Alta Tecnología
UML 2.4.1 for Developer – Enterprise Architect
Es un conjunto de tecnologías y
estándares para el diseño,
ejecución, administración y
monitoreo de los procesos de
negocio.
Es considerado la disciplina
empresarial cuyo objetivo es
mejorar la eficiencia, a través de
la gestión sistemática de los
procesos de negocio, que se
deben modelar, automatizar,
integrar, monitorear y optimizar
de forma continua.
TRIÁNGULO DE BPM
Alineado con:
• Estrategia
• Visión
• Misión
Organización Enfoque
tradicional BPM
Sistemas centrados en Procesos de Negocio que son
Sistemas centrados en datos
modelados mediante workflows.
Enfocado a departamentos funcionales Enfocado en equipos por proceso
19
División de Alta Tecnología
UML 2.4.1 for Developer – Enterprise Architect
Antes de BPM
Después de BPM
1.6. Notaciones
UML
BPMN
20
División de Alta Tecnología
UML 2.4.1 for Developer – Enterprise Architect
Ejemplo
21
División de Alta Tecnología
UML 2.4.1 for Developer – Enterprise Architect
Ejercicio:
Tiempo: 20 minutos
En este laboratorio, usted:
Compara las metodologías del mercado.
Discute en grupo los beneficios de cada metodología y notación.
Contenido de Agenda
RUP:
Proceso que implementa el ciclo de vida iterativo incremental.
Es una guía sobre cómo usar, efectivamente, el UML.
Está soportado por herramientas, que automatizan gran parte del proceso.
Es un proceso configurable.
22
División de Alta Tecnología
UML 2.4.1 for Developer – Enterprise Architect
Desarrolladores de
Software
Ingenieros de Proceso
23
División de Alta Tecnología
UML 2.4.1 for Developer – Enterprise Architect
Cada fase concluye con un punto de control bien definido en el cual, ciertas decisiones críticas
deben ser tomadas, y por lo tanto, deben haber sido alcanzadas las metas clave.
2.2.1. Fases
a) Fase: Inception
Resultados de la fase:
Visión general de requerimientos esenciales del proyecto.
Modelo de caso de uso inicial.
Glosario inicial del proyecto.
Caso de negocio inicial.
Determinación inicial de riesgo.
Plan del proyecto, que muestre fases e iteraciones.
Modelo del negocio, si es necesario.
Uno o varios prototipos.
24
División de Alta Tecnología
UML 2.4.1 for Developer – Enterprise Architect
b) Fase: Elaboration
Resultado de la fase:
Un modelo de caso de uso (completo, por lo menos en 80%).
Requerimientos suplementarios (no funcionales).
Una descripción de la arquitectura de software.
Un prototipo de arquitectura ejecutable.
Una lista de riesgos.
Un plan de desarrollo para todo el proyecto (plan global).
Especificar el proceso de desarrollo que se usará.
Un manual de usuario preliminar.
c) Fase: Construction
Resultados de la Fase:
El producto de software integrado en las plataformas adecuadas.
Los manuales del usuario.
Una descripción de la versión vigente.
Hito principal:
Capacidad Operativa Inicial.
En este punto, se decide si el software, los lugares y los usuarios están listos para
estar operativos, sin exponer el proyecto a altos riesgos. (versión “beta”)
d) Fase: Transition
25
División de Alta Tecnología
UML 2.4.1 for Developer – Enterprise Architect
2.2.2. Iteraciones
Patron de ciclo
Inception Elaboration Construction Transition
vital
Breve, para establecer el Unica, se definen los Varias, se ejecutan los
Varias, para migrar el
Incremental ámbito y la visión, y para requisitos y se establece la Casos de uso y se afina la
producto a los usuarios
definir el caso de negocio arquitectura arquitectura
2.3. Elementos
QUIÉN WORKERS
hace el proceso
ESTRUCTURA ESTÁTICA DEL RUP
26
División de Alta Tecnología
UML 2.4.1 for Developer – Enterprise Architect
2.3. Elementos
Define la conducta y
responsabilidades de un Unidad de
TAREA Trabajo
individuo o de un conjunto de
individuos
ROL
Describe un
Analista Caso de Uso
Es responsable de: PRODUCTO DE
TRABAJO
Una pieza de información que
es producida, modificada o
usada por un proceso
Use case
Use case Package
2.3.1. Roles
ROL
Producto de
Tareas
Trabajo
27
División de Alta Tecnología
UML 2.4.1 for Developer – Enterprise Architect
2.3.1. Roles
Responsabilidades:
Hacer una serie de tareas.
Ser el responsable de una serie de Producto de Trabajo /artefactos.
2.3.1. Roles
2.3.2. Tareas
28
División de Alta Tecnología
UML 2.4.1 for Developer – Enterprise Architect
Asignación de actividades
José Luis
Autor del USE-CASE Especificaciones del USE - CASE
.....
29
División de Alta Tecnología
UML 2.4.1 for Developer – Enterprise Architect
Diferencias
RUP 2,003 RUP 2,006 Forma Gráfica
Actividad Tarea
Rol Rol
30
División de Alta Tecnología
UML 2.4.1 for Developer – Enterprise Architect
2.4. WORKFLOWS
2.4. WORKFLOW
2.4. WORKFLOW
Clasificación de los Workflows
Core Workflow
Iteration Workflow
Activity
31
División de Alta Tecnología
UML 2.4.1 for Developer – Enterprise Architect
Workflows de
Proceso
Workflows de
Soporte
Los Iteration Workflows representan una visión de las actividades, pero por
cada iteración dentro de cada fase.
Ejemplo:
Iteración 1 de la
fase de
Elaboración.
32
División de Alta Tecnología
UML 2.4.1 for Developer – Enterprise Architect
Concepts
Guidelines
Templates
Tool mentors
Ejercicio 5:
Tiempo: 20 minutos
En este laboratorio, usted:
Identificará la herramienta que contiene la Metodología.
Navegará por la herramienta, identificando sus principales elementos.
Contenido de Agenda
33
División de Alta Tecnología
UML 2.4.1 for Developer – Enterprise Architect
UML:
Debe entenderse como:
Un estándar para modelado de sistemas.
No es un estándar para procesos de software.
Debe aplicarse en el contexto de un proceso de software.
Es una notación, no es un proceso, no es una metodología.
Establecido como estándar para documentar el proceso de ingeniería de
software.
Combina lo mejor del modelado de procesos, objetos, datos y componentes.
34
División de Alta Tecnología
UML 2.4.1 for Developer – Enterprise Architect
ESTRUCTURA UML
BLOQUES DE
MECANISMOS COMUNES ARQUITECTURA
CONSTRUCCIÓN
BLOQUES DE CONTRUCCIÓN
35
División de Alta Tecnología
UML 2.4.1 for Developer – Enterprise Architect
A. Elementos UML
ELEMENTOS UML
a) Elementos Estructurales
7 Elementos estructurales:
Clases.
Interfaz.
Colaboración.
Casos de Uso.
Clase Activa.
Componente.
Nodo.
a) Elementos Estructurales
CLASES
La clase es una descripción de un conjunto de objetos que comparten los mismos
atributos, operaciones, relaciones y semántica.
Producto
Nombre de la clase
-CodProducto
-DesProducto
-StockAct
-Precio Atributos
+BuscarProducto()
+GrabarProducto()
+EliminarProducto()
Operaciones
36
División de Alta Tecnología
UML 2.4.1 for Developer – Enterprise Architect
a) Elementos Estructurales
INTERFAZ
Es una colección de operaciones que especifican un servicio de una clase o
componente. Por lo tanto, una interfaz describe el comportamiento visible
externamente de ese elemento.
a) Elementos Estructurales
COLABORACIÓN
Define la interacción. Es una sociedad de roles y otros elementos que colaboran
para proporcionar un comportamiento cooperativo mayor que la suma de los
comportamientos de sus elementos.
Cadena de
Responsabilidad
a) Elementos Estructurales
CASOS DE USO
Descripción de un conjunto de secuencias de acciones que un sistema ejecuta y
que produce un resultado observable de interés para un actor particular.
Consultar Producto
37
División de Alta Tecnología
UML 2.4.1 for Developer – Enterprise Architect
a) Elementos Estructurales
CLASE ACTIVA
Es una clase cuyos objetos, tienen uno o más procesos o hilos de ejecución y por
lo tanto, pueden dar origen a actividades de control. Una clase activa es igual a
una clase, excepto que sus objetos representan elementos cuyo comportamiento
es concurrente con otros elementos.
Gráficamente, solo varía en el borde más grueso alrededor de la clase.
Gestor Evento
+suspender()
+vaciar cola()
a) Elementos Estructurales
COMPONENTE
Es una parte física y reemplazable de un sistema que conforma con un conjunto
de interfaces y proporciona la implementación de dicho conjunto.
Component
a) Elementos Estructurales
NODO
Es un elemento físico que existe en tiempo de ejecución y representa un recurso
computacional, que por lo general, dispone de algo de memoria y, con
frecuencia, capacidad de procesamiento.
Servidor de
Aplicaciones
38
División de Alta Tecnología
UML 2.4.1 for Developer – Enterprise Architect
b) Elementos de Comportamiento
Elementos de Comportamiento
Representan las partes dinámicas de los modelos UML. Estos son los verbos de un
modelo, representan comportamiento en el tiempo y el espacio.
b) Elementos de Comportamiento
INTERACCIÓN
Es un comportamiento que comprende un conjunto de mensajes intercambiados
entre un conjunto de objetos, dentro de un contexto particular, para alcanzar un
propósito específico.
dibujar
b) Elementos de Comportamiento
MÁQUINA DE ESTADOS
Es un comportamiento que especifica las secuencias de estados, por las que pasa
un objeto o una interacción durante su vida en respuesta a eventos, junto con sus
reacciones a estos eventos.
Esperando
39
División de Alta Tecnología
UML 2.4.1 for Developer – Enterprise Architect
c) Elementos de Agrupación
AGRUPACION
Elementos de Agrupación:
Se utiliza para agrupar elementos de modelado, semánticamente, relacionados
en unidades cohesivas.
Elemento:
El paquete (Package)
Es la forma que tiene UML de
agrupar elementos en subsistemas. Reglas del
Negocio
Un sistema pequeño puede tener un
único paquete.
d) Elementos de Anotación
ANOTACIÓN
Elementos de Anotación:
Se utiliza para anexar al modelo información relevante.
Elemento:
La nota
Una nota es como el equivalente gráfico de un papel adhesivo.
B. Relaciones UML
RELACIONES UML
40
División de Alta Tecnología
UML 2.4.1 for Developer – Enterprise Architect
a) Relación de Dependencia
Flecha de dependencia
b) Relación de Asociación
Relación estructural que describe un conjunto de enlaces, los cuales son conexiones
entre objetos.
La agregación, por ejemplo, es un tipo especial de asociación, que representa una
relación estructural ente un todo y sus partes. Generalmente, incluye roles y
multiplicidad.
0..1 *
patrón empleado
c) Relación de Generalización
41
División de Alta Tecnología
UML 2.4.1 for Developer – Enterprise Architect
d) Relación de Realización
C. Diagramas UML
DIAGRAMAS UML
State
State de
Use Diagramas
Diagrams
UseCase
Case de
Diagramas
Diagrams
Clases State
Use Diagrams State de
UseCase
Case de
Diagramas Diagrams
Casos de Uso
Diagramas
Diagrams
Diagrams
Diagrams
Diagrams Objetos
Secuencia
Scenario
Scenario de State
State de
Diagramas
Diagrams Diagramas
Diagrams
Diagrams
Colaboración Diagrams
Componentes
Modelos
Scenario
Scenario de
Component
Component
Diagramas
Diagrams Diagramas
Diagrams
Diagrams
de
Diagrams
Estados Distribución
Diagramas de
Actividad
42
División de Alta Tecnología
UML 2.4.1 for Developer – Enterprise Architect
De spachar
productos
Almacenero
Re gistrar
Inv e ntario
-. FamInsumo
-FamInsId : Char
-DesFamIns : String
-wFamIns +CargaComboFamilia()
DIAGRAMA DE OBJETOS
Modelan las instancias de los
elementos contenidos en los
diagramas de clases. Lanificio Sur : 3.Capa Datos::Proveedor
Proveedor_id : Char = P0098
RazonSocial : String = Lanificio
Instantánea de un conjunto de DireccionLegal : String = Av.Los Quechuas
43
División de Alta Tecnología
UML 2.4.1 for Developer – Enterprise Architect
DIAGRAMA DE SECUENCIA
sd Add To Shopping Cart
:ShoppingBasket
DIAGRAMA DE COLABORACIÓN
Muestra las interacciones entre los
elementos en tiempo de ejecución
en forma semejante a un
diagrama de Secuencia. No
obstante, los diagramas de
Colaboración se usan para
visualizar relaciones inter objetos,
mientras que los diagramas de
Secuencia son más efectivos para
visualizar procesamiento, a lo
largo del tiempo.
DIAGRAMA DE ESTADO
Muestra el comportamiento solicitar()
solicitada
[verificar=no]
acciones.
44
División de Alta Tecnología
UML 2.4.1 for Developer – Enterprise Architect
DIAGRAMA DE ACTIVIDADES
Representa el comportamiento
interno de una operación o de
un caso de uso, bajo la forma
de un desarrollo por etapas,
agrupadas secuencialmente.
DIAGRAMA DE COMPONENTES
Describen los elementos físicos y sus relaciones en el entorno de realización.
Los componentes representan todos los tipos de elementos de software que
entran en la fabricación de aplicaciones informáticas.
«executable»
sistema.exe
«document» «library»
Ayuda.doc Elog.dll
«library»
Gestor
DIAGRAMA DE DESPLIEGUE
Muestran la configuración de
los distintos materiales que
forman parte de un sistema y
la distribución de los
programas ejecutables sobre
estos materiales.
45
División de Alta Tecnología
UML 2.4.1 for Developer – Enterprise Architect
Modelos
Diagramas de Comportamiento Diagramas Estructurales
Diagramas de Diagrama de
Secuencia Diagrama de Diagrama de
Casos de Uso
Clases Objetos
Diagrama de Diagrama Visión
de Interacción Diagrama de Diagrama de
Actividad Componentes Despliegue
Diagrama de Diagrama Diagrama de
Máquina de de Tiempos Diagrama de
Estructura
Paquetes
Estados Compuesta
Diagrama
de Comunicación
46
División de Alta Tecnología
UML 2.4.1 for Developer – Enterprise Architect
Diagramas de Tiempos
Empleados para mostrar las interacciones donde el propósito fundamental,
consiste en razonar sobre la ocurrencia de eventos en el tiempo que provocan el
cambio de estados de un elemento estructural (clase, componente, etc.).
Diagrama de Comunicación
Equivalente al diagrama de colaboración del OMG UML 1.x, permite
especificar interacciones entre objetos que conforman la estructura interna de un
clasificador.
DIAGRAMA
Diagrama de Diagrama de
Estructura Comportamiento
47
División de Alta Tecnología
UML 2.4.1 for Developer – Enterprise Architect
Marcos o frames
etiqueta
CasoUso1
Actor1 CasoUso2
48
División de Alta Tecnología
UML 2.4.1 for Developer – Enterprise Architect
Etiquetas
Estructural
pkg Diagrama de Paquete
cmp Diagrama Componentes
Dinámica o Comportamiento
uc Diagrama de Casos de Uso
act Diagrama de Actividad
stm Diagrama de Máquina de Estados
sd Diagramas de Interacción
dep Diagrama de Despliegue
MECANISMOS COMUNES
MECANISMOS DE
ESPECIFICACIONES ADORNOS DIVISIONES COMUNES
EXTENSIBILIDAD
A. Especificaciones
Anular Pedido
49
División de Alta Tecnología
UML 2.4.1 for Developer – Enterprise Architect
B. Adornos
La mayoría de los elementos UML tienen una única y clara notación gráfica
que proporciona una representación visual de los aspectos más importantes
del elemento.
SÍMBOLO SIGNIFICADO
Producto
-CodProducto + Público
-DesProducto - Privado
-StockAct
# Protegido
-Precio
$ Estático
+BuscarProducto()
-GrabarProducto() / Derivado (no estándar)
#EliminarProducto() * Abstracto (no estándar)
C. Divisiones comunes
Julio
Clase - Objeto
D. Mecanismos de extensibilidad
MECANISMOS DE EXTENSION
50
División de Alta Tecnología
UML 2.4.1 for Developer – Enterprise Architect
a. Estereotipos
«extends»
«Business Actor»
Lector
«Business Use Case»
Registrar Pago de
Mora
a. Estereotipos
ESTEREOTIPO/ SE APLICA AL
SIGNIFICADO
PALABRA CLAVE SÍMBOLO
Actor Clase Especifica un conjunto coherente de roles que juegan los usuarios de los casos de uso cuando
interactúan con éstos.
Boundary Clase Maneja comunicaciones entre el entorno del sistema y el sistema, suelen proporcionar la interfaz del
sistema con un usuario o con otro sistema.
Control Clase Se trata de clases que coordinan los eventos necesarios para llevar a cabo el comportamiento que
se especifica en el caso de uso, representan su dinámica.
Entidad Clase Especifica una clase persistente. Este tipo de clase suele reflejar entidades del mundo real o
elementos necesarios para realizar tareas internas al sistema. También se denominan clase dominio
Business Actor Actor Especifica un actor que representa un ROL desempeñado en relación al negocio por alguien o algo
en el ambiente de negocio. Un Actor de negocio representa a algún participante fuera del alcance
del negocio y, por lo tanto, tiene una comprensión del comportamiento visible del negocio.
b. Valores etiquetados
Pagos
{Version = 2.5,
estado = no verificado}
51
División de Alta Tecnología
UML 2.4.1 for Developer – Enterprise Architect
c. Restricciones (constraints)
PersonaJuridica
CuentaBancaria
{O lógico}
PersonaNatural +esposo
-genero
0..1
+esposa 0..1
{genero.esposo=masculino y
genero.esposa=femenino}
Consideraciones:
Los bloques de construcción de UML no pueden combinarse de cualquier manera.
UML tiene unas reglas que especifican, a qué debe parecerse un modelo bien
formado.
Un modelo bien formado es aquel que es semánticamente autoconsistente y está
en armonía con todos sus modelos relacionados.
52
División de Alta Tecnología
UML 2.4.1 for Developer – Enterprise Architect
REGLAS UML
Reglas de Nombres:
Cómo llamar a los elementos, relaciones y diagramas.
Ejemplo:
Relaciones de dependencia entre casos de uso: «Include» y «Extend»
Reglas de Alcance:
El contexto que da significado específico a un nombre.
Ejemplo:
El alcance de propiedad de un clasificador: “Sólo hay un valor de la característica
para todas las instancias del clasificador”
53
División de Alta Tecnología
UML 2.4.1 for Developer – Enterprise Architect
Reglas de visibilidad:
Cómo se pueden ver y utilizar esos nombres por otros.
Ejemplo:
Private, solo el propio clasificador puede utilizar la característica.
Reglas de Integridad:
Cómo se relacionan apropiada y consistentemente, unos elementos con otros.
Ejemplo:
Un actor no puede tener una relación «Include» con un caso de uso.
Las relaciones «Include» se realizan entre 2 casos de uso.
Reglas de Ejecución:
Significa ejecutar o simular un modelo dinámico.
Ejemplo:
Un diagrama de secuencia representa la ejecución de un modelo, a través de objetos.
54
División de Alta Tecnología
UML 2.4.1 for Developer – Enterprise Architect
Ejercicio 6:
Tiempo: 20 minutos
En este laboratorio, usted:
Reconocerá el ambiente de la herramienta usada.
Establecerá la estructura inicial de un proyecto.
Identificará y creará los estereotipos que usará en sus proyectos futuros.
Generará una plantilla de trabajo.
55