Bối cảnh và vấn đề nghiên cứu

Trong bối cảnh nhịp sống hiện đại, ngành dịch vụ thức ăn nhanh (fast food) đang phát triển mạnh mẽ và trở thành một phần thiết yếu trong thói quen ẩm thực toàn cầu cũng như tại thị trường Việt Nam. Tuy nhiên, nhiều cơ sở kinh doanh vừa và nhỏ trong lĩnh vực ẩm thực vẫn áp dụng các phương thức gọi món (order) và quản lý bán hàng truyền thống. Phương thức thủ công này thường tốn nhiều thời gian, dễ phát sinh sai sót trong quá trình tiếp nhận thông tin, gây áp lực công việc cho nhân viên tại các khung giờ cao điểm và làm giảm mức độ hài lòng của khách hàng.

Để giải quyết các bất cập trên, đề tài "Xây dựng phần mềm quản lý nhà hàng thức ăn nhanh" (Fast Food Restaurant Management Software) được thực hiện bởi nhóm tác giả thuộc Trường Đại học Kinh tế - Tài chính TP.HCM (UEF) trong khuôn khổ môn học Hệ thống thông tin quản lý (mã lớp ITE1129E, giảng viên hướng dẫn N. Trúc).

Nghiên cứu xác định hai mục tiêu chính:

  1. Tiếp cận và tích lũy chuyên môn sâu về môi trường vận hành thực tế của ngành nhà hàng thức ăn nhanh, từ đó chuẩn hóa các quy trình nghiệp vụ phục vụ.
  2. Thiết kế và phát triển một ứng dụng có tính thực tiễn cao, giao diện trực quan, dễ thao tác và triển khai hiệu quả cho bộ máy vận hành nhà hàng.

Đối tượng và phạm vi nghiên cứu:

  • Đối tượng nghiên cứu: Quy trình quản lý bán hàng, luân chuyển thông tin order giữa các bộ phận (Thu ngân - Bếp - Quản lý), quản lý dữ liệu nhân viên, danh mục món ăn và kiểm soát an toàn vận hành.
  • Phạm vi triển khai: Hệ thống máy tính thu ngân (cashier computer system) tại các nhà hàng thức ăn nhanh quy mô vừa và nhỏ (SMEs).
  • Phạm vi công nghệ: Ngôn ngữ lập trình C#, nền tảng .NET Framework, hệ quản trị cơ sở dữ liệu SQL Server và mô hình mạng cảm biến IoT cảnh báo cháy.
  • Thời gian thực hiện: Hoàn thành vào tháng 10 năm 2023.

Cơ sở lý thuyết và phương pháp

Khung công nghệ và nền tảng lý thuyết

Đề tài dựa trên cơ sở lập trình hướng đối tượng (OOP) và kiến trúc hệ thống thông tin quản lý doanh nghiệp dịch vụ ăn uống:

  • Ngôn ngữ C# & .NET Framework: C# là ngôn ngữ lập trình mạnh mẽ, hỗ trợ toàn diện mô hình OOP giúp tổ chức mã nguồn có cấu trúc, dễ tái sử dụng và tích hợp chặt chẽ với .NET Framework trên hệ điều hành Windows.
  • Hệ quản trị cơ sở dữ liệu SQL Server: Đóng vai trò lưu trữ toàn bộ dữ liệu giao dịch, danh mục món ăn, tài khoản và nhân sự. Công nghệ ADO.NET được sử dụng làm cầu nối giao tiếp dữ liệu giữa ứng dụng C# và SQL Server, tối ưu hóa khả năng truy vấn và kết xuất báo cáo.
  • Khung quản trị bảo mật thông tin: Dựa trên các nguyên tắc cơ bản gồm tính bảo mật (Confidentiality), tính toàn vẹn (Integrity), tính khả dụng (Availability) cùng các tiêu chuẩn quốc tế như PCI DSS và GDPR.
  • Mô hình Internet vạn vật (IoT): Ứng dụng cấu trúc kết nối cảm biến khói, nhiệt và thiết bị chấp hành thông qua cổng kết nối trung tâm (Home Gateway).

Quy trình nghiên cứu và phát triển dự án

Nhóm nghiên cứu triển khai dự án qua 6 giai đoạn rõ ràng theo quy trình phát triển phần mềm:

Giai đoạn Nội dung công việc thực hiện Mục tiêu giai đoạn
1. Planning (Lập kế hoạch) Lên ý tưởng giao diện, xác định tính năng, phân công nhân sự. Định hình cấu trúc tổng thể của hệ thống quản lý nhà hàng.
2. Research (Nghiên cứu) Khảo sát hành vi người dùng, tìm hiểu công nghệ và đối chuẩn hệ thống. Thống nhất bố cục và các hàm chức năng cần thiết.
3. Design (Thiết kế) Thiết kế cơ sở dữ liệu (ERD), giao diện người dùng và sơ đồ UML. Tạo bản thiết kế hệ thống trực quan, thân thiện với người dùng.
4. System Deployment (Triển khai) Cài đặt hệ thống thử nghiệm, đánh giá các điểm hạn chế. Kiểm thử tính tương thích trên môi trường vận hành thực tế.
5. System Development (Phát triển) Kiểm thử chức năng, tối ưu hóa các điểm nghẽn của hệ thống. Đảm bảo chất lượng và tính ổn định của phần mềm.
6. Maintenance (Bảo trì) Khắc phục lỗi phát sinh và lên kế hoạch nâng cấp. Duy trì chất lượng phần mềm trong suốt vòng đời sử dụng.

Thiết kế và triển khai hệ thống

1. Kiến trúc nghiệp vụ (Business Process)

Hệ thống xử lý tương tác giữa thực thể mua (khách hàng) và thực thể bán (nhà hàng) qua 3 hình thức phục vụ: ăn tại bàn (Dine-in), mang đi (Takeaway) và giao hàng tận nơi (Home delivery). Luồng xử lý đơn hàng diễn ra tuần tự:

  • Dine-in: Khách hàng chọn món, chọn số bàn và nhân viên phục vụ.
  • Delivery: Khách hàng cung cấp thông tin số điện thoại và địa chỉ nhận hàng.
  • Xử lý đơn hàng: Thu ngân xác nhận đơn, gửi phiếu chế biến KOT (Kitchen Order Ticket) đến bộ phận bếp.
  • Chế biến & Trả món: Bếp nhận đơn, chế biến, chuyển trạng thái hoàn thành để thu ngân/phục vụ bàn giao cho khách hoặc chuyển bộ phận giao hàng.
[Khách hàng] ---> (Lựa chọn hình thức: Ăn tại chỗ / Mang đi / Giao hàng)
      |
      v
[Thu ngân]  ---> (Nhập đơn / Tạo hóa đơn / In phiếu KOT)
      |
      v
[Bộ phận Bếp] -> (Nhận KOT / Chế biến / Xác nhận hoàn thành đơn)
      |
      v
[Thanh toán & Giao hàng] -> (Thu tiền / In biên lai / Bàn giao món)

2. Thiết kế Use Case

Hệ thống phân quyền cho 3 nhóm tác nhân chính: Quản lý (Management staff), Nhân viên thu ngân (Cashier) và Nhân viên bếp (Kitchen staff).

                      +-------------------+
                      | Đăng nhập (UC-1.0) | <--- [Quản lý, Thu ngân, Bếp]
                      +-------------------+
                                |
       +------------------------+------------------------+
       |                        |                        |
       v                        v                        v
[Nhân viên Quản lý]    [Nhân viên Thu ngân]     [Nhân viên Bếp]
  - Quản lý danh mục      - Tạo đơn hàng          - Tiếp nhận đơn KOT
    (UC-2.0)                (UC-5.0)              - Cập nhật trạng thái
  - Quản lý món ăn        - Xác nhận thanh toán     chế biến (UC-7.0)
    (UC-3.0)                (UC-6.0)
  - Quản lý nhân viên
    (UC-4.0)
  • UC-1.0 (Login): Xác thực tài khoản của Quản lý, Bếp và Thu ngân trước khi truy cập các phân hệ.
  • UC-2.0 (Manage Category): Quản lý thực hiện thêm mới, chỉnh sửa thông tin danh mục món ăn (catID, catName).
  • UC-3.0 (Manage Product): Quản lý cập nhật thông tin chi tiết món ăn (hình ảnh, tên món, đơn giá, danh mục liên kết, điều chỉnh giá theo dịp lễ).
  • UC-4.0 (Manage Staff): Quản lý danh sách nhân sự (mã nhân viên, họ tên, số điện thoại, phân quyền vai trò).
  • UC-5.0 (Create Orders): Thu ngân tiếp nhận thông tin chọn món, số lượng, hình thức phục vụ, tạo đơn và gửi lệnh KOT đến bếp (trạng thái đơn chuyển sang "Waiting").
  • UC-6.0 (Confirm Payment): Thu ngân kiểm tra danh sách đơn, xuất hóa đơn, tính tổng tiền, số tiền nhận, tiền thối và lưu trữ chứng từ thanh toán.
  • UC-7.0 (Confirm Status of Orders): Nhân viên bếp xem danh sách món cần làm và cập nhật xác nhận khi hoàn tất chế biến.

3. Thiết kế Cơ sở dữ liệu và Lớp đối tượng

Cơ sở dữ liệu được chuẩn hóa thành 7 bảng tương ứng với 7 lớp đối tượng chính trong mã nguồn C#:

Tên Bảng / Lớp Tên Thuộc tính Kiểu Dữ liệu Khóa Diễn giải chức năng
Category catID
catName
int
varchar(50)
Primary Key
None
Mã danh mục món ăn.
Tên danh mục món ăn.
Product pID
pName
pPrice
image
int
varchar(50)
float
image
Primary Key
None
None
None
Mã sản phẩm/món ăn.
Tên món ăn.
Đơn giá bán.
Hình ảnh món ăn.
Details DetailID
MainID
proID
price
quantity
amount
int
int
int
float
int
float
Primary Key
Foreign Key
Foreign Key
None
None
None
Mã chi tiết hóa đơn.
Mã hóa đơn chính (bảng Main).
Mã sản phẩm.
Đơn giá tại thời điểm bán.
Số lượng đặt.
Thành tiền.
User userID
username
upass
uPhone
int
varchar(50)
varchar(10)
varchar(20)
Primary Key
None
None
None
Mã định danh người dùng hệ thống.
Tên đăng nhập.
Mật khẩu đăng nhập.
Số điện thoại người dùng.
Staff sID
sname
sPhone
sRole
int
varchar(50)
varchar(50)
varchar(50)
Primary Key
None
None
None
Mã nhân viên.
Họ và tên nhân viên.
Số điện thoại liên hệ.
Vai trò (phục vụ, thu ngân...).
Main MainID
Date
Time
tbID
waiterID
orderType
total
received
change
int
date
varchar(15)
int
int
varchar(15)
float
float
float
Primary Key
None
None
Foreign Key
Foreign Key
None
None
None
None
Mã hóa đơn tổng quát.
Ngày lập hóa đơn.
Thời gian lập.
Mã bàn phục vụ.
Mã nhân viên phục vụ.
Hình thức đặt (Dine-in/Takeaway/Delivery).
Tổng tiền thanh toán.
Tiền khách đưa.
Tiền thối lại.
Table tID
tName
int
varchar(50)
Primary Key
None
Mã bàn ăn trong nhà hàng.
Tên/Số hiệu bàn ăn.

Nội dung chính theo từng chương

Chapter I: Overview & Current Status Survey

Chương I trình bày tổng quan ngành thức ăn nhanh tại Việt Nam, lý do lựa chọn công nghệ và kết quả khảo sát hiện trạng:

  • Đánh giá ưu/nhược điểm của C# (mạnh về OOP, tích hợp .NET tốt, hạn chế đa nền tảng) và SQL Server (truy vấn mạnh, tích hợp ADO.NET mượt mà, có chi phí bản quyền và quản trị).
  • Khảo sát hiện trạng vận hành: xác định các trường thông tin cần quản lý đối với sản phẩm, nhân viên, danh mục và quy trình kiểm tra tồn kho tự động khi tạo hóa đơn bán hàng.

Chapter II: System Analysis Design

Chương II tập trung vào mô hình hóa toàn bộ hệ thống bằng UML và thiết kế dữ liệu:

  • Trình bày sơ đồ luồng nghiệp vụ (Business Process) mô tả tương tác giữa khách hàng, thu ngân, bếp và nhân viên giao hàng.
  • Xây dựng sơ đồ Use Case tổng thể và đặc tả chi tiết 7 Use Case cốt lõi.
  • Thiết lập sơ đồ lớp (Class diagram), sơ đồ quan hệ thực thể (ERD), sơ đồ cơ sở dữ liệu (Database diagram).
  • Xây dựng 7 sơ đồ tuần tự (Sequence diagrams: Login, Manage Category, Manage Product, Manage Table, Manage Staff, Order, Setting) và 6 sơ đồ hoạt động (Activity diagrams: Login, Product, Order, Payment, Confirm order, Setting).

Chapter III: Information Security

Chương III phân tích các yêu cầu bảo mật thông tin trong nhà hàng:

  • Nhận diện các dữ liệu nhạy cảm dễ bị đánh cắp: thông tin cá nhân khách hàng, báo cáo tài chính, dữ liệu pháp lý, hồ sơ nhân viên, bí quyết quy trình kinh doanh.
  • Trình bày quy trình bảo mật 5 bước: (1) Nhận diện thông tin trọng yếu $\rightarrow$ (2) Phân tích mối đe dọa $\rightarrow$ (3) Phân tích lỗ hổng $\rightarrow$ (4) Đánh giá rủi ro $\rightarrow$ (5) Áp dụng biện pháp kiểm soát.
  • Đề xuất 12 giải pháp kỹ thuật và tổ chức: Mã hóa dữ liệu truyền tải và lưu trữ, xác thực đa yếu tố (MFA), chính sách mật khẩu mạnh, hệ thống phát hiện xâm nhập (IDS), đào tạo nhân sự, sao lưu định kỳ, tuân thủ PCI DSS/GDPR, cập nhật bản vá, xây dựng kế hoạch ứng phó sự cố, đánh giá bảo mật định kỳ và thiết lập tường lửa (Firewall).

Chapter IV: Apply IoT to Design an Automatic Fire Alarm System

Chương IV trình bày giải pháp mở rộng kết hợp phần cứng an toàn cho nhà hàng:

  • Phân tích rủi ro cháy nổ tại các khu vực đặc thù như bếp (sử dụng nhiệt lượng cao, dầu mỡ), bãi giữ xe và sảnh phục vụ.
  • Thiết kế hệ thống cảnh báo cháy tự động gồm 4 khối thiết bị chính:
    1. Home Gateway: Trung tâm điều khiển kết nối có dây/không dây tiếp nhận tín hiệu cảm biến và điều phối lệnh.
    2. Siren (Còi báo động): Phát âm thanh cảnh báo tại chỗ để khách hàng và nhân viên kịp thời sơ tán.
    3. Fire Sprinkler (Hệ thống phun nước tự động): Kích hoạt phun nước dập tắt đám cháy cục bộ theo phân vùng.
    4. Telephone: Tự động quay số gọi khẩn cấp đến chủ cơ sở hoặc cơ quan phòng cháy chữa cháy.
  • Mô tả kịch bản vận hành thực tế ở 2 trạng thái: trạng thái bình thường (giám sát) và trạng thái khi phát hiện nguy cơ cháy (kích hoạt đồng thời còi hú, cuộc gọi khẩn cấp và vòi phun nước).

Chapter V: Knowledge Management System (KMS)

Chương V nêu rõ vai trò của hệ thống quản lý tri thức trong việc tổ chức và cung cấp dữ liệu:

  • Quản lý cấu trúc dữ liệu sản phẩm bao gồm hình ảnh, quy cách, mô tả và giá bán giúp việc tra cứu diễn ra chính xác.
  • Hỗ trợ giao diện tìm kiếm nhanh món ăn theo danh mục và tên phục vụ cho nhân viên bán hàng.
  • Tích hợp liên thông luồng tri thức sản phẩm trực tiếp với phân hệ thanh toán và tính tiền.

Chapter VI: Conclusion

Chương VI tổng kết các kết quả đạt được về mặt giao diện, khả năng phân quyền, kiểm soát thất thoát doanh thu, đồng thời chỉ ra các hạn chế kỹ thuật hiện tại và vạch ra định hướng nâng cấp hệ thống trong tương lai.


Kết quả và đóng góp

Kết quả chính

  • Xây dựng thành công mô hình phần mềm quản lý nhà hàng thức ăn nhanh bằng C# kết nối SQL Server, hỗ trợ xử lý luân chuyển thông tin đơn hàng giữa 3 bộ phận: Thu ngân, Bếp và Quản lý.
  • Chuẩn hóa cấu trúc dữ liệu với 7 bảng dữ liệu liên kết chặt chẽ (Category, Product, Details, User, Staff, Main, Table).
  • Xây dựng hệ thống tài liệu phân tích thiết kế phần mềm hoàn chỉnh gồm 7 đặc tả Use Case, sơ đồ quan hệ ERD, sơ đồ CSDL, 7 sơ đồ tuần tự và 6 sơ đồ hoạt động.
  • Thiết kế mô hình tích hợp hệ thống IoT báo cháy tự động đa phân vùng (Bếp, Sảnh, Nhà xe) với cơ chế kích hoạt còi báo, vòi phun và quay số tự động.
  • Xây dựng khung quy trình 5 bước và 12 giải pháp bảo mật thông tin theo tiêu chuẩn công nghiệp nhằm bảo vệ dữ liệu khách hàng và giao dịch.

Đóng góp của đề tài

  • Đề xuất mô hình tin học hóa quy trình order và thanh toán cho các nhà hàng F&B vừa và nhỏ, giúp giảm thiểu sai sót do ghi chép thủ công.
  • Kết hợp đồng bộ giữa phần mềm quản lý vận hành bán hàng với giải pháp an toàn hạ tầng vật lý (IoT báo cháy) trong một cơ sở kinh doanh ăn uống.

Hạn chế và hướng nghiên cứu tiếp

Hạn chế được ghi nhận

  • Chưa tích hợp trực tiếp các cổng thanh toán điện tử phổ biến (như MoMo, ZaloPay...).
  • Chưa phát triển phiên bản tương thích trên các thiết bị di động (Mobile application) cho khách hàng tự đặt món hoặc nhân viên order tại bàn.
  • Chưa có tính năng theo dõi trạng thái đơn hàng giao vận theo thời gian thực (tracking shipping orders).
  • Chưa tích hợp phân hệ thu thập và xử lý đánh giá, phản hồi của khách hàng (customer reviews).
  • Hệ thống đòi hỏi nhiều thời gian và tài nguyên khi cần tùy biến theo yêu cầu đặc thù của từng chuỗi nhà hàng khác nhau.

Hướng phát triển tiếp theo

  • Tích hợp cổng thanh toán trực tuyến: Mở rộng kết nối đa dạng phương thức thanh toán không tiền mặt.
  • Tự động hóa giao hàng: Kết nối trực tiếp hệ thống với các đơn vị vận chuyển bên ngoài để tối ưu hóa quy trình giao thức ăn.
  • Tự động hóa quản lý nhân sự: Xây dựng tính năng tự động xếp ca làm việc cho nhân viên dựa trên lưu lượng đơn hàng và dự báo giờ cao điểm.
  • Ứng dụng Trí tuệ nhân tạo (AI & Machine Learning): Phân tích xu hướng tiêu dùng, dự báo nhu cầu nguyên vật liệu tồn kho, tự động gợi ý món ăn theo sở thích và lịch sử gọi món của khách hàng.
  • Mở rộng phân hệ tài chính: Tích hợp sâu với hệ thống kế toán doanh nghiệp để tự động hóa báo cáo tài chính và theo dõi dòng tiền.
  • Hỗ trợ đào tạo nội bộ: Bổ sung tính năng hướng dẫn tương tác trực quan (interactive tutorials) trên phần mềm cho nhân viên mới.

Giá trị tham khảo

Tài liệu đồ án mang lại giá trị tham khảo thiết thực cho các đối tượng:

  • Sinh viên ngành Hệ thống thông tin quản lý (MIS) và Công nghệ thông tin (IT): Tham khảo quy trình phân tích thiết kế hệ thống phần mềm hoàn chỉnh từ nghiệp vụ, sơ đồ Use Case, Sequence, Activity đến thiết kế mô hình dữ liệu thực tế cho lĩnh vực nhà hàng/bán lẻ.
  • Các nhóm phát triển phần mềm ứng dụng Desktop: Tham khảo mô hình kết nối C# - ADO.NET - SQL Server và cách tổ chức các lớp nghiệp vụ tương ứng với bảng cơ sở dữ liệu.
  • Nhà quản lý cơ sở kinh doanh F&B quy mô vừa và nhỏ: Tham khảo quy trình số hóa luồng dữ liệu giữa Thu ngân - Bếp - Quản lý và phương án kết hợp cảm biến IoT nhằm nâng cao mức độ an toàn phòng chống cháy nổ tại cơ sở.

Câu hỏi thường gặp

1. Hệ thống hỗ trợ những hình thức phục vụ món ăn nào cho khách hàng?
Hệ thống hỗ trợ 3 hình thức phục vụ: ăn tại chỗ (Dine-in - khách chọn bàn và nhân viên phục vụ), mang về (Takeaway) và giao hàng tận nhà (Home delivery - khách cung cấp số điện thoại và địa chỉ giao nhận).

2. Quy trình xử lý đơn hàng giữa Thu ngân và Bếp diễn ra như thế nào trên phần mềm?
Khi thu ngân tạo đơn món xong, họ sử dụng chức năng KOT (Kitchen Order Ticket) để gửi thông tin đơn hàng sang bộ phận bếp; trạng thái đơn hàng trên hệ thống sẽ chuyển sang "Waiting". Bếp nhận thông tin, tiến hành chế biến và nhấn xác nhận hoàn tất để thông báo món ăn đã sẵn sàng.

3. Cơ sở dữ liệu của phần mềm quản lý các bảng đối tượng nào?
Hệ thống sử dụng 7 bảng/lớp đối tượng chính trong SQL Server: Category (danh mục), Product (món ăn), Details (chi tiết đơn hàng), User (tài khoản hệ thống), Staff (nhân viên), Main (thông tin hóa đơn chính) và Table (bàn ăn).

4. Mô hình IoT cảnh báo cháy trong đồ án hoạt động theo cơ chế nào khi có sự cố?
Khi Home Gateway nhận tín hiệu báo cháy từ các cảm biến khói/nhiệt, trung tâm điều khiển sẽ đồng thời thực hiện 3 hành động: kích hoạt còi Siren hú âm thanh cảnh báo sơ tán, điều khiển hệ thống Telephone tự động quay số gọi cho chủ cơ sở/cứu hỏa và kích hoạt vòi phun nước Fire Sprinkler tại khu vực xảy ra rủi ro để chữa cháy cục bộ.

5. Những hạn chế lớn nhất mà nhóm tác giả chỉ ra đối với phần mềm là gì?
Các hạn chế chính gồm: chưa tích hợp các ví điện tử (MoMo, ZaloPay), ứng dụng chưa tương thích trên điện thoại di động, chưa có tính năng theo dõi đơn vận chuyển (shipping tracking) và chưa hỗ trợ phân hệ ghi nhận đánh giá của khách hàng.


Kết luận

Báo cáo đồ án "Fast Food Restaurant Management Software" của nhóm sinh viên Trường Đại học Kinh tế - Tài chính TP.HCM đã giải quyết thành công bài toán số hóa quy trình quản lý bán hàng tại các nhà hàng thức ăn nhanh quy mô vừa và nhỏ. Thông qua việc ứng dụng ngôn ngữ C#, hệ quản trị SQL Server và thiết kế hướng đối tượng, hệ thống kết nối hiệu quả các luồng nghiệp vụ giữa thu ngân, bếp và quản lý. Đồ án còn tạo điểm nhấn mở rộng khi tích hợp mô hình hệ thống IoT cảnh báo cháy tự động và khung bảo mật thông tin toàn diện, đặt nền tảng vững chắc cho việc phát triển các giải pháp phần mềm quản trị nhà hàng đa chức năng trong tương lai.