Unified Modeling Language 2
Autores:
Dr. Harald Störrle
MGM-EDV Beratung GmbH
y Universidad de Munich
Dr. Alexander Knapp
Universidad de Munich
Simon Pickin
Pablo Basanta Val
Ingeniería Telemática
Universidad Carlos III de Madrid
Profesor:
Versión abreviada y traduccion:
Simon Pickin, Angeles Manjarrés
Software de
Comunicaciones
2007-2008
Para el tutorial original ver, por ejemplo:
http://www.pst.ifi.lmu.de/veroeffentlichungen/UML 2.0-Tutorial.pdf
(c) 2005-2006, Dr. H. Störrle, Dr. A. Knapp, Simon Pickin, Angeles Manjarrés
1
Tutorial UML 2 – fuentes originales
• Los diagramas de este tutorial
se han tomado de los dos libros
siguientes, ahora ampliamente
usados para formación en
Alemania.
UML 2 für Studenten
• Esta presentación es una
traducción de una versión
abreviada de un tutorial
redactado por A. Knapp & H.
Störrle y presentado
– en congresos internacionales
(SEFM’06, VLHCC’06),
– para formación en empresas
(WEKA, MGM)
– para formación universitaria
(MNM).
• Los autores proporcionan
formación y consultoría sobre
UML y temas afines.
• Más artículos sobre UML véase:
www.pst.ifi.lmu.de/~knapp
www.pst.ifi.lmu.de/~stoerrle.
Software de
Comunicaciones
2007-2008
ISBN 3-8273-2268-5
ISBN 3-8273-7143-0
(c) 2005-2006, Dr. H. Störrle, Dr. A. Knapp, Simon Pickin, Angeles Manjarrés
2
Ejemplo utilizado a través del tutorial:
Albatross Air Autopilot (AAA)
•
Imagínese una línea aérea ficticia, Albatross Air, que
está a punto de automatizar sus procesos en base a
un nuevo sistema de información de gran alcance
llamado “Autopiloto Albatross Air” abreviado a AAA.
• Las capacidades de AAA incluyen soporte para la
reserva de vuelos, y para el check-in y embarque de
pasajeros, así como un programa de puntos para
clientes habituales llamado “Millas Albatross”.
Software de
Comunicaciones
2007-2008
(c) 2005-2006, Dr. H. Störrle, Dr. A. Knapp, Simon Pickin, Angeles Manjarrés
3
Unified Modeling Language 2
Parte 1 - Introducción
Software de
Comunicaciones
2007-2008
(c) 2005-2006, Dr. H. Störrle, Dr. A. Knapp, Simon Pickin, Angeles Manjarrés
4
1 - Introducción
Historia y predecesores
• El UML es la “lingua franca” de la
ingeniería del software.
• Subsume, integra y consolida a la
mayor parte de sus predecesores
• Tiene un alcance más amplio y un
soporte mucho mejor
(herramientas, libros, formación
etc.) que otras notaciones.
• Transición UML1.x→UML 2:
– númerosos problemas resueltos,
– muchos conceptos nuevos
introducidos,
– estructura interna revisada
completamente y mejorada.
• Aunque UML 2 todavía tiene
muchos problemas, es mucho
mejor de lo que existía antes.
(c) 2005-2006, Dr. H. Störrle, Dr. A. Knapp, Simon Pickin, Angeles Manjarrés
versión actual (“el estándar”)
2.1.1 del 5 de febrero de 2007
5
Software de
Comunicaciones
2007-2008
1 - Introducción
Escenarios de uso
• UML no se diseñó para usos específicos y limitados.
• Actualmente no hay consenso sobre su papel:
– algunos ven UML sólo como una herramienta para esbozar
diagramas de clase que representan programas Java.
– otros creen que UML es “el prototipo de la próxima
generación de lenguajes de programación”.
• En realidad, UML es una sistema de lenguajes (o
notaciones, tipos de diagramas), cada uno de los
cuales puede usarse en varias situaciones distintas.
• UML es aplicable, en mayor o menor grado, para
múltiples fines y durante todas las fases del ciclo de
vida del software.
(c) 2005-2006, Dr. H. Störrle, Dr. A. Knapp, Simon Pickin, Angeles Manjarrés
6
Software de
Comunicaciones
2007-2008
1 - Introducción
Escenarios de uso
Software de
Comunicaciones
2007-2008
(c) 2005-2006, Dr. H. Störrle, Dr. A. Knapp, Simon Pickin, Angeles Manjarrés
7
1 - Introducción
Tipos de diagramas de UML 2
• UML es un sistema coherente de lenguajes más que
un lenguaje único.
• Cada lenguaje tiene su enfoque particular.
Software de
Comunicaciones
2007-2008
(c) 2005-2006, Dr. H. Störrle, Dr. A. Knapp, Simon Pickin, Angeles Manjarrés
8
1 - Introducción
Los tipos de diagramas también dependen
de su uso
• Cada tipo de diagrama puede usarse
en multitud de contextos, para cada
uno de los cuales sean pertinentes
diferentes reglas y buenas prácticas.
• Por ejemplo, los diagramas de clase
pueden usarse tanto durante el
análisis como durante la
implementación.
• Durante el análisis, este diagrama de
clases es malo, o al menos dudoso.
• Durante la implementación, es malo
si y solo si no se corresponde con el
código (u otra estructura) para cuya
representación es usado.
(c) 2005-2006, Dr. H. Störrle, Dr. A. Knapp, Simon Pickin, Angeles Manjarrés
9
Software de
Comunicaciones
2007-2008
1 - Introducción
Estructura Interna: Visión de conjunto
• UML se estructura mediante un enfoque de metamodelado
de cuatro capas.
• La capa M2 se denomina metamodelo.
• El metamodelo se estructura a su vez en anillos, en uno de
los cuales, denominado superestructura, se definen los
conceptos (“el metamodelo” propiamente dicho).
• La Superestructura se estructura en un árbol de paquetes
Software de
Comunicaciones
2007-2008
(c) 2005-2006, Dr. H. Störrle, Dr. A. Knapp, Simon Pickin, Angeles Manjarrés
10
1 - Introducción
Estructura Interna: Niveles
Software de
Comunicaciones
2007-2008
(c) 2005-2006, Dr. H. Störrle, Dr. A. Knapp, Simon Pickin, Angeles Manjarrés
11
1 - Introducción
Estructura Interna: Capas
Software de
Comunicaciones
2007-2008
(c) 2005-2006, Dr. H. Störrle, Dr. A. Knapp, Simon Pickin, Angeles Manjarrés
12
1 – Introducción
Estructura Interna: Anillos
Software de
Comunicaciones
2007-2008
(c) 2005-2006, Dr. H. Störrle, Dr. A. Knapp, Simon Pickin, Angeles Manjarrés
13
1 - Introducción
Estructura Interna: Paquetes
Software de
Comunicaciones
2007-2008
(c) 2005-2006, Dr. H. Störrle, Dr. A. Knapp, Simon Pickin, Angeles Manjarrés
14
1 - Introducción
Diagramas y Modelos
nombre del
diagrama
(pragmático)
tipo de diagrama
diagrama
(sintaxis completa)
representa
presenta
Estructura de datos,
instancia del metamodelo
modelo
(sintaxis abstracta)
Software de
Comunicaciones
2007-2008
(c) 2005-2006, Dr. H. Störrle, Dr. A. Knapp, Simon Pickin, Angeles Manjarrés
15
1 - Introducción
UML no es (sólo) orientado a objetos
• Un popular concepto erróneo del UML lo considera
obligadamente orientado a objetos.
• Es cierto que
– UML define conceptos como clase y generalización;
– UML se define (principalmente) mediante un conjunto de modelos
de clases;
– UML2 redescubre la idea de comportamiento incorporado en objetos.
• Sin embargo, UML 2
– también abarca muchos otros conceptos de origen pre – o no-OO
(Actividades, Máquinas de Estados, Interacciones,…);
– puede utilizarse en proyectos de desarrollo con independencia
completa de sus lenguajes de implementación;
– no está vinculado a ningún lenguaje ni paradigma de lenguajes, ni
por accidente ni a propósito.
16
Software de
Comunicaciones
2007-2008
(c) 2005-2006, Dr. H. Störrle, Dr. A. Knapp, Simon Pickin, Angeles Manjarrés
1 - Introducción
UML 1.x vs. UML 2
• UML 2 tiene varias ventajas frente a UML 1.x:
– muchos nuevos conceptos potentes
– definiciones mucho mejores (esto es, semántica)
– estructuración interna mejorada
• Sin embargo, aunque UML 2 está mucho mejor definido que
UML 1.5, su estado no es aún satisfactorio, p.e..
– sintaxis
• notación sobrecargada: demasiados sinónimos,demasiado azucarado,
•
falta de ortogonalidad notacional, hay quien ni siquiera desea esto,
– semántica
•
falta de semántica precisa: informal, dfns. contradictorias y poco claras,
– pragmática
•
falta de base metodológica tal como condiciones de coherencia de
modelos, tipos de uso etc.
• Aun así, es el lenguaje de modelado más completo (“unificado”)
(c) 2005-2006, Dr. H. Störrle, Dr. A. Knapp, Simon Pickin, Angeles Manjarrés
17
Software de
Comunicaciones
2007-2008
1 - Introducción
Conclusiones
• UML is la lingua franca de la ingeniería del software.
• Tiene muchos problemas, pero aun así es lo mejor
hasta la fecha.
• Puede usarse durante todo el ciclo de desarrollo soft.
– para planear, analizar, diseñar, implementar y documentar
• El UML está estructurado
– mediante un enfoque de metamodelado de 4 niveles
(M0: sistema, M1: modelo, M2: metamod., M3: metametamod.),
– el metamodelo se estructura en 3 anillos
(infraestructura, superestructura, extensiones),
– la superestructura se organiza como un árbol de paquetes.
(e.g. Acciones, Actividades, Comportamientos Comunes, Clases)
• UML no es obligadamente orientado a objetos.
(c) 2005-2006, Dr. H. Störrle, Dr. A. Knapp, Simon Pickin, Angeles Manjarrés
18
Software de
Comunicaciones
2007-2008
Unified Modeling Language 2
Parte 2 – Casos de Uso
Software de
Comunicaciones
2007-2008
(c) 2005-2006, Dr. H. Störrle, Dr. A. Knapp, Simon Pickin, Angeles Manjarrés
19
2 – Casos de Uso
Un primer vistazo
• Aspectos mostrados
– límites y contexto del sistema
– sistemas usuarios y vecinos
– funcionalidades
– relaciones entre funcionalidades (llamada/dependencia, taxonomía)
– requisitos funcionales
– algunos requisitos no funcionales (“calidad”) como comentarios/
Software de
Comunicaciones
2007-2008
anotaciones
(c) 2005-2006, Dr. H. Störrle, Dr. A. Knapp, Simon Pickin, Angeles Manjarrés
20
2 – Casos de Uso
Escenarios de Uso
•
Inventario de casos de uso/ arquitectura del dominio
– catálogo completo de todos los subdominios y (grupos de)
procesos de negocio y funciones de negocio
– visión de conjunto de las capacidades (del dominio) del sistema
• Casos de uso “clásicos”
– ilustran el contexto de la funcionalidad individual
– útil en el diseño/documentación de los procesos de negocio (esto
es, en la fase de análisis y en la reingeniería)
• Tabla de casos de uso / casos de test
– descripción detallada esq
Comentarios de: Unified Modeling Language 2 (0)
No hay comentarios