Está en la página 1de 6
Programa de Ingenieria de Sistemas ~ Ingenieria de Software I El siguiente paso que realizaremos seré la Identificacién de las Relaciones, Iniclalmente se muestran las relaciones bésicas existentes entre las diferentes clases el sistema, Para ello dentificamos las siguientes frases: © Reserva de wel, * Aslentos en un vuelo, * Fecha y horario de vuelo. + Aerolinea deseada, * Tarifa de wuelo. + Ttinerario de vuelos. Reescribimos las frases para asi obtener las cancicatas: * Elvuelo contiene reservas. El vuelo contiene asientos. El vuelo tiene dia y hora * Elvuelo pertenece a una aerolinea, El vuelo tiene tarifas. + El vuelo se compone de un itinerario. El pasajero tiene reserva. * Elpasajero posee una tarjeta de crédito. Tras haber identificado y seleccionade las asociaciones, se construye un diagrama de clases con las asociaciones, los roles y la multipici¢ad quedando el diagrama de clases que Se muestra en la Figura 1-1 El Vuelo se denomina por medio de un niimero, tiene como origen un aeropuerto en una ciudad y tiene como destino un 2eropuerto de otra cludad. Un vuelo puede fener miliples escalas y multiples vuelos, se relacionan por medio de Conexiones. El vuelo pertenece @ una aerolinea y puede operar varios dias a la semana tenlendo un horario de salida y otro de llegada, El Aeropuerto sirve como arigen, destina y escalas de un vuelo. El aeropuerte se encuentra en una ciudad de un pais determinado. Se identifica una clase adicional, como Avién, y las relaciones basicas existentes entre las clases Aerolinea, Avién, Tarifa, Asiento y Vuelo. La Aerolinea provee servicio de miltiples vuelos entre ciferentes ciudades bajo diferentes horarios. La aerolines se identifica por un nombre Un vuelo en una fecha determinada se hace en un tipo de avién particular. El tipo de avin define le cantided maxima de pasajeros que pueden viajar en ese vuelo para esa fecha, Los diferentes vuelos tienen miltiples tarifas para compra de billete, variando seg la clase de billete, si son de ida 0 de ida y vuelta, y dependiendo de las diversas restricciones y ofertas existentes. En las reservas de vuelos se puede inclulr una solicitud de asignacién de asiento, especificando preferencias como pasilo, © ventana. | nimero de asientos disponibles en un vuelo particular depende del tipo de avién que opere ese dia, En el diagrama Ge la Figura 1.2 se muestran las relaciones entre las clases descritas anteriormente, TARIFA At Beales 1.0 AVION * Olertas/Res A i at 1 ASIENTO AEROLINEA Figura 1.2. Segunda aproximacién al diagrama de clases. Otras de las relaciones que se encuentran son las siguientes: ‘© Elhorario de un vuelo se define segin los dias en que opera ‘© El horario de un vuelo se determina por su hora de salida y hora de llegada durante los dias que opere. Asi pues, el ‘dagrama resultante de esta asociacion entre la clase Dia y Hora se muestra en la Figura 1,3. ‘© Para poder tomar un vuelo es necesario cantar con una reserva previa, la cual debe pagarse antes de una fecha limite, que puede ser el propio dia del vuelo. Una reserva puede hacerse pare miltiples vuelos y multiples pasajeros. La reserva cuenta con una clave que identifica un registro de reserva particular. Diagramas de Clases Programa de Ingenieria de Sistemas ~ Ingenieria de Software I DIA 1 | HORA Figura 1.3. Relacién entre las clases Hora y Dia, Se identifica una clase adicional Ilsmada Pago, que consta de informacién sobre la cantidad, fecha y tipo de transaccién, Por razones de seguridad, los pagos de billete se hacen mediante tarjeta de crédito, El diagrama que muestra las relaciones anteriores es el de la Figura 1.4. VUELO [+ ___1.*! RESERVA [: hat PAGO 1 i Lat Lat PASAJERO [1 1°) TARJETA Figura 1.4, Tercera aproximacién al diagrama de clases. Finalmente identificamas los atributos segiin la descripcién ¢el problema. Los atributos de las clases los hemos podide obtener antes de proceder @ la ceterminacién de las asociaciones, pero en est Asi pues, tenemos los siguientes atributos asociados a cade clase: ‘aso nos ha parecido més facil su -epresentacién al final, aunque es obvio que mientras estabamos obteniendo las relaciones extraiamos las atributos Nombre dea Clase Nombre del Atributo: Vuelo. ‘Numero ‘Aeropuerto! Cludad - Pals Aerolines avign — Tipe = We Pasayeroe siento Fila = Letra Tarifa Clase = Predio = Impuestos Reserva Clave — Costo = Total Pago Tipo = Fecha ~ Cantidad Tarot Nombre = Nimero = Tipo ~ Fecha - Veneiiento Pasajero Nombre = Direccin = Ciudad ~ Peis - Cédigo Postal ~ Teléfono Casa [Teléfono Oficina ~ Fax - Email Ene Figure 1.5 se muestra las clases con sus atrioutos y en la Figura 1.6 se muestra el diagrama completo final con todas las clases y sus relaciones, Felafona casa ‘wueLo |[ acRopuerTo || acRouines | avion ASIENTO “namera || -wombre Nombre =compania || - rua = Chadd =Tipo! ~totra SPs =NEPasejoros: RESERVA |[ Paco TARJETA PASAJERO | TARIFA = eave =Tipo = Nombre = Nombre = clase Teaste Total |] Fecha cNamera ‘Biren “Precio “antidad |} ~ Tipo cluded “ Impuestos “Fecha ie =Vencimiente |] - eadiga Postal Figura 1.5. Atributos de las clases identiicadas. Diagramas de Clases Programa de Ingenieria de Sistemas ~ Ingenieria de Software I AEROLINEA AVION AEROPUERTO Pose 1 * Nombre = Compania - Nombre = Tipo ~ Ciudad “N° Pasajeros ~ Pais 1 ‘ 7 Le pertenecs Es realizalio ektine st fiw [Pconbxion Orpen TARIFA _— ps fan 1 + Clase Precio estalas sImpuestos |; = ofertas 1 i ASIENTO |~ salita RESERVA Paco - Fila = Clave 1 Tiene_1,.] -Tipo ~ betra Uebade = Coste Total = Fecha _— rah = L mora [2 tere 1D ora 4} race A Hace Lt 1 PASAJERO TARJETA = Nombre = Direccién | Nombre = Ciudad 1 Poses 1“! 7 NGmero : = Tipo = Cédigo Postal = Fecha =Teléfono Casa = Vencimiento = Teléfono Oficina ~ Fax = E-mall Figura 1.6. Versién final del diagrama de clases. Diagramas de Clases Programa de Ingenieria de Sistemas ~ Ingenieria de Software I EJERCICIO 2, PARQUE DE ATRACCIONES. La empresa DIVERTIMENTO, S. A., tlene varlos parques de atracciones repartidos por la geografia colomblana. Lo que mas preocupa a esta empresa es la seguridad en algunas de las atracciones, ya que Un error mecénico podria producir dafios ‘materiales y humanos que plantearian serios problemas para la empresa. Hoy por hoy sélo es posible detectar falls en las atracciones, cuando las operarlos encargados realizan actividades de mantenimiento, La empresa quiere informatizar sus paraues de atracciones y para ello ya ha decicido poner en marcha un proyecto piloto Ccuyo objetivo sera el de dotar a uno de Sus parques de atracclanes de un sistema de deteccion automiatica ce fallos en las atracciones, En un primer momento se va 2 preparar el sistema para gestionar la noria (rueda de chicago) y la montafa rusa. La noria tiene una serie de vehiculos cotados cada uno de ellos de un detector gracias al cual se sabe en cada momento si el Vehiculo esta suficlentemente bien anclage a la estructura metalica de la noria. Si en un momento determinado se detectara pérdida de anclaje, el correspondiente vehiculo se lo camunicarla a la Central Receptora de Averlas (CRA) y también a la atraccién de la que forma parte dicho vehicula, asi en la préxima parada de cicha atraccién se tendrd constancia de que uno de sus vehicules ha solictado revisién. Por su parte, en la montafia rusa cada vagén esti dotado de igual modo de un detector de ancaje con el vagén que lleva detris (en el casa de llevarlo). Cada vagén detecta si existe suficiente anclaje con el vagén posterior y en caso de falta de anclaje avisa a la CRA y @ la atraccién, en este caso la ‘Cuando la CRA recibe un aviso, en el que se le indica el vehicula o vagén con posible averia y la atracclén de que se trata, busca inmediatamente un operario de mantenimiento disponible, En caso de no haber ninguna libre, informa ai componente en cLestién de que su peticin no puede ser atendida, asl dicho componente emitiré una sefial ce solletud de revisién hasta que su peticién le sea satisfecha Como cada operario de mantenimiento cobra un extra en funcién del nimero de averias que atiende al mes, cada uno tiene asignade mensualmente un dispositive gracias al cual recibe las posibles averias a atender, independientemente de fen qué zona del parque se encuentre. Cuando la CRA demanda la revisién de una posible aver'a’y encuentra un operario de mantenimiento libre le manda un mensaje indicéndole la calle del parque en la que se encuentra la atraccién y el numero de veniculo 0 vagén con posible averia, Automaticamente, el dispositive del operario pase a indicar que ese ‘operario se encuentra ocupado atendiendo una posible averia. Cuando el operario ha terminado de supervisaria, indica a su dispositivo que ha quedado libre para la siguiente peticién de averia que reciba. A su vez dicho dispositive informa 2 la CRA y al componente revisado. Dicho componente avisaré a su atraccién de que la operacion de mantenimiento solictada hha terminaco para que ésta lo tenga en cuenta a la hora de poner la etraccién en marcha de nuevo. Ademés, ol sistema tendré que ser capaz de contabilizar las personas que entran y salen de una atraccién, con el fin de controlar dos cosas; en primer lugar, que no entren més personas de las que la atraccién es capaz de sostener y, en Segundo lugar, que todo el munde abandone la atraccién una ver finalizaco caca viaje El controlador ée arranque y parada de la atraccién puede recibir un mensaje indicando que le atraccién esté llena, pare que inicie las labores de puesta en marcha de la atraccién; dicho mensaje puede provenir del torniquete de entrada que detecta cuando se produce le ocupacién maxima de la atraccién, o bien del propio operaria que vigil la atraccién siempre ue ain no estando llena no hay més personas esperendo para subir y él considera que es tiempo suficente como para ue se ponga en marcha. Una vez que el dispositive de parada y arranque de la atraccién detecta que la atraccién est detenida, le envia al torniquete de salida un mensaje para que se prepare para que la gente pase por él. El torniquete de salida sabe el ndmero de personas que hay en la atraccién gracias al torniquete de entrada, asi sabe el numero de personas que se tienen que bajar de la atraccién Cuando el torniquete de salida determina que el nlimero de personas que han abandonado la atraccién es igual al aimero de ellas que entré, envia al torniquete ce entrada un mensaje para que ponga a cero el contador de personas en la atraccién y ademas se libere y muestre un indicador verde para que la gente pueda tomar asiento en la atraccién. Si ppasados cinco minutos desde que la atraccién se paré el torniquete de salida no he lberado al torniquete de entrada, es Indicative de que alguien se ha quedado dentro y es necesario entrar a buscarlo Cuando el torniquete de entrada recibe, del torniquete de sala, el mensaje de liberarse, primero consulta a la atraccién si tiene alguna averia pendiente. Esto se reflejaré en la atraccién cuando uno o varias de los vehiculos © vaganes soliciten reparacién. La atraccién lleva un contador de averias pendientes de manera que sélo en el caso en que este contador esté 2 0 el torniquete de entrada se pondré verde para gue entren los usuarios. En caso contrario permaneceré en amarillo, Indicativo de estar esperando reparacién. SOLUCION. A continuacién se muestra el dlagrama de clases en el que se modela la parte estatica del sistema Vamos a identificar las posibles clases que podemos utilizar en nuestro modelo, examinande la especificacién que se ha dado en el problema y extrayendo los sustantivas existentes. Las clases cangidatas que hemos seleccionado inicialmente son las siguientes: Diagramas de Clases Programa de Ingenieria de Sistemas ~ Ingenieria de Software I Pargue de atracciones | Geografia Empresa ‘Atraccién Problema Instalacidn ‘Operario Actividad Proyecto Sistema, Noria Montara Tusa Vehicul Detector Central Receptora de Averlas (CRA) ‘Componente ‘Sefial PeticiSn Mes Disposttive del operario | Mensaje Calle Numero de vehicula | Personas Sala (Controlador ‘Torniquete Contador ‘Avera Vagén Una vez que hemos identificado las posibles clases, realizamos la seleccién de las clases que van a participar en el diagrama de clases, Para ello lo primero que hacemos es eliminar aquellas clases Irreleventes, Ya sea porque tiene poco 0 nada que ver con el problema que se esta modelando, porque no son especificas del entorno de la aplicacién o porque son tributes de clase. Asi pues, ellminamos las siguientes clases: Parque de atracciones [Geografia [Empresa Problema Instalacign [Actividad Proyecto Sistema [Detector ‘Componente Sefial Peticion Nes. Mensaje | Calle Numera Ge venieula | Personas | Sala ‘Controlador ‘Contador —[averia Dafios materiales Eliminamos la clase Operario, ya que consideramos que el operaria se relaciona con el sistema mediante la clase intertaz Dispositivo del operario, Finalmente las clases que van a participar en nuestro modelo son las siguientes: Atraccion [Waris MentaFa russ) 1 Vehiculo | Central Receptora de Averies (CRA)-Clase_| Dispositivo de Operario_| Torniquete[Vagén Tras identificar las clases definimos cuéles son las relaciones existentes entre ellas. Examinando de nuevo el enunciaco y aplicendo el proceso de generalizacién y especializacién, identiicaos la clase Torniquete y las subclases Torniquete de Entrada y Torniquete de Salida, Por tanto, existe una relacién de herencia entre estas tres clases. Entre las subclases existe una relacién uno a uno entre el Torniquete de Entrada y el de Salida que permite comparar si el ndmero de personas que salen es igual al que entran: Una Atraccién se activa por un Torniquete de Entrada y cada Torniquete de Entrada activa a una Gnica Atraccién. De igual forma una Atraccién comunica @ un Torniquete de Salida que deoe prepararse y un Torniquete de Salida se activa gracias 2 una Unica Atracci6n, ‘Aunque podriamos crear una relacin entre Atraccién y Torniquete y eliminar, por tento, la que une @ cada uno de los tipos de Torniquete, hemos preferido conservarlas para matizar que [a asociacién es distinta con cada uno de los tipos de Torniquete. Ya que una Atraccién puede ser una Noria © una Montatia realizando las funciones de Atraccin, utiizemos le relacién de herencia para relacionar a la clase Atraccién con las subelases Noria y Montafia, Por otra parte, una Noria esté formada por vehiculos, con lo cual existe una relacién de agregacién entre Noria y Vehiculo. De igual forma ocurre entre Montara rusa y vagén. Como un vagén errastra a otro vagén, tenemos Una relacién reflexive fen la clase vagén. La Central Receptora de Averias (CRA) mantiene 2 una o varias Atracclones, mientras que Atraccién sélo se mantiene por luna CRA. Finalmente una CRA gestiona varios Dispositives de operario y un Dispesitiva de operario es gestionade por una nica CRA, En la Figura 2.4 se muestra el diagrama de clases, con las operaciones y atributos que hemos identificado a partir de una lectura minuciosa de la especifcacién del problema, Diagramas de Clases Programa de Ingenieria de Sistemas ~ Ingenieria de Software I Torniquete a -Numero_Personas -——_— +Cuenta_Personas see pee ee Entrada _—_—_Comunica__| Salida Wa + |}_-——— — f—____, +Ponerse_Ama +Abrirse +Ponerse_Rojo +Cerrarse +Ponerse_Verde LO ee comuni 7 ‘omunica, Activa 1 1 Atraccion 1* ——____, 1 -Numero_Averias_Pendientes “calle Central_Receptora_Averias_CRA | Central Receptore—AveriesoA -Nombre po, +Anular_Averia_Pendiente ¥Buscer_Opararto_Libre +Registrar_Averia_Pendiente l Gestiona Nori Montana_Rusa St 1a -Num_Max_Ocupantes -Num_Max_QOcupantes 1 __ Dispositivo_Operario ered —Ir—TEOSOrrrErS ror srr -Cedula_Operario -Nombre_Operar -Estado_Operario 1 1.* _—_—______ +Indicar_Fin_Revision 1 Vehiculo Vagon +Indicar Ocupado -Num_Vehiculo -Num_Vagon oo _, +Detectar_Falta_Presion +Detectar_Falta_Pre: 1 Arrastra a Figura 2.1. Modelo de clases de la gestién del Parque, FIN DEL DOCUMENTO Diagramas de Clases

También podría gustarte