A.O.O
A.O.O
Permite obtener:
Definicin de Clases..
Relacin ente clases.
Funcionamiento Interno de las clases (atributos y
mtodos).
Mecanismo de comunicacin entre clases.
PRODUCTO A.O.O
Se obtiene un modelo de AOO, conformado por una
representacin grfica que define atributos de la
clase, las relaciones, comportamientos y la
comunicacin entre clases. As como una
representacin del comportamiento de la clase en
el tiempo.
CONTENIDO PROGRAMTICO
Definicin
Origen
Diagramas
Diagrama de Casos de Uso
Diagrama de Clases
Relaciones de Asociacin
Relaciones de Todo/Parte
Relaciones de Generalizacin/Especializacin
Diagrama de Colaboracin
Diagrama de Secuencia
Diagrama de Paquetes
Tarjetas CRC (Clases Responsabilidades - Colaboradores)
QU ES UML?
Lenguaje Unificado de Modelado
Permite Visualizar, Especificar, Construir, y Documentar
software orientado a objetos.
Divide el sistema en un conjunto de diagramas que a su
vez representan una vista del proyecto.
Todos
los diagramas muestran en conjunto la
arquitectura del proyecto.
ORIGEN
La notacin UML se deriva y unifica las tres
metodologas de anlisis y diseo Orientado a objetos:
Grady Booch, James Rumbaugh e Ivar Jacobson.
El desarrollo de UML comenz a finales de 1994 cuando
Grady Booch y Jim Rumbaugh de Rational Software
Corporation empezaron a unificar sus mtodos. A finales
de 1995, Ivar Jacobson y su compaa Objectory se
incorporaron a Rational en su unificacin, aportando el
mtodo ISOO (Ingeniera del Software Orientada a
Objetos).
Las metodologas de Booch y Rumbaugh se enfocan
hacia el modelado de los objetos que conforman el
sistema, su relacin y colaboracin.
ORIGEN
La metodologa de Jacobson se enfoca en el usuario. Todo
en su mtodo se deriva de los casos de uso.
UML se ha ido fomentando y aceptando como estndar
desde la formacin de OMG (Object Management
Group-Grupo de Gestin de Objetos).
En
1997 UML 1.1 fue aprobada por la OMG
convirtindose en la notacin estndar para el anlisis y
el diseo orientado a objetos.
En la actualidad ya se public la revisin 2.0.
PRINCIPIOS
La forma como vemos el problema tiene una profunda
influencia en la forma como acometemos el problema y
le damos solucin al mismo.
Para modelar un sistema complejo no es suficiente un
nico modelo se requieren mltiples modelosdonde
cada uno representa una vista del sistema; estos
modelos se complementan entre si.
Cualquier modelo puede ser
diferentes grados de precisin.
representado
con
DIAGRAMAS
Notacin:
Son representados por un valo y nombrados siempre con verbos en
infinitivo. Ejemplo: Inscribir a Curso.
Inscribir a Curso
Notacin:
Representados por una figura de alambre de una persona.
del
sistema
partir
de
las
TARJETAS C-R-C
Tarjetas Clase-Responsabilidad-Colaborador:
Tarjetas que permiten representar clases.
Estn divididas en tres secciones:
Primera seccin: Identificador de la clase.
Segunda
Seccin:
Responsabilidades
(cualquier cosa que conoce o hace) de la clase
(Atributos, Mtodos relevantes).
Tercera Seccin: Colaboradores de la clase.
(Clases necesarias para proveer a una clase
con lo necesario para completar una
responsabilidad, es decir, solicitud de
informacin o solicitud de alguna accin)
IDENTIFICACIN DE CLASES
Un objeto potencial debe satisfacer las siguientes caractersticas
para ser considerado posible miembro del modelo:
IDENTIFICACIN DE CLASES
Clase Dispositivo: Entidades externas (sensores, motores, teclado).
Clase Propiedad: Representa alguna propiedad importante del entorno
(Ejemplo: Establecimiento de crditos dentro del contexto de una
aplicacin de prstamos hipotecarios)
Clase interaccin: Modelan
Reservacin de libros)
interacciones
entre
objetos.
(Ejemplo:
DIAGRAMA DE CLASES
Qu es ?
Modela los conceptos del dominio de la
identificando sus clases y relaciones.
Componentes:
DIAGRAMA DE CLASES
Clases
Representada por un rectngulo con tres divisiones:
Nombre Clase
Atributos
Operaciones
DIAGRAMA DE CLASES
Atributos
Pueden ser de tres tipos (definen el grado de comunicacin y la visibilidad
de los atributos con el entorno).
Public (+): Indica que el atributo ser visible tanto dentro como fuera de la
clase.
Private (-): Indica que el atributo slo ser accesible desde la clase.
DIAGRAMA DE CLASES
Mtodos
Presentan tres caractersticas:
Public (+): Indica que el mtodos ser visible tanto dentro como fuera de la
clase.
Private (-): Indica que el mtodo slo ser accesible desde la clase.
DIAGRAMA DE CLASES
Relaciones entre Clases
Puede ser:
1 (uno y slo uno)
01 (cero o uno)
NM (desde N hasta M)
* (cero o varios)
0* (cero o varios)
1* (uno o varios)
DIAGRAMA DE CLASES
Relaciones entre Clases
Herencia (especializacin):
Indica que una subclase hereda mtodos y atributos de una super clase.
La subclase adems de poseer sus propios mtodos y atributos, poseer las
caractersticas visibles de la superclase (Public y Protected).
Simbologa
DIAGRAMA DE CLASES
Relaciones entre Clases
Agregacin:
Se da cuando una clase describe objetos que agregan otros objetos. (Todo
Parte)
Simbologa
DIAGRAMA DE CLASES
Relaciones entre Clases
DIAGRAMA DE CLASES
DIAGRAMA DE COLABORACIN
Qu es un Diagrama de Colaboracin?
Notacin
DIAGRAMA DE COLABORACIN
DIAGRAMA DE SECUENCIA
Qu es un diagrama de secuencia?
Modela la secuencia lgica, a travs del tiempo, de los mensajes entre las
instancias (objetos).
Notacin:
DIAGRAMA DE SECUENCIA
Notacin:
DIAGRAMA DE SECUENCIA
DIAGRAMA DE PAQUETES
Qu es un Paquete?
DIAGRAMA DE PAQUETES
Representacin de un Paquete
DIAGRAMA DE PAQUETES
Qu es un Diagrama de Paquetes?
Diagrama que representa cmo estn organizados los elementos del modelo
as como las dependencias entre esos paquetes.
El uso ms comn de los diagramas de paquete es para organizar diagramas
de casos de uso y diagramas de clases, aunque el uso de los diagramas de
paquete no se limita a los elementos UML.