Proyecto de análisis y diseño orientado a objetos de un Property Management System (PMS) enfocado en la asignación automática e inteligente de habitaciones.
Cuando un recepcionista recibe una solicitud de reserva (fechas de check-in/check-out, cantidad de pasajeros y preferencias), normalmente pierde tiempo buscando manualmente una habitación adecuada y tratando de evitar huecos de noches libres entre reservas. Además, los cambios de turno y la mensajería con el pasajero suelen generar pérdida de información.
Este sistema fue diseñado para automatizar esa decisión.
- Proponer automáticamente una habitación concreta para la reserva.
- Maximizar la continuidad de la estadía (evitar huecos de noches libres en la misma habitación).
- Maximizar las preferencias del huésped: cada habitación tiene un conjunto de atributos. El sistema busca la habitación que cumpla todos los atributos solicitados. Si no es posible, asigna la que tenga el subconjunto más grande de atributos, respetando una prioridad definida entre ellos.
- Registrar los pagos asociados al titular de la reserva.
| Componente | Estado |
|---|---|
| Diagrama de conceptos | Completo |
| Diagrama de clases | Completo |
| Diagrama de secuencia | Completo (crear reserva) |
| Diagrama de comunicación | Completo (funciones clave) |
| Código base (C++) | Solo estructura (headers, getters y setters) |
| Lógica de asignación | No implementada |
| Persistencia / Base de datos | No implementada |
PMS/
├── include/
│ ├── controllers/
│ ├── dtos/
│ ├── entities/
│ └── utils.hpp
├── src/
│ ├── controllers/
│ ├── dtos/
│ ├── entities/
│ ├── handlers/
│ └── main.cpp
└── uml/
- Diagrama de conceptos
- Diagrama de clases de diseño