Diagrama de clases para el sistema de gestión hotelera.

El diagrama de clases es un tipo de diagrama UML que muestra las propiedades y relaciones entre varios objetos .

Clase :

Las clases utilizadas en este sistema son,

  • Gestión hotelera: esta clase describe todo el hotel y dice si el hotel está abierto o cerrado.
  • Empleados: Contiene los datos del Empleado. Hay dos tipos de empleados, el mesero y el chef. Esta clase de empleado es la clase principal de dos subclases: servidor y chef.
  • Servidor: Contiene los detalles del servidor, la mesa a la que están asignados, el pedido que se está sirviendo actualmente, etc.
  • Chef: Contiene los detalles del chef trabajando en un pedido en particular.
  • Cliente: Contiene los datos del cliente.
  • Mesa: contiene los detalles de la mesa, como el número de mesa y el servidor asignado a esa mesa.
  • Menú: El menú contiene todos los alimentos disponibles en el restaurante, su disponibilidad, premio, etc.
  • Orden: Orden representa la orden asociada con una mesa en particular y el cliente.
  • Factura: la factura se calcula utilizando el pedido y el menú.
  • Pago: Esta clase es para hacer el pago. El pago se puede realizar de dos formas ya sea en efectivo o con tarjeta. Entonces, el pago es la clase principal y el efectivo y la tarjeta son subclases.
  • Efectivo: El pago se puede realizar en efectivo
  • Tarjeta: El pago se puede hacer con tarjeta o en línea

Atributos:

  • Gestión hotelera – HotelName, NumberOfEmployees
  • Empleados – IdEmpleado, NombreEmpleado, SalarioEmpleado
  • Servidor : ID de servidor, ID de pedido
  • Chef – Chef_Id, OrderId
  • Cliente : CustomerId, CustomerName, Bill_Id, OrderId, PaymentId
  • Tabla : TableNumber, OcupadoEstado, ServerId, CustomerId
  • Menú – ItemId, ItemName, Cantidad
  • Orden : OrderId, ItemId, ItemName, Cantidad, CustomerId, ServerId
  • Factura – Bill_Id, OrderId, TotalBill
  • Pago : ID de pago, Bill_Id

Métodos :

1. Gestión hotelera:

  • open() -Se utiliza para indicar si el hotel está funcionando o no.

2. Empleados:  

  • detalles del empleado() : este método contiene los detalles del empleado.

3. Cliente: 

  • customer_details() : muestra los detalles del cliente.
  • order_items() : este método contiene los artículos pedidos por el cliente.
  • payment_status() -Esto dice si el cliente pagó o no.

4. Mesa:

  • table_details() : este método contiene los detalles de la mesa junto con el cliente y el número de asientos.
  • Availability_status() : este método dice si la mesa está ocupada o no.

5. Menú:

  • items() : este método muestra los elementos del menú, su disponibilidad y su precio.

6. Orden:

  • order_items() : este método ordena los elementos seleccionados por el usuario en el menú.

7. Factura:  

  • calcular_factura() : este método calcula la factura de una mesa en particular.

8. Pago: 

  • ispaid() : muestra si el pago se ha realizado correctamente o no.

Relaciones :

Herencia :

La herencia es “es una relación” . Tiene una clase principal y sus correspondientes clases secundarias. La clase secundaria hereda los métodos y atributos necesarios para ella de la clase principal.

Aquí, Employee es la clase principal Server y Chef son clases secundarias porque el servidor es un empleado y el chef es un empleado.

Asociación :

En Asociación, ambas clases están relacionadas entre sí pero no están contenidas físicamente entre sí. Se conoce como relación de “uso” . En relación de asociación, considere que tenemos dos clases A y B donde la clase A llama a la clase B y la clase B también llama a la clase A.

Aquí,

  • empleado y cliente
  • servidor y mesa
  • cliente y pago
  • chef y orden

sigue relaciones de asociación.

Composición :

También se denomina relación «Tiene una» donde la clase A tiene una instancia de la clase B, la clase B está compuesta dentro de la clase A y no puede existir de forma independiente sin la clase A. Entonces, en la composición, una clase depende completamente de otra clase y está contenida físicamente. dentro de eso.

Aquí,  

  • Menú y Orden
  • Orden y Factura
  • Factura y pago

sigue la relación de composición

      No puede existir pedido sin menú, no puede existir factura sin pedido y no puede existir pago sin factura. Así que aquí el pedido está contenido dentro del menú, la factura está contenida dentro del pedido y el pago está contenido dentro de la factura.

Agregación :

También se denomina relación «Tiene una» donde la clase A tiene una instancia de la clase B, pero la clase B no está compuesta dentro de la clase A y puede existir de forma independiente sin la clase A. Entonces, en agregación, ambas clases dependen una de la otra y usan entre sí, pero ninguno de ellos está contenido uno dentro de otro.

Aquí,  

  • Cliente y Servidor
  • chef y servidor

sigue la relación de agregación

     El servidor está asociado con el cliente, pero también puede existir sin el cliente. Del mismo modo, Chef está asociado con el servidor, pero también puede existir sin el servidor.

Notaciones:

Diagrama de clase :

Publicación traducida automáticamente

Artículo escrito por suryadbdeveloper y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *