Resultados de Pruebas
Casos de Uso del Sistema
1. Carga de archivos CSV
Diagrama de Secuencia y Cursos Alternativos
Curso Principal de Eventos


3. El Recepcionista busca y selecciona el archivo .CSV que contiene los datos válidos de habitaciones y/o reservas que desea cargar.


5. El Sistema lee los datos línea por línea del archivo CSV y almacena esta información en memoria.
6. El Sistema actualiza las tablas de habitaciones y/o reservas en la base de datos con los datos importados.


Curso Alternativo de Eventos
Escenario de Error: Archivo de Reservas Inválido
1A1. El Recepcionista selecciona un archivo con una extensión o formato general inválido (ej. .txt, .pdf), o un archivo .CSV que no corresponde (por ejemplo, intenta cargar "RESERVAS.csv" cuando se esperaba "HABITACIONES.csv").
Escenario de Error: Estructura de Datos Inválida
2A2. El Sistema notifica con un mensaje de error específico que la estructura del archivo no es válida y detiene el proceso de carga.
2. Consultar estado de todas las habitaciones
Diagrama de Secuencia y Cursos Alternativos
Curso Principal de Eventos

3. El Sistema recupera todas las habitaciones registradas en la base de datos.
4. Para cada habitación, el Sistema verifica su estado de ocupación dentro del rango de fechas especificado.

Curso Alternativo de Eventos
Escenario de Error: Rango de Fechas Inválido
1A1. Se ingresa un rango de fechas inválido (ej. fecha de fin anterior a fecha de inicio o formato incorrecto).2A1. El Sistema muestra un mensaje de error indicando que el rango de fechas es inválido.

3. Consultar solo habitaciones disponibles
Diagrama de Secuencia y Cursos Alternativos
Curso Principal de Eventos

3. El Sistema recupera todas las habitaciones registradas.
4. El Sistema filtra las habitaciones verificando su disponibilidad en el rango especificado.

Curso Alternativo de Eventos
Escenario de Error: Rango de Fechas Inválido
1A1. Se ingresa un rango inválido (04-07-2025 a 02-07-2025) donde la fecha final es anterior a la inicial.2A1. El Sistema muestra mensaje de error: "Rango de fecha incorrecto" y no realiza la consulta.

4. Consultar habitaciones disponibles por calendario
Diagrama de Secuencia y Cursos Alternativos
Curso Principal de Eventos

3. El Recepcionista selecciona fecha de fin (11-07-2025) en el segundo calendario.

5. El Sistema recupera todas las habitaciones registradas.
6. El Sistema verifica disponibilidad para cada habitación en el rango seleccionado.

Curso Alternativo de Eventos
Escenario de Error: Rango de Fechas Inválido
1A1. El Recepcionista selecciona un rango inválido (fecha fin anterior a inicio).2A1. El Sistema muestra mensaje de error sobre rango inválido y no realiza la consulta.

5. Agregar Reservaciones
Diagrama de Secuencia y Cursos Alternativos
Curso Principal de Eventos

3. El Recepcionista ingresa nombre (Víctor Santos) y selecciona servicios adicionales (Desayuno).

5. El Recepcionista confirma la reserva presionando "Aceptar".
6. El Sistema verifica disponibilidad y crea la reserva.


Curso Alternativo de Eventos
Escenario de Error: No selección de habitación
1A1. El Recepcionista presiona "Reservar" sin seleccionar ninguna habitación en la tabla.

Escenario de Error: Habitación ocupada
1A2. El Recepcionista selecciona una habitación que aparece como ocupada (ej. 105) e intenta reservar.

Escenario de Error: Tabla desactualizada
1A3. El Recepcionista selecciona habitación que aparece disponible pero está ocupada (tabla no actualizada).



6. Eliminar Reserva
Diagrama de Secuencia y Cursos Alternativos
Curso Principal de Eventos

3. El Recepcionista pulsa el botón "Eliminar".

5. El Recepcionista confirma la eliminación.

7. El Sistema elimina la reserva.
8. El Sistema actualiza la tabla de reservas, mostrando el cambio.

Curso Alternativo de Eventos
Escenario de Error: No selección de reserva
1A1. El Recepcionista pulsa "Eliminar" sin haber seleccionado una reserva.2A1. El Sistema muestra error: "Seleccione una reserva para eliminar".

Escenario de Error: Cancelación de eliminación
1A2. El Recepcionista no confirma la eliminación cuando el sistema lo solicita.2A2. El Sistema mantiene la reserva sin cambios.

7. Guardado de archivos CSV
Diagrama de Secuencia y Cursos Alternativos
Curso Principal de Eventos

3. El Recepcionista selecciona ubicación y confirma el guardado.
4. El Sistema valida el formato y agrega extensión .csv si es necesario.

6. El Sistema muestra confirmación: "Reservas guardadas correctamente".

8. Guardar archivo CSV al cerrar aplicación
Diagrama de Secuencia y Cursos Alternativos
Curso Principal de Eventos


4. El Sistema muestra diálogo estándar de guardado de archivo CSV.

6. El Sistema guarda los datos y muestra confirmación: "Datos guardados correctamente".
7. El Sistema cierra la aplicación.
Dificultades del desarrollo
-
Extracción de datos vía servidor o nube:
El sistema requiere de una carga de archivos con habitaciones, y si es que existen, de reservas. La idea inicial consistía en que estos archivos estuvieran almacenados en la nube o en un servidor, simulando de esta forma el funcionamiento de la aplicación en un entorno empresarial. En este contexto se requeriría de una sincronización con los datos de la red, permitiendo así múltiples recepcionistas generando reservas a la vez. Por simplicidad se decidió hacer la extracción de datos de archivos guardados de forma local en el dispositivo, por lo que este sería un aspecto a mejorar en futuras versiones. Modificar reservas existentes:
En un inicio se tenia planeado la opción de editar una reserva desde la pestaña de reservas, permitiendo modificar la habitación, las fechas y los servicios incluidos. Esto presentaba multiples dificultades ya que desde el formulario se debía verificar que la nueva habitación existiera y que además estuviera disponible en las nuevas fechas escogidas. Esta funcionalidad presentaba inconsistencias con el diseño del formulario, el cual fue pensado en primera instancia para crear reservas desde la pestaña de habitaciones, donde ya se validaba la disponibilidad. Por esta razón se decidió eliminar la opción de modificar reserva, optando por el flujo de eliminar la reserva y reservar nuevamente desde la pestaña de habitaciones, manteniendo las funciones criticas del sistema.Consideración de casos críticos del sistema:
Durante el desarrollo, se identificaron y solucionaron varios escenarios considerados como casos críticos que podrían afectar la funcionalidad del sistema. Para esto se implementaron soluciones que incluyen: Verificación del archivo de origen a cargar en la aplicación, ingreso erróneo de fechas, disponibilidad de habitaciones, actualización de las tablas, entre otros.
Bugs presentes
Problema: Realizar cambios en las fechas de búsqueda y no actualizar la tabla de habitaciones.
Descripcion: Este problema consiste en que cuando no se actualiza la tabla luego de hacer un cambio de fechas, puede que aparezcan disponibles algunas habitaciones que en realidad están ocupadas en ese nuevo rango de fechas, lo que permite acceder al formulario para hacer la reserva de esa habitación. A pesar de que el sistema permite acceder al formulario de la reserva, cuando se desea efectuar la reserva el sistema está diseñado para impedir que se efectúen reservas de habitaciones ya ocupadas, por lo que se despliega una ventana de error. Por lo tanto aunque el sistema tiene soporte para evitar reservas invalidas es importante actualizar la tabla de habitaciones disponibles cada vez que se haga un cambio en las fechas, evitando errores de este tipo.
-
Problema: Reservar una habitación previo a la carga del archivo de reservas.
Descripción: Este problema consiste en que si se realiza una reserva previo a cargar la lista con todas las reservas, cuando se efectué la carga del archivo la reserva inicial será sobrescrita con las del archivo, por tanto es indispensable que si existe un archivo con reservas sea cargado al iniciar el programa, evitando este tipo de errores.