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

Trong hoạt động kinh doanh dịch vụ ẩm thực và đồ uống (F&B), việc vận hành một quán cà phê đòi hỏi sự kết hợp đồng bộ giữa nguồn lực tài chính, cơ sở vật chất và vị trí địa lý. Bên cạnh các yếu tố đầu tư ban đầu, công tác tổ chức và quản trị vận hành đóng vai trò quyết định đến hiệu quả kinh doanh. Thực tế tại các mô hình quán cà phê truyền thống cho thấy phương thức quản lý thủ công bộc lộ nhiều hạn chế: tốc độ xử lý đơn hàng chậm, dễ xảy ra sai sót trong quá trình tính tiền, khó kiểm soát thực đơn, thất thoát doanh thu và tiêu tốn nhiều thời gian tổng hợp báo cáo.

Trước thực trạng đó, đề tài "Thiết kế hệ thống quản lý quán cà phê" (tên gọi trong phần nội dung: "Xây dựng phần mềm quản lý quán cafe bằng ngôn ngữ C#") được thực hiện bởi nhóm sinh viên Khoa Kỹ thuật Công nghệ – Trường Đại học Thủ Dầu Một trong khuôn khổ học phần Lập trình trên Windows (HK3, năm học 2022). Mục tiêu cốt lõi của đề tài là xây dựng một ứng dụng máy tính chuyên nghiệp nhằm số hóa quy trình bán hàng, tự động hóa khâu thanh toán và hỗ trợ người quản lý theo dõi hoạt động kinh doanh một cách chính xác, tiện lợi.

Nhiệm vụ nghiên cứu được xác định qua các yêu cầu cụ thể:

  1. Xây dựng phân hệ lưu trữ và cập nhật thông tin thực đơn, danh mục đồ uống và danh sách nhân viên.
  2. Xây dựng phân hệ xử lý nghiệp vụ bán hàng: gọi món (order) tại bàn, order mang về (take-away), chuyển bàn/đổi bàn và áp dụng mã giảm giá (voucher).
  3. Hiện thực hóa chức năng tính toán hóa đơn, hỗ trợ đa dạng phương thức thanh toán (tiền mặt và quét mã QR) và xuất in hóa đơn.
  4. Xây dựng phân hệ thống kê, báo cáo doanh thu theo ngày, tháng, năm, khoảng thời gian và xếp hạng đồ uống bán chạy.

Về đối tượng và phạm vi:

  • Đối tượng nghiên cứu: Phần mềm quản lý bán hàng và quy trình vận hành quán cà phê.
  • Phạm vi không gian: Khảo sát và quan sát thực tế tại các mô hình quán cà phê trên địa bàn thành phố Thủ Dầu Một, tỉnh Bình Dương.
  • Phạm vi nghiệp vụ: Tập trung vào các nghiệp vụ bán hàng tại quầy, phục vụ tại bàn, bán mang về, quản lý dữ liệu nội bộ và thống kê doanh thu trên nền tảng ứng dụng desktop (Windows Forms).

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

Nền tảng công nghệ và công cụ phát triển

Hệ thống được xây dựng dựa trên các công nghệ và công cụ tiêu chuẩn trong môi trường phát triển ứng dụng Windows của Microsoft:

Thành phần Công nghệ / Công cụ sử dụng Đặc điểm và vai trò trong hệ thống
Ngôn ngữ lập trình C# (C-Sharp) Ngôn ngữ lập trình hướng đối tượng đa năng chạy trên nền .NET Framework, kế thừa ưu điểm của C++ và Java, dùng để xử lý toàn bộ logic nghiệp vụ và giao diện người dùng.
Hệ quản trị CSDL Microsoft SQL Server 2019 Hệ quản trị cơ sở dữ liệu quan hệ (RDBMS), sử dụng ngôn ngữ Transact-SQL để lưu trữ, truy xuất và quản lý an toàn dữ liệu hóa đơn, thực đơn, nhân viên, voucher.
Môi trường phát triển Microsoft Visual Studio 2022 Môi trường phát triển tích hợp (IDE) hỗ trợ thiết kế giao diện đồ họa Windows Forms, biên dịch và gỡ lỗi mã nguồn C#.
Công cụ mô hình hóa Draw.io / Online Diagramming Thiết kế sơ đồ Use Case, sơ đồ hoạt động (Activity Diagram) và sơ đồ tuần tự (Sequence Diagram).

Phương pháp nghiên cứu

Tác giả kết hợp ba phương pháp nghiên cứu chính để hình thành giải pháp phần mềm:

  • Phương pháp nghiên cứu tài liệu: Thu thập, phân tích tài liệu chuyên ngành về lập trình C# (như giáo trình Lập trình với C#, Nxb Thanh Niên, 2019 của Phan Đăng Huy, Vũ Trọng Luật, Phạm Quang Hiển); tham khảo các khóa luận, đồ án tốt nghiệp khóa trước về đề tài quản lý bán hàng.
  • Phương pháp nghiên cứu thực tiễn:
    • Phương pháp quan sát: Quan sát trực tiếp thao tác ghi nhận món, phục vụ và thanh toán tại một số quán cà phê trên địa bàn thành phố Thủ Dầu Một.
    • Phương pháp phỏng vấn: Phỏng vấn chủ quán, nhân viên thu ngân, nhân viên phục vụ và khách hàng nhằm xác định các khó khăn thường gặp và kỳ vọng về tính năng phần mềm.
  • Phương pháp tổng hợp và phân tích số liệu: Phân loại thông tin thu thập được từ phỏng vấn và quan sát, chuyển hóa thành các yêu cầu chức năng, yêu cầu phi chức năng và đặc tả ca sử dụng (use case).

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

Phân tích tác nhân và phân quyền hệ thống

Hệ thống phân định rõ ràng quyền hạn và phạm vi thao tác của 3 tác nhân (actors):

  1. Quản lý (Chủ quán): Tác nhân có quyền hạn cao nhất, được phép truy cập tất cả các chức năng: xem thống kê doanh thu, quản lý danh mục món, cập nhật thông tin đồ uống, quản lý tài khoản nhân viên, cấu hình danh sách bàn và quản lý chương trình voucher.
  2. Nhân viên (Thu ngân / Phục vụ): Tác nhân trực tiếp thực hiện quy trình bán hàng tại quầy: mở bàn, order món tại bàn hoặc mang về, đổi bàn cho khách, áp dụng voucher, thu tiền và in hóa đơn.
  3. Khách hàng: Tác nhân tiếp nhận dịch vụ, lựa chọn hình thức thanh toán bằng tiền mặt hoặc quét mã QR hiển thị trên màn hình qua ứng dụng ví điện tử.

Quy trình nghiệp vụ bán hàng chuẩn

Luồng xử lý đơn hàng diễn ra tuần tự qua các bước:

  1. Khách hàng đến quầy phục vụ hoặc ngồi tại bàn để gọi món.
  2. Thu ngân/nhân viên phục vụ thao tác trên phần mềm: chọn mã số bàn/vị trí ngồi, chọn món và số lượng theo yêu cầu của khách, sau đó lưu thông tin vào hệ thống.
  3. Thông tin đơn hàng được chuyển tiếp đến quầy pha chế để thực hiện thức uống.
  4. Nhân viên phục vụ nhận đồ uống hoàn tất từ quầy pha chế và mang đến bàn cho khách.
  5. Khi khách yêu cầu thanh toán, nhân viên mở giao diện tính tiền, áp dụng voucher giảm giá (nếu có), xuất hóa đơn và cung cấp phương thức thanh toán (tiền mặt hoặc mã QR).
  6. Hệ thống ghi nhận trạng thái thanh toán hoàn tất, bàn được chuyển về trạng thái trống để đón lượt khách tiếp theo.

Phân tích Use Case và sơ đồ tương tác

Tài liệu cung cấp danh mục 7 Use Case cốt lõi cùng biểu đồ hoạt động và biểu đồ tuần tự chi tiết:

Mã UC Tên Use Case Tác nhân thực hiện Điều kiện tiên quyết & Luồng xử lý chính Xử lý ngoại lệ (Dòng sự kiện phụ)
UC1 Đăng nhập Quản lý, Nhân viên Nhập tên tài khoản, mật khẩu; hệ thống xác thực và phân quyền truy cập. Báo lỗi khi thông tin đăng nhập sai; yêu cầu nhập lại.
UC2 Đăng xuất Quản lý, Nhân viên Thoát phiên làm việc hiện tại, đóng giao diện bán hàng. Không.
UC3 Thêm thực đơn Quản lý Nhập tên món, đơn vị tính, đơn giá; hệ thống lưu vào cơ sở dữ liệu. Báo lỗi nếu để trống tên món, đơn giá sai định dạng hoặc tên món đã tồn tại.
UC4 Cập nhật thực đơn Quản lý Chọn món từ danh sách, chỉnh sửa đơn giá/thông tin và lưu thay đổi. Báo lỗi nếu thiếu tên món, đơn giá không hợp lệ hoặc trùng lặp dữ liệu.
UC5 Xóa thực đơn Quản lý Chọn món cần xóa khỏi danh mục; xác nhận xóa khỏi hệ thống. Cảnh báo nếu chưa chọn món hoặc món đang tồn tại trong hóa đơn chưa hoàn tất.
UC6 Đổi bàn Quản lý, Nhân viên Chọn bàn hiện tại, chọn bàn chuyển đến và bấm xác nhận chuyển. Cảnh báo nếu chưa chọn bàn hoặc bàn chuyển đến đang có khách ngồi.
UC7 In hóa đơn Quản lý, Nhân viên Sau khi hoàn tất thanh toán, bấm lệnh in để xuất phiếu thanh toán cho khách. Báo lỗi nếu bàn đang ở trạng thái trống hoặc chưa hoàn tất thanh toán.

Cấu trúc giao diện ứng dụng (Windows Forms)

Hệ thống được thiết kế theo cấu trúc modular với các màn hình giao diện chuyên biệt:

  • Giao diện xác thực & điều hướng: Form đăng nhập (kiểm tra tài khoản/mật khẩu), Form trang chủ (bảng điều khiển trung tâm dẫn đến các phân hệ).
  • Phân hệ phục vụ tại bàn: Form order bàn (sơ đồ bàn trực quan, danh mục thức uống), Form tính tiền bàn và sử dụng voucher (tổng hợp hóa đơn, tính chiết khấu), Form đổi bàn (chuyển vị trí khách).
  • Phân hệ bán mang về: Form đem về, Form order đem về, Form hóa đơn đem về.
  • Phân hệ quản trị dữ liệu: Form thêm sản phẩm, Form sửa sản phẩm, Form xóa sản phẩm, Form thêm sửa xóa nhân viên, Form thêm sửa xóa voucher.
  • Phân hệ báo cáo: Form thống kê (biểu diễn doanh thu, sản lượng bán ra theo ngày/tháng/năm).

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

Chương 1. Tổng quan đề tài

Chương 1 thiết lập khung nghiên cứu tổng thể:

  • Trình bày lý do chọn đề tài dựa trên nhu cầu cấp thiết về công cụ quản lý bán hàng tiện lợi, tiết kiệm nhân công và chi phí cho các cơ sở kinh doanh cà phê.
  • Xác định mục tiêu nghiên cứu, đối tượng nghiên cứu (phần mềm quản lý bán hàng quán coffee) và phạm vi khảo sát thực tế tại thành phố Thủ Dầu Một.
  • Giới thiệu tổng quan về các công nghệ nền tảng: ngôn ngữ C# (.NET Framework), ngôn ngữ truy vấn cơ sở dữ liệu quan hệ SQL/Transact-SQL, hệ quản trị Microsoft SQL Server 2019 và IDE Microsoft Visual Studio 2022.

Chương 2. Phát biểu bài toán

Chương 2 mô tả chi tiết bài toán nghiệp vụ thực tế và chuyển hóa thành các yêu cầu hệ thống:

  • Mô tả dòng luân chuyển nghiệp vụ từ lúc khách gọi món, thu ngân ghi nhận, pha chế thực hiện, phục vụ giao món đến khi thanh toán và xuất hóa đơn.
  • Xác định cấu trúc dữ liệu cho thực đơn (mã thực đơn, tên thực đơn, đơn giá, đơn vị tính) và nhân viên (mã nhân viên, họ tên, ngày sinh, tên đăng nhập, mật khẩu, quyền hạn, công việc).
  • Liệt kê các yêu cầu chức năng (đăng nhập, lập hóa đơn, in hóa đơn, quản lý thực đơn/nhân viên, phân công, thống kê doanh thu, tra cứu) và yêu cầu phi chức năng (đào tạo nhân viên sử dụng phần mềm, hướng dẫn khách hàng tiếp cận dịch vụ thanh toán mới).

Chương 3. Phân tích thiết kế hệ thống

Chương 3 tập trung vào khâu mô hình hóa hệ thống bằng chuẩn UML:

  • Xây dựng sơ đồ chức năng tổng thể và sơ đồ Use Case tổng quát.
  • Mô tả chi tiết 3 tác nhân (Quản lý, Nhân viên, Khách hàng) và bảng danh mục use case từ UC1 đến UC7.
  • Cung cấp văn bản đặc tả chi tiết cho từng use case: điều kiện tiên quyết, luồng sự kiện chính, các nhánh ngoại lệ và điều kiện kết thúc.
  • Xây dựng 4 Biểu đồ hoạt động (Activity Diagrams) cho các luồng: Đăng nhập, Thêm thực đơn, Xóa thực đơn, Cập nhật thực đơn.
  • Xây dựng 7 Biểu đồ tuần tự (Sequence Diagrams) mô tả sự tương tác giữa giao diện (Form), lớp điều khiển (Controller/Logic) và cơ sở dữ liệu (Database) cho các chức năng: Đăng nhập, Thêm/Xóa/Sửa thực đơn, Thanh toán, In hóa đơn và Đổi bàn.

Chương 4. Thiết kế giao diện và ứng dụng

Chương 4 hiện thực hóa các phân tích thành hệ thống giao diện người dùng cụ thể:

  • Trình bày 14 màn hình giao diện (Form) tương ứng với toàn bộ các ca sử dụng đã mô hình hóa.
  • Tách biệt rõ ràng luồng bán hàng tại chỗ (Form order bàn, Form đổi bàn) và luồng bán mang về (Form đem về, Form order đem về, Form hóa đơn đem về).
  • Thiết kế giao diện quản lý danh mục (sản phẩm, nhân viên, voucher) theo dạng bảng dữ liệu trực quan (Data Grid View) hỗ trợ thêm, sửa, xóa nhanh.
  • Thiết kế giao diện thống kê cho phép lọc dữ liệu doanh thu linh hoạt theo khoảng thời gian và hiển thị danh sách đồ uống bán chạy.

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

Kết quả đạt được

  1. Hoàn thiện đầy đủ quy trình phân tích thiết kế phần mềm: Xây dựng hoàn chỉnh tài liệu đặc tả yêu cầu, mô hình hóa Use Case, sơ đồ hoạt động và sơ đồ tuần tự cho 100% các chức năng cốt lõi của bài toán quản lý quán cà phê.
  2. Xây dựng hệ thống giao diện hoàn chỉnh: Thiết kế và đóng gói thành công 14 Form giao diện trên nền tảng Windows Forms, bao phủ toàn bộ các phân hệ: bán hàng tại chỗ, bán mang về, quản lý kho thực đơn, quản lý nhân sự, chính sách giảm giá (voucher) và báo cáo doanh thu.
  3. Hiện thực hóa quy trình thanh toán kết hợp: Tích hợp thành công cơ chế thanh toán truyền thống (tiền mặt) song song với hình thức quét mã QR qua màn hình máy tính, đáp ứng xu hướng thanh toán không dùng tiền mặt trong ngành dịch vụ.

Đóng góp thực tiễn của đề tài

  • Cung cấp một giải pháp phần mềm quản lý quán cà phê có chi phí đầu tư thấp, cấu hình nhẹ, hoạt động ổn định trên hệ điều hành Windows mà không đòi hỏi hạ tầng máy chủ phức tạp.
  • Giúp tự động hóa quá trình tính toán hóa đơn, loại bỏ sai sót tính toán thủ công, rút ngắn thời gian phục vụ tại quầy và nâng cao hiệu quả quản lý bàn trống/bàn có khách.
  • Cung cấp công cụ thống kê trực quan giúp chủ quán nắm bắt kịp thời diễn biến doanh thu và thị hiếu khách hàng (sản phẩm bán chạy nhất) để điều chỉnh kế hoạch kinh doanh.

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

Hạn chế

  • Hệ thống hoạt động theo mô hình ứng dụng desktop đơn máy (standalone) trên nền Windows Forms và kết nối SQL Server nội bộ; chưa phát triển phiên bản trên thiết bị di động (mobile app) dành riêng cho nhân viên phục vụ gọi món tại bàn.
  • Chức năng quét mã QR thanh toán trên màn hình máy tính mới ở mức hiển thị mã tĩnh/mã ví điện tử, chưa liên kết với cổng thanh toán trực tuyến (Payment Gateway) để tự động đối soát giao dịch thời gian thực.
  • Báo cáo thống kê chủ yếu tập trung vào doanh thu và số lượng món bán ra, chưa tích hợp mô đun quản lý định lượng nguyên vật liệu tồn kho và tính toán giá vốn/lợi nhuận gộp chi tiết.

Hướng nghiên cứu tiếp

  • Mở rộng kiến trúc hệ thống sang mô hình Client - Server qua mạng Internet hoặc chuyển đổi sang nền tảng Web App/Mobile App để chủ quán có thể theo dõi doanh thu từ xa trên điện thoại.
  • Tích hợp thêm phân hệ quản lý kho nguyên liệu tự động trừ tồn kho theo công thức pha chế của từng món trên thực đơn.
  • Tích hợp API của các cổng thanh toán điện tử và hệ thống ngân hàng để tự động xác thực trạng thái nhận tiền thành công trước khi đóng hóa đơn.

Giá trị tham khảo

Tài liệu tiểu luận học phần này mang lại giá trị tham khảo thiết thực cho nhiều nhóm đối tượng:

  • Sinh viên ngành Kỹ thuật Phần mềm, Công nghệ Thông tin: Là tài liệu tham khảo mẫu mực về cách triển khai đồ án môn học Lập trình trên Windows / Lập trình C#. Sinh viên có thể học hỏi cách xây dựng tài liệu đặc tả Use Case, thiết kế biểu đồ hoạt động, biểu đồ tuần tự và cách phân rã giao diện người dùng Windows Forms.
  • Lập trình viên và người tự học .NET / C#: Cung cấp cấu trúc bài toán quản lý bán hàng kinh điển (CRUD dữ liệu, xử lý nghiệp vụ bán hàng, in hóa đơn, thống kê) kết nối với cơ sở dữ liệu Microsoft SQL Server 2019.
  • Chủ cơ sở kinh doanh cà phê quy mô vừa và nhỏ: Tham khảo quy trình số hóa nghiệp vụ bán hàng và quản lý bàn để tối ưu hóa quy trình vận hành thực tế tại cửa hàng.

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

1. Đề tài được thực hiện bởi ai, tại đơn vị đào tạo nào và vào thời gian nào?
Đề tài do nhóm 12 gồm 4 sinh viên: Nguyễn Văn Duy (MSSV: 2024801030121), Nguyễn Duy Toàn (MSSV: 2024801030120), Mai Đặng Sơn Tùng (MSSV: 2024801030059) và Nguyễn Hữu Thuận (MSSV: 2024801030175) thực hiện dưới sự hướng dẫn của GVHD Nguyễn Văn Tài tại Viện Kỹ thuật - Công nghệ, Trường Đại học Thủ Dầu Một (Bình Dương), hoàn thành vào tháng 07 năm 2022.

2. Hệ thống quản lý những đối tượng tác nhân nào và quyền hạn của từng tác nhân ra sao?
Hệ thống xác định 3 tác nhân chính:

  • Quản lý (Chủ quán): Có quyền cao nhất, truy cập mọi chức năng gồm xem doanh thu, quản lý danh mục món, quản lý tài khoản nhân viên, cấu hình bàn và voucher.
  • Nhân viên: Chỉ được phân quyền sử dụng màn hình bán hàng (order tại bàn, order đem về, đổi bàn, áp voucher, in hóa đơn).
  • Khách hàng: Tương tác gián tiếp qua việc gọi món và thực hiện thanh toán bằng tiền mặt hoặc quét mã QR hiển thị trên màn hình.

3. Công nghệ và công cụ lập trình nào được sử dụng để xây dựng phần mềm?
Hệ thống được phát triển bằng ngôn ngữ C# trên nền tảng Microsoft Visual Studio 2022, kết hợp với hệ quản trị cơ sở dữ liệu quan hệ Microsoft SQL Server 2019 và ngôn ngữ truy vấn Transact-SQL.

4. Phân hệ bán hàng hỗ trợ những hình thức phục vụ và phương thức thanh toán nào?
Phần mềm hỗ trợ 2 hình thức phục vụ chính: phục vụ tại chỗ theo sơ đồ bàn (có tính năng đổi bàn, áp voucher) và bán mang về (với các giao diện riêng biệt gồm Form đem về, Form order đem về, Form hóa đơn đem về). Phương thức thanh toán bao gồm tiền mặt trực tiếp và quét mã QR ví điện tử hiển thị trên màn hình máy tính.

5. Tiêu chí đánh giá học phần của đề tài này gồm những nội dung nào?
Theo Phiếu đánh giá Project học phần Lập trình trên Windows (3+0) của Khoa Kỹ thuật Công nghệ, điểm số được tổng hợp từ 9 tiêu chí chính: Thái độ tham gia (5%), Lập kế hoạch thực hiện (5%), Giai đoạn chuẩn bị (10%), Giai đoạn thực hiện (10%), Triển khai (10%), Mức độ đạt được mục tiêu thành phần (20%), Nội dung báo cáo (10%), Trình bày báo cáo (10%) và Chất lượng sản phẩm đáp ứng tiêu chí đề ra (20%). Điểm cá nhân được quy đổi dựa trên mức độ tham gia họp nhóm (40%), nộp sản phẩm đúng hạn (40%) và đóng góp ý kiến cải tiến (20%).


Kết luận

Tiểu luận môn học "Thiết kế hệ thống quản lý quán cà phê" của nhóm sinh viên Trường Đại học Thủ Dầu Một là một công trình học thuật ứng dụng có cấu trúc mạch lạc, giải quyết trọn vẹn bài toán số hóa nghiệp vụ quản lý cho mô hình kinh doanh đồ uống. Bằng việc kết hợp ngôn ngữ C# trên môi trường Visual Studio 2022 và cơ sở dữ liệu Microsoft SQL Server 2019, đề tài đã xây dựng thành công 14 phân hệ giao diện trực quan hỗ trợ đầy đủ các nghiệp vụ bán hàng tại chỗ, bán mang về, đổi bàn, quản lý voucher và thống kê doanh thu. Kết quả nghiên cứu không chỉ đáp ứng tốt các chuẩn đầu ra của học phần Lập trình trên Windows mà còn là tài liệu tham khảo có giá trị thực tiễn cao cho sinh viên ngành Công nghệ Thông tin trong việc phân tích, thiết kế và phát triển các hệ thống quản lý bán hàng trên nền tảng desktop.