UML Historia Intro
-
Upload
sandinosaso3641 -
Category
Documents
-
view
6.587 -
download
3
description
Transcript of UML Historia Intro
![Page 1: UML Historia Intro](https://reader033.fdocuments.mx/reader033/viewer/2022052901/5571f24149795947648c652d/html5/thumbnails/1.jpg)
1 www.dsic.upv.es/~uml
Desarrollo de Software Orientado a Objeto usando UML
Patricio Letelier [email protected]
Departamento Sistemas Informáticos y Computación (DSIC)Universidad Politécnica de Valencia (UPV) - España
![Page 2: UML Historia Intro](https://reader033.fdocuments.mx/reader033/viewer/2022052901/5571f24149795947648c652d/html5/thumbnails/2.jpg)
UML = Unified Modeling Language
Un lenguaje de propósito general para el modelado orientado a objetos. Documento “OMG Unified Modeling Language
Specification”
UML combina notaciones provenientes desde:– Modelado Orientado a Objetos – Modelado de Datos– Modelado de Componentes – Modelado de Flujos de Trabajo (Workflows)
![Page 3: UML Historia Intro](https://reader033.fdocuments.mx/reader033/viewer/2022052901/5571f24149795947648c652d/html5/thumbnails/3.jpg)
Situación de Partida Diversos métodos y técnicas OO, con muchos
aspectos en común pero utilizando distintas notaciones
Inconvenientes para el aprendizaje, aplicación, construcción y uso de herramientas, etc.
Pugna entre distintos enfoques (y correspondientes gurús)
Establecer una notación estándar
I. Introducción: UML
![Page 4: UML Historia Intro](https://reader033.fdocuments.mx/reader033/viewer/2022052901/5571f24149795947648c652d/html5/thumbnails/4.jpg)
Historia de UML Comenzó como el “Método Unificado”, con la
participación de Grady Booch y Jim Rumbaugh. Se presentó en el OOPSLA’95
El mismo año se unió Ivar Jacobson. Los “Tres Amigos” son socios en la compañía Rational Software. Herramienta CASE Rational Rose
I. Introducción: UML
![Page 5: UML Historia Intro](https://reader033.fdocuments.mx/reader033/viewer/2022052901/5571f24149795947648c652d/html5/thumbnails/5.jpg)
Historia de UML
Nov ‘97 UML aprobado por el OMG
19981999
2000
UML 1.2
UML 1.3
UML 1.4
2001 UML 2.0
Revisiones menores
I. Introducción: UML
![Page 6: UML Historia Intro](https://reader033.fdocuments.mx/reader033/viewer/2022052901/5571f24149795947648c652d/html5/thumbnails/6.jpg)
Participantes en UML 1.0
Rational Software (Grady Booch, Jim Rumbaugh y Ivar Jacobson)
Digital Equipment Hewlett-Packard i-Logix (David Harel)
IBM ICON Computing
(Desmond D’Souza) Intellicorp and James Martin
& co. (James Odell)
MCI Systemhouse Microsoft ObjecTime Oracle Corp. Platinium Technology Sterling Software Taskon Texas Instruments Unisys
I. Introducción: UML
![Page 7: UML Historia Intro](https://reader033.fdocuments.mx/reader033/viewer/2022052901/5571f24149795947648c652d/html5/thumbnails/7.jpg)
UML “aglutina” enfoques OO
UML
RumbaughJacobson
Meyer
Harel
Wirfs-BrockFusion
Embly
Gamma et. al.
Shlaer-Mellor
Odell
Booch
Pre- and Post-conditions
State Charts
Responsabilities
Operation descriptions, message numbering
Singleton classes
Frameworks, patterns, notes
Object life cycles
I. Introducción: UML
![Page 8: UML Historia Intro](https://reader033.fdocuments.mx/reader033/viewer/2022052901/5571f24149795947648c652d/html5/thumbnails/8.jpg)
Aspectos Novedosos Definición semi-formal del Metamodelo de UML
Mecanismos de Extensión en UML:
Stereotypes Constraints Tagged Values
Permiten adaptar los elementos de modelado, asignándoles una semántica particular
I. Introducción: UML
![Page 9: UML Historia Intro](https://reader033.fdocuments.mx/reader033/viewer/2022052901/5571f24149795947648c652d/html5/thumbnails/9.jpg)
Inconvenientes en UML Definición del proceso de desarrollo usando UML.
UML no es una metodología Falta integración con respecto de otras técnicas tales
como patrones de diseño, interfaces de usuario, documentación, etc.
Ejemplos aislados
“Monopolio de conceptos, técnicas y métodos en torno a UML”
I. Introducción: UML
![Page 10: UML Historia Intro](https://reader033.fdocuments.mx/reader033/viewer/2022052901/5571f24149795947648c652d/html5/thumbnails/10.jpg)
Perspectivas de UML UML será el lenguaje de modelado orientado a objetos
estándar predominante los próximos años Razones:
– Participación de metodólogos influyentes– Participación de importantes empresas– Aceptación del OMG como notación estándar
Evidencias:– Herramientas que proveen la notación UML– “Edición” de libros
– Congresos, cursos, “camisetas”, etc.
I. Introducción: UML
![Page 11: UML Historia Intro](https://reader033.fdocuments.mx/reader033/viewer/2022052901/5571f24149795947648c652d/html5/thumbnails/11.jpg)
Breve Tour por UML
![Page 12: UML Historia Intro](https://reader033.fdocuments.mx/reader033/viewer/2022052901/5571f24149795947648c652d/html5/thumbnails/12.jpg)
Modelos y Diagramas• Un modelo captura una vista de un sistema del mundo
real. Es una abstracción de dicho sistema, considerando un cierto propósito. Así, el modelo describe completamente aquellos aspectos del sistema que son relevantes al propósito del modelo, y a un apropiado nivel de detalle.
• Diagrama: una representación gráfica de una colección de elementos de modelado, a menudo dibujada como un grafo con vértices conectados por arcos
OMG UML 1.4 Specification
II. Breve Tour por UML
![Page 13: UML Historia Intro](https://reader033.fdocuments.mx/reader033/viewer/2022052901/5571f24149795947648c652d/html5/thumbnails/13.jpg)
Un proceso de desarrollo de software debe ofrecer un conjunto de modelos que permitan expresar el producto desde cada una de las perspectivas de interés
El código fuente del sistema es el modelo más detallado del sistema (y además es ejecutable). Sin embargo, se requieren otros modelos ...
Cada modelo es completo desde su punto de vista del sistema, sin embargo, existen relaciones de trazabilidad entre los diferentes modelos
... Modelos y DiagramasII. Breve Tour por UML
![Page 14: UML Historia Intro](https://reader033.fdocuments.mx/reader033/viewer/2022052901/5571f24149795947648c652d/html5/thumbnails/14.jpg)
Diagramas de UML
Diagrama de Casos de Uso Diagrama de Clases Diagrama de Objetos Diagramas de Comportamiento
Diagrama de Estados Diagrama de Actividad Diagramas de Interacción
Diagrama de Secuencia Diagrama de Colaboración
Diagramas de implementación Diagrama de Componentes Diagrama de Despliegue
II. Breve Tour por UML
![Page 15: UML Historia Intro](https://reader033.fdocuments.mx/reader033/viewer/2022052901/5571f24149795947648c652d/html5/thumbnails/15.jpg)
... 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
II. Breve Tour por UML
Los diagramas expresan gráficamente partes de un modelo
![Page 16: UML Historia Intro](https://reader033.fdocuments.mx/reader033/viewer/2022052901/5571f24149795947648c652d/html5/thumbnails/16.jpg)
4+1 vistas de Kruchten (1995)
Vista Lógica
Vista de Procesos
Vista de Distribución
Vista de Realización
Vista de los Casos de Uso
Organización de Modelos
Este enfoque sigue el browser de Rational Rose
II. Breve Tour por UML
![Page 17: UML Historia Intro](https://reader033.fdocuments.mx/reader033/viewer/2022052901/5571f24149795947648c652d/html5/thumbnails/17.jpg)
... Organización de Modelos
Propuesta de Rational Unified Process (RUP)
M. de Casos de Uso del Negocio (Business Use-Case Model) M. de Objetos del Negocio (Business Object Model) M. de Casos de Uso (Use-Case Model) M. de Análisis (Analysis Model) M. de Diseño (Design Model) M. de Despliegue (Deployment Model) M. de Datos (Data Model) M. de Implementación (Implementation Model) M. de Pruebas (Test Model)
II. Breve Tour por UML
![Page 18: UML Historia Intro](https://reader033.fdocuments.mx/reader033/viewer/2022052901/5571f24149795947648c652d/html5/thumbnails/18.jpg)
Paquetes en UML Los paquetes ofrecen un mecanismo general para
la organización de los modelos/subsistemas agrupando elementos de modelado
Se representan gráficamente como:
Nombre de paquete
II. Breve Tour por UML
![Page 19: UML Historia Intro](https://reader033.fdocuments.mx/reader033/viewer/2022052901/5571f24149795947648c652d/html5/thumbnails/19.jpg)
… Paquetes en UML Cada paquete corresponde a un submodelo
(subsistema) del modelo (sistema)
Un paquete puede contener otros paquetes, sin límite de anidamiento pero cada elemento pertenece a (está definido en) sólo un paquete
Una clase de un paquete puede aparecer en otro paquete por la importación a través de una relación de dependencia entre paquetes
II. Breve Tour por UML
![Page 20: UML Historia Intro](https://reader033.fdocuments.mx/reader033/viewer/2022052901/5571f24149795947648c652d/html5/thumbnails/20.jpg)
… Paquetes en UML
Todas las clases no son necesariamente visibles desde el exterior del paquete, es decir, un paquete encapsula a la vez que agrupa
El operador “::” permite designar una clase definida en un contexto distinto del actual
II. Breve Tour por UML
Práctica 1
![Page 21: UML Historia Intro](https://reader033.fdocuments.mx/reader033/viewer/2022052901/5571f24149795947648c652d/html5/thumbnails/21.jpg)
… Paquetes en UML
II. Breve Tour por UML
Práctica 1
![Page 22: UML Historia Intro](https://reader033.fdocuments.mx/reader033/viewer/2022052901/5571f24149795947648c652d/html5/thumbnails/22.jpg)
Diagrama de Casos de Uso
Casos de Uso es una técnica para capturar información de cómo un sistema o negocio trabaja, o de cómo se desea que trabaje
No pertenece estrictamente al enfoque orientado a objeto, es una técnica para captura de requisitos
II. Breve Tour por UML
![Page 23: UML Historia Intro](https://reader033.fdocuments.mx/reader033/viewer/2022052901/5571f24149795947648c652d/html5/thumbnails/23.jpg)
Ejemplos
II. Breve Tour por UML
Supervisor Verificar Situación del Cliente
Administrativo Preparar Catálogo Sis tema Inventario
Tipos de Venta
![Page 24: UML Historia Intro](https://reader033.fdocuments.mx/reader033/viewer/2022052901/5571f24149795947648c652d/html5/thumbnails/24.jpg)
… EjemplosEn el paquete tipos de venta:
II. Breve Tour por UML
Venta Normal
Venta en Rebajas
Venta en Ofertas
Vendedor
![Page 25: UML Historia Intro](https://reader033.fdocuments.mx/reader033/viewer/2022052901/5571f24149795947648c652d/html5/thumbnails/25.jpg)
… Ejemplos
II. Breve Tour por UML
Solic itar N ueva Tarjeta
Cliente Solicitar Préstamo
<<extend> >
[Tarjeta Caducada]
![Page 26: UML Historia Intro](https://reader033.fdocuments.mx/reader033/viewer/2022052901/5571f24149795947648c652d/html5/thumbnails/26.jpg)
… Ejemplos
II. Breve Tour por UML
Verificar Operación
Reintegro Cuenta Corriente
Cliente
Reintegro Cuenta de Crédito
<<include>>
<<include>>
Práctica 2
![Page 27: UML Historia Intro](https://reader033.fdocuments.mx/reader033/viewer/2022052901/5571f24149795947648c652d/html5/thumbnails/27.jpg)
Diagrama de Secuencia
II. Breve Tour por UML
: Encargado :WInPréstamos :Socio :Video :Préstamo
prestar(video, socio)
verificar situación socio
verificar situación video
registrar préstamo
entregar recibo
![Page 28: UML Historia Intro](https://reader033.fdocuments.mx/reader033/viewer/2022052901/5571f24149795947648c652d/html5/thumbnails/28.jpg)
Diagrama de Colaboración
Práctica 3
II. Breve Tour por UML
: Encargado
:WInPréstamos
:Socio
:Video
:Préstamo
1: prestar(video, socio)
2: verificar situación socio
3: verificar situación video
4: registrar préstamo5: entregar recibo
![Page 29: UML Historia Intro](https://reader033.fdocuments.mx/reader033/viewer/2022052901/5571f24149795947648c652d/html5/thumbnails/29.jpg)
Diagrama de Clases
El Diagrama de Clases es el diagrama principal para el análisis y diseño
Un diagrama de clases presenta las clases del sistema con sus relaciones estructurales y de herencia
La definición de clase incluye definiciones para atributos y operaciones
El modelo de casos de uso aporta información para establecer las clases, objetos, atributos y operaciones
II. Breve Tour por UML
![Page 30: UML Historia Intro](https://reader033.fdocuments.mx/reader033/viewer/2022052901/5571f24149795947648c652d/html5/thumbnails/30.jpg)
Ejemplos (Clase y Visibilidad)
A lum no
DNI : char[10]núm ero_exp : intnom bre : char[50]
alta()poner_nota(as ignatura : char *, año : int, nota : float)m atric ular(cursos : as ignatura, año : int)lis tar_ex pediente()
II. Breve Tour por UML
![Page 31: UML Historia Intro](https://reader033.fdocuments.mx/reader033/viewer/2022052901/5571f24149795947648c652d/html5/thumbnails/31.jpg)
… Ejemplos (Asociación)
ProfesorDepartam ento
10..1
direc tor
1
dirige
0..1
II. Breve Tour por UML
![Page 32: UML Historia Intro](https://reader033.fdocuments.mx/reader033/viewer/2022052901/5571f24149795947648c652d/html5/thumbnails/32.jpg)
… Ejemplos (Clase Asociación)
II. Breve Tour por UML
Empresa Empleado
1..** 1..**
trabajadoresempleador
Cargonombresueldo 0..1
1..*
superior
subordinado 1..*
0..1
![Page 33: UML Historia Intro](https://reader033.fdocuments.mx/reader033/viewer/2022052901/5571f24149795947648c652d/html5/thumbnails/33.jpg)
… Ejemplos (Generalización)
II. Breve Tour por UML
Trabajador
Directivo Administrativo Obrero
{ disjunta, completa }
![Page 34: UML Historia Intro](https://reader033.fdocuments.mx/reader033/viewer/2022052901/5571f24149795947648c652d/html5/thumbnails/34.jpg)
… Ejemplos
Prácticas 4-8
II. Breve Tour por UML
Avión militar Avión comercial
Avión de carga Avión de pasajeros
Motor Vendedor de billetes
Avión
1..4
1
1..4
1
Piloto
Reserva
n
1
n
1
Línea aérea
Vuelon1 n1
1..2
n
1..2
nn1 n1
1
n
1
n{ disjunta, completa }
{ disjunta, completa }
![Page 35: UML Historia Intro](https://reader033.fdocuments.mx/reader033/viewer/2022052901/5571f24149795947648c652d/html5/thumbnails/35.jpg)
Diagrama de Estados
c on prés tam os
sin préstam os
alta baja
pres tar devol ver [ núm ero_p rést amo s = 1 ]
pres tar
devolver[ núm ero_prés tam os > 1 ]
núm ero_prés tam os = 0
núm ero_prés tam os > 0
II. Breve Tour por UML
Socionúmero : intnombre : char[50]número_prestamos : int = 0
alta()baja()prestar(código_libro : int, fecha : date)devolver(código_libro : int, fecha : date)
![Page 36: UML Historia Intro](https://reader033.fdocuments.mx/reader033/viewer/2022052901/5571f24149795947648c652d/html5/thumbnails/36.jpg)
Diagrama de Actividad
Buscar Bebida
Poner café en filtro Añadir agua al depósito Coger taza
Poner filtro en máquina
Encender máquina
Café en preparación
Servir café
Coger zumo
Beber
[no hay café]
[hay café
[no zumo]
[hay zumo]
/ cafetera.On
indicador de fin
II. Breve Tour por UML
![Page 37: UML Historia Intro](https://reader033.fdocuments.mx/reader033/viewer/2022052901/5571f24149795947648c652d/html5/thumbnails/37.jpg)
Emitir billete
Pasajero Vendedor Airline
… Otro Ejemplo (con swim lines)
Solicitar pago Reservar plazas
Confirmar plaza reservadaPagar pasaje
Informar alternativas y precios
Verificar existencia vuelo
Dar detalles vuelo
Solicitar pasaje
Seleccionar vuelo
Práctica 9
II. Breve Tour por UML
![Page 38: UML Historia Intro](https://reader033.fdocuments.mx/reader033/viewer/2022052901/5571f24149795947648c652d/html5/thumbnails/38.jpg)
Diagrama Componentes
Control y Análisis
Comment
Acceso a BD
CommentRutinas de Coneccion
Comment
Interfaz de Terminal
Comment
Gestión de Cuentas
Comment
II. Breve Tour por UML
![Page 39: UML Historia Intro](https://reader033.fdocuments.mx/reader033/viewer/2022052901/5571f24149795947648c652d/html5/thumbnails/39.jpg)
Diagrama de Despliegue
Punto de Venta
Servidor Central
Terminal de Consulta
Gestión de Cuentas
Comment
Interfaz de Terminal
Comment
Rutinas de ConeccionComment
Rutinas de Coneccion
Comment
Interfaz de Terminal
Comment
Rutinas de Coneccion
Comment
Acceso a BD
Comment
Control y Análisis
Comment
Práctica 10
II. Breve Tour por UML
![Page 40: UML Historia Intro](https://reader033.fdocuments.mx/reader033/viewer/2022052901/5571f24149795947648c652d/html5/thumbnails/40.jpg)
Resumen
UML define una notación que se expresa como diagramas sirven para representar modelos/subsistemas o partes de ellos
El 80 por ciento de la mayoría de los problemas pueden modelarse usando alrededor del 20 por ciento de UML-- Grady Booch
II. Breve Tour por UML
![Page 41: UML Historia Intro](https://reader033.fdocuments.mx/reader033/viewer/2022052901/5571f24149795947648c652d/html5/thumbnails/41.jpg)