User Tools

Site Tools


apuntes:uml

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
apuntes:uml [2021/03/07 19:17] Santiago Faciapuntes:uml [2021/03/08 08:45] (current) – [Gestión del servicio público de bicicletas] Santiago Faci
Line 20: Line 20:
     * [[apuntes:uml#diagramass_de_secuencia|Diagrama de secuencia]]*     * [[apuntes:uml#diagramass_de_secuencia|Diagrama de secuencia]]*
     * Diagrama de colaboración     * Diagrama de colaboración
 +
 +----
 +
 +===== Herramientas para el diseño de Diagramas UML =====
 +
 +  * [[https://www.diagrams.net/|diagrams]] diagrams.net (draw.io) //[windows|linux|osx]//
 +  * [[https://staruml.io/|StarUML]] StarUML //[windows|linux|osx]//
 +  * [[https://www.modelio.org/|Modelio]] Modelio //[windows|linux|osx]//
  
 ---- ----
Line 53: Line 61:
 {{ youtube>tKymPlJhO2s }}\\ {{ youtube>tKymPlJhO2s }}\\
  
 +----
  
 ===== Diagramas de clases ===== ===== Diagramas de clases =====
Line 125: Line 134:
 </figure> </figure>
  
 +{{ youtube>vSx30CDT4i4 }}\\
  
 ---- ----
 +===== Ejercicios resueltos =====
  
-===== Herramientas para el diseño de Diagramas UML =====+{{ ejercicio.png}}
  
-  * [[https://www.diagrams.net/|diagrams]] diagrams.net (draw.io//[windows|linux|osx]// +==== Gestión de una biblioteca ==== 
-  * [[https://staruml.io/|StarUML]] StarUML //[windows|linux|osx]// + 
-  * [[https://www.modelio.org/|Modelio]] Modelio //[windows|linux|osx]//+Se quiere diseñar una aplicación web para la gestión de una biblioteca que funciona de la siguiente manera: 
 +  * En algún momento los usuarios tendrán que registrarse en la aplicación (y se almacenarán algunos datos sobre ellos) 
 +  * Los bibliotecarios también la utilizan para realizar su trabajo, por lo que también debe ser registrados en ellas (con la información pertinente) 
 +  * Los usuarios podrán solicitar libros (son enviados a su domicilio) y devolverlos (la biblioteca envía un mensajero a su casa) 
 +  * Los usuarios podrán renovar el carnet (el bibliotecario confirmará más adeante dicha renovación desde la aplicación) 
 +  * Los usuarios pueden enviar sugerencias de libros que les gustaría que hubiera en el catálogo 
 +  * Los usuarios pueden enviar consultas sobre libros 
 +  * Los bibliotecarios podrán consultar los libros que un usuario tiene asi como consultar el stock de la biblioteca 
 +  * Los bibliotecarios también pueden responder a las consultas de los usuarios  
 +  * Los bibliotecarios pueden actualizar/renovar el stock de libros, para lo cual tendrán que hacer un pedido a través de la aplicación 
 + 
 +=== Diagrama de casos de uso === 
 + 
 +{{ Biblioteca - Casos de uso.png }} 
 + 
 +=== Diagrama de clases === 
 + 
 +{{ Biblioteca - Diagrama de clases.png }} 
 + 
 +=== Diagrama de secuencia (Bibliotecario solicita un pedido de libros=== 
 + 
 +{{ Biblioteca - Diagrama de secuencia.png }} 
 + 
 +---- 
 + 
 +==== Gestión del servicio público de bicicletas ==== 
 + 
 +El Ayuntamiento de Zaragoza quiere implantar un sistema de control para las estaciones de bicicletas públicas que ha instalado recientemente. El objetivo es conocer donde están las bicicletas en cada momento y saber qué usuarios las han usado y cuando lo han hecho. Además, cada bicicleta tiene instalado un módulo de autodiagnóstico que detecta las averías para que éstas quede registradas y puedan ser reparadas por los técnicos del Ayuntamiento. 
 + 
 +  * De cada bicicleta se almacenará su matrícula, cuantas marchas tiene, el color, si tiene o no cesta, la velocidad máxima y si está o no averiada. 
 +  * Por otra parte, a los usuarios se les obliga a darse de alta a través de una web, aportando su DNI, nombre, apellidos, email, teléfono móvil y un número de cuenta. 
 +  * Hay que tener en cuenta que habrá muchas estaciones repartidas por la ciudad y que los usuarios deben poder consultar información relativa a éstas desde una página webel número asignado a la estación, dirección donde se encuentra, si está o no operativa, su capacidad máxima y el horario de apertura de dicha estación
 +  * Cuando el módulo de diagnóstico detecta una avería, la envía al servidor central aportando un número de avería, una descripción breve de la misma y la fecha en la que tuvo lugar. Por supuesto, habrá que saber qué bicicleta está averiada. De esa manera los mecánicos del servicio podrán consultar el fichero de averías y repararlas.  
 +  * También es importante que quede guardado qué mecánico arregló una avería determinada (de ellos se guarda su código de empleado, nombre, apellidos y teléfono móvil) teniendo en cuenta que cada uno tiene asignadas dos estaciones de las que hacerse cargo, aunque las bicicletas pueden estar en cualquier estación. 
 +  * Además, es necesario conocer en cada momento qué usuario tiene una bicicleta determinada asi como las bicicletas que han sido utilizadas por los usuarios y durante cuánto tiempo las usaron. En el caso de las averías también tienen que quedar registradas cuál fue el último usuario que usó la bicicleta averiada por si hubiera que multarlo 
 +  * Es muy importante tener en cuenta cómo funciona el proceso de desanclaje de bici por la que un usuario puede disponer de una bicicleta al pasar su tarjeta de usuario por alguna de las estaciones: 
 +    * El usuario pasa la tarjeta por el lector, éste la lee y comprueba que el usuario existe, que tiene saldo en la cuenta y que no tiene ninguna bicicleta en uso actualmente 
 +    * Tras las comprobaciones iniciales deberá comprobar si tiene bicis ancladas y si alguna se encuentra disponible (a veces las bicis están estacionadas pero pendientes de ser reparadas) 
 +    * Si todo está bien, libera el anclaje de la primera bici libre y lo notifica al usuario en la pantallaÉste tendrá 40 segundos para hacerse con la bici antes de que la estación vuelva a dejar la bicicleta anclada (por seguridad) 
 +     
 +=== Diagrama de casos de uso === 
 + 
 +{{ Bicicletas - Casos de uso.png }} 
 + 
 +=== Diagrama de clases === 
 + 
 +{{ Bicicletas - Diagrama de clases.png }} 
 + 
 +=== Diagrama de secuencia === 
 + 
 +{{ Bicicletas - Diagrama de secuencia.png }}
  
 ---- ----
Line 138: Line 199:
 ===== Ejercicios ===== ===== Ejercicios =====
  
-==== Casos de uso y Diagramas de clases ====+{{ ejercicio.png}}
  
-{{ ejercicio.png?75}}+==== Casos de uso y Diagramas de clases ====
  
   - Se quiere diseñar aplicación para gestionar todos los datos de un campeonato de fútbol sala que se organiza este año en la ciudad. Aquellos que quieran participar deberán formar un equipo (nombre, patrocinador,        color de la 1ª camiseta, color de la 2ª camiseta, categoría, . . .) e inscribirse en el campeonato. A medida que transcurran los partidos se irán almacenando los resultados de éstos, así como qué equipos lo jugaron, en qué campo se jugó, quién lo arbitró y alguna incidencia que pudiera haber ocurrido (en caso de que no ocurran incidencias no se anotará nada. Además, los participantes deberán rellenar una ficha de suscripción con algunos datos personales (nombre, apellidos, edad, dirección, teléfono, . . .)\\ \\   - Se quiere diseñar aplicación para gestionar todos los datos de un campeonato de fútbol sala que se organiza este año en la ciudad. Aquellos que quieran participar deberán formar un equipo (nombre, patrocinador,        color de la 1ª camiseta, color de la 2ª camiseta, categoría, . . .) e inscribirse en el campeonato. A medida que transcurran los partidos se irán almacenando los resultados de éstos, así como qué equipos lo jugaron, en qué campo se jugó, quién lo arbitró y alguna incidencia que pudiera haber ocurrido (en caso de que no ocurran incidencias no se anotará nada. Además, los participantes deberán rellenar una ficha de suscripción con algunos datos personales (nombre, apellidos, edad, dirección, teléfono, . . .)\\ \\
Line 148: Line 209:
     * En cada polideportivo hay varias pistas de diferentes deportes. De cada pista guardaremos un código que la identifica, el tipo de pista (tenis, fútbol, pádel, . . .), si está operativa o en mantenimiento, el precio y la última vez que se reservó     * En cada polideportivo hay varias pistas de diferentes deportes. De cada pista guardaremos un código que la identifica, el tipo de pista (tenis, fútbol, pádel, . . .), si está operativa o en mantenimiento, el precio y la última vez que se reservó
     * Cada vez que un usuario registrado quiera utilizar una pista tendrá que realizar una reserva previa a través de la web que el ayuntamiento ha creado. De cada reserva queremos registrar la fecha en la que se reserva la pista, la fecha en la que se usará y el precio. Hay que tener en cuenta que todos los jugadores que vayan a hacer uso de la pista deberán estar registrados en el sistema y serán vinculados con la reserva\\ \\     * Cada vez que un usuario registrado quiera utilizar una pista tendrá que realizar una reserva previa a través de la web que el ayuntamiento ha creado. De cada reserva queremos registrar la fecha en la que se reserva la pista, la fecha en la que se usará y el precio. Hay que tener en cuenta que todos los jugadores que vayan a hacer uso de la pista deberán estar registrados en el sistema y serán vinculados con la reserva\\ \\
-  - Se desea diseñar una aplicación para una sucursal bancaria que contenga información sobre los clientes,        las cuentas, las sucursales y las transacciones producidas. Diseña el modelo de clases teniendo en cuenta las        siguientes restricciones: 
-    * Una transacción viene determinada por su número de transacción, la fecha y la cantidad 
-    * Un cliente puede tener muchas cuentas 
-    * Una cuenta puede tener muchos clientes 
-    * Una cuenta sólo puede estar en una sucursal\\ \\ 
-  - Diseña el modelo de clases para una aplicación de gestión de una biblioteca con las siguientes restricciones: 
-    * Se quiere almacenar información sobre los libros de los que se dispone: titulo, editorial, número de           páginas y un resumen breve) 
-    * Se almacenará información sobre los autores: nombre, apellidos, fecha de nacimiento, fecha de          fallecimiento, nacionalidad y un breve resumen de su vida 
-    * De todos aquellos que se hagan socios de esta biblioteca se les hará una ficha con los siguientes           datos: nombre, apellidos, fecha de nacimiento, dirección, teléfono y e-mail 
-    * Por último, se quiere almacenar todos los libros que cogen prestados los socios para saber quién tiene           un determinado libro en cada momento y para conocer que lectores han leído alguna vez un libro determinado\\ \\ 
   - Diseña el diagrama de clases de una aplicación para la gestión de la secretaría de un colegio:   - Diseña el diagrama de clases de una aplicación para la gestión de la secretaría de un colegio:
     * Cuando un alumno venga a matricularse se le hará rellenar una ficha con sus datos que luego se           introducirá a la aplicación: DNI, número de expediente, nombre, apellidos, domicilio, teléfono y e-mail     * Cuando un alumno venga a matricularse se le hará rellenar una ficha con sus datos que luego se           introducirá a la aplicación: DNI, número de expediente, nombre, apellidos, domicilio, teléfono y e-mail
Line 164: Line 215:
     * Los profesores también están dentro de la Base de Datos, con la siguiente información: nombre,            apellidos, domicilio y e-mail. Un profesor podrá impartir como máximo 6 asignaturas y deberá impartir al            menos una. También habrá que almacenar el curso del que un profesor es tutor, teniendo en cuenta que puede            que no sea tutor de ningún curso     * Los profesores también están dentro de la Base de Datos, con la siguiente información: nombre,            apellidos, domicilio y e-mail. Un profesor podrá impartir como máximo 6 asignaturas y deberá impartir al            menos una. También habrá que almacenar el curso del que un profesor es tutor, teniendo en cuenta que puede            que no sea tutor de ningún curso
     * Hay que tener en cuenta que es importante almacenar las notas que cada alumno tiene en cada asignatura            a lo largo del curso en las distintas evaluaciones, así como las observaciones que los profesores podrán            anotar. Además, al principio de curso los alumnos escogerán con que compañero quieren realizar las prácticas            o trabajos de cada una de las asignaturas (será siempre con el mismo), información que almacenaremos también en la Base de Datos\\ \\     * Hay que tener en cuenta que es importante almacenar las notas que cada alumno tiene en cada asignatura            a lo largo del curso en las distintas evaluaciones, así como las observaciones que los profesores podrán            anotar. Además, al principio de curso los alumnos escogerán con que compañero quieren realizar las prácticas            o trabajos de cada una de las asignaturas (será siempre con el mismo), información que almacenaremos también en la Base de Datos\\ \\
-  - Diseña el modelo de clases de una aplicación que se ocupa de gestionar los empleados, departamentos y proyectos de una empresa, de acuerdo con los siguientes requisitos: 
-    * La compañía está organizada en departamentos. Cada departamento tiene un nombre único, un número único            y un empleado que lo dirige. Se debe almacenar la fecha en que dicho empleado comenzó a dirigir ese            departamento. Hay que tener en cuenta que un departamento puede tener diferentes localizaciones. 
-    * Cada departamento controla un cierto número de proyectos, cada uno de los cuales tiene un nombre y un            número únicos y se realizan en un solo lugar 
-    * Se almacena el nombre, número de la Seguridad Social, dirección, salario, sexo y fecha de nacimiento            de cada empleado. Todo empleado está asignado a un departamento, pero puede trabajar en varios proyectos que            no tienen por que ser del mismo departamento. Nos interesa saber el número de horas que un empleado dedica a            cada uno de los proyectos asignados 
-    * También se quiere guardar la relación de las cargas familiares de cada empleado para administrar el            seguro médico. Almacenaremos el nombre, sexo y fecha de nacimiento de cada una de las cargas familiares y su            parentesco con el empleado\\ \\ 
   - Diseña el modelo de clases para la siguiente aplicación de gestión para uno de los hoteles del complejo Gran Scala:   - Diseña el modelo de clases para la siguiente aplicación de gestión para uno de los hoteles del complejo Gran Scala:
     * En este hotel, los clientes se registran por Internet al solicitar su reserva, que podrá incluir una o varias        habitaciones. En cualquier caso la fecha de entrada y salida de todas las habitaciones de una misma reserva será la        misma. Además, debido a la exclusividad del hotel, cada habitación dispone de personal propio (uno o varios empleados, dependiendo del tipo de habitación). De los clientes almacenaremos nombre, apellidos, teléfono, email y fecha de nacimiento. Hay que tener en cuenta que guardaremos un histórico de todas las reservas que un cliente vaya realizando a lo largo del tiempo, pero en un momento dado un cliente sólo puede tener una reserva.     * En este hotel, los clientes se registran por Internet al solicitar su reserva, que podrá incluir una o varias        habitaciones. En cualquier caso la fecha de entrada y salida de todas las habitaciones de una misma reserva será la        misma. Además, debido a la exclusividad del hotel, cada habitación dispone de personal propio (uno o varios empleados, dependiendo del tipo de habitación). De los clientes almacenaremos nombre, apellidos, teléfono, email y fecha de nacimiento. Hay que tener en cuenta que guardaremos un histórico de todas las reservas que un cliente vaya realizando a lo largo del tiempo, pero en un momento dado un cliente sólo puede tener una reserva.
Line 217: Line 263:
   - Han abierto un centro comercial en Zaragoza y para su gestión se debe diseñar una Base de Datos para        almacenar toda la información sobre el mismo. Es el centro comercial más grande del mundo por lo que tendrá varios tipos de establecimientos: tiendas de ropa, restaurantes y museos. De todos ellos se almacenará el nombre, número de local, capacidad máxima y su horario. Además, de las tiendas de ropa se almacenará el tipo de ropa que venden y si están de rebajas o no. Para los restaurantes se almacenará el nombre del chef y el estilo de comida que preparan; y para los museos se almacenará una lista con los pintores que exponen sus obras en cada momento.   - Han abierto un centro comercial en Zaragoza y para su gestión se debe diseñar una Base de Datos para        almacenar toda la información sobre el mismo. Es el centro comercial más grande del mundo por lo que tendrá varios tipos de establecimientos: tiendas de ropa, restaurantes y museos. De todos ellos se almacenará el nombre, número de local, capacidad máxima y su horario. Además, de las tiendas de ropa se almacenará el tipo de ropa que venden y si están de rebajas o no. Para los restaurantes se almacenará el nombre del chef y el estilo de comida que preparan; y para los museos se almacenará una lista con los pintores que exponen sus obras en cada momento.
     * Además, se almacenará la información de los clientes que asisten a estos establecimientos (si éstos lo autorizan) almacenando el nombre, apellidos, dirección, teléfono y email. También se almacenará en qué establecimientos han hecho alguna compra y la cantidad a la que ésta asciende. Se ofrecerán descuentos a aquellos clientes que vengan recomendados por otros, por lo que es interesante almacenar esta relación.     * Además, se almacenará la información de los clientes que asisten a estos establecimientos (si éstos lo autorizan) almacenando el nombre, apellidos, dirección, teléfono y email. También se almacenará en qué establecimientos han hecho alguna compra y la cantidad a la que ésta asciende. Se ofrecerán descuentos a aquellos clientes que vengan recomendados por otros, por lo que es interesante almacenar esta relación.
-    * Puesto que también se celebran eventos de todo tipo en el centro comercial (almacenando el nombre del evento, fecha y tipo de evento, que podrá ser deportivo, festivo o cultural), se venderán entradas que los clientes podrán adquirir para asistir a los mismos. De las entradas se guardará la numeración, la fecha de compra, la butaca asignada y el tipo de entrada que podrá ser VIP, PREMIUM o NORMAL. Es importante que quede registrado a qué cliente pertenece cada entrada, ya que son personales\\ \\ +    * Puesto que también se celebran eventos de todo tipo en el centro comercial (almacenando el nombre del evento, fecha y tipo de evento, que podrá ser deportivo, festivo o cultural), se venderán entradas que los clientes podrán adquirir para asistir a los mismos. De las entradas se guardará la numeración, la fecha de compra, la butaca asignada y el tipo de entrada que podrá ser VIP, PREMIUM o NORMAL. Es importante que quede registrado a qué cliente pertenece cada entrada, ya que son personales\\
-  - La organización de la vuelta ciclista a España 2016 ha decidido crear una web para seguir el transcurso del evento en directo. Para comenzar se debe diseñar el modelo de datos. Se desea almacenar información de todos los ciclistas (dorsal, nombre, apellidos, fecha de nacimiento, nacionalidad y el equipo al que pertenecen). De cada equipo de la vuelta almacenaremos el nombre, la marca a la que representa, la nacionalidad y el presupuesto. Además, cada equipo tendrá un líder, que será un corredor del equipo. +
-    * También se quiere almacenar todas las etapas de esta edición, almacenando el número de la etapa, el origen, el destino, la distancia en kms y el tipo de etapa (montaña o contrarreloj). Si la etapa es de montaña además se almacenarán los nombres de los puertos de montaña que atraviesa y la pendiente media de toda la etapa. Si fuera una contrarreloj se añade en que kilómetros intermedios se tomarán tiempos. Una vez terminada cada etapa se almacenará qué corredores han quedado en los tres primeros puestos y el tiempo que les ha costado. +
-    * Por último, en esta edición de la vuelta se quiere tener registrada cada bicicleta que use cualquier corredor, teniendo en cuenta que un corredor puede usar más de una bicicleta pero que una bicicleta determinada sólo puede haberla usado un corredor. De cada bicicleta almacenaremos la marca, el modelo y el estado (en uso, rota o en reparación) y también es necesario que queden registradas las fechas entre las que el corredor la utilizó en carrera. +
 ==== Diagramas de secuencia ==== ==== Diagramas de secuencia ====
  
-  - Realiza el diagrama de secuencia del proceso de validación de un carrito de la compra. Durante el proceso se debe comprobar que hay stock suficiente de todos los productos, se debe actualizar éste en base de datos y también el pedido. Además, se registrará una orden de trabajo en los almacenes que corresponda y se enviará un email de confirmación al usuario +  - Realiza el diagrama de secuencia del proceso de validación de un carrito de la compra. Durante el proceso se debe comprobar que hay stock suficiente de todos los productos, se debe actualizar éste en base de datos y también el pedido. Además, se registrará una orden de trabajo en los almacenes que corresponda y se enviará un email de confirmación al usuario\\ \\ 
-  - Realiza el diagrama de secuencia del proceso de baja de un usuario en una tienda online. Para que el proceso se complete se debe comprobar antes que no tiene pedidos pendientes de entrega ni de pagar. Tras la baja efectiva en base de datos se le enviará un email de confirmación al usuario+  - Realiza el diagrama de secuencia del proceso de baja de un usuario en una tienda online. Para que el proceso se complete se debe comprobar antes que no tiene pedidos pendientes de entrega ni de pagar. Tras la baja efectiva en base de datos se le enviará un email de confirmación al usuario\\ \\
   - Realiza el diagrama de secuencia del proceso de publicación de notas finales de una aplicación de gestión académica. El proceso de publicación debe comprobar si el alumno supera o no la asignatura (verificando el valor de la nota) para registrarlo asi en la base de datos. Además, si el alumno tiene ya superadas todas las asignaturas, deberá calcular su nota final para registrarla también en la base de datos. Finalmente, debe emitir un informe de evaluación, que también se registra.   - Realiza el diagrama de secuencia del proceso de publicación de notas finales de una aplicación de gestión académica. El proceso de publicación debe comprobar si el alumno supera o no la asignatura (verificando el valor de la nota) para registrarlo asi en la base de datos. Además, si el alumno tiene ya superadas todas las asignaturas, deberá calcular su nota final para registrarla también en la base de datos. Finalmente, debe emitir un informe de evaluación, que también se registra.
- 
----- 
- 
-===== Ejercicios resueltos ===== 
- 
-==== Gestión de una biblioteca ==== 
- 
-Se quiere diseñar una aplicación web para la gestión de una biblioteca que funciona de la siguiente manera: 
-  * En algún momento los usuarios tendrán que registrarse en la aplicación (y se almacenarán algunos datos sobre ellos) 
-  * Los bibliotecarios también la utilizan para realizar su trabajo, por lo que también debe ser registrados en ellas (con la información pertinente) 
-  * Los usuarios podrán solicitar libros (son enviados a su domicilio) y devolverlos (la biblioteca envía un mensajero a su casa) 
-  * Los usuarios podrán renovar el carnet (el bibliotecario confirmará más adeante dicha renovación desde la aplicación) 
-  * Los usuarios pueden enviar sugerencias de libros que les gustaría que hubiera en el catálogo 
-  * Los usuarios pueden enviar consultas sobre libros 
-  * Los bibliotecarios podrán consultar los libros que un usuario tiene asi como consultar el stock de la biblioteca 
-  * Los bibliotecarios también pueden responder a las consultas de los usuarios  
-  * Los bibliotecarios pueden actualizar/renovar el stock de libros, para lo cual tendrán que hacer un pedido a través de la aplicación 
- 
-=== Diagrama de casos de uso === 
- 
-{{ Biblioteca - Casos de uso.png }} 
- 
-=== Diagrama de clases === 
- 
-{{ Biblioteca - Diagrama de clases.png }} 
- 
-=== Diagrama de secuencia (Bibliotecario solicita un pedido de libros) === 
- 
-{{ Biblioteca - Diagrama de secuencia.png }} 
- 
----- 
- 
-==== Gestión del servicio público de bicicletas ==== 
- 
-El Ayuntamiento de Zaragoza quiere implantar un sistema de control para las estaciones de bicicletas públicas que ha instalado recientemente. El objetivo es conocer donde están las bicicletas en cada momento y saber qué usuarios las han usado y cuando lo han hecho. Además, cada bicicleta tiene instalado un módulo de autodiagnóstico que detecta las averías para que éstas quede registradas y puedan ser reparadas por los técnicos del Ayuntamiento. 
- 
-  * De cada bicicleta se almacenará su matrícula, cuantas marchas tiene, el color, si tiene o no cesta, la velocidad máxima y si está o no averiada. 
-  * Por otra parte, a los usuarios se les obliga a darse de alta a través de una web, aportando su DNI, nombre, apellidos, email, teléfono móvil y un número de cuenta. 
-  * Hay que tener en cuenta que habrá muchas estaciones repartidas por la ciudad y que los usuarios deben poder consultar información relativa a éstas desde una página web: el número asignado a la estación, dirección donde se encuentra, si está o no operativa, su capacidad máxima y el horario de apertura de dicha estación. 
-  * Cuando el módulo de diagnóstico detecta una avería, la envía al servidor central aportando un número de avería, una descripción breve de la misma y la fecha en la que tuvo lugar. Por supuesto, habrá que saber qué bicicleta está averiada. De esa manera los mecánicos del servicio podrán consultar el fichero de averías y repararlas.  
-  * También es importante que quede guardado qué mecánico arregló una avería determinada (de ellos se guarda su código de empleado, nombre, apellidos y teléfono móvil) teniendo en cuenta que cada uno tiene asignadas dos estaciones de las que hacerse cargo, aunque las bicicletas pueden estar en cualquier estación. 
-  * Además, es necesario conocer en cada momento qué usuario tiene una bicicleta determinada asi como las bicicletas que han sido utilizadas por los usuarios y durante cuánto tiempo las usaron. En el caso de las averías también tienen que quedar registradas cuál fue el último usuario que usó la bicicleta averiada por si hubiera que multarlo 
-  * Es muy importante tener en cuenta cómo funciona el proceso de desanclaje de bici por la que un usuario puede disponer de una bicicleta al pasar su tarjeta de usuario por alguna de las estaciones: 
-    * El usuario pasa la tarjeta por el lector, éste la lee y comprueba que el usuario existe, que tiene saldo en la cuenta y que no tiene ninguna bicicleta en uso actualmente 
-    * Tras las comprobaciones iniciales deberá comprobar si tiene bicis ancladas y si alguna se encuentra disponible (a veces las bicis están estacionadas pero pendientes de ser reparadas) 
-    * Si todo está bien, libera el anclaje de la primera bici libre y lo notifica al usuario en la pantalla. Éste tendrá 40 segundos para hacerse con la bici antes de que la estación vuelva a dejar la bicicleta anclada (por seguridad) 
-     
-=== Diagrama de casos de uso === 
- 
-{{ Bicicletas - Casos de uso.png }} 
- 
-=== Diagrama de clases === 
- 
-{{ Bicicletas - Diagrama de clases.png }} 
- 
-=== Diagrama de secuencia === 
- 
-{{ Bicicleta - Diagrama de secuencia.png }} 
  
 ---- ----
  
 (c) 2020-2021 Santiago Faci (c) 2020-2021 Santiago Faci
apuntes/uml.1615144628.txt.gz · Last modified: 2021/03/07 19:17 by Santiago Faci