0% encontró este documento útil (0 votos)
21 vistas107 páginas

ASI Grupo 07

Cargado por

Dani Martin
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
21 vistas107 páginas

ASI Grupo 07

Cargado por

Dani Martin
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

ANÁLISIS DEL SISTEMA DE INFORMACIÓN

“Hoteles.com”

Edición: 01
Fecha: 28 de abril de 2024
Autores:
Daniel Martin Perez
CONTROL Y REGISTRO DE CAMBIO DEL DOCUMENTO

CONTROL

Proyecto Hoteles.com

Denominación Análisis del Sistema de Información de Hoteles.com

Fecha 28/04/2024

Edición 01

Grupo 7
Daniel Martín Pérez
Autores
Pablo Vílchez Rivas
David Garcia Lopez
Juan Rodriguez Lopez
1 DEFINICIÓN DEL SISTEMA 2
1.1 Alcance del Sistema 2
1.2 Entorno Tecnológico 6
1.3 Estándares y Normas 7
1.4 Usuarios Participantes y Finales 7
2 ESPECIFICACIÓN DE REQUISITOS 10
2.1 Catálogo de Requisitos 10
2.2 Especificación de Casos de Uso 16
2.2.1 Identificación y definición de Actores 17
2.2.2 Diagrama de Casos de Uso 17
2.2.3 Especificación de Casos de uso 19
2.2.4 Matriz de Trazabilidad Requisitos – Casos de Uso 19
3 SUBSISTEMAS DE ANÁLISIS 46
3.1 Identificación de Subsistemas de Análisis 46
3.2 Relaciones entre Subsistemas de Análisis 47
3.3 Matriz de Trazabilidad 48
4 ANÁLISIS DE LAS CLASES POR SUBSISTEMAS 49
5 INTERFACES DE USUARIO 66
5.1 Principios de Diseño de la Interfaz de Usuario 66
5.2 Subsistema S1 69
5.2.1 Modelo de Navegación del Subsistema 69
5.2.2 5.2.2 Interfaz del módulo 0002 70
5.2.3 Interfaz del Módulo 0003 72
5.2.4 Interfaz del módulo 0008 74
5.2.5 Interfaz del módulo 0009 76
5.2.6 Interfaz del módulo 0004 78
5.2.7 Interfaz del módulo 0010 79
5.2.8 Interfaz del módulo 0011 80
5.2.9 Interfaz del módulo 0005 82
5.2.10 Interfaz del módulo 0012 83
5.2.11 Interfaz del módulo 0013 85
5.2.12 Interfaz del módulo 0006 86
5.2.13 Interfaz del módulo 0014 87
5.2.14 Interfaz del módulo 0015 89
5.2.15 Interfaz del módulo 0007 91
5.2.16 Interfaz del módulo 0016 92
5.2.17 Interfaz del módulo 0017 93
5.2.18 Interfaz del módulo 0018 95
5.3 Subsistema S2 96
5.3.1 Interfaz del módulo 0019 96
5.4 Matriz de Trazabilidad Módulo de Interfaz - Actores 97
6 INFORMES 99
7 COMUNICACIÓN CON SISTEMAS EXTERNOS 100
8 PLAN DE PRUEBAS 103
8.1 Alcance de las Pruebas 103
8.2 Entornos de Pruebas 103
8.3 Pruebas de Aceptación del Sistema 104
9 GLOSARIO 104
1 Definición del sistema.
1.1 Alcance del Sistema.

El objetivo de este proyecto es ayudar a empresas orientadas a la hostelería a


gestionar el negocio. Centralizando los datos y las funciones que estas ofrezcan en
una aplicación intuitiva.

Al hablar de gestionar el negocio, hay distintos objetos que gestionar:


Gestionar el personal, gestionar los servicios que ofrece la empresa y gestionar la
información de los clientes.

Esta aplicación también permitirá la organización y comunicación del personal


dentro de la empresa gracias a una herramienta de calendario, evitando así solapes
dentro del trabajo.

También existirá la opción de generar un ticket para una posible queja con respecto
al software implementado.

Los objetivos por tanto serán:

OBJ–001 Gestión Personal


Versión 01
Autores Pablo Vílchez Rivas
Fuente Administrador del sistema
Descripció El sistema deberá permitir las operaciones CRUD del personal
n al cargo del hotel. A su vez, se deberá contemplar la posible
migración de personal dentro de la misma empresa de un hotel
a otro. Siendo posible administrar una cadena de hoteles.
Importanci Vital
a
Estado Aprobado
Comentari
os

OBJ–002 Gestión Servicios


Versión 01
Autores Pablo Vílchez Rivas, Daniel Martín Pérez
Fuente Administrador del sistema
Descripció El sistema deberá al administrador del hotel añadir, modificar y
n dar de baja los servicios que este ofrezca. Pudiendo añadir
información extra como precio o tiempo máximo del servicio.
Los servicios por defecto de la aplicación serán:
● Servicio de Habitaciones
● Servicio de Restaurante
● Servicio de Taxi asociado al hotel

Importanci Vital
a
Estado Aprobado
Comentari
os

OBJ–003 Gestión Clientes


Versión 01
Autores David García López, Daniel Martín Pérez
Fuente Administrador del sistema y clientes del hotel.
Descripció El sistema deberá permitir la alta de los clientes al
n administrador. Permitiendo a los clientes de los hoteles modificar
los datos así como darse de baja.
Cada cliente estará asociado a un rol el cual le permitirá acceder
a más o menos servicios que el hotel ofrezca
Importanci Alta
a
Estado Aprobado
Comentari
os

OBJ–004 Herramienta Calendario


Versión 01
Autores Pablo Vílchez Rivas, Juan Rodríguez López
Fuente Personal Hotelero
Descripció El sistema deberá permitir a los trabajadores del hotel crear una
n instancia dentro del calendario donde podrán expresar la
importancia de esta, a quién se le asocia esta instancia y hasta
cuando durará. Los eventos pueden ser el alquiler de un servicio
del hotel. Una baja del personal o la posibilidad de anular algún
servicio por motivos festivos.
Este calendario estará basado en la API de Google Calendar.
Importanci Media
a
Estado Aprobado
Comentari
os
OBJ–005 Gestión Tickets
Versión 01
Autores Pablo Vílchez Rivas
Fuente Personal Hotelero, Clientes y Administrador del Sistema
Descripció El sistema deberá permitir la creación de un ticket de incidencia
n para la posible resolución del problema. Este sólo podrá ser
dado de baja por el administrador del sistema.
Importanci Alta
a
Estado Aprobado
Comentari
os

OBJ–006 Informe de Ocupación


Versión 01
Autores David García López, Daniel Martín Pérez
Fuente Personal del Hotel
Descripció El sistema deberá permitir mostrar una lista de las habitaciones
n disponibles.
Importanci Baja
a
Estado Aprobado
Comentari
os

OBJ–007 Gestión de Reserva de Habitación


Versión 01
Autores Pablo Vílchez Rivas
Fuente Personal del Hotel
Descripció El sistema deberá permitir reservar una habitación o cancelar
n una reserva.
Importanci Alta
a
Estado Aprobado
Comentari
os

Flujo de gestión

En este flujo se comprende el inicio de sesión. Una vez iniciado, dependiendo del rol
asociado a tu sesión podrás gestionar ciertos módulos de la aplicación los cuales
tienen permitidos operaciones CRUD. Una vez realizada la operación CRUD
seleccionada tendremos la opción de gestionar otro módulo permitido. Esto
comprenderá un bucle que finalizará en el momento en el que cerremos la sesión.

Flujo de la herramienta de calendario


Iniciamos sesión como empleado del hotel. Una vez iniciado tenemos la opción de
crear una instancia. Indicando así a quién y a qué se asocia esa instancia y un
intervalo temporal que señalará el inicio y final de esta. Tras esto podemos cerrar
sesión; terminando así el flujo, o crear otra instancia en el calendario.

Flujo de la gestión de tickets

Al querer gestionar tickets tenemos dos opciones. Podemos iniciar sesión como
administrador, lo cual nos permitirá dar de baja el ticket indicando así que el
problema ha sido resuelto. O podremos crear un ticket, esto no tendrá la necesidad
de iniciar sesión puesto que será anónimo.

Entorno Tecnológico
El Sistema Servidor Web que contemplará las aplicaciones y las peticiones desde
los respectivos clientes se basa en un sistema Linux CentOS, un sistema dedicado
a servidores con una buena robustez y de licencia abierta. Este sistema es
compatible para virtualizaciones en la nube como para servidores locales, pudiendo
ser administrados remotamente. Se recomienda por ello un entorno de desarrollo
como puede ser VSCode (Visual Studio Code) y un patrón arquitectónico basado en
MVC.

Respecto a la parte del cliente, en concreto administradores y trabajadores, éstos


tendrán un entorno web con un panel para administrar las necesidades del sistema.
Haciendo una rápida ejecución de las incidencias que puedan haber en este.

También, en la parte del cliente, pero enfocado a los clientes de los hoteles. Existirá
la posibilidad de usar la aplicación tanto en soporte móvil como en la web. Esto
facilitará la comodidad a la hora de usar los servicios como la creación de tickets o
la gestión de sus datos.

En el caso de los sistemas gestores de la base de datos, optaremos por MariaDB.


Un gestor Open Source que soporta la concurrencia de las peticiones con gran
robustez. A esto hay que tenerle en cuenta que cada hotel tendrá una base de datos
única e independiente.

Estándares Y Normas

El sistema servidor debe estar compuesto por una arquitectura lógica de tres capas,
representando un patrón arquitectónico basado en el Modelo Vista Controlador. Por
otra parte, para el acceso a datos, se implementará el patrón de microarquitectura
DAO, facilitando el acceso a los datos.
En lo referente a la LOPD (Ley Orgánica de Protección de Datos), los hoteles
deberán firmar un contrato para darnos derecho a obtener la información pertinente
al contratar nuestros servicios. Siendo ellos los encargados de la gestión de los
datos de los clientes de dichos hoteles.

Usuarios Participantes y Finales

Cargo Nombre Implicación

Responsable del Daniel Martín Pérez Participación en los


Proyecto requisitos del proyecto,
verificar que en cada
reunión se cumplía con la
planificación y la
validación de las mismas.
Con los recursos y
presupuestos
establecidos.
Diseñador Gráfico Pablo Vílchez Rivas Se ha encargado de dar
una imagen a la
aplicación fácil y amable
a cualquier usuario.

Analista FrontEnd Juan Rodríguez López Participación de las


reuniones de requisitos,
determinación de los
subsistemas a nivel de
análisis a la aplicación en
la capa del cliente.

Analista BackEnd David García López Participación de las


reuniones de requisitos,
determinación de los
subsistemas a nivel de
análisis y administración
de datos a la aplicación
en la capa del servidor.

Analista Base de Datos David García López Participación de las


reuniones de toma de
decisión en el análisis de
la base de datos
implementada para el
sistema.

Analista Tester Pablo Vílchez Rivas Participación en la


aprobación de la
planificación y diseño, así
como el encargado de
preparar una batería de
pruebas a la aplicación y
los sistemas pertinentes.

Arquitecto Software Daniel Martín Pérez Ha realizado un análisis


de las infraestructuras
para
determinación de
necesidades
tecnológicas,
especificación de
estándares y normas, y la
identificación de la
arquitectura y el diseño
a nivel software y
hardware
para su posterior
implementación. También
ha sido responsable de la
configuración, despliegue
y
publicación del entorno
software y hardware en
entorno de pruebas y
producción.

Arquitecto Base de Datos David García López Ha realizado un análisis


ante la capacidad de la
base de datos
implementada en la
posible sobrecongestión
de esta y la capacidad de
almacenar la información
necesaria para la fluidez
de la aplicación. Así como
el análisis de posibles
cambios necesarios que
esta pueda tener con el
paso del tiempo.

Responsable de Juan Rodríguez López Ha realizado análisis ante


Seguridad y las vulnerabilidades que
Administración del pudiera haber en el
Sistema sistema y la
implementación de los
servidores. Haciéndose
responsable de la
securización de los
sistemas.

Programador FrontEnd Juan Rodríguez López Han recibido cursos de


actualización sobre las
tecnologías en las cuales
van a desarrollar, así
como
implementar la parte de
esta aplicación
relacionada con
aplicaciones móviles y
web las cuales
conectarán con el sistema
servidor. También han
realizado pruebas
unitarias con cada una de
sus implementaciones

Programador BackEnd Pablo Vílchez Rivas y Han recibido cursos de


David García López actualización sobre las
tecnologías en las cuales
van a desarrollar, así
como
implementar la parte de
esta aplicación
relacionada con el
servidor que recibirá las
peticiones desde los
sistemas clientes y las
pertinentes pruebas
unitarias para cada
uno de los subsistemas
implementados.

Tester Daniel Martín Pérez Han recibido curso de


actualización de las
tecnologías a utilizar en
las
pruebas que realizarán,
han
aplicado pruebas de
carga, de
integración y seguridad
en
cada uno de los
subsistemas
de esta aplicación.

Modelo de Dominio
2. ESPECIFICACIÓN DE REQUISITOS

2.1. Catálogo de Requisitos

2.1.1. Requisitos funcionales

A continuación, se definen los requisitos funcionales del sistema obtenidos a partir


de los objetivos del sistema.

RF-001 Gestión de personal


Versión 1.0
Autores David García López,Daniel Martín Pérez,Pablo Vílchez
Rivas,Juan Rodríguez López

Fuentes Recursos humanos y administrador del sistema

Objetivos ● OBJ-01: Gestión personal


asociados
Descripción El sistema deberá contemplar las siguientes
funcionalidades:
● El sistema registra la alta de un nuevo empleado
al hotel con ayuda de recursos humanos para la
entrevista
● El sistema registra la baja de un empleado con
ayuda de recursos humanos para dar las
explicaciones del despido
● El sistema permite modificar los datos del personal
actual del hotel
● El sistema permite que los empleados actuales
puedan migrar a otro hotel de la misma franquicia

Actores Actor
Administrador del sistema
Personal hotelero
Comentarios N/A

RF-002 Gestión de servicios


Versión 1.0
Autores David García López,Daniel Martín Pérez,Pablo Vílchez
Rivas,Juan Rodríguez López

Fuentes administrador del sistema

Objetivos ● OBJ-02:Gestión servicio


asociados
Descripción El sistema debe contemplar la petición de un servicio por
parte del cliente: Habitaciones,Restaurante y taxis
Actores Actor
Administrador del sistema
Cliente
Comentarios N/A

RF-003 Generar informe de ocupación


Versión 1.0
Autores David García López,Daniel Martín Pérez,Pablo Vílchez
Rivas,Juan Rodríguez López
Fuentes administrador del sistema

Objetivos ● OBJ-06: Generar informe de ocupación


asociados
Descripción El sistema deberá contemplar las siguientes
funcionalidades:

● El sistema informa de la ocupación del hotel por


día, semana,mes o año
● El sistema muestra las ocupaciones según el tipo
de habitación

Actores Actor
Administrador del sistema
Cliente
Comentarios N/A

RF-004 Atender quejas y sugerencias


Versión 1.0
Autores David García López,Daniel Martín Pérez,Pablo Vílchez
Rivas,Juan Rodríguez López

Fuentes personal de atención al cliente y administrador del


sistema
Objetivos ● OBJ-05: Gestión tickets
asociados
Descripción El sistema deberá contemplar las siguientes
funcionalidades:

● El sistema permite a los huéspedes registrar


quejas y sugerencias
● El sistema envía las quejas y sugerencias al
personal de atención al cliente
● El sistema registra las acciones para resolver las
quejas y las sugerencias

Actores Actor
Administrador del sistema
Cliente
Personal hotelero
Comentarios N/A
RF-005 Gestión de clientes
Versión 1.0
Autores David García López,Daniel Martín Pérez,Pablo Vílchez
Rivas,Juan Rodríguez López

Fuentes administrador del sistema

Objetivos ● OBJ-03: Gestión clientes


asociados
Descripción El sistema deberá contemplar las siguientes
funcionalidades:

● El sistema permite dar de alta a los nuevos


clientes
● El sistema permite dar de baja a los clientes
● El sistema puede modificar la información de los
clientes
● El sistema permite asociar distintos roles a cada
cliente, para poder elegir según que servicios

Actores Actor
Administrador del sistema
Comentarios N/A

RF-006 Gestión de Reserva de Habitaciones


Versión 1.0
Autores David García López,Daniel Martín Pérez,Pablo Vílchez
Rivas,Juan Rodríguez López

Fuentes Cliente

Objetivos ● OBJ-07: Gestión de Reserva de Habitaciones


asociados
Descripción El sistema deberá contemplar las siguientes
funcionalidades:

● El sistema permite dar de alta una nueva reserva


● El sistema permite cancelar una reserva
● El sistema permite modificar una reserva del
cliente

Actores Actor
Cliente
Comentarios N/A

2.1.2 Requisitos no funcionales

RNF-01 Consistencia
Versión 1.0
Autores David García López,Daniel Martín Pérez,Pablo Vílchez
Rivas,Juan Rodríguez López

Objetivos ● OBJ-07: Gestión de reserva de habitaciones


asociados ● OBJ-03: Gestión de clientes
● OBJ-02:Gestón de servicios
● OBJ-05:Gestionar tickets

Descripción
El sistema deberá permitir que los datos guardados sean
coherentes ante cualquier cambio que se realice sobre
los mismos.

Comentarios N/A

RNF-02 Alta disponibilidad


Versión 1.0
Autores David García López,Daniel Martín Pérez,Pablo Vílchez
Rivas,Juan Rodríguez López

Objetivos ● OBJ-07: Gestión de reserva de habitaciones


asociados ● OBJ-03: Gestión de clientes
● OBJ-05:Gestión de tickets

Descripción
Debido a que la información de la Base de Datos va a ser
consultada y modificada de forma regular, el sistema
deberá permitir el acceso a dicha información en todo
momento, y deberá realizar un balanceo de la carga de la
información entre las diferentes copias de la Base de
Datos para garantizar que este requisito se cumpla.

Comentarios N/A

RNF-03 Seguridad
Versión 1.0
Autores David García López,Daniel Martín Pérez,Pablo Vílchez
Rivas,Juan Rodríguez López

Objetivos ● OBJ-07: Gestión de reserva de habitaciones


asociados ● OBJ-03: Gestión de clientes
● OBJ-05:Gestión de tickets
● OBJ-01:Gestión de personall

Descripción

El sistema deberá contar con todas las medidas de


seguridad necesarias para garantizar que el RNF-02 se
cumple y, además, que se cumpla la Ley Orgánica de
Protección de Datos.

Comentarios N/A

RNF-04 Estándares y normas de desarrollo


Versión 1.0
Autores David García López,Daniel Martín Pérez,Pablo
Vílchez Rivas,Juan Rodríguez López

Objetivos ● OBJ-07: Gestión de reserva de habitaciones


asociados ● OBJ-03: Gestión de clientes
● OBJ-05:Gestión de tickets
● OBJ-01:Gestión de personal

Descripción
El desarrollo del sistema se deberá realizar siguiendo
los estándares y normas definidos por la empresa y
las tecnologías empleadas.

Comentarios N/A

2.1.3. Matriz de trazabilidad Requisitos - Objetivos

Requisito OBJ-01 OBJ-02 OBJ-03 OBJ-04 OBJ-05 OBJ-06 OBJ-07


/ Objetivo

RF -001 X

RF - 002 X

RF - 003 X X

RF - 004 x

RF - 005

RF - 006 X X

2.2. Especificación de Casos de Uso

2.2.1 Identificacion y definicion de Actores

Actores Descripción

ACTOR01 - Administrador del sistema Se trata del usuario administrador que


tendrá que realizar las tareas de
administración del sistema, las
incidencias de los clientes y los
baneos.
ACTOR02 - Cliente Se trata del usuario cliente que puede
realizar todas las acciones realizadas
con reservar una habitacion,solicitar un
servicio y enviar quejas y solicitudes.

ACTOR03 - Personal hotelero Se trata del usuario trabajador del


hotel que puede realizar las acciones
de contratar,modificar datos y despedir
personal del hotel y atender las quejas
de los clientes.

2.2.2. Diagrama de Casos de Uso

2.2.2.1. Diagrama de gestión personal

2.2.2.2. Diagrama de gestión de clientes


2.2.2.3. Diagrama de gestión de reservas

2.2.2.4. Diagrama de gestión de servicios


2.2.2.5. Diagrama de gestión de quejas y sugerencias

2.2.2.6. Diagrama de informe de ocupación

2.2.3 Especificación de Casos de uso


2.2.3.1 Especificaciones de Casos de Uso de Gestion de personal

CU-001 ALTA Personal

Versión 01

Descripción El sistema tiene que permitir dar de alta a un nuevo personal


trabajador del hotel.

Actores Administrador y personal hotelero.

Dependencias CU-023

Precondición El usuario debe estar logado en el sistema con el usuario de


Administrador.

Postcondición Se dio de alta un nuevo empleado a la empresa

Flujo Normal PASO / ACCIÓN

1. El personal hotelero de recursos humanos pulsa la opción


de alta para nuevo empleado.

2. El sistema solicita el nombre, DNI, dirección, CP, teléfono


y correo electrónico.

3. El personal hotelero proporciona los datos del nuevo


empleado.

4. El sistema valida los datos y notifica al personal.

5. Finaliza el caso de Uso.

Flujos PASO / ACCIÓN


Alternativos

4. El Sistema encuentra fallos en la validación y notifica.


5. Se regresa al punto 2 del flujo normal.

PASO / ACCIÓN

3. El personal hotelero cancela el alta.

4. Finaliza el caso de Uso.

Observaciones ---

CU-002 Modificación Personal

Versión 01

Descripción El sistema tiene que permitir modificar los datos del personal
hotelero solicitado.

Actores Administrador y personal hotelero.

Dependencias CU-023

Precondición El trabajador debe estar dado de alta en la base de datos de


los trabajadores y se debe estar logado en el sistema.

Postcondición Se modificaron los datos del trabajador

Flujo Normal PASO / ACCIÓN

1. El personal hotelero pulsa la opción de modificar los datos


del trabajador..

2. El sistema pone a disposición todos los datos para


cambiarlos..

3. El personal hotelero modifica los datos del empleado.

4. El sistema valida los datos y notifica al personal.


5. Finaliza el caso de Uso.

Flujos PASO / ACCIÓN


Alternativos

4. El Sistema encuentra fallos en la validación y notifica.

5. Se regresa al punto 2 del flujo normal.

PASO / ACCIÓN

3. El personal hotelero cancela la modificación.

4. Finaliza el caso de Uso.

Observaciones ---

CU-003 Eliminación Personal

Versión 01

Descripción El sistema tiene que permitir eliminar al trabajador de la base


de datos del personal hotelero

Actores Administrador y personal hotelero.

Dependencias CU-023

Precondición El trabajador debe estar dado de alta en la base de datos de


los trabajadores y se debe estar logado en el sistema como
administrador

Postcondición Se modificaron los datos del trabajador

Flujo Normal PASO / ACCIÓN


1. El personal hotelero pulsa la opción de eliminar los datos
del trabajador..

2. El sistema pone a disposición una opción para explicar los


motivos del despido

3. El personal hotelero explica sus motivos y elimina los


datos del empleado.

4. El sistema elimina los datos y notifica al personal.

5. Finaliza el caso de Uso.

Flujos PASO / ACCIÓN


Alternativos

4. El Sistema encuentra fallos en la validación y notifica.

5. Se regresa al punto 2 del flujo normal.

PASO / ACCIÓN

3. El personal hotelero cancela la eliminación.

4. Finaliza el caso de Uso.

Observaciones ---

CU-004 Listado personal

Versión 01

Descripción El sistema tiene que permitir listar todo el personal disponible

Actores Administrador.

Dependencias CU-023
Precondición El usuario debe estar logado en el sistema como personal del
hotel.

Postcondición Se listó todo el personal disponible en el hotel.

Flujo Normal PASO / ACCIÓN

1. El administrador pulsa la opción de listar a todo el personal


del hotel.

2. El sistema pone a disposición todo el personal disponible y


notifica..

3. Finaliza el caso de uso.

Flujos PASO / ACCIÓN


Alternativos

2.. El administrador cancela la opción.

3. Finaliza el caso de Uso.

Observaciones ---

CU-005 Migración Personal

Versión 01

Descripción El sistema tiene que permitir migrar a un trabajador de un


hotel a otro.

Actores Administrador y personal hotelero.

Dependencias CU-023

Precondición El trabajador debe estar dado de alta en la base de datos de


los trabajadores y se debe estar logado como administrador.
Postcondición El trabajador acaba migrando a otro hotel de la franquicia

Flujo Normal PASO / ACCIÓN

1. El personal hotelero pulsa la opción de migrar al trabajador


hacia otro hotel.

2. El sistema solicita los datos del trabajador para


identificarlo y pide al personal hotelero el hotel adonde
desea ser trasladado el trabajador..

3. El personal hotelero proporciona los datos y el hotel.

4. El sistema valida los datos y comprueba que se puede


trasladar al empleado al hotel y notifica..

5. Finaliza el caso de Uso.

Flujos PASO / ACCIÓN


Alternativos

4. El Sistema encuentra fallos en la validación y notifica.

5. Se regresa al punto 2 del flujo normal.

PASO/ACCIÓN

4. El sistema encuentra que el hotel al que desea ser


trasladado el trabajador no tiene plazas libres para su puesto
y lo notifica..

5. Se regresa al punto 2 del flujo normal.

PASO / ACCIÓN

3. El personal hotelero cancela la migración.

4. Finaliza el caso de Uso.

Observaciones ---
2.2.3.2. Especificaciones de caso de uso de gestión de clientes

CU-006 Alta Cliente

Versión 01

Descripción El sistema tiene que permitir al administrador dar de alta a un


nuevo cliente y se debe estar logado en el sistema como
personal hotelero.

Actores Administrador.

Dependencias CU-023

Precondición El usuario debe estar logado en el sistema como personal


hotelero.

Postcondición Se dio de alta al nuevo cliente..

Flujo Normal PASO / ACCIÓN

1. El administrador pulsa la opción de dar de alta a un nuevo


cliente..

2. El sistema solicita el nombre, DNI, dirección, CP, teléfono


y correo electrónico.

3. El administrador proporciona los datos del nuevo cliente..

4. El sistema valida los datos, registra al cliente y notifica al


administrador..

5. Finaliza el caso de Uso.

Flujos PASO / ACCIÓN


Alternativos
4. El Sistema encuentra fallos en la validación de los datos y
notifica.

5. Se regresa al punto 2 del flujo normal.

PASO / ACCIÓN

3. El administrador cancela el alta..

4. Finaliza el caso de Uso.

Observaciones ---

CU-007 Modificación Cliente

Versión 01

Descripción El sistema tiene que permitir modificar los datos del cliente
solicitado.

Actores Administrador.

Dependencias CU-006,CU-023

Precondición El Cliente debe estar dado de alta en la base de datos de los


clientes y se debe estar logado en el sistema.

Postcondición Se modificaron los datos del cliente

Flujo Normal PASO / ACCIÓN


1. El administrador del sistema pulsa la opción de modificar
los datos del cliente.

2. El sistema pone a disposición todos los datos para


cambiarlos.

3. El administrador modifica los datos del cliente.

4. El sistema valida los datos y notifica al administrador.

5. Finaliza el caso de Uso.

Flujos PASO / ACCIÓN


Alternativos

4. El Sistema encuentra fallos en la validación y notifica.

5. Se regresa al punto 2 del flujo normal.

PASO / ACCIÓN

3. El administrador cancela la modificación.

4. Finaliza el caso de Uso.

Observaciones ---

CU-008 Eliminación Cliente

Versión 01

Descripción El sistema tiene que permitir eliminar al cliente de la base de


datos de los clientes.

Actores Administrador .

Dependencias CU-006,CU-023
Precondición El cliente debe estar dado de alta en la base de datos de los
clientes y se debe estar logado en el sistema como
administrador del sistema

Postcondición Se eliminaron los datos del cliente

Flujo Normal PASO / ACCIÓN

1. El administrador pulsa la opción de eliminar los datos del


cliente.

2. El sistema elimina los datos y notifica al administrador..

3. Finaliza el caso de Uso.

Flujos PASO / ACCIÓN


Alternativos

3. El administrador cancela la eliminación.

4. Finaliza el caso de Uso.

Observaciones ---

CU-009 Listado cliente

Versión 01

Descripción El sistema tiene que permitir listar todos los clientes


hospedados

Actores Administrador.

Dependencias CU-023
Precondición El usuario debe estar logado en el sistema como personal
hotelero.

Postcondición Se listó a todos los clientes hospedados en el hotel.

Flujo Normal PASO / ACCIÓN

1. El administrador pulsa la opción de listar a todos los


clientes del hotel.

2. El sistema pone a disposición todos los clientes


hospedados y notifica.

3. Finaliza el caso de uso.

Flujos PASO / ACCIÓN


Alternativos

2.. El administrador cancela la opción.

3. Finaliza el caso de Uso.

Observaciones ---

2.2.3.3. Especificaciones de caso de uso de gestión de reserva

CU-010 Alta Reserva

Versión 01

Descripción El sistema tiene que permitir al cliente dar de alta a una nueva
reserva..

Actores Administrador y cliente.


Dependencias CU-023

Precondición El usuario debe estar logado en el sistema como personal


hotelero.

Postcondición Se dio de alta a la nueva reserva.

Flujo Normal PASO / ACCIÓN

1. El cliente pulsa la opción de dar de alta a una nueva


reserva..

2. El sistema solicita el nombre, DNI, dirección, CP, teléfono


y correo electrónico y la habitación que desea el cliente.

3. El cliente proporciona sus datos..

4. El sistema valida los datos y notifica al cliente que se ha


efectuado la reserva..

5. Finaliza el caso de Uso.

Flujos PASO / ACCIÓN


Alternativos

4. El Sistema encuentra fallos en la validación de los datos y


notifica.

5. Se regresa al punto 2 del flujo normal.

PASO / ACCIÓN

3. El cliente cancela la reserva..

4. Finaliza el caso de Uso.

Observaciones ---
CU-011 Modificación Reserva

Versión 01

Descripción El sistema tiene que permitir modificar los datos de la reserva


del cliente.

Actores Cliente.

Dependencias CU-006,CU-023

Precondición El usuario debe estar logado en el sistema.

Postcondición Se modificaron los datos de la reserva del cliente.

Flujo Normal PASO / ACCIÓN

1. El cliente pulsa la opción de modificar los datos de la


reserva.

2. El sistema pone a disposición todas las reservas


disponibles para cambiarla.

3. El cliente modifica la reserva.

4. El sistema valida los datos y notifica al cliente.

5. Finaliza el caso de Uso.

Flujos PASO / ACCIÓN


Alternativos

4. El Sistema encuentra fallos en la validación y notifica.

5. Se regresa al punto 2 del flujo normal.

PASO / ACCIÓN

4. El cliente cancela la modificación.


5. Finaliza el caso de Uso.

Observaciones ---

CU-012 Eliminación Reserva

Versión 01

Descripción El sistema tiene que permitir eliminar la reserva que el cliente


ha hecho.

Actores Cliente .

Dependencias CU-023

Precondición El cliente debe estar dado de alta en la base de datos de los


clientes y se debe estar logado en el sistema con la sesión
asociada al cliente que elimina la reserva.

Postcondición Se eliminó la reserva del cliente

Flujo Normal PASO / ACCIÓN

1. El cliente pulsa la opción de eliminar los datos de la


reserva.

2. El sistema elimina los datos de la reserva y notifica al


cliente..

3. Finaliza el caso de Uso.

Flujos PASO / ACCIÓN


Alternativos

3. El cliente cancela la reserva.

4. Finaliza el caso de Uso.


Observaciones ---

CU-013 Listado reservas

Versión 01

Descripción El sistema tiene que permitir listar todas las habitaciones


disponibles para reservar

Actores Cliente.

Dependencias CU-023

Precondición El usuario debe estar logado en el sistema como personal


hotelero.

Postcondición Se listó todas las reservas disponibles en el hotel.

Flujo Normal PASO / ACCIÓN

1. El cliente pulsa la opción de listar todas las habitaciones


disponibles para reservar del hotel.

2. El sistema pone a disposición todas las habitaciones


disponibles y notifica.

3. Finaliza el caso de uso.

Flujos PASO / ACCIÓN


Alternativos

2.. El cliente cancela la opción.

3. Finaliza el caso de Uso.

Observaciones ---
2.2.3.4. Especificaciones de caso de uso de gestión de servicios

CU-014 Alta servicio

Versión 01

Descripción El sistema tiene que permitir al cliente dar de alta un nuevo


servicio que desee solicitar..

Actores Administrador y cliente.

Dependencias CU-006,CU-023

Precondición El cliente debe estar dado de alta en la base de datos del


hotel

Postcondición Se dio de alta un nuevo servicio..

Flujo Normal PASO / ACCIÓN

1. El administrador pulsa la opción de dar de alta a un nuevo


servicio.

2. El sistema solicita el nombre, DNI, dirección, CP, teléfono


y correo electrónico y el servicio que desee solicitar.

3. El Cliente proporciona los datos y el servicio deseado.

4. El sistema valida los datos y notifica al cliente..

5. Finaliza el caso de Uso.

Flujos PASO / ACCIÓN


Alternativos
4. El Sistema encuentra fallos en la validación de los datos y
notifica.

5. Se regresa al punto 2 del flujo normal.

PASO / ACCIÓN

3. El cliente cancela el servicio.

4. Finaliza el caso de Uso.

Observaciones ---

CU-015 Modificar servicio

Versión 01

Descripción El sistema tiene que permitir al usuario modificar un servicio


en el que esté dado de alta.

Actores Administrador y Cliente.

Dependencias CU-005,CU-023

Precondición El cliente debe estar logado en el sistema y el servicio debe


estar dado de alta en la base de datos del hotel.

Postcondición Se modificó el servicio deseado por el cliente.

Flujo Normal PASO / ACCIÓN


1. El cliente pulsa la opción modificar un servicio del hotel.

2. El sistema pone a disposición los servicios actuales a


elegir para la modificación.

3. El cliente cambia al servicio deseado.

4. El sistema recoge los datos y notifica al personal hotelero


para la ejecución del servicio.

5. Finaliza el caso de Uso.

Flujos PASO / ACCIÓN


Alternativos

4. El Sistema encuentra fallos en la elección del servicio y


notifica.

5. Se regresa al punto 2 del flujo normal.

PASO / ACCIÓN

3. El cliente cancela el servicio.

4. Finaliza el caso de Uso.

Observaciones ---

CU-016 Eliminar servicio

Versión 01

Descripción El sistema tiene que permitir al usuario dar de baja un servicio


que desee eliminar.

Actores Administrador y Cliente.

Dependencias CU-005,CU-023
Precondición El cliente debe estar logado en el sistema y el servicio que
desea eliminar también.

Postcondición Se dio de baja el servicio solicitado por el cliente.

Flujo Normal PASO / ACCIÓN

1. El cliente pulsa la opción de dar de baja un servicio del


hotel.

2. El sistema elimina el servicio elegido por el cliente.

3.. Finaliza el caso de Uso.

Flujos PASO / ACCIÓN


Alternativos

2. El cliente cancela la eliminación.

3. Finaliza el caso de Uso.

Observaciones ---

CU-017 Lectura servicios

Versión 01

Descripción El sistema tiene que permitir al usuario ver todos los servicios
disponibles

Actores Cliente.

Dependencias CU-023

Precondición El cliente debe estar logado en el sistema.


Postcondición Se listaron todos los servicios disponibles.

Flujo Normal PASO / ACCIÓN

1. El cliente pulsa la opción de listar los servicios del hotel.

2. El sistema pone a disposición todos los servicios


disponibles.

3. Finaliza el caso de Uso.

Flujos PASO / ACCIÓN


Alternativos

2. El cliente cancela el listado.

3. Finaliza el caso de Uso.

Observaciones ---

2.2.3.5. Especificaciones de caso de uso de gestión de informe de


ocupación

CU-018 Informe de ocupación

Versión 01

Descripción El sistema tiene que permitir mostrar al cliente las


habitaciones ocupadas en todo el hotel.

Actores Administrador y cliente..

Dependencias CU-023

Precondición El usuario debe estar logado en el sistema.


Postcondición El cliente recibe el informe de ocupación

Flujo Normal PASO / ACCIÓN

1. El cliente pulsa la opción de mostrar las habitaciones


ocupadas..

2. El sistema pone a disposición un informe con todas las


habitaciones ocupadas.

3.. Finaliza el caso de Uso.

Flujos PASO / ACCIÓN


Alternativos

2. El cliente cancela el informe..

3. Finaliza el caso de uso

Observaciones ---

2.2.3.6. Especificaciones de caso de uso de gestión de quejas y


sugerencias

CU-019 Generar ticket

Versión 01

Descripción El sistema tiene que permitir al usuario emitir una queja o una
sugerencia al hotel mediante la generación de un ticket.

Actores Administrador, personal hotelero y cliente.

Dependencias CU-023

Precondición El cliente debe estar logado en el sistema.


Postcondición Se emitió la queja o sugerencia del cliente.

Flujo Normal PASO / ACCIÓN

1. El cliente pulsa la opción de emitir una queja o sugerencia


al hotel.

2. El sistema recoge la queja o sugerencia del cliente y la


envía al personal trabajador.

3. Se genera un ticket relativo a la queja.

4. El personal hotelero envía la respuesta con la posible


solución al sistema.

5. El sistema notifica al cliente con la respuesta del personal.

6. Finaliza el caso de Uso.

Flujos PASO / ACCIÓN


Alternativos

4. El Sistema encuentra fallos en el mensaje y notifica.

5. Se regresa al punto 2 del flujo normal.

PASO/ACCIÓN

4.El sistema encuentra fallos en el mensaje del personal


hotelero.

5.Se regresa al punto 3 del flujo normal.

PASO / ACCIÓN

3. El cliente cancela la queja o sugerencia..

4. Finaliza el caso de Uso.

Observaciones ---
CU-020 Eliminar ticket

Versión 01

Descripción El sistema tiene que permitir al administrador del sistema


eliminar un ticket.

Actores Administrador.

Dependencias CU-023

Precondición El usuario debe estar logado en el sistema como


administrador del sistema.

Postcondición Se ha eliminado el ticket.

Flujo Normal PASO / ACCIÓN

1. El administrador pulsa la opción para eliminar el ticket del


sistema.

2. El sistema elimina el ticket..

3. El administrador justifica la causa de la eliminación del


ticket

4. El sistema notifica al usuario que generó el ticket del


motivo de la eliminación.

5. Finaliza el caso de Uso.


Flujos PASO / ACCIÓN
Alternativos

3. El administrador decide no eliminar el ticket.

4. Finaliza el caso de uso.

Observaciones ---

CU-021 Mostrar Lista de Tickets

Versión 01

Descripción El sistema debe permitir al personal del hotel ver la lista de


tickets generados.

Actores Personal Hotelero

Dependencias CU-023

Precondición El usuario debe estar logado en el sistema como personal


hotelero.

Postcondición El personal hotelero recibe un listado con los tickets del


sistema.

Flujo Normal PASO / ACCIÓN

1. El personal elige la opción de ver listado de tickets.

2. El sistema pone a disposición un informe con los tickets


registrados en el sistema.

3.. Finaliza el caso de Uso.


Flujos PASO / ACCIÓN
Alternativos

2. El cliente cancela la petición.

3. Finaliza el caso de uso

Observaciones ---

2.2.3.7. Especificaciones de caso de uso de gestión de calendario

CU-022 Asignar instancia a calendario

Versión 01

Descripción El sistema tiene que permitir al personal hotelero poder


asignar a un calendario eventos con un nivel de importancia y
asignar el tiempo que estarán visibles.

Actores personal hotelero.

Dependencias CU-023

Precondición El usuario debe estar logado en el sistema como personal


hotelero.

Postcondición Se asignó una nueva instancia al calendario.

Flujo Normal PASO / ACCIÓN


1. El personal hotelero pulsa la opción de asignar una nueva
instancia al calendario.

2. El sistema pone a disposición un calendario y solicita la


fecha que se desea usar, la importancia y el tiempo que
durará la instancia.

3. El personal hotelero rellena los datos en el calendario.

4. El sistema valida los datos y notifica al personal.

5. Finaliza el caso de Uso.

Flujos PASO / ACCIÓN


Alternativos

4. El Sistema encuentra fallos en la validación y notifica.

5. Se regresa al punto 2 del flujo normal.

PASO / ACCIÓN

3. El personal hotelero cancela la instancia asignada.

4. Finaliza el caso de Uso.

Observaciones ---

2.2.3.8. Especificaciones de caso de uso de inicio de sesión

CU-023 Iniciar Sesión

Versión 01

Descripción El sistema tiene que permitir el inicio de sesión en este.

Actores Personal, administrador del sistema y cliente.

Dependencias …
Precondición Ninguna

Postcondición El usuario queda logado dentro del sistema.

Flujo Normal PASO / ACCIÓN

1. El sistema solicita las credenciales al usuario.

2. El usuario introduce su usuario y contraseña.

3. El sistema verifica las credenciales introducidas.

4. El usuario queda logado para realizar futuras acciones


dentro del sistema.

5. Finaliza el caso de uso.

Flujos PASO / ACCIÓN


Alternativos

3. El sistema detecta un error en las credenciales


introducidas.

4. Se regresa al punto 1 del flujo normal

Observaciones ---

3.SUBSISTEMAS DE ANÁLISIS
3.1. Identificación de Subsistemas de análisis

A partir de la especificación de cada uno de los casos de usos e identificarlos y


desarrollarlos, se han separado en los siguientes subsistemas los requisitos
funcionales y no funcionales recogidos en el punto anterior.
- SUB01 - Gestión Cliente, recogerá todos los casos de uso relacionados con
las acciones del cliente en el sistema
- SUB02 - Gestión Administrador, recogerá aquellos casos de uso relacionados
con las acciones del administrador en el sistema.

- SUB03 - Gestión personal hotelero, recogerá aquellos casos de uso


relacionados con las acciones del personal hotelero en el sistema.

3.2. Relaciones entre subsistemas de análisis

Los casos de uso relacionados con el inicio de sesión se han recogido en todos los
subsistemas al tener que depender del inicio de sesión para las operaciones. Los casos de uso
relacionados con la gestión de los clientes en el subsistema 1, los relacionados con las
operaciones del administrador en el sub02 y los relacionados con las acciones del personal
hotelero en el sub03

Subsiste SUB-01 SUB-02 SUB-03


ma /
Subsiste
ma

SUB -001 X X

SUB - 002 X X

SUB-003 X X
Actores / Adminis Cliente Personal
Subsiste trador hotelero
ma

SUB-01 X

SUB-02 X

SUB-03 X

3.3. Matriz de trazabilidad

Subsiste SUB-01 SUB-02 SUB-03


mas /
Casos de
uso

CU-001 X X

CU-002 X X

CU-003 X X

CU-004 X

CU-005 X X

CU-006 X

CU-007 X

CU-008 X

CU-009 X

CU-010 X X

CU-011 X

CU-012 X

CU-013 X

CU-014 X X

CU-015 X X

CU-016 X X
CU-017 X

CU-018 X X

CU-019 X X X

CU-020 X

CU-021 X

CU-022 X

CU-023 X X X

4. Análisis de clases por subsistemas.

En este punto se mostrarán las distintas clases que forman parte de este paquete
del sistema, utilizándose así durante las operaciones de gestión ya sean de
personal, clientes o reservas, todas con sus respectivos atributos que servirán para
poder identificarlas correctamente.

Las operaciones que se pueden realizar están divididas en 3 subsistemas:

● Subsistema SUB01 - Operaciones del Cliente con la aplicación del hotel


● Subsistema SUB02 - Operaciones del Administrador con la aplicación del
hotel.
● Subsistema SUB03 - Operaciones del Personal hotelero con la aplicación del
hotel.
CN-0001: Cliente

Responsabilidades

Nombre Tipo Descripción


nombre String Nombre del cliente
apellidos String Apellidos del cliente
Correo electrónico del
correo String
Atributos cliente
Número de teléfono del
teléfono String
cliente
departamen Departamento del servicio
String
to que solicita
● CU-0006: ALTA CLIENTE - Se registra un
nuevo cliente en la aplicación
● CU-0007: MODIFICACIÓN CLIENTE - Se
modifican los datos relacionados a dicho
cliente
● CU-0008: ELIMINACIÓN CLIENTE - Se desea
eliminar al cliente de la aplicación
● CU-0009: LISTADO CLIENTES - Se desea
listar a los clientes de la aplicación
● CU-0010: ALTA RESERVA - El cliente realiza
la reserva
● CU-0011: MODIFICACIÓN RESERVA - El
cliente modifica su reserva
● CU-0012: ELIMINACIÓN RESERVA - El
Participación en cliente elimina su reserva
Casos de Uso ● CU-0013: LISTADO RESERVAS - El cliente
desea ver sus reservas
● CU-0017: LECTURA SERVICIOS - El cliente
selecciona la opción de ver los servicios que
se ofrecen
● CU-0018: INFORME DE OCUPACIÓN - El
cliente desea ver qué habitaciones están ya
ocupadas
● CU-0019: GENERAR TICKET - El cliente
desea poner una reclamación, asociando así
un ticket a este
● CU-0023: INICIAR SESIÓN: El cliente
introduce sus credenciales para registrarse en
la aplicación
CN-0002: Reserva

Responsabilidades

Nombre Tipo Descripción


fechaEntrad Fecha para la que reservó
date
a el inicio del servicio
Fecha en la que finaliza el
fechaSalida date
Atributos servicio
Id del hotel asociado a la
idHotel String
reserva
Id del cliente asociado a la
idCliente String
reserva
● CU-0010:ALTA RESERVA - Se desea registrar
la reserva en la aplicación
● CU-0011:MODIFICACIÓN RESERVA - Se
desea modificar los datos de dicha reserva
● CU-0012:ELIMINACIÓN RESERVA - Se desea
cancelar la reserva previamente hecha
● CU-0013:LISTADO RESERVAS - Se desea
Participación en listar una serie de reservas
Casos de Uso ● CU-0018: INFORME DE OCUPACIÓN - Es
necesario consultar las reservas actuales para
saber qué habitaciones están ocupadas
● CU-0019: GENERAR TICKET - El ticket va a
asociado al personal del hotel o al cliente, y en
este caso la puede generarse en base a una
queja por el servicio prestado de la reserva
previamente hecha

CN-0003: Servicio

Responsabilidades

Nombre Tipo Descripción


nombre String Nombre del servicio
Atributos costo float Costo del servicio
tipo String Tipo de servicio
fecha date Fecha del Servicio
● CU-0014: ALTA SERVICIO - Se da de alta un
nuevo servicio
● CU-0015: MODIFICAR SERVICIO - Se
Participación en modifican los datos de un determinado servicio
Casos de Uso ● CU-0016: ELIMINAR SERVICIO - Se desea
eliminar el servicio
● CU-0017: LECTURA SERVICIO - Se desea
consultar el servicio
CN-0004: Calendario

Responsabilidades

Nombre Tipo Descripción


fechaActual date Fecha actual del calendario
fechasReser Listado de fechas de
Atributos List
vas reservas

● CU-0010: ALTA RESERVA - La reserva queda


registrada en el calendario tras ser realizada
● CU-0011: MODIFICACIÓN RESERVA - Se
puede modificar la fecha de la reserva,
interviniendo así el objeto calendario
● CU-0012: ELIMINACIÓN RESERVA - Al
eliminar una reserva, también se elimina del
calendario
● CU-0013: LISTADO RESERVAS - El
calendario es necesario para ubicar en el
tiempo las reservas realizadas
● CU-0014: ALTA SERVICIO - Al solicitarse un
Participación en
servicio, también queda registrado en el
Casos de Uso
calendario cuándo este servicio debe
realizarse
● CU-0015: MODIFICAR SERVICIO - También
se puede modificar la fecha en la que el
servicio debe ser realizado
● CU-0016: ELIMINAR SERVICIO - Al
eliminarse un servicio, en el calendario debe
eliminarse este evento también
● CU-0017: LECTURA SERVICIOS - El
calendario contiene las fechas de los servicios
solicitados
CN-0005: Factura

Responsabilidades

Nombre Tipo Descripción


costeTotal float Coste total de la factura
Atributos fecha date Fecha asociada a la factura
Elementos cargados en la
elementos List
factura
● CU-0010:ALTA RESERVA - Cuando se realiza
una reserva, se genera una factura con el
coste, la fecha y los elementos de esta
● CU-0011:MODIFICACIÓN RESERVA -
Cuando se modifica la reserva, puede haber
Participación en cambios que influyan en la factura
Casos de Uso ● CU-0012:ELIMINACIÓN RESERVA - Al
eliminarse la reserva, también lo hace la
factura
● CU-0013:LISTADO RESERVAS - Cuando se
consultan las reservas, todas estas tienen una
factura asociada a ellas

CN-0006: Personal

Responsabilidades

Nombre Tipo Descripción


nombre String Nombre del personal
apellidos date Apellidos del personal
Atributos cargo String Cargo que desempeña
salario float Salario del personal
departamen Departamento al que
String
to pertenece
● CU-0001: ALTA PERSONAL- Se da de alta un
nuevo empleado del personal
● CU-0002: MODIFICAR PERSONAL - Se
modifican los datos del personal en cuestión
● CU-0003: ELIMINACIÓN PERSONAL - Se
Participación en
eliminan los datos de dicho miembro del
Casos de Uso
personal
● CU-0004: LISTAR PERSONAL - Se listan los
miembros del personal
● CU-0005: MIGRAR PERSONAL - Se manda el
miembro del personal a otra área u hotel
CN-0007: Hotel
dar Alta Cliente
dar Alta Personal
dar Alta Reserva
modificar Personal
eliminar Personal
listado Personal
migrar Personal
modificación Cliente
eliminar Cliente
Responsabilidades listado Clientes
modificar Reserva
eliminar Reserva
listado Reservas
informe Ocupación
generar Ticket
eliminar Ticket
mostrar lista Tickets
asignar Instancia a calendario
iniciar Sesión
Nombre Tipo Descripción
nombre String Nombre del hotel
Atributos dirección date Dirección del hotel
numeroTelefo Número de teléfono para
String
no contactar con el hotel
El hotel interviene en todos los casos de uso, ya que
todos las demás clases están gestionadas por él al
Participación en estar directa o indirectamente asociados a este, ya
Casos de Uso sean los servicios, el personal o los clientes, más
todos los elementos que posee.

CN-0008: Habitación

Responsabilidades

Nombre Tipo Descripción


Número de camas de la
numeroCamas String
habitación
metrosCuadrad Metros cuadrados de la
int
Atributos os habitación
Planta en la que se
planta String
encuentra la habitación
numeroHabitaci
int Número de la habitación
on
Atributo para representar
boolea
disponible (sí/no) si la habitación
n
está disponible
● CU-0010: ALTA RESERVA - En la reserva se
asocian una o varias habitaciones a esta
● CU-0011: MODIFICACIÓN RESERVA - Al
modificarse la reserva, también puede
modificarse la elección de la habitación
● CU-0012: ELIMINACIÓN RESERVA - Al
eliminar una reserva, también se elimina la
habitación o habitaciones reservadas
previamente
● CU-0013: LISTADO RESERVAS - Se
muestran las habitaciones reservadas
Participación en
● CU-0014: ALTA SERVICIO - Al solicitarse un
Casos de Uso
servicio, también se puede solicitar una
habitación
● CU-0015: MODIFICAR SERVICIO - También
se puede modificar la habitación que ofrece el
servicio
● CU-0016: ELIMINAR SERVICIO - Al
eliminarse un servicio, también se elimina la
habitación solicitada previamente en la reserva
● CU-0017: LECTURA SERVICIOS - Se
muestran las habitaciones solicitadas de los
servicios que se muestran

CN-0009: Ticket

Responsabilidades

Nombre Tipo Descripción


id String Id del ticket
Fecha de generación del
Atributos fecha date
ticket
nombre String Razón de la reclamación
descripción String Descripción de la incidencia
Participación en ● CU-0019: GENERAR TICKET - Se genera un
Casos de Uso ticket en caso de reclamaciones

CN-0010: Restaurante

Responsabilidades
Nombre Tipo Descripción
Atributos nombre String Nombre del restaurante
carta List Carta del restaurante
● CU-0010: ALTA RESERVA - Se puede solicitar
realizar una reserva para el restaurante
● CU-0011: MODIFICACIÓN RESERVA - Al
modificarse la reserva, también puede
modificarse la reserva del restaurante
● CU-0012: ELIMINACIÓN RESERVA - Al
eliminar una reserva, también se elimina
aquella realizada en el restaurante
Participación en
● CU-0013: LISTADO RESERVAS - Se
Casos de Uso
muestran entre las reservas hechas, las
pertenecientes al restaurante
● CU-0014: ALTA SERVICIO - Al solicitarse un
servicio, también se puede solicitar mesa en el
restaurante
● CU-0015: MODIFICAR SERVICIO - También
se puede modificar la reserva del restaurante,
ya sea la fecha, mesa o menú pedido.

A continuación se muestran los diagramas de secuencia de las distintas


responsabilidades de las clases:
5 INTERFACES DE USUARIO
5.1 Principios de Diseño de la Interfaz de Usuario

En la siguiente sección se explicará la interfaz que se utilizará para iniciar sesión,


la cual será la misma para todos los subsistemas.
IU-0001: IniciarSesión

Descripción Interfaz que definirá el inicio de sesión de un usuario en el


sistema.

Campos Nombre Tipo Editable Oblig Descripción


Datos / .

Consult
a

Login String Consult Sí Título de la


a interfaz para el
usuario.

Usuario String Editable Sí Contenido del


usuario
utilizado a
modo de
credencial
para iniciar
sesión.

Contraseñ Passwor Editable Sí Contenido de


a d la contraseña
del usuario
para iniciar
sesión.

Botones/Enlace Nombre Acción

Forgot password Se mostrará un mensaje con los


pasos para recuperar la
contraseña

Sign in Se validarán los datos introducidos


a través del sistema y, en caso
correcto, se redireccionará a la
pantalla que corresponda según
sea actor. En caso de error, se
mostrará un mensaje.

Mensaje para recuperar la contraseña

Mensaje error
5.2 Subsistema Menú Principal de gestión

5.2.1 Modelo de Navegación del Subsistema


5.2.2 Interfaz del módulo 0002

IU-0002: MenúGestión

Descripción Interfaz que permite seleccionar que quieres gestionar, si


has iniciado sesión y no tienes permisos para acceder a
alguno de estos menus saldrá un pop up con un error

Botones/Enlace Nombre Acción

Gestión Personal Selecciona este menú para


acceder a ella:IU-0003:
GestiónPersonal

Gestión Servicios Selecciona este menú para


acceder a ella:IU-0004:
GestiónServicios
Gestión Clientes Selecciona este menú para
acceder a ella:IU-0005:
GestiónClientes

Gestión Tickets Selecciona este menú para


acceder a ella:IU-0006:
GestiónTickets

Gestión Reservas Selecciona este menú para


acceder a ella:IU-0007:
GestiónReservas

Informe ocupación Selecciona este menú para


acceder a ella:IU-0008:
InformeOcupaciuon

Enviar Se redirigirá al apartado


seleccionado

Cerrar sesión Se cerrará la sesión mostrando un


pop up

Pop up cuando accedes a un menú al que no tienes acceso:

Pop up cuando cierras sesión:


5.2.3 Interfaz del módulo 0003

IU-0003: GestiónPersonal

Descripción Interfaz que mostrará todo el personal y sus datos

Botones/Enlace Nombre Acción

Añadir Se mostrará la interfaz: IU-0009:


añadirPersonal, para poder añadir
una nueva instancia.

Ver Se mostrará la interfaz: IU-0008:


verPersonal y se podrá editar o
eliminar los datos de la persona
cuya fila este este botón.

Borrar Se mostrará un pop up para que


estemos seguros de eliminar esta
instancia, si pulsamos ‘vale’ la
instancia se eliminará.

Pop up borrar instancia

5.2.4 Interfaz del módulo 0008


IU-0008: verPersonal

Descripción Interfaz que mostrará una instancia la cual podremos editar


y eliminar

Campos Nombre Tipo Editable Oblig Descripción


Datos / .

Consult
a

Nombre String Editable Sí Nombre del


empleado

Apellidos String Editable Sí Apellidos del


empleado

Cargo String Editable Sí Cargo del


empleado

Salario Float Editable Sí Sueldo del


empleado

Departam String Editable Sí Departamento


ento donde el
empleado
trabaja

Botones/Enlace Nombre Acción

Editar Cuando escribes en los campos


hasta que no se pulse el botón de
editar los datos no quedarán
modificados

Borrar Se mostrará un pop up para que


estemos seguros de eliminar esta
instancia, si pulsamos ‘vale’ la
instancia se eliminará.
5.2.5 Interfaz del módulo 0009

IU-0009: añadirPersonal

Descripción Interfaz que se podra agregar una nueva instancia

Campos Nombre Tipo Editable Oblig Descripción


Datos / .

Consult
a

Nombre String Editable Sí Nombre del


empleado
Apellidos String Editable Sí Apellidos del
empleado

Cargo String Editable Sí Cargo del


empleado

Salario Float Editable Sí Sueldo del


empleado

Departam String Editable Sí Departamento


ento donde el
empleado
trabaja

Botones/Enlace Nombre Acción

Enviar Se añade una nueva instancia


5.2.6 Interfaz del módulo 0004

IU-0004: GestiónClientes

Descripción Interfaz que mostrará todo los clientes y sus datos

Botones/Enlace Nombre Acción

Añadir Se mostrará la interfaz: IU-0011:


añadirCliente, para poder añadir
una nueva instancia.

Ver Se mostrará la interfaz: IU-0010:


verCliente y se podrá editar o
eliminar los datos de la persona
cuya fila este este botón.
Borrar Se mostrará un pop up para que
estemos seguros de eliminar esta
instancia, si pulsamos ‘vale’ la
instancia se eliminará.

5.2.7 Interfaz del módulo 0010

IU-0010: verCliente

Descripción Interfaz que mostrará una instancia la cual podremos editar


y eliminar

Campos Nombre Tipo Editable Oblig Descripción


Datos / .

Consult
a

Nombre String Editable Sí Nombre del


cliente
Apellidos String Editable Sí Apellidos del
cliente

Correo String Editable Sí Correo cliente

Teléfono String Editable Sí Teléfono


cliente

Botones/Enlace Nombre Acción

Editar Cuando escribes en los campos


hasta que no se pulse el botón de
editar los datos no quedarán
modificados

Borrar Se mostrará un pop up para que


estemos seguros de eliminar esta
instancia, si pulsamos ‘vale’ la
instancia se eliminará.

5.2.8 Interfaz del módulo 0011


IU-0011: añadirCliente

Descripción Interfaz que se podrá agregar una nueva instancia

Campos Nombre Tipo Editable Oblig Descripción


Datos / .

Consult
a

Nombre String Editable Sí Nombre del


cliente

Apellidos String Editable Sí Apellidos del


cliente

Correo String Editable Sí Correo del


cliente

Telefono String Editable Sí Telefono del


cliente

Botones/Enlace Nombre Acción

Enviar Se añade una nueva instancia


5.2.9 Interfaz del módulo 0005

IU-0005: GestiónServicios

Descripción Interfaz que mostrará todos los servicios

Botones/Enlace Nombre Acción

Añadir Se mostrará la interfaz: IU-0013:


añadirServicios, para poder añadir
una nueva instancia.
Ver Se mostrará la interfaz: IU-0012:
verServicios y se podrá editar o
eliminar los datos del servicio cuya
fila este este botón.

Borrar Se mostrará un pop up para que


estemos seguros de eliminar esta
instancia, si pulsamos ‘vale’ la
instancia se eliminará.

5.2.10 Interfaz del módulo 0012

IU-0012: verServicio

Descripción Interfaz que mostrará una instancia la cual podremos editar


y eliminar
Campos Nombre Tipo Editable Oblig Descripción
Datos / .

Consult
a

Nombre String Editable Sí Nombre del


servicio

Tipo String Editable Sí El tipo que va


a ser el
servicio

Costo Float Editable Sí Cuanto va a


ser el importe
económico del
servicio

Fecha Date Editable Sí Fecha en la


que se ha
realizado el
servicio

Botones/Enlace Nombre Acción

Fecha Si se pulsa sobre una fecha


aparecerá la interfaz IU-0018:
calendario para poder editarla o
añadirla

Editar Cuando escribes en los campos


hasta que no se pulse el botón de
editar los datos no quedarán
modificados

Borrar Se mostrará un pop up para que


estemos seguros de eliminar esta
instancia, si pulsamos ‘vale’ la
instancia se eliminará.
5.2.11 Interfaz del módulo 0013

IU-0011: añadirServicio

Descripción Interfaz que se podra agregar una nueva instancia

Campos Nombre Tipo Editable Oblig Descripción


Datos / .

Consult
a

Nombre String Editable Sí Nombre del


cliente

Tipo String Editable Sí Apellidos del


cliente

Costo String Editable Sí Cuanto va a


ser el importe
económico del
servicio

Fecha Date Editable Sí Fecha en la


que se ha
realizado el
servicio

Botones/Enlace Nombre Acción

Enviar Se añade una nueva instancia

5.2.12 Interfaz del módulo 0006


IU-0006: GestiónTickets

Descripción Interfaz que mostrará todo los tickets y sus datos

Botones/Enlace Nombre Acción

Añadir Se mostrará la interfaz: IU-0015:


añadirTickets, para poder añadir
una nueva instancia.

Ver Se mostrará la interfaz: IU-0014:


verTickets y se podrá editar o
eliminar los datos del servicio cuya
fila este este botón.

Borrar Se mostrará un pop up para que


estemos seguros de eliminar esta
instancia, si pulsamos ‘vale’ la
instancia se eliminará.

5.2.13 Interfaz del módulo 0014


IU-0014: verTickets

Descripción Interfaz que mostrará una instancia la cual podremos editar


y eliminar

Campos Nombre Tipo Editable Oblig Descripción


Datos / .

Consult
a

Nombre String Editable Sí Nombre del


ticket

Fecha Date Editable Sí Fecha en la


que se ha
realizado el
ticket

ID String Editable Sí Id al que se


asocia el ticket

Descripció String Editable Sí Descripción de


n la incidencia
expuesta en el
ticket

Botones/Enlace Nombre Acción

Editar Cuando escribes en los campos


hasta que no se pulse el botón de
editar los datos no quedarán
modificados

Finalizar El ticket se da por finalizado. La


incidencia estará resuelta
Fecha Si se pulsa sobre una fecha
aparecerá la interfaz IU-0018:
calendario para poder editarla o
añadirla

Borrar Se mostrará un pop up para que


estemos seguros de eliminar esta
instancia, si pulsamos ‘vale’ la
instancia se eliminará.

5.2.14 Interfaz del módulo 0015

IU-0015: añadirTickets

Descripción Interfaz que se podra agregar una nueva instancia

Campos Nombre Tipo Editable Oblig Descripción


Datos / .

Consult
a
Nombre String Editable Sí Nombre del
ticket

Fecha Date Editable Sí Fecha en la


que se ha
realizado el
ticket

ID String Editable Sí Id al que se


asocia el ticket

Descripció String Editable Sí Descripción de


n la incidencia
expuesta en el
ticket

Botones/Enlace Nombre Acción

Enviar Se añade una nueva instancia


5.2.15 Interfaz del módulo 0007

IU-0007: GestiónReservas

Descripción Interfaz que mostrará todas las reservas y sus datos

Botones/Enlace Nombre Acción

Añadir Se mostrará la interfaz: IU-0017:


añadirReservas, para poder añadir
una nueva instancia.

Ver Se mostrará la interfaz: IU-0016:


verTickets y se podrá editar o
eliminar los datos del servicio cuya
fila este este botón.
Borrar Se mostrará un pop up para que
estemos seguros de eliminar esta
instancia, si pulsamos ‘vale’ la
instancia se eliminará.

5.2.16 Interfaz del módulo 0016

IU-0016: verReservas

Descripción Interfaz que mostrará una instancia la cual podremos editar


y eliminar

Campos Nombre Tipo Editable Oblig Descripción


Datos / .

Consult
a

Fecha Date Editable Sí Fecha de


Entrada entrada del dia
de reserva
Fecha Date Editable Sí Fecha de
Salida salida del dia
de reserva

ID Hotel String Editable Sí Id al que se


asocia el hotel
donde se ha
realizado la
reserva

ID Cliente String Editable Sí Id al que se


asocia el
cliente que ha
realizado la
reserva

Botones/Enlace Nombre Acción

Editar Cuando escribes en los campos


hasta que no se pulse el botón de
editar los datos no quedarán
modificados

Finalizar El ticket se da por finalizado. La


incidencia estará resuelta

Fecha Si se pulsa sobre una fecha


aparecerá la interfaz IU-0018:
calendario para poder editarla o
añadirla

Borrar Se mostrará un pop up para que


estemos seguros de eliminar esta
instancia, si pulsamos ‘vale’ la
instancia se eliminará.
5.2.17 Interfaz del módulo 0017

IU-0017: añadirReservas

Descripción Interfaz que se podrá agregar una nueva instancia

Campos Nombre Tipo Editable Oblig Descripción


Datos / .

Consult
a

Fecha Date Editable Sí Fecha de


Entrada entrada del dia
de reserva

Fecha Date Editable Sí Fecha de


Salida salida del dia
de reserva
ID Hotel String Editable Sí Id al que se
asocia el hotel
donde se ha
realizado la
reserva

ID Cliente String Editable Sí Id al que se


asocia el
cliente que ha
realizado la
reserva

Botones/Enlace Nombre Acción

Enviar Se añade una nueva instancia

5.2.18 Interfaz del módulo 0018


5.3 Modelo de Navegación del Subsistema

5.3.1 Interfaz del módulo 0019


IU-0019: InformeOcupacion

Descripción Interfaz que mostrará todo el personal y sus datos

Botones/Enlace Nombre Acción

Ocupado Cuando se pulse el botón la


habitación pasará de ocupado a
libre

Libre Cuando se pulse el botón la


habitación pasará de libre a
ocupado

5.4 Matriz de Trazabilidad Módulo de Interfaz - Actores

Actores / ACTOR0 ACTOR0 ACTOR04


Interfaz 1 2
-
- -

Personal Cliente Administrado


hotelero r del sistema

IU - 001 - Iniciar X X X
Sesión

IU - 002 X X X

IU - 003 X

IU - 004 X X

IU - 005 X X

IU - 006 X X
IU - 007 X X X

IU - 008 X

IU - 009 X

IU - 010 X X

IU - 011 X X

IU - 012 X X

IU - 013 X X X

IU - 014 X X

IU - 015 X X

IU – 016 X X

IU – 017 X X

IU – 018 X X X

IU – 019 X X
6 Informes
El sistema genera estadísticas basadas en las reservas y los servicios que hacen
los clientes.

IF- 0001: Estadísticas generales del hotel

Descripción Descripción del informe

Datos Campo Tipo Descripción

Datos
Ingresos en Float Los ingresos totales en
extras extras que ha facturado
el hotel

Ingresos Float Los ingresos totales en


que ha facturado el hotel

Cuatrimestre Integer Los cuatrimestres del


año

Ocupación Integer La ocupación actual del


restaurante restaurante

Ocupación Integer La ocupación actual del


hotel hotel

Habitaciones Integer Las habitaciones que


libres hay libre

7. Comunicación con sistemas externos

Como puede verse en el próximo diagrama, existe un sistema principal el cual es el


servidor donde se recibe toda la información de los subsistemas externos, siendo
esta procesada por la persistencia en la base de datos MariaDB.

Nuestro sistema se compone de seis subsistemas. El cliente web, el cual se


encarga de enlazar la actividad de un cliente que accede al sistema desde un
navegador de internet. El cliente móvil, el cual se encarga de conectarse al servidor
mediante el protocolo HTTP para aquellos clientes que desean usar el sistema
descargando la aplicación móvil disponible.

Usamos también algunas APIs disponibles como son Google Calendar. Usada para
la gestión de reservas en el calendario disponible en nuestro sistema.

Google Forms. Usada a la hora de generar un ticket. Esto facilita la implementación


de la gestión del ticket y la facilidad al usuario de usar un formato de formulario tan
familiar como este.

Por último usamos una API de correo electrónico para transmitir a nuestros clientes
la información necesaria de forma automática.
Todas estas comunicaciones son realizadas mediante el protocolo HTTP con un
cifrado de datos que usa la tecnología estandarizada SSL.

Como último sistema externo. Tenemos MariaDB Server. Servidor donde


almacenamos la base de datos usada en el sistema la cual se conecta a la
persistencia para el tratamiento de los datos. Para facilitar el trabajo usamos Redux
ORM, una tecnología de Redux implementada para facilitar la gestión de la capa de
acceso a los datos.
8 Pruebas
8.1 Alcance de las pruebas
A continuación, se describen las características de las pruebas a tener en cuenta a
la hora de elaborarlas para el correcto funcionamiento del sistema desarrollado en el
presente documento:

● Pruebas de Carga: En las bases de datos puede darse una alta carga
debido a las peticiones de usuarios legítimos y a posibles ataques.
Dado el flujo de datos esperado es necesario un sistema el cual
distribuya la carga de consultas entre los equipos que conforman el
Clúster de forma eficiente. Por otro lado, el propio servidor deberá ser
capaz de soportar las peticiones por segundo pertinentes.

● Pruebas Unitarias: Se probará de forma individual cada uno de los


módulos y subsistemas de nuestra aplicación de forma separada.
Revisando así las funcionalidades principales de estos. Para una
correcta consecución de estas pruebas se deberá probar los módulos
y subsistemas forzando errores comunes así como un mal uso de
estos por el usuario. Evitando que la aplicación falle ante respuestas
inesperadas.

● Pruebas de Integración: Se deberá realizar las pruebas necesarias


para la comprobación del correcto funcionamiento de módulos y
subsistemas entre sí, teniendo en cuenta la relación que debe darse
entre estos. Deberá contemplarse también un flujo que determine cada
escenario definido en los casos de uso que se han establecido en el
documento presente, forzando fallos en los mismos para los diferentes
actores implicados.

● Pruebas de Seguridad: Se deberá probar que se mantiene la


integridad de los datos a partir de intentos de inyección SQL, se
intentará realizar un ataque de denegación de servicio distribuido
(DDOS) para comprobar la robustez del sistema. Se probará que las
medidas puestas para evitar el robo de información personal así como
de credenciales son efectivas y, en último término, se verificará que los
datos sensibles son almacenados de forma cifrada y que la
información intercambiada entre los clientes y servidor se realiza
empleando una conexión cifrada y segura mediante el protocolo
HTTPs.

8.2 Entorno de Pruebas


Para las pruebas unitarias, cada desarrollador será el encargado de gestionar estas
a través de las herramientas proporcionadas por el entorno de desarrollo.

Para realizar las pruebas de integración en los entornos Android e iOS se


requerirán, al menos, un dispositivo con sistema operativo iOS, un dispositivo con
sistema operativo Android y un portátil o ordenador sobremesa con sistema
operativo Windows 10 o versiones posteriores. También usaremos máquinas
virtuales para comprobar el correcto funcionamiento en dispositivos con otros
sistemas operativos como Linux o macOS.

Para realizar las pruebas de carga se empleará la herramienta Apache JMeter, que
nos permitirá simular una alta carga en el servidor, y controlar el rendimiento de
este. Para realizar estas pruebas con MariaDB emplearemos herramientas de
pruebas propias de MySQL Workbench.

Para las pruebas de seguridad, se realizarán diferentes intentos malintencionados


de extracción de datos, rastreamiento en la red, y ataques de denegación de
servicios a través de diferentes softwares que pueda requerir el propio encargado
del testeo.

8.3 Pruebas de Aceptación del Sistema


Las pruebas de aceptación del sistema deberán cubrir todas las pruebas definidas
anteriormente tanto para los flujos principales, como para los flujos alternativos que
cubran cada uno de los casos de uso definidos en el documento. Las pruebas
deberán ser realizadas para cada uno de los actores implicados y se deberá
verificar que no se producen accesos no contemplados en los casos de uso, ni que
se incumpla ninguna de las restricciones impuestas al sistema por motivos de
seguridad de la información, integridad del sistema o prestación del servicio.

Todas estas pruebas estarán bajo la supervisión del analista Tester Pablo Vílchez
Rivas y serán realizadas por Daniel Martín Pérez como se ve reflejado en el punto
1.4 de este documento.

9. GLOSARIO
● Hotel: Establecimiento que ofrece alojamiento y distintos servicios a los
clientes.

● Cliente: Persona que se aloja en el hotel o usa sus servicios.

● Personal: Empleados del hotel que proporcionan servicios a los clientes,


estos podrían ser personal de limpieza, recepcionistas, etc …

● Habitación: Lugar privado donde el cliente se aloja temporalmente. Este viene


decorado con mobiliario y servicios imprescindibles.

● Reserva: Acción de apartar una habitación u otro servicio del hotel para un
cliente en una fecha específica.

● Servicio: Prestación que el hotel ofrece a sus clientes como servicio de


habitaciones, comedor, transporte, etc.
● Calendario: Herramienta que se usa para facilitar la claridad de las reservas,
disponibilidad de habitaciones y otros servicios en un determinado periodo de
tiempo.

● Ticket: Registro de una incidencia o solicitud de servicio generado por un


cliente o personal del hotel.

● Factura: Comprobante que obtiene el cliente de que la reserva ha sido


realizada.

● Restaurante: Uno de los servicios que ofrece el hotel donde los clientes
reciben el alimento.

También podría gustarte