Académique Documents
Professionnel Documents
Culture Documents
HISTORIAL DE MODIFICACIONES
Fecha 03 Enero 2013 Version V9 Descripcin Creacin del documento Autor Csar Luza
Tabla de contenido
1.
1.1 1.2 1.3 1.4 1.5 1.6
2.
2.1 2.2
3.
3.1 3.2
Csar Luza / Gua Tcnicas Modelamiento / 5 Si desea crear un archivo de la nada (from scratch), pulse Cancel. Si desea utilizar una plantilla o framework, seleccione <modelo> y pulse OK. Si desea crear desde sistema de ficheros, pulse pestaa existente o reciente.
1.6 Actividades1
1.6.1 a) b) c) d) ACTIVIDAD 1 Crear un paquete de nombre Actividad 1 dentro del paquete Use Case View. Crear los paquetes Ventanas y Editor dentro del paquete Actividad 1. Crear los paquetes Motif y MSWindows como subpaquetes de Ventanas Crear los paquetes Controlador, Dominio, Elementos, Ncleo Motif, Ncleo Windows como subpaquetes de Editor.
e) Sobre el paquete Actividad 1 realice new-Use Case Diagram, creando el diagrama Actividad 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. f) Repita el paso anterior para los paquetes Ventanas y Editor obteniendo los diagramas mostrados en las Figuras 1.2 y 1.3, respectivamente. En cada oportunidad arrastre desde el navegador los paquetes indicados. 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 respectivamente. para ir al diagrama padre o al diagrama anterior,
Editor
Ventanas
Motif
MSWindows
Controlador Elementos
Ncleo Motif
a) Estando en el navegador sobre el paquete de la Vista de Casos de Uso, con el botn derecho del ratn haga new-package y cree un paquete que se llame Actividad 2. b) Con el botn derecho del ratn y estando en el navegador sobre el paquete recin creado haga new-Use Case Diagram y cree un diagrama que se llame Actividad 2. c) Dibuje en el diagrama Actividad 2 lo mostrado en la figura 2.1.
Retirar dinero
Cliente
Consultar Extracto
Realizar transferencia
Observaciones: La opcin Navigable establece la direccin en una asociacin (puede habilitarse o deshabilitarse con el botn derecho sobre el smbolo)
a) Estando en el navegador sobre el paquete de la Vista de Casos de Uso, con el botn derecho del
ratn haga new-package y cree un paquete que se llame Actividad 3.
b) En el paquete recin haga new-Use Case Diagram y cree un diagrama que se llame Actividad 3.
Dibuje en el diagrama Actividad 3 lo mostrado en la figura 3.1.
Cliente
Reintegro
c) Con el botn derecho del ratn y estando en el navegador sobre el Caso de Uso Reintegro haga
new-Sequence Diagram y cree un diagrama que se llame Reintegro Saldo Insuficiente. d) Haga doble clic en el diagrama Reintegro Saldo Insuficiente y dibuje el diagrama mostrado en la Figura 3.2
: Cliente tarjeta
:Cajero automtico
:cuenta
nmero
solicitar cantidad
Figura 3.2: Diagrama Reintegro Saldo Insuficiente d) Haga Browse-Create Collaboration Diagram para obtener automticamente el Diagrama de Colaboracin asociado.
a) Crear el paquete Actividad 4 en la Vista Lgica. b) Dentro de este paquete crear las clases: avin, motor, avin militar, avin comercial, vuelo, piloto, reserva, lnea area, avin de carga, avin de pasajeros, vendedor de billetes. c) Cree dentro de la Actividad 4 el Diagrama de Clases Actividad 4, mostrado de la Figura 4.1.
Motor 1..4 Vendedor de billetes 1
Piloto 1..2
1 Avin 1 n
n Vuelo n 1 n
n Reserva
{ disjunta, completa }
{ disjunta, completa }
Avin de carga
Avin de pasajeros
a) Cree el paquete Actividad 5, en la vista lgica b) Cree en este paquete la clase Socio en un Diagrama de Clases que se llame Actividad 5. La Figura 5.1 da el detalle de la estructura de la clase. c) Asocie a la clase anterior el Diagrama de Transicin de Estados de la Figura 5.2. Para ello, seleccionando la clase en cuestin y con el botn derecho del ratn escoja la opcin New Statechart Diagram.
Socio nmero : int nombre : char[50] nmero_prestamos : int = 0 alta() baja() prestar(cdigo_libro : int, fecha : date) devolver(cdigo_libro : int, fecha : date)
alta
baja nmero_prstamos = 0
sin prstamos
prestar
devolver[ nmero_prstamos = 1 ]
a) Cree en la Vista de Componentes un paquete que se llame Actividad 6 y dibuje el diagrama que se muestra en la Figura 6.1. Una relacin de dependencia entre componentes viene dado porque un componente usa las facilidades de otro. Esto se reduce a dependencias de compilacin entre componentes. Consulte en el Help los estereotipos para los componentes. b) Dibuje el Diagrama de Despliegue de la Figura 6.2. Una Connection representa p.e. un cable RS232, comunicacin va satlite, etc. Un Processor representa hardware con capacidad de computacin. Un Device incluye dispositivos hardware como terminales, modems, etc.
Interfaz de Terminal
Control y Anlisis
Gestin de Cuentas
Rutinas de Conexin
Acceso a DB
Figura 6.1
Servidor Central
Gestor de Datos
Punto de Venta
Terminal de Venta
Figura 6.2
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, Inventario y Contabilidad. El resultado se muestra en la Figura 7.1
Publicidad
Ventas
Inventario
Contabilidad
Figura 7.1: Diagrama ACME c) Haga doble click sobre el paquete Ventas en el Diagrama ACME e introduzca el diagrama de casos de uso mostrado en la Figura 7.2. d) Con el botn derecho sobre el diagrama llamado Main bajo el paquete Ventas renmbrelo por Ventas. e) Asociado al paquete Realizar Venta crear un diagrama de casos de uso llamado Realizar Venta. Hacer doble click sobre el icono que representa el paquete Realizar Venta e introduzca el diagrama mostrado en la Figura 7.3. f) Renombre como Realizar Venta el diagrama Main bajo el paquete Realizar Venta. El resultado hasta este punto puede verse en la Figura 7.4.
Supervisor
Administrativo
Preparar Catlogo
Sistema Inventario
Realizar Venta
Venta Normal
Solicitar autorizacin
<<include>>
Vendedor
Venta de Rebaja
Observaciones: Los estereotipos se introducen en la especificacin del smbolo de dependencia (hacer doble clic sobre el smbolo para abrir su especificacin) En los D. de Casos de Uso no existe el concepto de explosin tal como se tiene en los DFDs (Diagramas de Flujo de Datos). La funcionalidad representada por un caso de uso es atmica (aunque en Rational Rose a un caso de uso se le puede asociar un nuevo D. de Casos de Uso!!). En UML el concepto de paquete permite organizar de manera jerrquica un modelo, y en este caso, un paquete puede tener asociado un nuevo diagrama.
Csar Luza / Gua Tcnicas Modelamiento / 16 g) Documente los casos de uso Venta Normal, Venta Rebajas, Venta Ofertas a partir de la informacin siguiente, presentada en tres estilos distintos (secuencia de pasos, condiciones pre-post de la aplicacin del caso de uso y, por ltimo descripcin narrativa). Venta Normal Cree un fichero con el siguiente contenido: Caso de Uso Venta Normal 1. El cliente se identifica mostrando su tarjeta y el DNI 2. El vendedor revisa los datos del cliente 3. Si el cliente es moroso realizar caso de uso Solicitar Autorizacin 4. El vendedor introduce su cdigo de vendedor e indica al sistema que se trata de una venta normal 5. El sistema muestra la pantalla para introducir los datos de la venta 6. El vendedor introduce los artculos mediante un lector de cdigo de barras o directamente por teclado. Pueden ser varios artculos en una misma venta. 7. El vendedor solicita la emisin del recibo 8. El sistema imprime el recibo Haga doble click sobre el caso de uso Venta Normal del diagrama y en la pestaa Files con el botn derecho realice Insert File, asociando el fichero word recin creado. Venta en Oferta Haciendo doble click en el caso de uso Venta en Oferta y dentro del cuadro denominado documentacin, introducir: Precondiciones - Los artculos de la venta deben estar en oferta - El pago debe hacerse en efectivo - El artculo debe tener el suficiente stock para satisfacer la venta y el cliente debe estar conforme con el plazo estimado de entrega Postcondiciones - El stock del artculo 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 documentacin (bajo el browser) el siguiente texto: En el periodo de rebajas los precios tienen una disminucin de precio tanto de forma individual como por grupos de artculos. Los descuentos se detallan en la correspondiente tabla de descuentos por grupo. Debe verificarse que hay stock suficiente y que el cliente est conforme con el plazo estimado de entrega.
a) Cree un nuevo modelo y renombre el diagrama Main de la Vista de Casos de Uso por Video Club. b) Introduzca en el Diagrama Video Club el modelo de la figura 8.1.
Encargado
Prestar Video
c) Cree un Diagrama de Secuencia asociado al Caso de Uso Prestar Video y denomnelo Prestar con xito. Arrastre desde el navegador el actor Encargado y complete el Diagrama de Secuencia segn lo mostrado en la Figura 8.2. Los objetos utilizados en este diagrama son annimos, es decir, slo se indica la clase a la cual pertenecen, pero no se les asigna un nombre especfico. d) Deshabilite la opcin Focus of Control en Tools-Options-Diagrams y observe el efecto. e) Cree el Diagrama de Colaboracin asociado al Diagrama de Secuencia dibujado mediante Browse-Create Collaboration Diagram. La Figura 8.3 muestra el diagrama de colaboracin que se debe obtener.
: Encargado
:WInPrstamos
:Socio
:Video
:Prstamo
:Socio
4: registrar prstamo
:Prstamo
Figura 8.3: Diagrama Obtenido a partir del Diagrama Prestar con xito
a) Cree un nuevo modelo. En la Vista Lgica cree el paquete Actividad 9. Dentro de este paquete cree un Diagrama de Clases que se llame Actividad 9. b) Incluya una nica clase dentro de este diagrama que se llame Alumno y complete segn lo mostrado en la Figura 9.1.
Alumno DNI : char[10] nmero_exp : int nombre : char[50] alta() poner_nota(asignatura : char *, ao : int, nota : float) matricular(cursos : asignatura, ao : int) listar_expediente()
Csar Luza / Gua Tcnicas Modelamiento / 20 1.6.10 ACTIVIDAD 10 a) En la Vista Lgica cree un paquete denominado Actividad 10. b) Asociado al paquete Actividad 10 cree el Diagrama de Clases Actividad 10 e inserte las clases Departamento y Profesor y ascielas tal como se muestra en la Figura 10.1. c) Modifique la visibilidad de los roles eligiendo entre Pblico (+): el rol es visible fuera del mbito del paquete y puede referenciarse en otras partes del modelo; Implementacin (sin smbolo asociado): visible slo 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.
Departamento
1 depto
profesores 0..*
Profesor
dirige 0..1
director
Csar Luza / Gua Tcnicas Modelamiento / 21 1.6.11 ACTIVIDAD 11 a) Cree el paquete Actividad 11 y dentro de l introduzca el diagrama de clases Actividad 11 con las clases Empresa, Empleado y Cargo. Defina en la clase Cargo los atributos Nombre y Sueldo. b) Establezca la asociacin entre Empresa y Empledo, mostrada en la figura 11.1.
empleador Empresa * 1..* trabajadores Empleado
superior 0..1
Observacin: Use el smbolo de la barra de herramientas denominado Link Attribute para enlazar la clase Cargo con la asociacin entre Empresa y Empleado.
Csar Luza / Gua Tcnicas Modelamiento / 22 1.6.12 ACTIVIDAD 12 a) Cree el paquete Actividad 12. b) Cree en el navegador las clases: Trabajador, Directivo, Administrativo, Obrero, Vehculo, Vehculo impulsado por viento, Vehculo Terrestre, Vehculo impulsado por motor, Vehculo acutico, Camin, Velero, Cuenta, Cuenta rentable y Cuenta no rentable. c) Cree el Diagrama de Clases llamado Actividad 12.1 segn se muestra en la Figura 12.1. d) Repita la operacin para las Figuras 12.2 y 12.3.
Trabajador
{ disjunta, completa }
Directivo
Administrativo
Obrero
Vehculo acutico
VehculoTerrestre
Cuenta rentable
Cuenta no rentable
a) Identificando actores
Encargado de vuelos
Gerente
Empleado de ventas
Csar Luza / Gua Tcnicas Modelamiento / 25 Para cada caso de uso se elabora su descripcin. En nuestro caso, solo desarrollaremos descripcin de algunos casos de uso.
Nombre C.U.S. Consultar Vuelos por Piloto Actor Gerente Precondicin El usuario ha sido admitido en el sistema con el rol de Gerente Poscondicin El sistema muestra los vuelos realizados por piloto Flujo Bsico 1. El caso de uso se inicia cuando el Gerente indica Vuelos Realizados. 2. El Sistema muestra relacin de pilotos. 3. El Gerente escoge el nombre de piloto de la relacin mostrada. 4. El Sistema muestra calendario para escoger el periodo (fecha inicio y fecha de fin) 5. El Gerente escoge el periodo (fecha inicio y fecha de fin). 6. El Gerente indica Aceptar. 7. El Sistema muestra los vuelos realizados por el piloto en el periodo escogido. 8. El caso de uso finaliza. Flujos Alternativos Imprimir En el paso 7, si el gerente indica Imprimir, el sistema imprime la informacin consultada y el caso de uso finaliza. No hay vuelos en periodo En el paso 7, si no existen vuelos del piloto en el periodo seleccionado, el sistema muestra mensaje Piloto no tiene registrado vuelos en el periodo y regresa a seleccionar otro piloto.
Mantener informacin de unidades Encargado de vuelos El usuario ha sido admitido en el sistema con el rol de Encargado de vuelos Se ha registrado informacin de unidades(Aadir, modificar, eliminar) Flujo Bsico
Aadir 1. El caso de uso comienza cuando el Encargado de Vuelo indica Mantener Informacin de unidad. 2. El Sistema muestra las opciones: Aadir, Modificar y Eliminar. 3. El Encargado de Vuelo elige la opcin Aadirr. 4. El Sistema muestra el formulario para llenar datos de una nueva unidad. 5. El Encargado de Vuelo ingresa datos de la unidad: el nmero, el tipo de avin, la fecha de compra, el modelo, la capacidad de carga y la capacidad de pasajeros. 6. El Encargado de Vuelo indica Guardar. 7. El Sistema registra la informacin de la nueva unidad. 8. El caso de uso finaliza. Flujos Alternativos
2.2 Actividades 2.2.1 Actividad 1: Sistema para una agencia de alquiler de autos
Inicialmente, entrevistamos al dueo de la agencia, quien es el que impuls el proyecto. l est, especialmente, interesado en controlar los gastos de la empresa. Necesita obtener del sistema informacin del tipo: Dado un intervalo de tiempo, todas las reparaciones realizadas por un monto superior al que l imponga. El Empleado de Atencin al Pblico, nos cont que por cada nuevo alquiler actualiza la ficha registro del cliente. En caso de tratarse de un nuevo cliente, abre una nueva ficha con los siguientes datos: apellido y nombre, direccin personal, localidad, provincia, tipo y nmero de documento, profesin y nmero de licencia de conductor. De acuerdo con las restricciones que impone el cliente, se busca si existe un vehculo disponible. Una vez que el cliente seleccion un coche, se crea una ficha para el nuevo alquiler: fecha del alquiler, cantidad de das por los que se alquila, importe del alquiler y kilometraje del vehculo al momento de ser alquilado. No se debe autorizar alquileres a clientes que no devolvieron en el plazo o en buen estado el vehculo que se les prest. El Encargado de Autos es el nico autorizado a actualizar la ficha registro de cada auto. Cada vehculo tiene su propia informacin: cdigo, descripcin, marca (por ej: Ford Fiesta), modelo (por ej: 1996), estado (alquilado, disponible para alquilar o en reparacin). Por cada vehculo lleva nota de todas las reparaciones que recibi. De cada reparacin mantiene la fecha, motivo, costo de la reparacin, cantidad de das que el auto no estuvo disponible. Tambin atiende a los clientes que traen los vehculos. Controla que el mismo se entregue en buen estado y en termino, si no es as le informa al encargado de atencin al pblico para que no autorice nuevos alquileres a ese cliente y registra en la ficha del alquiler el kilometraje final con que se devuelve el coche. Le gustara poder consultar los autos mas alquilados.
Para la segunda etapa de este proyecto se van a incorporar, al sistema, facilidades para hacer reservas telefnicas. En este caso, el Empleado de Atencin al Publico tomar los datos del cliente, la fecha del alquiler, das por los que se va a alquilar y vehculo que reserva. Una reserva puede ser cancelada con hasta 48 horas de anticipacin. Los clientes que hagan reservas y no retiren el alquiler, no podrn efectuar nuevas reservas ni alquileres. Al final de cada jornada, el Encargado de Autos lanzara un proceso que analizase las reservas para el prximo da y marque los autos que corresponda como reservados.
Csar Luza / Gua Tcnicas Modelamiento / 29 nombre, apellido, direccin de correo electrnico y categora de los anotados en el rea. Slo se listaran los anotados que accedieron a la consulta pblica. El modo privado es exclusivo para las empresas y permite ver los datos completos de cada anotado.
3. MODELO DE DOMINIO
3.1 Proceso de construccin
Para construir el modelo de dominio se puede seguir las siguientes actividades: Identificar las Clases conceptuales o del dominio, Identificar las asociaciones, Identificar atributos, Identificar relacin de generalizacin y refinar el modelo. Consideremos la siguiente descripcin para realizar el modelo de dominio.
Una empresa recin formada se dedica a integrar partes para formar productos con la intencin de vender el valor agregado de la integracin. Con el objetivo de apoyar sus actividades, mediante una aplicacin informtica, se ha obtenido las siguientes reglas semnticas: Un producto tiene un nombre y un precio base. Un producto se forma con muchas partes y cada parte puede formar muchos productos. La definicin de cada producto especifica qu cantidad de cada parte forma a un producto dado. Un vendedor tiene un apellido, nombre y un porcentual de comisin. Tanto un cliente como un proveedor tienen los datos de todo agente comercial; stos son: cuit, razn social, e-mail, telfono y direccin. Adems, un proveedor tiene un plazo de pago y un cliente un porcentual de descuento. Un parte puede ser comprado a muchos proveedores y un proveedor puede proveer muchas partes. Cada compra de un parte tiene una fecha y una cantidad. Una venta se realiza entre cualquier vendedor y cualquier cliente, y ste puede comprar cualquier producto. De una venta se quiere saber su fecha. No se pueden vender productos que estn formados por una nica parte, esto es, no se permite vender productos sin elaborar.
cliente
proveedor
agenteComercial
b) Identificando Asociaciones
vendedor producto 1..n se vende agenteComercial 1..n se forma 1..n parte 1..n
Se compra
c) Identificando Atributos
3.2 Actividades
3.2.1 Actividad 1: Sistema para una institucin educativa
Una Institucin Educativa ha decidido brindar unos cursos extracurriculares, tanto para sus alumnos como para personas externas a la Institucin. Las razones para la inclusin de personas no pertenecientes a la Institucin son: obtener fondos para la modernizacin de las instalaciones y ayudar al pago de los viticos de los profesores invitados. Se desea desarrollar una aplicacin que permita administrar el dictado de los cursos; una primera aproximacin del contexto del negocio es el siguiente: Se brinda varios cursos. Cada curso tiene un nombre, un cupo mximo y un cupo mnimo el cual, si no se alcanza, hace que el curso no se dicte. Cada curso es dictado por un nico docente y un docente puede dictar ms de un curso. Cada docente tiene apellidos, nombres, cargo y una dedicacin. A cada alumno se le da un material general, independientemente de la cantidad de cursos en que se haya inscrito, adems de un material particular para cada curso en el que esta inscrito. Se desea controlar si se le ha entregado, o no, tanto el material general como los materiales particulares a cada alumno. Un alumno puede asistir a muchos cursos y cada curso debe tener una cantidad mnima de inscritos cupo mnimo- y no sobrepasar el cupo mximo. De los alumnos internos se debe mantener la informacin de apellidos, nombres y nmero de libreta; de los alumnos externos, apellidos, nombres, nmero de recibo nico para todos los cursos-, forma de pago -efectivo, cheque o tarjeta- y monto pagado. A cada curso se le asigna una nica aula que tiene un nombre, una ubicacin y una capacidad. No puede asignarse un aula a un curso cuyo cupo mximo no entre en la misma. Tambin se desea controlar si el alumno va asistir como oyente no se presenta a examen ni realiza prcticos- a cada curso en donde se inscribi. Esta informacin es til para que el docente organize el dictado.