Departamento de Sistemas Informáticos y Computación
Universidad Politécnica de Valencia
Desarrollo de Software
Orientado a Objeto usando UML
Patricio Letelier Torres
[email protected]
Departamento Sistemas Informáticos y Computación (DSIC)
Universidad Politécnica de Valencia (UPV) - España
www.dsic.upv.es/~uml
Contenido
I.
Introducción
– Modelado de Software
– UML
II. Breve Tour por UML
III. El Paradigma Orientado a Objeto usando UML
– Fundamentos del Modelado OO
– Requisitos del software
– Interacción entre objetos
– Clases y relaciones entre clases
– Comportamiento de objetos
– Componentes
– Distribución y despliegue de componentes
– Object Constraint Language (OCL)
IV. Proceso de Desarrollo de SW basado en UML
V. Conclusiones
www.dsic.upv.es/~uml
1
2
www.dsic.upv.es/~uml
1
Departamento de Sistemas Informáticos y Computación
Universidad Politécnica de Valencia
I
Introducción
www.dsic.upv.es/~uml
Introducción: Modelado de SW
www.dsic.upv.es/~uml
3
4
www.dsic.upv.es/~uml
2
Departamento de Sistemas Informáticos y Computación
Universidad Politécnica de Valencia
Construcción de una casa para “fido”
I. Introducción: Modelado de SW
Puede hacerlo una sola persona
Requiere:
Modelado mínimo
Proceso simple
Herramientas simples
www.dsic.upv.es/~uml
5
Construcción de una casa
I. Introducción: Modelado de SW
Construida eficientemente y en un tiempo
razonable por un equipo
Requiere:
Modelado
Proceso bien definido
Herramientas más sofisticadas
www.dsic.upv.es/~uml
6
www.dsic.upv.es/~uml
3
Departamento de Sistemas Informáticos y Computación
Universidad Politécnica de Valencia
Construcción de un rascacielos
I. Introducción: Modelado de SW
www.dsic.upv.es/~uml
7
Claves en Desarrollo de SI
I. Introducción: Modelado de SW
Notación
Herramientas
Proceso
www.dsic.upv.es/~uml
8
www.dsic.upv.es/~uml
4
Departamento de Sistemas Informáticos y Computación
Universidad Politécnica de Valencia
Abstracción - Modelado Visual (MV)
I. Introducción: Modelado de SW
“El modelado captura las
partes esenciales del sistema”
Orden
Item
envío
Proceso de Negocios
www.dsic.upv.es/~uml
Sistema Computacional
9
II. Notación (Visual) - Beneficios
I. Introducción: Modelado de SW
Manejar la complejidad
Interface de Usuario
(Visual Basic,
Java, ..)
Lógica del Negocio
(C++, Java, ..)
Servidor de BDs
(C++ & SQL, ..)
Múltiples Sistemas
“Modelar el sistema
independientemente
del lenguaje de
implementación”
www.dsic.upv.es/~uml
Componentes
Reutilizados
Promover la Reutilización
10
www.dsic.upv.es/~uml
5
Departamento de Sistemas Informáticos y Computación
Universidad Politécnica de Valencia
Introducción: UML
www.dsic.upv.es/~uml
11
¿Qué es UML?
I. Introducción: UML
UML = Unified Modeling Language
Un lenguaje de propósito general para el
modelado orientado a objetos. Impulsado por el
Object Management Group (OMG, www.omg.org)
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)
www.dsic.upv.es/~uml
12
www.dsic.upv.es/~uml
6
Departamento de Sistemas Informáticos y Computación
Universidad Politécnica de Valencia
Situación de Partida
I. Introducción: UML
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
www.dsic.upv.es/~uml
13
I. Introducción: UML
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
www.dsic.upv.es/~uml
14
www.dsic.upv.es/~uml
7
Departamento de Sistemas Informáticos y Computación
Universidad Politécnica de Valencia
Historia de UML
2005?
2003
2000
1999
1998
Nov ‘97
UML 2.0
UML 1.5
UML 1.4
UML 1.3
UML 1.2
UML aprobado
por el OMG
I. Introducción: UML
Revisiones menores
www.dsic.upv.es/~uml
15
I. Introducción: UML
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
www.dsic.upv.es/~uml
16
www.dsic.upv.es/~uml
8
Departamento de Sistemas Informáticos y Computación
Universidad Politécnica de Valencia
UML “aglutina” enfoques OO
I. Introducción: UML
Rumbaugh
Booch
Jacobson
Odell
Shlaer-Mellor
Object life cycles
UML
Meyer
Pre- and Post-conditions
Harel
State Charts
Gamma et. al.
Frameworks, patterns,
notes
Embly
Singleton classes
Wirfs-Brock
Responsabilities
Fusion
Operation descriptions,
message numbering
www.dsic.upv.es/~uml
17
I. Introducción: UML
Aspectos Novedosos
Definición semi-formal del Metamodelo de UML
Mecanismos de Extensión en UML:
Stereotypes
Constraints
TaggedValues
Permiten adaptar los elementos de modelado,
asignándoles una semántica particular
www.dsic.upv.es/~uml
18
www.dsic.upv.es/~uml
9
Departamento de Sistemas Informáticos y Computación
Universidad Politécnica de Valencia
I. Introducción: UML
Inconvenientes en UML
Definición del proceso de desarrollo usando UML. UML
no es una metodología
No cubre todas las necesidades de especificación de un
proyecto software. Por ejemplo, no define los
documentos textuales
Ejemplos aislados
“Monopolio de conceptos, técnicas y métodos en torno
a UML y el OMG”
www.dsic.upv.es/~uml
19
I. Introducción: UML
Perspectivas de UML
UML es el lenguaje de modelado orientado a objetos
estándar predominante ahora y en los próximos años
Razones:
• Participación de metodólogos influyentes
• Participación de importantes empresas
• Estándar del OMG
Evidencias:
• Herramientas que proveen la notación UML
•
• Congresos, cursos, “camisetas”, etc.
“Edición” de libros (más de 300 en www.amazon.com)
www.dsic.upv.es/~uml
20
www.dsic.upv.es/~uml
10
Departamento de Sistemas Informáticos y Computación
Universidad Politécnica de Valencia
II
Breve Tour por UML
www.dsic.upv.es/~uml
21
II. Breve Tour por UML
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 completa-
mente 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
www.dsic.upv.es/~uml
22
www.dsic.upv.es/~uml
11
Departamento de Sistemas Informáticos y Computación
Universidad Politécnica de Valencia
II. Breve Tour por UML
... Modelos y Diagramas
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
www.dsic.upv.es/~uml
23
Diagramas de UML 1.5
II. Breve Tour por 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
www.dsic.upv.es/~uml
24
www.dsic.upv.es/~uml
12
Departamento de Sistemas Informáticos y Computación
Universidad Politécnica de Valencia
II. Breve Tour por UML
... Diagramas de UML
Los diagramas expresan gráficamente partes de un modelo
Use Case
Use Case
Diagramas de
Diagrams
Diagrams
Secuencia
Scenario
Scenario
Diagramas de
Diagrams
Diagrams
Colaboración
Scenario
Scenario
Diagramas de
Diagrams
Diagrams
Estados
State
State
Diagramas de
Diagrams
Diagrams
Clases
Use Case
Use Case
Diagramas de
Diagrams
Diagrams
Casos de Uso
State
State
Diagramas de
Diagrams
Diagrams
Objetos
State
State
Diagramas de
Diagrams
Diagrams
Componentes
Modelos
Diagramas de
Actividad
Component
Component
Diagramas de
Diagrams
Diagrams
Distribución
www.dsic.upv.es/~uml
25
II. Breve Tour por UML
Organización de Modelos
4+1 vistas de Kruchten (1995)
Vista Lógica
Vista de
Procesos
Vista de los
Casos de Uso
Vista de
Realización
Vista de
Distribución
Este enfoque sigue el browser de Rational Rose
www.dsic.upv.es/~uml
26
www.dsic.upv.es/~uml
13
Departamento de Sistemas Informáticos y Computación
Universidad Politécnica de Valencia
... O
Comentarios de: Curso Desarrollo de Software Orientado a Objetos usando UML (0)
No hay comentarios