Вы находитесь на странице: 1из 12

Arquitectura de SW I CAL

_________________________________________________________________________________________________________________

Laboratorio Sesión de UML RUP

Objetivo: Repasar los conceptos de UML e introducir conceptos de Rational Unified Process para el
modelado del negocio.

Rational Enterprise

Al momento de arrancar el Rational enterprise, se presenta un cuadro de dialogo siguiente:

Se refieren a los entornos, frameworks con los que podriamos trabajar, por ejemplo “rational unified
process”; para los fines del presente laboratorio, hacer clic en el botón Cancel.

_________________________________________________________________________________________________________________
CAL/Sesion_Lab_1/UML_RUP_Ejercicios 1
Arquitectura de SW I CAL
_________________________________________________________________________________________________________________

Indica el
documento
actualmente
visible en el área
de trabajo

Área del
Explorad
or

Área de
trabajo

Barra de
herramienta
s (tool box)

Los ejercicios los vamos a crear en la vista de los casos de uso y los agrupamos en paquetes (ver ppt
UML_Paquetes), cada ejercicio será un paquete.

_________________________________________________________________________________________________________________
CAL/Sesion_Lab_1/UML_RUP_Ejercicios 2
Arquitectura de SW I CAL
_________________________________________________________________________________________________________________

Los Ejercicios se crean en la vista de los casos de uso; renombre el nombre del modelo con el nombre de
Ejercicios.
Ejercicio 1

a) Con el botón derecho del ratón y estando en el navegador sobre el paquete de la Vista de Casos de
Uso, haga new-package y cree un paquete que se llame Ejercicio 1.

b) Estando sobre el paquete recién creado haga click con el botón derecho y cree dos nuevos paquetes
que se llaman Ventanas y Editor, estos se crearán como paquetes dentro del paquete Ejercicio 1.

c) Sobre el paquete Ejercicio 1 realice new-Use Case Diagram, creando el diagrama Ejercicio 1.
Haga doble click en el icono del diagrama e introduzca el diagrama mostrado en la Figura 1.1. Para
ello arrastre desde el navegador los paquetes involucrados.

Consejo: Cuando quiera asociar un nuevo diagrama a un paquete basta con hacer doble clic sobre él
y luego renombrar el diagrama obtenido (por defecto se denomina Main).
Consejo: Utilice los botones para ir al diagrama padre o al diagrama anterior,
respectivamente.

_________________________________________________________________________________________________________________
CAL/Sesion_Lab_1/UML_RUP_Ejercicios 3
Arquitectura de SW I CAL
_________________________________________________________________________________________________________________

E dit or V entanas

Figura 1.1: Diagrama Ejercicio 1

Ejercicio 2

a) Estando en el navegador sobre el paquete de la Vista de Casos de Uso, con el botón derecho del
ratón haga new-package y cree un paquete que se llame Ejercicio 2.

b) Con el botón derecho del ratón y estando en el navegador sobre el paquete recién creado haga new-
Use Case Diagram y cree un diagrama que se llame Ejercicio 2.

c) Dibuje en el diagrama Ejercicio 2 lo mostrado en la figura 2.1.

Seleccionar buscar producto <<include>>

<<include>>
Cliente Validar usuario

Realizar compra

Figura 2.1: Diagrama Ejercicio 2

Observaciones:
 Los estereotipos se introducen en la especificación del símbolo de generalización (hacer
doble clic sobre el símbolo para abrir su especificación)
 La opción Navigable establece la dirección en una asociación (puede habilitarse o
deshabilitarse con el botón derecho sobre el símbolo)

Ejercicio 3

a) Crear el paquete Ejercicio 3 en la Vista Lógica.

b) Dentro de este paquete crear las clases: avión, motor, avión militar, avión comercial, vuelo,
piloto, reserva, línea aérea, avión de carga, avión de pasajeros, vendedor de billetes.

c) Cree dentro de la Ejercicio 3 el Diagrama de Clases Ejercicio 3, mostrado de la Figura 3.1.

_________________________________________________________________________________________________________________
CAL/Sesion_Lab_1/UML_RUP_Ejercicios 4
Arquitectura de SW I CAL
_________________________________________________________________________________________________________________

Mot or Piloto Vendedor de billetes

1..4 1..2 1

1 * *
Avión 1 * Vuelo 1 * Reserva

*
{ disjunta, completa }

1
Avión militar Avión comercial Línea aérea

{ disjunta, completa }

Avión de carga Avión de pasajeros

Figura 3.1: Diagrama Ejercicio 3

Ejercicio 4

a) En la Vista Lógica cree el paquete Ejercicio 4. Dentro de este paquete cree un Diagrama de
Clases que se llame Ejercicio 4.

b) Incluya una única clase dentro de este diagrama que se llame Alumno y complete según lo
mostrado en la Figura 4.1.

Alumno
DNI : char[10]
número_exp : int
nombre : char[50]

alta()
poner_nota(asignatura : char *, año : int, nota : float)
matricular(cursos : asignatura, año : int)
listar_expediente()

Figura 4.1: Diagrama Ejercicio 4

Ejercicio 5

a) En la Vista Lógica cree un paquete denominado Ejercicio 5.

_________________________________________________________________________________________________________________
CAL/Sesion_Lab_1/UML_RUP_Ejercicios 5
Arquitectura de SW I CAL
_________________________________________________________________________________________________________________

b) Asociado al paquete Ejercicio 5 cree el Diagrama de Clases Ejercicio 5 e inserte las clases
Departamento y Profesor y asócielas tal como se muestra en la Figura 5.1.

c) Modifique la visibilidad de los roles eligiendo entre Público (+): el rol es visible fuera del
ámbito del paquete y puede referenciarse en otras partes del modelo; Implementación (sin
símbolo asociado): visible sólo en el paquete en el que se define; Protected (#): accesible a la
clase misma, a las subclases o friends; Private (-): accesible solo a la propia clase o friends.

dirige direc tor


Departam ento Profes or

0..1 1

Figura 5.1: Diagrama Ejercicio 5

Ejercicio 6

a) Cree el paquete Ejercicio 6 y dentro de él introduzca el diagrama de clases Ejercicio 6 con las
clases Empresa, Empleado y Cargo. Defina en la clase Cargo los atributos Nombre y Sueldo.

b) Establezca la asociación entre Empresa y Empledo, mostrada en la figura 6.1.

empleador trabajadores
Empresa Empleado

* 1..*

Cargo
superior
nombre
sueldo 0..1

subordinado 1..*

0
Figura 6.1: Diagrama Ejercicio 6

Observación: Use el símbolo de la barra de herramientas denominado “association class” para


enlazar la clase Cargo con la asociación entre Empresa y Empleado.

Ejercicio 7

a) Cree el paquete Ejercicio 7.

b) Cree en el navegador las clases: Trabajador, Directivo, Administrativo, Obrero, Vehículo,


Vehículo impulsado por viento, Vehículo Terrestre, Vehículo impulsado por motor,
Vehículo acuático, Camión, Velero, Cuenta, Cuenta rentable y Cuenta no rentable.

c) Cree el Diagrama de Clases llamado Ejercicio 7.1 según se muestra en la Figura 7.1.
_________________________________________________________________________________________________________________
CAL/Sesion_Lab_1/UML_RUP_Ejercicios 6
Arquitectura de SW I CAL
_________________________________________________________________________________________________________________

d) Repita la operación para las Figuras 7.2 y 7.3.

Trabajador

{ disjunta, completa }

Directivo Administrativo Obrero

Figura 7.1: Diagrama Ejercicio 7.1

Vehículo acuático VehículoTerrestre

Velero Vehículo

Camión

Vehículo impulsado por viento Vehículo impulsado por motor

Figura 7.2: Diagrama Ejercicio 7.2

Cuenta

{ dis junt a, incompleta }


saldo_medio > 100000 saldo_medio < 50000

Cuenta rent able Cuenta no rentable

Figura 7.3: Diagrama Ejercicio 7.3

Ejercicio 8

a) Cree el paquete Ejercicio 8.

_________________________________________________________________________________________________________________
CAL/Sesion_Lab_1/UML_RUP_Ejercicios 7
Arquitectura de SW I CAL
_________________________________________________________________________________________________________________

b) Cree en este paquete la clase Socio en un Diagrama de Clases que se llame Ejercicio 8. La
Figura 8.1 da el detalle de la estructura de la clase.

c) Asocie a la clase anterior el Diagrama de Transición de Estados de la Figura 8.2. Para ello, desde
el navegador seleccionando la clase en cuestión y con el botón derecho del ratón escoja la opción
New >> Statechart Diagram.

Socio
número : int
nombre : char[50]
número_prestamos : int = 0

alta()
baja()
prestar(código_libro : int, fecha : date)
devolver(código_libro : int, fecha : date)

Figura 8.1: Diagrama Ejercicio 8

alta baja

número_préstamos = 0
sin préstamos

prestar devolver[ número_prés tamos = 1 ]

número_prést amos > 0

c on prést amos

pres tar

devolver[ número_préstamos > 1 ]

Figura 8.2: Diagrama de Estados

Ejercicio 9

a) Cree un nuevo modelo y renombre el diagrama Main de la Vista de Casos de Uso por ACME.

b) Haga doble click sobre el icono del diagrama ACME y dibujando, introduzca los subpaquetes
Publicidad, Ventas. El resultado se muestra en la Figura 9.1

Publicidad V entas

Figura 9.1: Diagrama ACME


_________________________________________________________________________________________________________________
CAL/Sesion_Lab_1/UML_RUP_Ejercicios 8
Arquitectura de SW I CAL
_________________________________________________________________________________________________________________

c) Haga doble click sobre el paquete Ventas en el Diagrama ACME e introduzca el diagrama de casos
de uso mostrado en la Figura 9.2.

d) Con el botón derecho sobre el diagrama llamado Main bajo el paquete Ventas renómbrelo por
Ventas.

e) En el mismo paquete crear un diagrama de casos de uso llamado Realizar Venta. Hacer doble click
sobre el icono que representa al diagrama recién creado e introduzca el diagrama mostrado en la
Figura 9.3.

f) En el navegador y bajo el paquete Ventas cree el subpaquete Tipos de Ventas y arrastre sobre él los
iconos de los casos de uso Venta Normal, Venta Rebajas, Venta Ofertas. Verá que en el diagrama
Realizar Venta los casos de uso aparecen etiquetados con “from Tipos de Venta”.

consultar situación Vendedor

Cliente Registrar venta


Secretaria

Prepara catálogo

Supervisor

Establecer crédito

Figura 9.2: Diagrama Ventas

_________________________________________________________________________________________________________________
CAL/Sesion_Lab_1/UML_RUP_Ejercicios 9
Arquitectura de SW I CAL
_________________________________________________________________________________________________________________

Venta normal

Vendedor Venta en rebaja

Venta en oferta

Figura 9.3: Diagrama Realizar Ventas

En los Diagramas de Casos de Uso no existe el concepto de “explosión” tal como se tiene en los DFDs
(Diagramas de Flujo de Datos) ó IDEF0. La funcionalidad representada por un caso de uso es “atómica”
y autónoma.). En UML el concepto de paquete permite organizar de manera jerárquica un modelo, y en
este caso, un paquete puede tener asociado un nuevo diagrama.

g) Documente los casos de uso Venta Normal, Venta Rebajas, Venta Ofertas a partir de la
información siguiente, presentada en tres estilos distintos (“secuencia de pasos”, “condiciones pre-
post de la aplicación del caso de uso” y, por último “descripción narrativa”).

Venta Normal
Cree un fichero word con la siguiente documentación:

Caso de Uso Venta Normal


Objetivo: Registrar las ventas normales que realiza la empresa
Flujo básico
1. El caso de uso se incia cuando el vendedor hace clic en la opción venta normal.
2. El vendedor introduce su código de vendedor e indica al sistema que se trata de una venta
normal
3. El sistema muestra la pantalla para introducir los datos de la venta
4. El vendedor introduce los artículos mediante un lector de código de barras o directamente por
teclado. Pueden ser varios artículos en una misma venta.
5. El vendedor solicita la emisión del recibo
6. El sistema imprime el recibo

Haga doble click sobre el caso de uso Venta Normal del diagrama y en la pestaña Files con el botón
derecho realice Insert File, asociando el fichero word recién creado.

_________________________________________________________________________________________________________________
CAL/Sesion_Lab_1/UML_RUP_Ejercicios 10
Arquitectura de SW I CAL
_________________________________________________________________________________________________________________

Venta en Oferta
Haciendo doble click en el caso de uso Venta en Oferta y dentro del cuadro denominado
documentación, introducir:

Precondiciones
- Los artículos de la venta deben estar en oferta
- El pago debe hacerse en efectivo
- El artículo debe tener el suficiente stock para satisfacer la venta

Postcondiciones
- El stock del artículo se decrementa con la venta realizada
- Se registran todos sus datos en la base de datos

Venta en Rebajas
Seleccionando el caso de uso Venta en Rebajas, introducir en el cuadro de documentación (bajo el
browser) el siguiente texto:

En el periodo de rebajas los precios tienen una disminución de precio tanto de forma individual como
por grupos de artículos. Los descuentos se detallan en la correspondiente tabla de descuentos por
grupo.

Ejercicio 10

a) Cree un nuevo modelo y renombre el diagrama Main de la Vista de Casos de Uso por Bilioteca.

b) Introduzca en el Diagrama Biblioteca el modelo de la figura 10.1.

Socio Encargado
Prestar Libro

Figura 10.1: Diagrama Biblioteca

c) Cree un Diagrama de Secuencia asociado al Caso de Uso Prestar Libro y denomínelo Prestar con
Éxito. Arrastre desde el navegador los actores previamente creados y complete el Diagrama de
Secuencia según lo mostrado en la Figura 10.2. Los objetos utilizados en este diagrama son
anónimos, es decir, sólo se indica la clase a la cual pertenecen (Libro, Ficha Socio, Ficha Libro,
Ficha Préstamo) pero no tienen un nombre específico.

d) Deshabilite la opción Focus of Control en Tools-Options-Diagrams y observe el efecto.

e) Cree el Diagrama de Colaboración asociado al Diagrama de Secuencia dibujado mediante Browse-


Create Collaboration Diagram. La Figura 10.3 muestra el diagrama de colaboración que se debe
obtener.

_________________________________________________________________________________________________________________
CAL/Sesion_Lab_1/UML_RUP_Ejercicios 11
Arquitectura de SW I CAL
_________________________________________________________________________________________________________________

: Lib ro : F ic ha s oc io : F ic ha libro : P rés tam o


: S oc io : E nc argado

Coger libro

S olic itar prés tam o

V erific ar s ituac ión s oc io

S it uac i ón s o cio ok

V erific ar s ituac ión libro

S ituac ión libro ok

Introduc ir prés tam o

A ut oriz ar p rés t amo

Figura 10.2: Diagrama Prestar con Éxito

1: Coger libro : Libro

: Socio 2: Solicitar préstamo : Ficha s


ocio
3: Verificar situación socio

8: Autorizar préstamo
4: Situación socio ok

6: Situación libro ok : E ncarga do

: Présta
7: Introducir préstamo mo

5: Verificar situación libro

: Ficha li
b ro

Figura 10.3: Diagrama Obtenido a partir del Diagrama Prestar con Éxito

_________________________________________________________________________________________________________________
CAL/Sesion_Lab_1/UML_RUP_Ejercicios 12

Вам также может понравиться