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

Trong bối cảnh nền kinh tế và mức sống xã hội ngày càng phát triển, nhu cầu ăn uống và giải trí của người dân không ngừng gia tăng, kéo theo sự mở rộng mạnh mẽ của các chuỗi kinh doanh nhà hàng, quán cà phê tại các đô thị lớn như Thành phố Hồ Chí Minh. Các quán cà phê hiện đại không chỉ phục vụ thức uống truyền thống mà còn tích hợp nhiều danh mục sản phẩm ăn uống, giải trí phong phú. Tuy nhiên, sự phát triển này đặt ra bài toán phức tạp về công tác tổ chức và quản trị vận hành.

Khảo sát thực tế tại quán "Sala Cafe" cho thấy nhiều bất cập điển hình trong mô hình quản lý thủ công truyền thống:

  • Lưu lượng khách phân bố không đồng đều, tập trung đông đột biến vào các dịp lễ và cuối tuần dẫn đến tình trạng quá tải cục bộ. Thời gian khách hàng phải chờ đợi nhận món có thể tăng gấp hai đến ba lần so với ngày thường.
  • Việc nhân viên phục vụ ghi nhớ món hoặc ghi chép thủ công dễ gây nhầm lẫn đơn hàng, thông báo về quầy chậm trễ và gây tốn kém nhân lực đi lại.
  • Quy trình thanh toán diễn ra chậm do phải tính toán thủ công và đối chiếu hóa đơn, khiến khách hàng phải chờ đợi lâu sau khi dùng dịch vụ.
  • Công tác quản lý kho và nguyên vật liệu chưa được chuẩn hóa; quán không dự báo chính xác nhu cầu sử dụng thực phẩm, dẫn đến việc thiếu hụt nguyên liệu phục vụ hoặc không kịp chuẩn bị hàng hóa ngoài.
  • Dữ liệu kinh doanh chỉ được tổng kết định kỳ theo tuần một cách chậm trễ, thiếu công cụ phân tích doanh thu theo ca, theo nhân viên và theo danh mục món ăn để tối ưu hóa nguồn lực.

Mục tiêu và nhiệm vụ nghiên cứu của đề tài gồm:

  1. Nghiên cứu hiện trạng và chuẩn hóa quy trình nghiệp vụ quản lý quán cà phê từ khâu tiếp nhận khách, gọi món, chế biến, thanh toán đến quản trị kho bãi và nhân sự.
  2. Xây dựng giải pháp tin học hóa toàn diện bao gồm ứng dụng web (Web Application), ứng dụng di động (Android App) và dịch vụ web trung gian (RESTful Web Service).
  3. Ứng dụng cơ chế đồng bộ dữ liệu thời gian thực (Realtime Database) để tự động hóa việc truyền nhận đơn hàng giữa bộ phận phục vụ và quầy pha chế, loại bỏ các thao tác trung gian thủ công.
  4. Xây dựng hệ thống báo cáo thống kê doanh thu, định lượng công thức pha chế để kiểm soát giá vốn sản phẩm và quản lý các đợt khuyến mãi.

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

  • Đối tượng nghiên cứu: Quy trình nghiệp vụ quản lý và vận hành hoạt động kinh doanh tại quán cà phê.
  • Phạm vi nghiên cứu: Khảo sát thực tế các hoạt động nghiệp vụ tại quán "Sala Cafe" và triển khai hệ thống phần mềm quản lý tương thích trên nền tảng Web và Android.

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

Đề tài áp dụng phương pháp phân tích và thiết kế hệ thống theo hướng cấu trúc kết hợp với kỹ thuật mô hình hóa hướng đối tượng bằng ngôn ngữ UML.

Khung công nghệ và công cụ được sử dụng bao gồm:

  • Phương pháp phân tích & mô hình hóa: Sử dụng sơ đồ phân cấp chức năng (BFD), sơ đồ luồng dữ liệu (DFD mức ngữ cảnh và DFD mức 0), biểu đồ ca sử dụng (Use Case Diagram), biểu đồ tuần tự (Sequence Diagram) và biểu đồ quan hệ thực thể (ERD).
  • Ngôn ngữ và nền tảng phát triển Web: Ngôn ngữ lập trình Java kết hợp Java JSP/Servlet, máy chủ ứng dụng Apache Tomcat, giao diện sử dụng HTML, CSS, JavaScript, thư viện jQuery và framework Bootstrap.
  • Dịch vụ Web và Giao tiếp dữ liệu: Xây dựng kiến trúc RESTful Web Service trên nền tảng framework Spring Boot, định dạng dữ liệu truyền tải qua JSON/XML, cơ chế xác thực và bảo mật sử dụng JSON Web Token (Auth0 JWT).
  • Cơ sở dữ liệu và truy xuất: Hệ quản trị cơ sở dữ liệu quan hệ MySQL Server, công cụ quản trị MySQL Workbench, giao tiếp ứng dụng qua Java Database Connectivity (JDBC).
  • Công nghệ đồng bộ thời gian thực: Firebase Realtime Database đảm bảo việc truyền tải tức thời dữ liệu hóa đơn và trạng thái chế biến giữa các thiết bị client.
  • Nền tảng ứng dụng di động: Môi trường phát triển Android Studio, ngôn ngữ Java trên hệ điều hành Android, sử dụng thư viện Volley để xử lý các truy vấn mạng và giao tiếp API.

Nguồn dữ liệu của nghiên cứu được thu thập trực tiếp thông qua quan sát thực tế, phân tích biểu mẫu hóa đơn, quy trình phục vụ và dữ liệu thực đơn tại quán Sala Cafe.

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

Chương 1. Giới thiệu đề tài

Chương này tổng hợp bối cảnh phát triển ngành dịch vụ F&B trong thời đại công nghệ số và lý do lựa chọn đề tài xây dựng hệ thống phần mềm quản lý quán cà phê. Tác giả trình bày tổng quan về các nền tảng công nghệ, ngôn ngữ và công cụ được lựa chọn, bao gồm: đặc tính của ngôn ngữ Java ("Write Once, Run Anywhere"), hệ quản trị CSDL quan hệ MySQL, máy chủ Tomcat, kiến trúc Spring Boot, tiêu chuẩn thiết kế RESTful API, công cụ Android Studio và dịch vụ Firebase Realtime Database.

Chương 2. Khảo sát hiện trạng

Chương 2 mô tả chi tiết mô hình hoạt động thực tế tại quán Sala Cafe. Tác giả chỉ ra các vấn đề then chốt trong quy trình vận hành thủ công và đề xuất bảng giải pháp tin học hóa tương ứng:

Vấn đề hiện trạng Giải pháp tin học hóa
Báo yêu cầu về quầy chậm, dễ quên Thông báo yêu cầu gọi món qua mạng bằng chương trình
Thanh toán chậm, dễ sai sót Thông báo yêu cầu thanh toán qua mạng và tính toán tự động trên máy tính
Đặt hàng thủ công chậm, tốn kém nhân lực Đặt hàng với sự trợ giúp bằng chương trình qua mạng
Tổng hợp chậm, dự trữ không đủ chế biến Tổng hợp và phân tích nhu cầu bằng phần mềm để lập kế hoạch nhập hàng kịp thời
Chưa có cơ chế đánh giá nỗ lực nhân viên Phân tích nhu cầu phục vụ theo ca và theo nhân viên, giảm số lượng nhân sự dôi dư

Chương này cũng xác định cơ cấu tổ chức gồm ba bộ phận chính (Quản lý, Phục vụ, Pha chế), quy trình nghiệp vụ (phục vụ, thanh toán, in hóa đơn, gộp bàn/chuyển bàn, quản lý kho/vật tư, quản lý khuyến mãi, báo cáo) cùng các yêu cầu chức năng, phi chức năng và yêu cầu phân quyền hệ thống.

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

Chương 3 trình bày toàn bộ tiến trình phân tích thiết kế phần mềm:

  • Xây dựng sơ đồ phân cấp chức năng mức đỉnh và phân rã chi tiết cho từng phân hệ: phục vụ, pha chế, quản lý kho, quản lý sản phẩm, quản lý bàn - khu vực, quản lý nhân viên, quản lý khuyến mãi và thống kê báo cáo.
  • Xây dựng sơ đồ luồng dữ liệu DFD mức ngữ cảnh và DFD phân rã cấp 0.
  • Xác định 4 tác nhân (Actor): Quản lý, Phục vụ, Pha chế, Khách hàng.
  • Xây dựng biểu đồ Use Case tổng quát, đặc tả chi tiết từng Use Case nghiệp vụ kèm theo các biểu đồ tuần tự (Sequence Diagram) tương ứng (đăng nhập, order thêm món, chuyển bàn/gộp bàn, thanh toán, pha chế, khách quét mã QR tự order, nhân viên xác nhận đơn hàng).
  • Thiết kế mô hình dữ liệu bao gồm sơ đồ ERD, mô hình quan hệ và từ điển dữ liệu chi tiết cho 17 bảng thực thể: Users, User_Role, Role, Bills, Tables, Areas, Bill Details, Products, Categories, Recipe, Ingredients, Ingredient Category, Import, Import Detail, Promotion, Promotion Details.

Chương 4. Ứng dụng Web Application

Chương 4 trình bày yêu cầu hệ thống và kết quả hiện thực hóa giao diện ứng dụng Web dành cho người quản lý và nhân viên:

  • Giao diện Trang chủ và Đăng nhập hệ thống.
  • Giao diện Order món và sơ đồ trực quan hóa trạng thái bàn theo khu vực.
  • Giao diện xử lý chuyển bàn, gộp bàn.
  • Giao diện quản lý danh mục sản phẩm, quản lý sản phẩm, thiết lập công thức pha chế định lượng nguyên liệu và tự động tính giá vốn.
  • Giao diện quản lý kho: danh mục nguyên liệu, danh sách nguyên liệu, tạo phiếu nhập kho, chi tiết phiếu nhập và cảnh báo ngưỡng tồn kho.
  • Giao diện quản lý khu vực, bàn, quản lý thông tin nhân viên và khóa tài khoản nhân viên.
  • Giao diện thiết lập các đợt khuyến mãi, kiểm tra trùng lặp thời gian và cảnh báo giá bán sau giảm thấp hơn giá vốn.
  • Giao diện báo cáo thống kê doanh thu theo ngày, tháng, năm dưới dạng bảng biểu và đồ thị.

Chương 5. RESTful Web Service

Chương này mô tả chi tiết việc xây dựng tầng trung gian RESTful Web Service phục vụ giao tiếp giữa các ứng dụng client và cơ sở dữ liệu:

  • Sử dụng chuẩn HTTP methods rõ ràng (GET, POST, PUT, DELETE) tương ứng với các thao tác truy xuất, thêm mới, cập nhật và xóa dữ liệu tài nguyên.
  • Thiết kế phi trạng thái (Stateless), chuẩn hóa định dạng dữ liệu trao đổi bằng JSON.
  • Cơ chế bảo mật và phân quyền API sử dụng Auth0 JSON Web Token (JWT), thiết lập quy trình cấp phát token khi đăng nhập và xác thực token trong header của mỗi yêu cầu gửi lên hệ thống.

Chương 6. Ứng dụng Android App

Chương 6 trình bày thiết kế và hiện thực hóa ứng dụng di động Android phục vụ hai nhóm đối tượng: nhân viên quán và khách hàng:

  • Giao diện đăng nhập và phân quyền thao tác.
  • Giao diện nhân viên phục vụ: chọn khu vực, chọn bàn, chọn món ăn, tìm kiếm món, thêm ghi chú món, chuyển bàn/gộp bàn, in hóa đơn và thanh toán.
  • Giao diện nhân viên pha chế: tiếp nhận danh sách đơn hàng được gửi theo thời gian thực từ nhân viên phục vụ, xem chi tiết món và số lượng, bấm hoàn thành để gửi thông báo ngược lại cho phục vụ mang món.
  • Giao diện khách hàng: cho phép khách quét mã QR tại bàn để tự truy cập menu, chọn món, ghi chú và gửi đơn hàng về trạng thái chờ nhân viên xác nhận.

Chương 7. Tổng kết và hướng phát triển

Chương 7 tổng kết toàn bộ các kết quả đạt được của đồ án về mặt lý thuyết phân tích nghiệp vụ lẫn sản phẩm phần mềm thực tế, đồng thời nêu định hướng nghiên cứu và hoàn thiện hệ thống trong tương lai.

Thiết kế và triển khai

Hệ thống được thiết kế theo mô hình kiến trúc phân tầng kết hợp đa nền tảng, đảm bảo tính tách biệt giữa logic xử lý nghiệp vụ, giao diện người dùng và lưu trữ dữ liệu.

  1. Kiến trúc dữ liệu quan hệ (MySQL): Hệ thống chuẩn hóa cơ sở dữ liệu gồm 17 thực thể chính. Cấu trúc bảng Users quản lý thông tin tài khoản nhân viên (khóa chính id, username, password, fullname, phone, image, salary, address). Bảng User_Role liên kết quan hệ nhiều - nhiều giữa Users và Role (id_user, id_role). Dữ liệu bán hàng được lưu vết thông qua Bills, Bill Details gắn với Tables và Areas. Quản trị sản phẩm và nguyên liệu được liên kết chặt chẽ qua bảng Products, Categories, Recipe, Ingredients, Ingredient Category, cho phép tính toán tự động giá vốn dựa trên liều lượng cấu thành. Quản lý kho và chương trình ưu đãi được tổ chức qua các bảng Import, Import Detail, Promotion, Promotion Details.

  2. Cơ chế truyền thông và bảo mật API:

  • Tầng Web Service được phát triển trên Spring Boot, tiếp nhận và xử lý các yêu cầu HTTP từ Web Client và Android Client.
  • Xác thực người dùng thực hiện qua cơ chế Auth0 JWT: Client gửi thông tin đăng nhập, máy chủ xác thực và trả về chuỗi Token mang thông tin người dùng được mã hóa. Các yêu cầu tiếp theo bắt buộc đính kèm JWT vào Authorization Header để kiểm tra quyền truy cập.
  • Đồng bộ đơn hàng thời gian thực sử dụng Firebase Realtime Database: Khi nhân viên hoặc khách gửi order, bản ghi JSON được đẩy lên Firebase; quầy pha chế lập tức nhận thông báo thay đổi và cập nhật danh sách món cần làm mà không cần tải lại trang.
  1. Hiện thực hóa chức năng trên Client:
  • Ứng dụng Web: Triển khai trên máy chủ Tomcat bằng Java JSP/Servlet, giao diện đáp ứng (Responsive) với Bootstrap, tích hợp Ajax và jQuery để cập nhật dữ liệu mượt mà, cung cấp đầy đủ các màn hình quản trị hệ thống, thiết lập nguyên liệu, công thức pha chế, quản lý nhân sự và trích xuất báo cáo thống kê.
  • Ứng dụng Android: Lập trình native bằng Android Studio, thư viện Volley đảm nhiệm việc gửi nhận dữ liệu JSON với Spring Boot API, hỗ trợ quét mã QR bằng camera thiết bị để tự động mở thực đơn theo từng bàn.

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

Đồ án đã hoàn thành các mục tiêu đề ra với những kết quả cụ thể:

  • Hoàn thành đầy đủ hồ sơ phân tích thiết kế hệ thống thông tin theo phương pháp hướng cấu trúc và UML, bao gồm hệ thống sơ đồ BFD, DFD các cấp, 27 sơ đồ biểu đồ ca sử dụng và biểu đồ tuần tự, mô hình ERD và thiết kế chi tiết 17 bảng cơ sở dữ liệu quan hệ.
  • Xây dựng thành công ứng dụng Web Application phục vụ quản lý toàn diện quán cà phê: từ bán hàng, phân quyền nhân sự, quản lý kho - nguyên liệu - công thức chế biến đến quản lý khuyến mãi và thống kê doanh thu đa chiều.
  • Xây dựng hoàn chỉnh hệ thống RESTful Web Service bằng Spring Boot kết hợp cơ chế bảo mật Auth0 JWT, đóng vai trò nền tảng Backend API trung tâm.
  • Phát triển ứng dụng di động Android tích hợp thư viện Volley và Firebase Realtime Database, giải quyết bài toán đồng bộ hóa dữ liệu thời gian thực giữa phục vụ và pha chế, đồng thời cung cấp tính năng gọi món tự động qua mã QR cho khách hàng.
  • Về mặt đóng góp thực tiễn: Đề tài đã giải quyết được các điểm nghẽn trong vận hành thực tế tại quán Sala Cafe, giúp loại bỏ việc ghi chép thủ công, giảm sai sót khi truyền đạt thông tin món ăn, hạn chế thất thoát nguyên vật liệu qua công thức định mức và rút ngắn thời gian thanh toán cho khách hàng.

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

Hạn chế của đề tài:

  • Hệ thống mới được thử nghiệm và mô phỏng dựa trên mô hình hoạt động của một quán đơn lẻ (Sala Cafe), chưa đánh giá hiệu năng chịu tải trên quy mô chuỗi nhiều chi nhánh lớn.
  • Các tính năng mở rộng như tích hợp cổng thanh toán điện tử trực tuyến (ví điện tử, thẻ ngân hàng qua cổng trung gian) và in hóa đơn trực tiếp qua máy in bill chuyên dụng không dây chưa được hiện thực hóa trong đồ án.

Hướng phát triển tiếp theo được tác giả xác định:

  • Nâng cấp và mở rộng hệ thống để hỗ trợ mô hình quản lý chuỗi quán cà phê tập trung đa chi nhánh.
  • Tích hợp thêm các phương thức thanh toán không tiền mặt hiện đại (VNPay, Momo, thẻ tín dụng).
  • Phát triển các thuật toán phân tích dữ liệu nâng cao nhằm dự báo chính xác xu hướng tiêu dùng và tự động đề xuất số lượng nguyên liệu cần nhập theo từng chu kỳ kinh doanh.

Giá trị tham khảo

Đồ án tốt nghiệp là tài liệu tham khảo có giá trị chuyên môn cao cho:

  • Sinh viên chuyên ngành Công nghệ thông tin, Kỹ thuật phần mềm và Hệ thống thông tin: Cung cấp tài liệu mẫu mực về quy trình xây dựng một hệ sinh thái phần mềm hoàn chỉnh từ khảo sát hiện trạng, phân tích thiết kế hệ thống (BFD, DFD, Use Case, Sequence Diagram, ERD) đến hiện thực hóa mã nguồn đa nền tảng (Java Web, Spring Boot REST API, Android Native).
  • Các nhà phát triển ứng dụng POS / F&B: Cung cấp giải pháp kỹ thuật thực tế trong việc tích hợp cơ chế đồng bộ thời gian thực qua Firebase Realtime Database kết hợp với cơ sở dữ liệu quan hệ MySQL và xác thực bảo mật JWT.

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

1. Hệ thống xử lý việc đồng bộ đơn hàng giữa nhân viên phục vụ và quầy pha chế như thế nào?
Hệ thống sử dụng dịch vụ Firebase Realtime Database làm cầu nối trung gian. Khi nhân viên phục vụ gửi đơn đặt món từ ứng dụng Android hoặc Web, thông tin đơn hàng được đẩy lên Firebase dưới dạng JSON. Ứng dụng tại quầy pha chế đăng ký lắng nghe sự kiện thay đổi dữ liệu từ Firebase, lập tức hiển thị thông tin món mới theo thứ tự thời gian. Sau khi hoàn thành chế biến, nhân viên pha chế bấm "Hoàn thành" để gửi thông báo thời gian thực trở lại cho phục vụ.

2. Công thức pha chế và giá vốn sản phẩm được quản lý và tính toán ra sao?
Trong phân hệ quản lý sản phẩm, mỗi món ăn/đồ uống được liên kết với một hoặc nhiều nguyên liệu trong kho thông qua bảng Recipe và Ingredients. Người quản lý nhập định mức liều lượng nguyên liệu cho từng món. Hệ thống sẽ tự động tổng hợp đơn giá của các nguyên liệu cấu thành để tính ra giá vốn của sản phẩm, đồng thời đưa ra cảnh báo nếu người dùng nhập đơn giá bán hoặc giá sau khuyến mãi thấp hơn giá vốn.

3. Khách hàng tự gọi món bằng cách nào và quy trình xử lý đơn hàng diễn ra ra sao?
Khách hàng sử dụng điện thoại thông minh quét mã QR được dán trực tiếp trên bàn để truy cập giao diện order tương ứng với mã bàn đó. Sau khi chọn danh sách món và thêm ghi chú, khách nhấn gửi yêu cầu. Đơn hàng sẽ được chuyển vào trạng thái "Chờ xác nhận". Nhân viên phục vụ nhận được thông báo, kiểm tra lại thông tin và bấm "Xác nhận" để chính thức gộp món vào hóa đơn của bàn và đẩy thông tin xuống quầy pha chế.

4. Cơ chế bảo mật cho các dịch vụ RESTful API được thiết kế như thế nào?
Hệ thống áp dụng chuẩn bảo mật Auth0 JSON Web Token (JWT). Khi người dùng đăng nhập thành công qua API, hệ thống xác thực sẽ sinh ra một chuỗi JWT chứa thông tin định danh và phân quyền. Ở các yêu cầu API tiếp theo từ phía client, token này phải được đính kèm trong header HTTP. Phía server Spring Boot sẽ giải mã và kiểm tra tính hợp lệ của token trước khi cấp quyền truy xuất tài nguyên dữ liệu.

5. Cơ sở dữ liệu quan hệ của hệ thống gồm những nhóm thực thể chính nào?
Hệ thống thiết kế 17 bảng thực thể phân thành các nhóm chức năng: nhóm tài khoản và phân quyền (Users, User_Role, Role); nhóm bán hàng và mặt bằng (Bills, Bill Details, Tables, Areas); nhóm sản phẩm và công thức (Products, Categories, Recipe); nhóm kho và nhập hàng (Ingredients, Ingredient Category, Import, Import Detail); nhóm chương trình ưu đãi (Promotion, Promotion Details).

Kết luận

Đồ án tốt nghiệp "Website quản lý quán cafe" của sinh viên Nguyễn Tấn Luông đã giải quyết trọn vẹn bài toán tin học hóa quy trình quản trị và vận hành tại quán cà phê thông qua mô hình nghiên cứu thực tế tại quán Sala Cafe. Tác giả đã phân tích thiết kế hệ thống một cách khoa học, đồng thời xây dựng thành công hệ sinh thái phần mềm hoàn chỉnh bao gồm ứng dụng Web, ứng dụng di động Android, dịch vụ RESTful Web Service bảo mật bằng JWT và cơ chế đồng bộ thời gian thực qua Firebase. Đề tài thể hiện tính ứng dụng thực tiễn cao, đáp ứng tốt các yêu cầu nghiệp vụ từ bán hàng, kiểm soát kho, định mức giá vốn đến báo cáo thống kê trong ngành dịch vụ ẩm thực.