2. UML Es un lenguaje estándar para visualizar,
especificar, construir y documentar los artefactos de un
sistema de software.
Consiste en un conjunto integrado de diagramas
definidos para ayudar a los desarrolladores de software
y de sistemas a realizar las tareas de:
Especificación
Visualización
Diseño Arquitectónico
Construcción
Simulación y pruebas
Documentación
2
3. Un objeto es una entidad discreta con identidad, estado y un
comportamiento invocable.
Objeto = estado + comportamiento + identidad.
Un objeto es una instancia de una clase.
3
4. ESTADO
Agrupa los valores de todos los atributos en un momento
dado donde es una pieza de información que califica el
objeto. En esencia un atributo es una propiedad o
característica de una clase y describe un rango de valores que
la propiedad podrá contener.
MULTIPLES INSTANCIAS DE UN OBJETO
Es un diagrama de clases se pueden representar
múltiples instancias mediante iconos múltiples.
EVOLUCION DE UN OBJETO
El estado de un objeto evoluciona con el tiempo.
4
5. COMPORTAMIENTO
Es el conjunto de capacidades y aptitudes de un objeto y
describe sus acciones y reacciones. Cada componente del
comportamiento individual se denomina operación. Una
operación es algo que la clase puede realizar o que puede
hacer en una clase.
IDENTIDAD
Es la propiedad que diferencia un objeto de otro objeto
similar .Hace posible distinguir cualquier objeto sin
ambigüedad, la diferencia de dos objetos con tributos
idénticos.
5
6. Vehículo
Animal
Punto
Figura (1,3)
(2,2) (5,2.5)
(2,1)
6
7. Formato gráfico de una clase
Nombre de la clase
Zona de atributos
Zona de operaciones
7
8. Atributo = valor que describe un objeto.
Son valores de datos asociados a los objetos de una clase al cual
describen. Están fuertemente asociados con la clase de objetos que
los contienen, de tal forma que no tienen existencia independiente o
identidad de objeto.
Cada atributo identificado debe ser tratado como una unidad.
Atributos identificadores: son atributos que identifican
unívocamente un objeto de una clase.
Atributos derivados: son atributos cuyo valor puede obtenerse a
partir de los valores de otros atributos.
8
9. Operación = es algo que puede realizar o que puede
hacer una clase.
Una operación define un servicio ofrecido por un objeto junto con la
información que debe suministrarse cuando es invocado (nombre,
argumentos de entrada/salida).
Algunas operaciones pueden asumirse que existen para cada clase
de objetos sin identificarlas formalmente.
Estas son llamadas operaciones implícitas. Las operaciones
implícitas más importantes son:
Crear, Destruir, Leer, y Actualizar.
9
10. Define que objetos puede acceder y utilizar los atributos y
operaciones de un objeto dado.:
Símbolo Visibilidad
+ Público
- Privado
# Protegido
~ Paquete
10
11. Una asociación se forma al unir dos clases con una
línea
Puede tener nombre y se coloca sobre la línea (se
lee de izquierda a derecha y suele ser un verbo)
Puede tener los roles que juega cada clase en la
asociación
11
12. Puede tener Multiplicidad (*, 0..1, 1..*)
Puede tener restricciones entre { }
Se puede indicar el sentido de la lectura
12
13. Puede tener navegación direccional (sólo es posible
la navegación en un sentido)
Es posible que una clase se asocie consigo misma
(asociación reflexiva)
13
14. Indica que una subclase hereda los métodos y atributos
especificados por una Super Clase, por ende la Subclase
además de poseer sus propios métodos y atributos,
poseerá las características y atributos visibles de la
Super Clase.
Clase: Persona
14
15. Es una relación todo-partes donde los objetos de una clase
son compuestos por objetos de otra. Por ejemplo un
automóvil está compuesto por carrocería, motor, ruedas, etc.
Una composición es una forma de asociación más fuerte en
la cual el compuesto es responsable de gestionar sus
partes, por ejemplo asignación y des asignación.
Ejemplo: una Colección de obras musicales puede contener
diversas obras, pero la misma obra puede pertenecer a más
de una colección.
15
16. Representa un tipo de relación muy particular, en la que
una clase es instanciada (su instanciación es dependiente de
otro objeto/clase).
El uso más particular de este tipo de relación es para denotar la
dependencia que tiene una clase de otra.
16
17. Ocultación de detalles
- ¿Cómo funciona? Pantalla
- ¡A quién le
importa!
Teclado
17
18. Permite al que modela hablar el lenguaje del cliente.
Evita asignar identificadores artificiales para distinguir las
operaciones.
Contribuye a la reutilización de código.
Ejemplo: Operación “Abrir …”
Puerta Botella Candado
Abrir() Abrir() Abrir()
Abrir ...
18