Documentos de Académico
Documentos de Profesional
Documentos de Cultura
DesarrolloDiagram As
DesarrolloDiagram As
Diagrama de Despliegue de alto nivel Diagrama de Despliegue a nivel de detalle Casos de Uso Diagrama de Dominio Diagramas de clases
Casos de uso
Representa la funcionalidad que ofrece el sistema en lo que se refiere a su interaccin externa. Representa las funciones que un sistema puede ejecutar Elementos bsicos
Actores Casos de Uso Asociaciones
Casos de uso
Actores
Un actor es algo con comportamiento, como una persona (identificada por un rol), un sistema informatizado u organizacin, y que realiza algn tipo de interaccin con el sistema.
Casos de Uso
Un caso de uso es una descripcin de la secuencia de interacciones que se producen entre un actor y el sistema, cuando el actor usa el sistema para llevar a cabo una tarea especfica. Expresa una unidad coherente de funcionalidad
Casos de uso
Asociaciones
Hay una asociacin entre un actor y un caso de uso si el actor interacta con el sistema para llevar a cabo el caso de uso.
Tipos de Asociaciones
<<include>> Un caso de uso base incorpora explcitamente a otro caso de uso en un lugar especifico en dicho caso base. Se suele utilizar para encapsular un comportamiento parcial comn a varios casos de uso.
Diagrama de clase
Es el ms utilizado y ms conocido de los diagramas orientados a objetos. Es la fuente de generacin de cdigo. El diagrama de clase representa clases, sus partes y la forma en la que las clases de los objetos estn relacionados con otro. Una clase es una definicin de un tipo de objeto.
Clases
Las clases son descripciones de un juego de objetos con caractersticas, comportamiento, relaciones y semnticas comunes. Se usan para modelar un juego de conceptos o entidades.
Se denotan con un rectngulo con compartimentos. En ellos se ponen el nombre, los atributos, las operaciones y adems se pueden usar para anotar otras propiedades del modelo como son (reglas del negocio, responsabilidades, excepciones, etc.) Pueden tener interfaces para especificar conjuntos de operaciones proporcionadas a su ambiente. Todas las operaciones deben estar asociadas a mtodos. Pueden tener relaciones de generalizacin con otras clases.
Atributos
Son descripciones de caractersticas, se usan para modelar informacin asociada con una entidad
Operaciones
Son descripciones del comportamiento, se usan para modelar los servicios u operaciones asociados con una entidad, esto es, lo que una entidad puede hacer
Interfaces
Son clases que definen un juego de operaciones externas accesibles pero sin mtodos. Se usan para modelar una serie de operaciones que definen un servicio que puede ser ofrecido por diferentes clases. Se representan como clases pero con el estereotipo <<interface>>. Solo contienen operaciones pblicas
Diagrama de Objetos
La clase define las reglas; los objetos expresan los hechos. La clase define que puede ser; el objeto describe que es. Se considera un caso especial del diagrama de clases. Puede construirse junto con el de clases. Describe una instancia de un diagrama de clase en un momento en particular. Este diagrama contiene objetos y ligas.
Modelando Clases
La representacin de una clase es un rectngulo con 3 divisiones:
El del nombre define la clase, (un tipo de objeto). El de los atributos contiene la definicin de los datos. El de las operaciones contiene la definicin de cada comportamiento soportado por este tipo de objeto.
Ejemplo
La siguiente figura muestra un vuelo de una aerolnea modelado como una clase UML.
Nombre
Atributos
Operaciones
Modelando un atributo
Un atributo describe una pieza de informacin que un objeto tiene o conoce de s mismo. Para poder usar esta informacin se debe asignar un nombre y especificar el tipo de dato. El tipo de dato puede ser primitivo o tipo de dato abstracto (definido) Cada atributo puede tener reglas que limiten los valores asignados a ste. Se puede usar un valor de default para protegerlo.
Visibilidad de un atributo
La definicin de un atributo debe especificar que otros objetos los pueden ver. La visibilidad puede ser:
Public (+) permite el acceso a objetos de las otras clases. Private (-) limita el acceso a la clase, solo operaciones de la clase tienen acceso. Protected (#) permite el acceso a subclases. En el caso de generalizacin (herencia), las subclases deben tener acceso a los atributos y operaciones de la superclase, sino no pueden heredar. Package (~) permite el acceso a los otros objetos en el mismo paquete.
Visibilidad
- compaa:character = espacios
{1 a 30 alfabticos, .
Ejemplo
totalOrderAmount totalOrderAmount (order: integer) totalOrderAmount (order: integer) : Dollar totalOrderAmount (order: integer) : {El total es la suma de cada item (p.u. x cantidad) + totalOrderAmount (order: integer) : {El total es la suma .
Asociaciones
Se indica el rol y la multiplicidad. Un vuelo est asociado con un avin y un avin puede tener asociados ninguno varios nmeros de vuelo.
Direccin
La direccin en las flechas de la asociacin determinan en que direccin puede recorrerse una asociacin en el momento de la ejecucin. Una asociacin sin flechas significa que se puede ir de un objeto a otro y viceversa. Por ejemplo
El objeto Reservacin puede recuperar el objeto Cliente. Tambin implica que del objeto Cliente puede recuperar el juego de reservaciones para ese cliente.
1.* Reservacin
hecha para
1 Cliente
Supongamos que los requerimientos para un sistema de reservaciones requieren que desde una reservacin, el sistema pueda recuperar el cuarto
1.* Reservacin hecha para 1 Cuarto
Clase Asociacin
Cuando se modela una asociacin entre clases, a veces es necesario incluir otra clase que contiene informacin valiosa acerca de la relacin. Se representa como una clase normal solo que la lnea que la une con la lnea que conecta las asociaciones primarias es punteada. La siguiente figura muestra una clase asociacin para el ejemplo de los vuelos.
La asociacin entre la clase Flight y FrequentFlyer es a travs de una clase llamada MileageCredit. Esto significa que debe haber una instancia en esta clase cuando alguna instancia de la clase Flight se asocie con una instancia de la clase FrequentFlyer
Ejercicio
AGREGACIN BASICA
Es un tipo especial de asociacin utilizado para modelar una relacin Todo con sus partes. Por ejemplo, Auto es una entidad Todo y Llanta es una parte del Auto. Una asociacin con una agregacin indica que una clase es parte de otra clase. En este tipo de asociacin, la clase hijo puede sobrevivir sin su clase padre.
Para representar una relacin de agregacin, se dibuja una lnea slida de la clase padre (total) a la clase hijo (parte), y con un diamante en el lado de la clase padre. Una llanta puede existir sin automvil
AGREGACIN/COMPOSICIN
En este caso el ciclo de vida de una instancia de la clase hijo depende del ciclo de vida de una instancia de la clase padre. A diferencia de la agregacin bsica, para representarla el diamante no es hueco. Una instancia de la clase Company debe tener al menos una en la clase Departamento. En este tipo de relaciones, si una la instancia Company se elimina, automticamente la instancia Departamento tambin se elimina. Otra caracterstica importante es que la clase hijo solo puede relacionarse con una instancia de la clase padre.
Generalizacin
Son asociaciones entre elementos ms generales y elementos ms especficos, en los cuales stos ltimos son consistentes totalmente con los primeros, por lo que heredan las caractersticas proporcionadas por lo elementos generales y adems pueden aumentar informacin. Este tipo de relacin tambin se conoce como herencia. En una generalizacin no hay multiplicidad ni roles. Una (Asociacin define las reglas de cmo los objetos se pueden relacionar entre ellos.) La visibilidad protected permite que solo objetos de la misma clase subclase vean el elemento.
Elementos de la generalizacin
Para dibujarla, hay que definir:
Superclase: es una clase que contiene alguna combinacin de atributos, operaciones y asociaciones que son comunes a dos o ms tipos de objetos que comparten el mismo propsito. Subclase: es una clase que contiene una combinacin de atributos, operaciones y asociaciones que son nicas a un tipo de objeto definido por una superclase. La superclase es reutilizada por la subclase.
Herencia
Perro
Collie
Boxer
Dalmata
Paquetes
Es un elemento organizador que proporciona UML al dividir el sistema en paquetes lo hace ms fcil de entender.
Interfaces
Una clase tiene una instancia de su tipo, mientras que una interface debe tener al menos una clase para implantarla. En UML, una interface es considerada como una especializacin de una clase. Una interface se dibuja como una clase, pero en el compartimento superior del rectngulo aparece un texto una inicial que indica que se trata de una interface y no de una clase. Una interface no es una clase.