You are on page 1of 19

VIETNAM NATIONAL UNIVERSITY HO CHI MINH CITY

UNIVERSITY OF INFORMATION TECHNOLOGY

-----🙢🕮🙡-----

SE100- Object-oriented analysis and design

Project: “Bistro Cheese – Restaurant management”


Lecturer: Le Thanh Trong

Student:

1. Nguyen Van Quoc Tuan 21522758

2. Tran Phuoc Long 21521103

3. Nguyen Minh Nhat 21522419

Ho Chi Minh City, 06 October 2023


Cheese Bistro – Restaurant Management Version: 1.0
Statement of the project Date: 06/10/2003

Document change record sheet


Date Version Description Authors
Purpose
Glossary
Tran Phuoc Long
Conceptual modeling
04/10/2023 1.0 Nguyen Van Quoc Tuan
Business operations
Nguyen Minh Nhat
Functional
Non-functional

Company name

Page 2
Cheese Bistro – Restaurant Management Version: 1.0
Statement of the project Date: 06/10/2003

Statement of the Project


I. Purpose of the system:
A European restaurant Cheese Bistro needs a management system to ensure quality
quantity for business activities. Tasks that need to be managed such as name management
list of dishes, managing table reservations, tracking orders, managing staff and
customers, looking up items, and creating statistical reports.
II. Glossary
Cheese Bistro: The name of the European restaurant for which the management system
is being developed.
Management System: The software application or platform designed to handle various
aspects of the restaurant's operations.
Menu Management: The module responsible for creating, editing, and organizing the
list of dishes and drinks offered by the restaurant, including their names, descriptions,
prices, and availability.
Table Reservations: The feature that allows customers to book tables in advance for a
specific date and time.
Order Tracking: The functionality that enables restaurant staff to monitor the status of
customer orders, including preparation, delivery, and payment.
Staff Management: The module responsible for handling employee information,
scheduling, roles, and access permissions.
Item Lookup: The function that allows staff to search for specific menu items quickly,
check their availability, and view details.
Statistical Reports: The feature that generates various reports and analytics related to the
restaurant's performance, such as sales trends, customer demographics, and inventory
levels.
Inventory Management: The process of tracking and managing the stock of ingredients
and supplies needed for food preparation.
Reservation Calendar: A visual representation of table availability and reservations for
a specific date and time.
Billing and Invoicing: The function for generating customer bills, including itemized
charges, taxes, and payment options.
Feedback and Reviews: The capability for customers to provide feedback and leave
reviews about their dining experience.
User Roles: Different levels of access and permissions granted to staff members, such as
owner, manager and staff.

Page 3
Cheese Bistro – Restaurant Management Version: 1.0
Statement of the project Date: 06/10/2003

Online Ordering: An option for customers to place orders for pickup or delivery through
a website or mobile app.
Supplier Management: Keeping track of suppliers and orders for ingredients and other
restaurant supplies.
Reservation Confirmation: The process of notifying customers about the status of their
reservation, either through email, SMS, or phone.
Guest Count: Recording the number of guests in a reservation or at a table for planning
purposes.
Waste Management: Tracking and managing food and material waste to minimize
losses.
III. Description of users/forms and related entities (conceptual
modeling)
1. Users:
Owner: Responsible for system maintenance and user management. They have the
highest level of access and can create, modify, or delete user accounts and roles.
Manager: Oversee restaurant operations. They have access to all system features,
including staff management, inventory control, financial reports, and customer
feedback analysis.
Staff: restaurant staff is responsible for taking orders, serving food, and assisting
customers. They use the system to input orders, check table availability, and view
customer preferences.
2. Forms (Interface)
Menu Interface: allows users to view the restaurant's menu, including dishes,
descriptions, prices, and availability.
User Management Form: Owner can add, edit, or remove staff or manager
members, assign roles, and manage user accounts, including login credentials.
Billing and Invoicing Form: Staffs and managers can generate bills for
customers, add items, calculate taxes, apply discounts, and process payments.
Reports and Analytics Dashboard: Managers and administrators can access this
interface to generate various statistical reports, such as sales trends, customer
demographics, and inventory usage.
Feedback and Review Submission Form: Customers can provide feedback and
leave reviews about their dining experience, which can be used for quality
improvement.

Page 4
Cheese Bistro – Restaurant Management Version: 1.0
Statement of the project Date: 06/10/2003

3. Related Entities
Menu Items: Entities representing individual dishes or drinks on the restaurant's
menu, including attributes like name, description, price, and category.
Orders: Entities representing customer food and drink orders, including order date,
items ordered, customization details, and order status.
Users: Entities representing restaurant employees, including their names, roles,
contact information, and login credentials.
Inventory Items: Entities representing ingredients and supplies in the restaurant's
inventory, including name, quantity, supplier, and expiration date.
Bills/Invoices: Entities representing customer bills or invoices, including details of
items ordered, taxes, discounts, and payment status.
Feedback and Reviews: Entities representing customer feedback and reviews,
including comments, ratings, and timestamps.
4. Conceptual Model

Page 5
Cheese Bistro – Restaurant Management Version: 1.0
Statement of the project Date: 06/10/2003

IV. Description of processes (business operations)


Process Description Key Activities

1. User Management This process involves Adding and onboarding new


managing restaurant staff, user
including hiring,
Creating work schedules
scheduling, assigning
assigning roles (manager, staff)
roles, and maintaining
employee records. Managing user performance.

2. Menu Management This process involves Adding menu items


creating, updating, and
Updating item details
managing the restaurant's
menu. It includes adding Setting prices, categorizing
new dishes, setting prices, items, and marking items as
adding descriptions, and available or unavailable.
indicating item
availability.

3. Order Management This process covers the Taking customer orders,


steps from taking customer customizing orders, sending
orders to delivering them orders to the kitchen, tracking
to tables or for order status, and notifying
takeout/delivery orders. It customers when orders are
includes order entry, ready.
kitchen preparation, and
order tracking.

4. Reservation This process handles Checking table availability,


customer table recording reservation details
reservations. It includes (date, time, number of guests),
checking table availability, sending reservation
making reservations, and confirmations, and managing
confirming bookings. reservation cancellations.

5. Inventory Control This process manages Monitoring ingredient levels,


restaurant inventory, placing orders with suppliers,
ensuring ingredients and updating inventory records, and
supplies are available

Page 6
Cheese Bistro – Restaurant Management Version: 1.0
Statement of the project Date: 06/10/2003

when needed. It includes managing waste and spoilage.


monitoring stock levels,
ordering from suppliers,
and tracking usage.

6. Billing and This process handles Creating bills, itemizing


Payment customer payments, charges, applying discounts,
generates bills, applies calculating taxes, processing
discounts, calculates taxes, payments, and issuing receipts.
and records transactions.

7. Reporting and This process involves Generating various reports,


Analytics generating statistical analyzing data, and using
reports and analytics to insights for decision-making
provide insights into and business improvement.
restaurant performance,
such as sales trends,
customer demographics,
and inventory usage

8. Feedback and This process captures Collecting customer feedback,


Review customer feedback and aggregating and analyzing
reviews to assess the feedback data, and addressing
restaurant's quality and customer concerns or issues.
service. It includes
collecting, analyzing, and
responding to feedback.

V. Requirements (functional)
1. Menu Management
1.1 Dynamic Menu Management

Feature Dynamic Menu Management

Description Allow the restaurant to manage and update their daily menu,
including adding, editing, or deleting dishes, both à la carte
and combo.

Page 7
Cheese Bistro – Restaurant Management Version: 1.0
Statement of the project Date: 06/10/2003

Purpose Enable efficient menu management to reflect the restaurant's


offerings accurately.

User problem Difficulty in updating the menu and keeping it up-to-date.

User value Streamlines the process of menu management, ensuring


customers are presented with accurate choices.

Assumptions The restaurant staff will have access to menu management to


select food for customers
The owner of the restaurant can access the admin panel for
menu management.

Not doing None

Acceptance criteria Restaurant staff can add, edit, or delete individual dishes and
combos.
Restaurant owner can add, edit, and delete a food

1.2 Cheese-Related Promotions

Feature Cheese-Related Promotions

Description Implement special promotions for cheese-related dishes,


including complimentary sauce or bread based on customer
preferences.

Purpose Enhance the dining experience by providing customization


options for cheese dishes..

User problem Limited options for personalizing cheese dishes.

User value Increases customer satisfaction by offering tailored cheese-


related promotions.

Assumptions Customers can specify their preferences for complimentary


items.

Page 8
Cheese Bistro – Restaurant Management Version: 1.0
Statement of the project Date: 06/10/2003

Not doing Offering promotions on non-cheese dishes.

Acceptance criteria Customers can select their preferences for complimentary


items when ordering cheese dishes.

1.3 Seasonal Menu Updates

Feature Seasonal Menu Updates

Description Automatically update the menu based on seasonal changes


(Spring/Summer/Fall/Winter) following a quarterly cycle.

Purpose Enhance the dining experience by providing customization


options for cheese dishes..

User problem Limited options for personalizing cheese dishes.

User value Increases customer satisfaction by offering tailored cheese-


related promotions.

Assumptions Customers can specify their preferences for complimentary


items.

Not doing Offering promotions on non-cheese dishes.

Acceptance criteria Customers can select their preferences for complimentary


items when ordering cheese dishes.

2. Order Management System


2.1 Order Management

Feature Order Management

Description Develop a system for restaurant staff, manager to manage


customer orders, including table assignment, product
selection, and order status tracking.

Page 9
Cheese Bistro – Restaurant Management Version: 1.0
Statement of the project Date: 06/10/2003

Purpose Streamline the order process and enhance communication


between staff and the kitchen.

User problem Inefficient order handling, leading to delayed service and


potential errors.

User value Improves the overall dining experience by ensuring orders are
processed accurately and promptly.

Assumptions Staff and managers will use the system to manage orders

Not doing Handling payment processing (handled separately).

Acceptance criteria Restaurant staff can create, modify, and cancel orders. Order
status is updated in real-time and accessible to serving staff
and managers.

2.2 Table Management

Feature Table Management

Description Implement a table management feature to assign customers to


specific tables and track table availability.

Purpose Efficiently allocate tables to customers, optimize seating


capacity, and reduce wait times.

User problem Difficulty in managing table assignments and tracking


available tables.

User value Enhances the customer experience by minimizing waiting


times and ensuring efficient table allocation.

Assumptions Staff will use the system to assign and track table status.

Not doing Reservations management (handled separately).

Page 10
Cheese Bistro – Restaurant Management Version: 1.0
Statement of the project Date: 06/10/2003

Acceptance criteria Staff can assign customers to available tables, mark tables as
occupied, and track table status, all through the system.
2.3. Reporting and Analytics

Feature Reporting and Analytics

Description Develop reporting and analytics capabilities to track order


trends, performance metrics, and customer behavior.

Purpose Enable data-driven decision-making, optimize operations, and


identify areas for improvement.

User problem Lack of insights into order patterns and restaurant


performance.

User value Empowers restaurant owners with valuable data for strategic
planning and operational enhancements.

Assumptions Data analytics tools and dashboards are available for


reporting.

Not doing Implementing advanced machine learning algorithms for


predictive analytics (handled separately).

Acceptance criteria Restaurant management can access reports and analytics


dashboards, showcasing key performance indicators and
order statistics.

3. Billing and Payment


3.1 Billing Generation

Feature Billing Generation

Description Implement billing for customers, including the calculation of


the total bill, taxes, and optional tips.

Page 11
Cheese Bistro – Restaurant Management Version: 1.0
Statement of the project Date: 06/10/2003

Purpose Simplify the payment process and provide customers with


accurate bills.

User problem Lengthy and error-prone payment processing.

User value Improves the checkout experience by automating bill


calculation and providing payment options.

Assumptions Integration with payment gateways for secure transactions.

Not doing Handling cash payments (handled separately).

Acceptance criteria Customers can view their bills, add optional tips, and make
secure online payments through the system.

3.2 Multi-Method Payment Acceptance

Feature Multi-Method Payment Acceptance

Description Enable the acceptance of payments from customers through


various methods, including cash, credit cards, e-wallets, and
bank transfers. Record the chosen payment method within
each order on the application.

Purpose Provide flexibility in accepting payments, allowing customers


to pay using their preferred method.

User problem Limited payment options and difficulty in recording payment


details.

User value Expands payment choices for customers and simplifies


payment recording for the restaurant..

Assumptions The restaurant has access to payment processing services for


each method.

Not doing Implementing custom payment processing for each method

Page 12
Cheese Bistro – Restaurant Management Version: 1.0
Statement of the project Date: 06/10/2003

(handled separately).

Acceptance criteria Customers can choose from multiple payment methods, and
the selected method is recorded within the order.

3.3 Payment Management and Tracking

Feature Payment Management and Tracking

Description Implement payment tracking and management to allow


restaurant owners to monitor daily transactions based on
invoice payment statuses. Allow uploading and storage of
transfer order images for easy verification.

Purpose Enable restaurant owners to track and manage payments for


efficient financial control.

User problem Lack of transparency in payment tracking and management.

User value Provides restaurant owners with a clear overview of payment


statuses and facilitates image-based verification.

Assumptions Transfer order images can be uploaded and stored for each
transaction.

Not doing Implementing advanced financial analytics (handled


separately).

Acceptance criteria The system tracks payment statuses for invoices, and transfer
order images can be uploaded and stored for easy
verification.

4. Loyalty and Discounts

Feature Loyalty and Discounts

Page 13
Cheese Bistro – Restaurant Management Version: 1.0
Statement of the project Date: 06/10/2003

Description Create a loyalty program where customers earn points or


receive discounts based on their ordering history.

Purpose Encourage customer retention and reward loyal patrons.

User problem Lack of incentives for repeat orders.

User value Provides motivation for customers to continue ordering from


the restaurant.

Assumptions Loyalty program rules and discounts are predefined.

Not doing Complex loyalty program customization (handled separately).

Acceptance criteria Customers accumulate points or receive discounts


automatically based on their order history.

5. Customer Support and Feedback

Feature Customer Support and Feedback

Description Offer customer support channels and collect feedback to


address issues and improve service.

Purpose Provide a means for customers to seek assistance and offer


valuable feedback.

User problem Limited options for resolving order-related problems.

User value Enhances customer satisfaction by addressing issues


promptly and demonstrating a commitment to improvement.

Assumptions A customer support team is available to handle inquiries and


resolve issues.
Not doing: Implementing a full-fledged customer support
ticketing system (handled separately).

Page 14
Cheese Bistro – Restaurant Management Version: 1.0
Statement of the project Date: 06/10/2003

Not doing Complex loyalty program customization (handled separately).

Acceptance criteria Customers can access support channels, submit feedback, and
receive timely responses.

6. Employee Management
6.1 Employee Personal Information Management

Feature Employee Personal Information Management

Description Implement employee personal information management,


including name, phone number, job position, and work
schedule. Ensure that employees are 18 years old or older and
have provided information on their Citizen Identification
Card (CCCD).

Purpose Maintain accurate records of employee personal information


for organizational purposes.

User problem Limited options for resolving order-related problems.

User value Enhances customer satisfaction by addressing issues


promptly and demonstrating a commitment to improvement.

Assumptions A customer support team is available to handle inquiries and


resolve issues.
Not doing: Implementing a full-fledged customer support
ticketing system (handled separately).

Not doing Complex loyalty program customization (handled separately).

Acceptance criteria Customers can access support channels, submit feedback, and
receive timely responses.

Page 15
Cheese Bistro – Restaurant Management Version: 1.0
Statement of the project Date: 06/10/2003

6.2 Salary Calculation and Leave Management

Feature Salary Calculation and Leave Management

Description Calculate employee salaries and manage attendance records.


Different job positions have maximum allowable leave days
per month. Exceeding the defined leave days triggers
warnings or reminders.

Purpose Automate salary calculations and track employee leave to


ensure compliance with leave policies.

User problem Manual salary calculations and leave monitoring.

User value Streamlines salary calculation processes and provides leave


policy adherence.

Assumptions Leave policies are predefined for each job position.

Not doing Managing exceptions to leave policies (handled separately).

Acceptance criteria Salaries are calculated accurately, and the system monitors
leave days, issuing warnings when leave limits are exceeded.

6.3 Salary Calculation and Leave Management

Feature Timekeeping Management

Description Timekeeping management in restaurant operations involves


accurately tracking and managing employees' work hours,
including clocking in/out, monitoring shifts, and recording
breaks.

Purpose Ensure precise tracking of employee work hours, enabling


efficient resource allocation, payroll accuracy, and
compliance with labor laws.

Page 16
Cheese Bistro – Restaurant Management Version: 1.0
Statement of the project Date: 06/10/2003

User problem Inadequate timekeeping leads to discrepancies in payroll and


difficulties in tracking employee attendance and breaks
accurately.

User value Enhances payroll accuracy, provides clear attendance records,


and facilitates compliance with labor regulations, ultimately
fostering a more efficient and transparent work environment.

Assumptions The system assumes that employees are responsible for


clocking in/out accurately, and that the timekeeping function
integrates seamlessly with the payroll system..

Not doing Handling exceptions to regular timekeeping (e.g., overtime,


special accommodations) will be addressed separately from
the core timekeeping feature

Acceptance criteria The system accurately records and calculates employee work
hours, tracks breaks, and provides a clear overview of
attendance records. It issues warnings when predefined leave
limits are exceeded, aiding in policy adherence.

7. Discount Code Management

Feature Discount Code Management

Description Manage discount codes for special occasions, including


setting minimum (5%) and maximum (30%) discount values.

Purpose Allow the restaurant to offer discounts to customers during


specific events.

User problem Difficulty in managing and applying discounts


systematically.

User value Streamline the discount process, making it easier to attract


and retain customers.

Page 17
Cheese Bistro – Restaurant Management Version: 1.0
Statement of the project Date: 06/10/2003

Assumptions The system will support both automatic and manually


generated discount codes.

Not doing Managing discounts below 5% or above 30%.

Acceptance criteria Users can create, edit, and deactivate discount codes. The
system enforces minimum and maximum discount limits.

8. Requirements (non-functional) and constraints (if any)

Performance Response Time: The system should have low latency and
respond to user actions quickly, with most operations
completing within 2 seconds.
Scalability: The system should be able to handle a scalable
number of users and transactions, especially during peak
hours and special events.

Security Data Security: Ensure that customer and business data are
securely stored and transmitted, with encryption mechanisms
in place.
Access Control: Implement role-based access control
(RBAC) to restrict access to certain functionalities based on
user roles and permissions.
Authentication: Use secure authentication mechanisms, such
as OAuth or JWT, to verify the identity of users.
Payment Security: Ensure that payment processing complies
with industry-standard security practices and regulations.

Reliability Availability: The system should be available 24/7, with


minimal downtime for maintenance and updates.
Backup and Recovery: Regularly backup the system data
and implement a disaster recovery plan to ensure data
integrity and availability.

Compatibility Cross-Browser Compatibility: The front end should be


compatible with major web browsers, including Chrome,

Page 18
Cheese Bistro – Restaurant Management Version: 1.0
Statement of the project Date: 06/10/2003

Firefox, Safari, and Edge.


Cross-Platform Compatibility: Ensure that the system
works on various devices, such as desktop computers, and
tablets.

User Experience (UX) Usability: The user interface should be intuitive and user-
friendly, catering to both tech-savvy and non-tech-savvy
users.
Accessibility: Ensure that the system is accessible to users
with disabilities, following accessibility guidelines (e.g.,
WCAG).

Data Storage Database: Use MySQL or a relational database management


system (RDBMS) as the backend database to store and
manage data efficiently.
Data Retention: Define data retention policies and manage
the storage of historical data, especially for customer and
transaction records.

Technology Stack Spring Boot (Java): As specified, the server-side application


will be developed using Spring Boot.
Next.js: The frontend will be designed using Next.js for its
server-side rendering capabilities.
MySQL: The chosen RDBMS for data storage is MySQL.

Integration Ensure that the system can integrate with third-party services
or APIs for features like payment gateways, customer
feedback platforms, and external analytics tools.

Page 19

You might also like