Title: UML
1UML
- Carlos Becerra C. cbecerra_at_inf.utfsm.cl
2Paradigma Orientado a Objetos Contenido
- Qué es orientación a objetos?
- Conceptos de OO
- Objetos, características de los objetos, clases e
instancias, herencia, polimorfismo - UML.
3Paradigma Orientado a Objetos Qué es
orientación a objetos?
- Una técnica de modelamiento
- Idea
- Las personas describen su entorno en base a
objetos (naturales, entidades hechas por el
hombre y productos), que son clasificados,
descritos, organizados, combinados, creados y
manipulados. - Modelar un sistema a través de objetos que
interactúan entre sí. - Elementos básicos
- objetos, clasificación, herencia,
y comunicación
4Paradigma Orientado a Objetos Qué es
orientación a objetos?
- Por qué la OO?
- Proximidad de los conceptos de modelación
respecto de las entidades del mundo real - Mejora captura y validación de requerimientos
- Acerca el dominio del problema y el dominio de
la solución - Los modelos integran el comportamiento estático y
dinámico del dominio del problema - Facilita construcción, mantenimiento y
reutilización
5Paradigma Orientado a Objetos Qué es
orientación a objetos?
- Por qué la OO?
- Conceptos comunes de modelación durante el
análisis, diseño e implementación - Facilita la transición entre distintas fases
- Disipa la barrera entre el qué y el cómo
- Favorece el desarrollo iterativo del sistema
6Paradigma Orientado a Objetos Conceptos de OO
- Objeto
- Es una entidad capaz de almacenar su estado y
ofrecer operaciones (comportamiento) para
examinar o modificar su estado. - Corresponden a entidades reales, ya sean físicas
o abstractas. - Ejemplos
7Paradigma Orientado a Objetos Conceptos de OO
- Estado y comportamiento
- Su estado se caracteriza por medio de atributos,
mientras sus comportamiento se representa
mediante operaciones (métodos o servicios). - Las operaciones son visibles sólo en términos
genéricos, no se detalla la forma en que se
realizan. - A veces su estado requiere conocer información de
otros objetos. En tal caso se establecen
asociaciones entre dichos objetos. Tipos
principales - Composición - A está compuesto por B, C, D, E
- Partición - A es construido por B, C, D, E
8Paradigma Orientado a Objetos Conceptos de OO
- Comunicación
- La unidad de comunicación entre objetos se
denomina mensaje - Un mensaje estimula la ocurrencia de cierto
comportamiento en el objeto receptor, el cual
comienza con la ejecución de una operación. - Una operación dentro de un objeto emisor genera
un mensaje de la forma - mensajedestino, operación, parámetros
- ,donde destino define el objeto receptor,
operación se refiere al método que recibe el
mensaje y parámetros proporciona información
requerida para el éxito de la operación.
9Paradigma Orientado a Objetos Conceptos de OO
- Otros....
- Encapsulamiento - La información contenida en un
objeto y sus operaciones sólo pueden manipularse
cuando el objeto recibe un estimulo. Por lo tanto
la información y el comportamiento de un objeto
están encapsuladas en él. - Ocultamiento de información - Para usar un objeto
sólo se necesita conocer las operaciones que
ofrece y no su implementación. - Polimorfismo - Permite que un número de
operaciones diferentes tengan el mismo nombre,
reduciendo el acoplamiento entre objetos, es
decir, hace cada objeto más independiente.
10Paradigma Orientado a Objetos Conceptos de OO
- Clases e instancias
- Una clase representa el template de un objeto
que, además de su comportamiento y estado,
describe su estructura interna. Los objetos de la
misma clase tienen los mismos atributos y
operaciones. - Una instancia corresponde a un objeto creado por
la clase. La clase describe la estructura de la
instancia, mas el estado de la instancia es
almacenado en ella y alterado por las operaciones
que se ejecutan en ella.
11Paradigma Orientado a Objetos Conceptos de OO
- Clases e instancias
- Nota es posible considerar una clase como la
descripción de la estructura de un objeto,
mientras la instancia como un estado particular
del objeto. - Ejemplos
- Persona - Pablo Neruda, Pacheco Altamirano,
Nicanor Parra - Libro El Tunel, 100 Años de Soledad
12Paradigma Orientado a Objetos Conceptos de OO
- Herencia
- Cuando se describen las clases de un modelo
pueden aparecer clases con una parte de
estructura común. En tal caso podemos extraer
estas características y ponerlas en una clase
separada, manteniendo las restantes en sus clases
originales. - Luego, si la clase B hereda de la clase A,
entonces todos las operaciones y atributos
descritas en A son parte de la clase B. - A partir de esta jerarquía de definen 2 nuevos
conceptos - Superclase colección de clases
- Subclase instancia de una clase
13Paradigma Orientado a Objetos UML (Unified
Modeling Language)
- Definiciones previas
- Modelo representación abstracta de una
especificación, un diseño o un sistema.
Generalmente, basada en una visión particular y
compuesta por uno o más diagramas. - Lenguaje de modelación es una forma de expresar
(notación) los distintos modelos generados
durante el proceso de desarrollo. Se compone de
sintaxis (conjunto de símbolos y diagramas
válidos) y semántica ( reglas de interpretación)
- Entregan soporte al desarrollo en relación con la
documentación de los productos de trabajo
asociados a los modelos elaborados.
14Paradigma Orientado a Objetos UML (Unified
Modeling Language)
- UML es un lenguaje de modelación de propósito
general para el modelado OO - Combina notaciones provenientes desde
- Modelado OO
- Modelado de datos
- Modelado de componentes
- Modelado de Workflows
15Paradigma Orientado a Objetos UML (Unified
Modeling Language)
- Inicios
- Diversos métodos de OO, con muchos aspectos en
común pero con diferentes notaciones - Dificultad en el aprendizaje, aplicación,
desarrollo y uso de herramientas - Pugna entre distintos enfoques
- Necesidad de una notación estándar!
16Paradigma Orientado a Objetos UML (Unified
Modeling Language)
- Historia de UML
- UML comenzó como el Método Unificado, con la
participación de Grady Booch y Jim Rumbaugh. Se
presentó en el OOPSLA95. - El mismo año se unió Ivar Jacobson, con lo cual
los Tres Amigos son socios en la compañía
Rational Software, que han desarrollado una
herramienta CASE Rational Rose. - Noviembre de 1997 - UML aprobado por el Object
Managment Group (OMG)
17Paradigma Orientado a Objetos UML (Unified
Modeling Language) - Historia
18Paradigma Orientado a Objetos UML (Unified
Modeling Language)
- Participantes de UML 1.0
- Rational Software (Grady Booch, Jim Rumbaugh y
Ivar Jacobson) - Digital Equipment
- Hewlett-Packard
- i-Logix (David Harel)
- IBM
- ICON Computing (Desmond DSouza)
- Intellicorp and James Martin co. (James Odell)
- MCI Systemhouse
- Microsoft
- ObjecTime
- Oracle
- Platinium Technology
- Sterling Software
- Taskon
- Texas Instruments
- Unisys
http//www.uml.org/Links-UML2Tools
19Paradigma Orientado a Objetos UML (Unified
Modeling Language)
- UML está asociado a un proceso de desarrollo
particular. No es una metodología. - Aumenta las posibilidades de aceptación
generalizada de la notación. - La esencia de un proceso apropiado admite mucha
variación y depende de muchos factores. - Provee constructores para una amplia gama de
sistemas y actividades
20Paradigma Orientado a Objetos UML (Unified
Modeling Language)
- UML centra el desarrollo en tres modelos
diferentes - Modelo funcional - diagramas de casos de uso,
describen el sistema desde la perspectiva del
usuario - Modelo objeto - diagrama de clases, describen la
estructura de un sistema en términos de objetos,
atributos, asociaciones y operaciones. - Modelo dinámico - diagramas de secuencia y de
estados, describen el comportamiento del sistema.
21Paradigma Orientado a Objetos UML (Unified
Modeling Language)
22Paradigma Orientado a Objetos UML (Unified
Modeling Language)
- Perspectiva
- UML será el lenguaje de modelación de objetos
estándar predominante los próximos años. - Participación de metodologías influyentes
- Participación de importantes empresas
- Aceptación como notación estándar por diferentes
organismos internacionales - Evidencias Herramientas soportan UML,
bibliografía, etc..