Você está na página 1de 50

UNIVERSIDAD NACIONAL DE TRUJILLO ESCUELA DE INGENIERIA DE SISTEMAS Ciclo: I-2011 UNIDAD No.

1 DIAGRAMAS UML
1

CONTENIDO
1) Modelado de Casos de uso 2) Modelado de Diagrama de Clases 3) Modelado de Diagrama de Objetos 4) Modelado de Diagrama de Secuencias 5) Modelado de Diagrama de colaboracin

Modelado de Casos de uso


Un caso de uso especifica el comportamiento deseado del sistema. Representan los requisitos funcionales del sistema. Un caso de uso especifica una secuencia de acciones, incluyendo variantes, que el sistema puede ejecutar y que produce un resultado observable de valor para un actor particular.

Describen qu hace el sistema, no cmo lo hace.

Modelado de Casos de uso


OTRAS DEFINICIONES Describe un conjunto de interacciones entre actores externos y el sistema en consideracin orientadas a satisfacer un objetivo de un actor. [D. Bredemeyer] Es una coleccin de posibles secuencias de interacciones entre el sistema en discusin y sus actores externos, relacionado con un objetivo particular. [A. Cockburn] Es una descripcin de un conjunto de secuencias de acciones, incluyendo variantes, que ejecuta un sistema para producir un resultado observable de valor para un actor [UML]

Modelado de Casos de uso


1) Tcnica de recoleccin y especificacin de 2)

3)
4) 5)

6)

requisitos. Fciles de comprender/validar por los usuarios. Guan todo el proceso de desarrollo. Ayudan a la planificacin/desarrollo incremental. Tradicionalmente ligados a la orientacin a objetos pero no obligatorio Ayudan a determinar la interfaz de usuario.

Modelado de Casos de uso


ACTORES Un actor representa un conjunto coherente de roles que juegan los usuarios de los casos de uso al interaccionar con el sistema.
Roles jugados por personas, dispositivos, u

otros sistemas. No forman parte del sistema Inician la ejecucin de los casos de uso

Modelado de Casos de uso


ACTORES Un usuario puede jugar diferentes roles. En la realizacin de un caso de uso pueden intervenir diferentes actores. Un actor puede intervenir en varios casos de uso. Identificar casos de uso mediante actores y eventos externos. Un actor necesita el caso de uso y/o participa en l.

Modelado de Casos de uso


ACTORES Cockburn distingue dos tipos de actores:

Primarios: Requieren al sistema el cumplimiento de un objetivo. Secundarios: El sistema necesita de ellos para satisfacer un objetivo.

Modelado de Casos de uso


PROPIEDADES DE LOS CASOS DE USO
1. Son iniciados por un actor con un objetivo en mente y

2. 3. 4. 5.

es completado con xito cuando el sistema lo satisface y si el caso de uso se inicia automticamente? Actor Sistema o Tiempo Puede incluir secuencias alternativas que llevan al xito y fracaso en la consecucin del objetivo. El sistema es considerado como una caja negra y las interacciones se perciben desde fuera. El conjunto completo de casos de uso especifica todas las posibles formas de usar el sistema, esto es el comportamiento requerido.

Modelado de Casos de uso


Encontrar los casos de uso Es til encontrar primero los actores Se puede diferenciar entre (Martin Fowler: UML gota a gota): Objetivos del usuario: formatear un documento Interacciones del sistema: definir un estilo, mover un estilo a otro documento Gua til: primero buscar los objetivos del usuario, y luego cubrir cada objetivo con interacciones del sistema.

Modelado de Casos de uso


Escenarios y Casos de Uso Un caso de uso describe un conjunto de secuencias de interacciones o escenarios: flujo principal y flujos alternativos o excepcionales. Un escenario es una instancia de un caso de uso. Escenarios principales vs. Escenarios secundarios. Especificacin con diagramas de secuencia.

Modelado de Casos de uso


Descripcin de un caso de uso
En cada momento de la especificacin de caso de uso, una representacin (Larman): Descripcin breve (prrafo en lenguaje natural) Descripcin informal (prrafo en lenguaje natural para escenario principal y alternativos) Descripcin completa (plantilla) Describir el flujo de evento Texto estructurado informal Texto estructurado formal (pre y postcondiciones) Notaciones grficas: Diagramas de Secuencia Debe ser legible y comprensible para un usuario no experto. Debe indicarse: inicio y final, actores, objetos que fluyen, flujo principal y flujos excepcionales.

Modelado de Casos de uso


Organizacin de Casos de uso Tres tipos de relaciones: Generalizacin Un caso de uso hereda el comportamiento significado de otro. Inclusin Un caso de uso base incorpora explcitamente comportamiento de otro en algn lugar de secuencia. Extensin Un caso de uso base incorpora implcitamente comportamiento de otro caso de uso en el lugar especificado indirectamente por este otro caso uso

el su

el

de

Modelado de Casos de uso


EJEMPLO

Modelado de Casos de uso


Relacin de extensin El caso de uso base incluye una serie de puntos de extensin. Sirve para modelar la parte opcional del sistema un subflujo que slo se ejecuta bajo ciertas condiciones varios flujos que se pueden insertar en un punto Ejemplo caso de uso Hacer Pedido: Include (Validar usuario). Recoger los items del pedido del usuario. (establecer prioridad). Enviar pedido para ser procesado.

Modelado de Casos de uso


Obtencin de casos de uso 1) Identificar los usuarios del sistema. 2) Encontrar todos los roles que juegan los usuarios y que son relevantes al sistema. 3) Para cada rol identificar todas las formas (objetivos) de interactuar con el sistema. 4) Crea un caso de uso por cada objetivo. 5) Estructurar los casos de uso. 6) Revisar y validar con el usuario.

Modelado de Casos de uso


EJEMPLO

Modelado de Casos de uso


EJEMPLO

Modelado de Casos de uso

Modelado de Diagrama de Clases


DIAGRAMA DE CLASES Un diagrama de clases es un tipo de diagrama esttico que describe la estructura de un sistema mostrando sus clases, atributos y las relaciones entre ellos.

Los diagramas de clases son utilizados durante el proceso de anlisis y diseo de los sistemas, donde se crea el diseo conceptual de la informacin que se manejar en el sistema, y los componentes que se encargarn del funcionamiento y la relacin entre uno y otro.
En un diagrama de clases se pueden distinguir principalmente dos elementos: clases y sus relaciones.

Modelado de Diagrama de Clases


CLASES: La clase es la unidad bsica que encapsula toda la informacin de un objeto a travs de la cual se puede modelar el entorno en estudio.

En UML, una clase es representada por un rectngulo que posee tres divisiones:

Modelado de Diagrama de Clases

Modelado de Diagrama de Clases


En donde: 1) El rectngulo superior contiene el nombre de la clase 2) El rectngulo intermedio contiene los atributos (o variables de instancia) que caracterizan a la clase (pueden ser private, protected o public). 3) El rectngulo inferior contiene los mtodos u operaciones, los cuales son la forma como interacta el objeto con su entorno (dependiendo de la visibilidad: private, protected o public).

Modelado de Diagrama de Clases


Por ejemplo, se puede representar una clase denominada Figura que contiene dos atributos (lado1 y lado2) y 3 mtodos (mtodo constructor Figura, mtodo rea y mtodo permetro), de la siguiente manera:

Modelado de Diagrama de Clases


Los mtodos u operaciones de una clase son la forma en cmo sta interacta con su entorno, stos pueden tener las caractersticas siguientes: public (+,): Indica que el mtodo ser visible tanto dentro como fuera de la clase, es decir, es accesible desde todos lados. private (-,): Indica que el mtodo slo ser accesible desde dentro de la clase (slo otros mtodos de la clase lo pueden utilizar) protected (#,): Indica que el mtodo no ser accesible desde fuera de la clase, pero si podr ser utilizado por mtodos de la clase y de sus subclases

Modelado de Diagrama de Clases


RELACIONES: 1) Herencia (Especializacin/Generalizacin):

Indica que una clase (clase derivada) hereda los mtodos y atributos especificados por una clase (clase base), por lo cual una clase derivada adems de tener sus propios mtodos y atributos, podr acceder a las caractersticas y atributos visibles de su clase base (public y protected).

Modelado de Diagrama de Clases


EJEMPLO

Modelado de Diagrama de Clases


En este ejemplo se especifica que las clase Alumno y Profesor heredan de la clase Persona, es decir, Alumno y Profesor podrn acceder a las caractersticas de Persona. Tambin puede tener su respectiva diferenciacin, ya que un Alumno puede obtener sus notas previa evaluacin realizada por parte de un Profesor.

Modelado de Diagrama de Clases


Composicin:
La composicin es un tipo de relacin esttica, en donde el tiempo de vida del objeto incluido est condicionado por el tiempo de vida del que lo incluye (el objeto base se construye a partir del objeto incluido, es decir, es parte/todo).

Modelado de Diagrama de Clases


EJEMPLO

Modelado de Diagrama de Clases


Agregacin:

La agregacin es un tipo de relacin dinmica, en donde el tiempo de vida del objeto incluido es independiente del que lo incluye (el objeto base utiliza al incluido para su funcionamiento).

Modelado de Diagrama de Clases


EJEMPLO

Modelado de Diagrama de Clases


Dependencia o Instanciacin (uso): Representa un tipo de relacin muy particular, en la que una clase es instanciada (su instanciacin es dependiente de otro objeto/clase). El uso ms particular de este tipo de relacin es para denotar la dependencia que tiene una clase de otra, como por ejemplo una aplicacin grafica que instancia una ventana (la creacin del Objeto Ventana est condicionado a la instanciacin proveniente desde el objeto Aplicacin).

Modelado de Diagrama de Clases


EJEMPLO

Modelado de Diagrama de Clases


Asociacin: La relacin entre clases conocida como Asociacin, permite asociar objetos que colaboran entre s. Cabe destacar que no es una relacin fuerte, es decir, el tiempo de vida de un objeto no depende del otro.

Modelado de Diagrama de Clases


Los elementos adicionales que pueden aparecer en una relacin de este tipo son los siguientes: Rol: Identifica con nombres a los elementos que aparecen en los extremos de la lnea que denota la relacin, dicho nombre describe la semntica que tiene la relacin en el sentido indicado. Multiplicidad: La multiplicidad de una relacin determina cuantos objetos de cada tipo intervienen en la relacin.

Modelado de Diagrama de Clases


Cada asociacin tiene dos multiplicidades

(una para cada extremo de la relacin) Para especificar hay que indicar que la multiplicidad mnima y mxima (mnima...mxima) Cuando la multiplicidad mnima es 0, la relacin es opcional . Una multiplicidad mnima mayor igual que 1 establece una relacin obligatoria.

Modelado de Diagrama de Clases


EJEMPLO: Multiplicidad

Modelado de Diagrama de Clases


EJEMPLO:

Relaciones de los diagramas de clase


Tipos de Relacin
Dependencia Generalizacin Asociacin Agregacin Composicin

Representacinn

Modelado de Diagrama de Objetos


Los diagramas de objetos son utilizados durante el proceso de Anlisis y Diseo de los sistemas informticos en la metodologa UML. Se puede considerar un caso especial de un diagrama de clases en el que se muestran instancias especficas de clases (objetos) en un momento particular del sistema. Los diagramas de objetos utilizan un subconjunto de los elementos de un diagrama de clase. Los diagramas de objetos no muestran la multiplicidad ni los roles, aunque su notacin es similar a los diagramas de clase. Una diferencia con los diagramas de clase es que el compartimiento de arriba va en la forma Nombre de objeto: Nombre de clase. Por ejemplo, Miguel: Persona.

Modelado de Diagrama de Objetos

UML - Diagramas de interaccin

Modelado de Diagrama de Secuencias


Los diagramas UML de secuencia y de colaboracin (llamados diagramas de interaccin) se utilizan para modelar los aspectos dinmicos de un sistema. Un diagrama de interaccin consiste en un conjunto de objetos y sus relaciones, incluyendo los mensajes que se pueden enviar entre ellos. Los diagramas de secuencia destacan el orden temporal de los mensajes. Los diagramas de colaboracin destacan la organizacin estructural de los objetos que envan y reciben mensajes.

Modelado de Diagrama de Secuencias


Un diagrama de secuencia muestra la interaccin de un conjunto de objetos en una aplicacin a travs del tiempo y se modela para cada mtodo de la clase. Mientras que el diagrama de casos de uso permite el modelado de una vista del negocio del escenario, el diagrama de secuencia contiene detalles de implementacin del escenario, incluyendo los objetos y clases que se usan para implementar el escenario, y mensajes intercambiados entre los objetos.

Modelado de Diagrama de Secuencias


Ambos diagramas (secuencia y colaboracin) son semnticamente equivalentes. Se puede pasar de uno a otro sin prdida de informacin.

En los diagramas de secuencia, la linea de vida de un objeto es la lnea discontinua vertical, que representa la existencia de un objeto a lo largo de un periodo de tiempo. El foco de control es un rectngulo delgado que representa el periodo de tiempo durante el cual un objeto ejecuta una accin.

Modelado de Diagrama de Secuencia


Diagrama de secuencia: destaca el orden temporal de los mensajes.

Modelado de Diagrama de Secuencia


Ejemplo: Se quiere modelar una llamada a travs de una central telefnica. Para esto se tienen cuatro objetos involucrados: dos interlocutores (s y r), una central y una conversacin. La secuencia empieza cuando un interlocutor enva un mensaje a la central al descolgar el auricular. La central da el tono de llamada, y el interlocutor marca el nmero al que desea llamar. El tiempo de marcado debe ser menor que 30 segundos.

Modelado de Diagrama de Secuencia


s:Interlocutor descolgarAuricular( ) {marcando.tiempoEjecucion < 30 segs} darTonoDeLlamada( ) *marcarDigito( ) marcando enrutarLlamadas(s,n) <<create>> c:Conversacin llamar( ) descolgarAuricular( ) conectar(r,s) conectar(r) conectar(s) :Central r:Interlocutor

Los interlocutopres r y s pueden intercambiar informacin despus de conectarse.

Modelado de Diagrama de colaboracin


Diagrama de colaboracin: destaca la relacin estructural entre los objetos que interactan.