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

Trong bối cảnh nền kinh tế tri thức và quá trình đô thị hóa tại Việt Nam phát triển nhanh chóng, ngành kinh doanh bánh ngọt trở thành một trong những phân khúc có tốc độ tăng trưởng cao, ổn định nhưng cũng đối mặt với sự cạnh tranh mạnh mẽ. Tại các cơ sở kinh doanh đồ ăn, thức uống và giải trí, quy trình quản lý bán hàng, theo dõi kho bãi, chấm công và tính toán doanh thu đóng vai trò then chốt đối với hiệu quả kinh doanh. Tuy nhiên, nhiều cơ sở vừa và nhỏ vẫn duy trì phương thức quản lý thủ công trên sổ sách, dẫn đến tình trạng khó kiểm soát dữ liệu, dễ xảy ra sai sót trong hóa đơn, thất thoát hàng hóa và lãng phí thời gian vận hành.

Đề tài "Phân tích thiết kế hệ thống quản lý cửa hàng bánh ngọt Chez Moi" được thực hiện bởi nhóm sinh viên Hoàng Xuân Hiếu và Nguyễn Đức Quang (lớp D16CNPM7, Khoa Công nghệ Thông tin, Trường Đại học Điện Lực) dưới sự hướng dẫn của giảng viên Bùi Khánh Linh vào năm 2023. Nghiên cứu nhằm ứng dụng phương pháp luận hướng đối tượng vào bài toán tin học hóa toàn diện quy trình vận hành tại một cơ sở kinh doanh thực tế.

Nhiệm vụ nghiên cứu của đề tài bao gồm 3 mục tiêu cụ thể:

  1. Khảo sát hiện trạng hoạt động nghiệp vụ, xác định các yêu cầu chức năng và yêu cầu phi chức năng tại Tiệm bánh ngọt Chez Moi.
  2. Xây dựng mô hình phân tích và thiết kế hệ thống theo chuẩn ngôn ngữ mô hình hóa thống nhất (UML), bao gồm hệ thống các biểu đồ ca sử dụng, hoạt động, tuần tự, cộng tác, biểu đồ lớp, thành phần và triển khai.
  3. Phát sinh mã trình (Code Generation) trên nền tảng ngôn ngữ C#, xây dựng cơ sở dữ liệu và thiết kế giao diện phần mềm ứng dụng hoàn chỉnh.

Đối tượng nghiên cứu là toàn bộ quy trình nghiệp vụ quản trị tại Tiệm bánh ngọt Chez Moi, có địa chỉ tại số 33 phố Quán Thánh, phường Quán Thánh, quận Ba Đình, thành phố Hà Nội (vị trí tại Sảnh A khu tổ hợp giải trí). Phạm vi nghiên cứu tập trung vào 5 phân hệ cốt lõi: quản lý nhân viên, quản lý kho, quản lý lương, quản lý bàn ăn và thanh toán hóa đơn.


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

Nghiên cứu sử dụng phương pháp Phân tích và Thiết kế Hướng đối tượng (Object-Oriented Analysis and Design - OOAD) làm nền tảng lý thuyết xuyên suốt. Toàn bộ các thực thể, tiến trình nghiệp vụ và luồng dữ liệu được chuẩn hóa thông qua Ngôn ngữ Mô hình hóa Thống nhất (UML - Unified Modeling Language).

Các phương pháp nghiên cứu cụ thể bao gồm:

  • Phương pháp khảo sát thực tế và phân tích nghiệp vụ: Thu thập dữ liệu trực tiếp về cơ cấu tổ chức, quy định ca làm việc, bảng giá menu sản phẩm, chu kỳ xuất nhập kho và quy trình thu ngân tại tiệm Chez Moi.
  • Phương pháp mô hình hóa hệ thống: Sử dụng công cụ phần mềm Rational Rose để thiết kế hệ thống biểu đồ tĩnh và biểu đồ động, bao gồm:
    • Biểu đồ ca sử dụng (Use Case Diagram) và bảng đặc tả ca sử dụng.
    • Biểu đồ hoạt động (Activity Diagram) mô tả luồng nghiệp vụ.
    • Biểu đồ trình tự (Sequence Diagram) và biểu đồ cộng tác (Collaboration Diagram) mô tả sự tương tác giữa các đối tượng.
    • Biểu đồ lớp (Class Diagram), biểu đồ thành phần (Component Diagram) và biểu đồ triển khai (Deployment Diagram).
  • Phương pháp sinh mã và hiện thực hóa phần mềm: Chuyển đổi các lớp thiết kế thành cấu trúc mã nguồn C#, ánh xạ quan hệ vào hệ quản trị cơ sở dữ liệu quan hệ.

Nguồn dữ liệu nghiên cứu là hệ thống bảng giá dịch vụ thực tế của cửa hàng (dòng bánh miếng Slice Cake, bánh sinh nhật Birthday Cake, các loại đồ uống) cùng bảng định mức chi trả lương ca kíp và định mức nhân sự do cơ sở Chez Moi ban hành.


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

Hệ thống quản lý cửa hàng bánh ngọt được thiết kế để vận hành ổn định trên môi trường máy trạm nội bộ với các thông số kỹ thuật và công nghệ quy định:

Thành phần Đặc tả kỹ thuật
Môi trường phát triển (IDE) Microsoft Visual Studio 2022
Ngôn ngữ lập trình C# (.NET Framework)
Hệ quản trị cơ sở dữ liệu Microsoft SQL Server (phiên bản 2018)
Công cụ thiết kế UML Rational Rose
Trình duyệt phụ trợ Google Chrome
Hệ điều hành tương thích Microsoft Windows 7 / 8 / 10 / 11
Cấu hình phần cứng tối thiểu CPU $\ge 2.3\text{ GHz}$, RAM $\ge 4\text{ GB}$, Dung lượng đĩa cứng $\ge 200\text{ GB}$

Hệ thống đáp ứng các yêu cầu phi chức năng nghiêm ngặt:

  • Bảo mật: Đảm bảo tính toàn vẹn dữ liệu hệ thống; bảo mật thông tin cá nhân của nhân viên (số CMND/CCCD, địa chỉ, số điện thoại); phân quyền truy cập nghiêm ngặt theo vai trò của từng tác nhân.
  • Sao lưu và phục hồi: Tự động sao lưu dữ liệu lên máy chủ và hỗ trợ khôi phục khi có sự cố.
  • Khả năng mở rộng: Cấu trúc module hóa cho phép tích hợp thêm các phân hệ mới hoặc ghép nối với hệ thống phần mềm khác trong tương lai.

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

Chương 1: Khảo sát hệ thống

Chương 1 trình bày tổng quan về thị trường bánh ngọt, khảo sát chi tiết hiện trạng cơ sở Chez Moi và chuẩn hóa toàn bộ các quy trình nghiệp vụ thành các quy tắc logic:

  1. Nghiệp vụ quản lý kho: Định kỳ 3 ngày/lần, nhân viên phụ trách kho kiểm tra lượng đồ ăn và nguyên liệu đồ uống còn dư, ghi nhận vào hệ thống để xác định lượng cần nhập thêm. Chủ quán kiểm tra dữ liệu trên phần mềm và chốt đơn đặt mua.
  2. Nghiệp vụ quản lý nhân viên: Lưu trữ thông tin hồ sơ (số CMND, họ tên, ngày tháng năm sinh, địa chỉ, ngày vào làm), thực hiện các thao tác thêm mới, sửa, xóa, tìm kiếm và chấm công hằng ngày.
  3. Nghiệp vụ quản lý bàn: Trực quan hóa trạng thái bàn ăn thông qua mã màu trên giao diện: bàn "Đang sử dụng" hiển thị màu đỏ, bàn "Còn trống" hiển thị màu xanh da trời.
  4. Nghiệp vụ quản lý lương: Tổng kết dữ liệu cuối tháng và thanh toán vào ngày mùng 10 của tháng kế tiếp. Lương được tính theo mức 20.000 VNĐ/ca:
    • Ca sáng: 9h00 – 13h00.
    • Ca chiều: 13h00 – 18h00.
    • Công thức tính lương tổng quát: $$\sum \text{Lương} = (\text{Số ca làm/Ngày} \times \text{Số ngày làm/Tháng}) \times 20.000 + \text{Thưởng ngày lễ}$$
    • Quy chế nghỉ phép: Nhân viên được nghỉ tối đa 2 ngày/tháng (trừ thứ 7, Chủ nhật và ngày lễ); xin nghỉ việc phải báo trước 15 ngày; nhân viên mới có 2 ngày thử việc và bắt đầu tính lương từ ngày làm việc thứ 3.
  5. Nghiệp vụ thanh toán và thực đơn (Menu): Hệ thống lập hóa đơn dựa trên danh mục mặt hàng niêm yết:
Danh mục Sản phẩm Đơn giá (VNĐ)
Bánh miếng (Slice Cake) Black forest, Passion choco, Newyork cheese, Lemon cheese 48.000
Cream brulee 45.000
Bánh sinh nhật (Birthday Cake) Black forest, Passion choco, Newyork cheese, Lemon cheese, Blueberry yogurt, Rasberry choco, Mousse durian choco 280.000 / 450.000 (tùy kích thước)
Đồ uống - Cà phê Coffee đen (đá/nóng) 16.000
Coffee nâu (đá/nóng) 18.000
Đồ uống - Nước ép & Sinh tố Nước ép dưa hấu, Nước ép ổi 35.000
Sinh tố xoài, Sinh tố bơ, Sinh tố mãng cầu 35.000
Sinh tố blueberry, Sinh tố rasberry 40.000
Nước cam 35.000
Nước chanh, Nước chanh leo 25.000
Đồ uống - Trà & Khác Trà lipton, Trà dilmah dâu, Trà đào, Trà bạc hà 25.000
Cacao đá/nóng, Sữa chua đánh đá 25.000

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

Chương 2 là phần trọng tâm của báo cáo, xác lập mối quan hệ giữa các tác nhân (Actor) và ca sử dụng (Use Case):

  • Phân nhóm tác nhân (Actor):

    • Chủ quán: Có toàn quyền quản trị (Quản lý nhân viên, Quản lý kho, Quản lý lương, Quản lý bàn, Quản lý menu sản phẩm, xem báo cáo).
    • Nhân viên quản lý: Vận hành quản lý bàn, quản lý kho, theo dõi ca làm việc.
    • Nhân viên thu ngân: Thực hiện lập đơn hàng, in hóa đơn, thanh toán tiền và tiếp nhận phản hồi của khách hàng.
  • Đặc tả và mô hình hóa chi tiết từng phân hệ:

    • Phân hệ Đăng nhập/Đăng xuất: Kiểm tra tính hợp lệ của tài khoản (tối đa 16 ký tự, có thể là tên đăng nhập hoặc số điện thoại) và mật khẩu (độ dài trên 4 ký tự, bắt buộc chứa ký tự đặc biệt). Phân quyền truy cập chính xác sau khi xác thực thành công.
    • Phân hệ Quản lý nhân viên: Xây dựng đầy đủ biểu đồ Use Case, biểu đồ hoạt động, biểu đồ trình tự và biểu đồ cộng tác cho 4 tác vụ: Thêm mới, Sửa thông tin, Xóa và Tìm kiếm nhân viên.
    • Phân hệ Quản lý sản phẩm (Menu): Thiết kế các luồng Thêm sản phẩm vào menu, Sửa thông tin sản phẩm và Xóa sản phẩm khỏi menu.
    • Phân hệ Quản lý kho: Quản lý thông tin chi tiết của từng mặt hàng gồm: Số thứ tự, Mã sản phẩm, Tên sản phẩm, Số lượng, Ngày nhập, Đơn vị tính, Giá tiền.
    • Phân hệ Quản lý lương: Xử lý thuật toán tính lương tự động dựa trên số công và tiền thưởng.
    • Phân hệ Khách hàng và Bán hàng: Mô hình hóa quy trình Đặt hàng, Hủy hàng, Tính tiền, In hóa đơn và Ghi nhận ý kiến phản hồi.
    • Mô hình kiến trúc tổng thể: Thiết lập Biểu đồ lớp tổng quát (Class Diagram) kết nối các thực thể NhanVien, TaiKhoan, SanPham, Kho, HoaDon, BanAn; Biểu đồ thành phần (Component Diagram) và Biểu đồ triển khai (Deployment Diagram) thể hiện phân bổ vật lý của phần mềm trên hệ thống máy trạm và máy chủ CSDL.

Chương 3: Phát sinh mã trình

Chương 3 trình bày kết quả ánh xạ từ các mô hình thiết kế UML sang các khối mã nguồn cụ thể bằng ngôn ngữ C#. Tác giả tập trung hiện thực hóa các lớp điều khiển và xử lý dữ liệu cho 6 khối chức năng cốt lõi:

  1. Mã trình xác thực và kiểm soát phiên đăng nhập hệ thống.
  2. Mã trình xử lý thao tác thêm, cập nhật, xóa và truy vấn danh sách nhân sự.
  3. Mã trình quản lý bán hàng, xử lý logic tạo đơn và xuất hóa đơn.
  4. Mã trình theo dõi xuất nhập kho và cập nhật số lượng tồn dư.
  5. Mã trình cập nhật danh mục thực đơn (Menu bánh và đồ uống).
  6. Mã trình tổng hợp dữ liệu lập báo cáo thống kê doanh thu và chi phí lương.

Chương 4: Thiết kế giao diện

Chương 4 hoàn thiện hệ thống giao diện người dùng (UI) dựa trên các biểu đồ hoạt động đã phân tích:

  • Giao diện chính (Main Dashboard): Thiết kế thanh menu điều hướng trực quan, hiển thị các phân hệ chức năng tương ứng với quyền hạn của tài khoản đăng nhập.
  • Các biểu mẫu (Form) tác nghiệp chính:
    • Form Đăng nhập với cơ chế cảnh báo lỗi nhập liệu.
    • Form Quản lý nhân viên tích hợp bảng hiển thị danh sách (DataGrid) và các trường thông tin chi tiết.
    • Form Sơ đồ bàn ăn hỗ trợ đổi màu trạng thái theo thời gian thực (Đỏ - Xanh).
    • Form Bán hàng và Lập hóa đơn hỗ trợ chọn nhanh món ăn từ menu và tự động tính tổng tiền.
    • Form Quản lý kho và tính lương tự động.
  • Đánh giá chung và nhược điểm: Báo cáo ghi nhận giao diện được xây dựng thân thiện, dễ thao tác đối với người dùng mới. Tuy nhiên, hệ thống vẫn tồn tại nhược điểm về khả năng tùy biến nâng cao trên các thiết bị di động và báo cáo thống kê đa chiều chưa được đa dạng hóa.

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

Nghiên cứu đã hoàn thành toàn bộ các mục tiêu đặt ra trong đề cương học phần Phân tích thiết kế hướng đối tượng:

  • Xây dựng hoàn chỉnh hồ sơ phân tích thiết kế hệ thống thông tin quản lý cho một cửa hàng bánh ngọt thực tế, bao gồm hơn 38 biểu đồ UML chuẩn mực từ mức khái niệm, mức phân tích đến mức thiết kế vật lý.
  • Chuẩn hóa thành công toàn bộ quy tắc nghiệp vụ đặc thù của tiệm Chez Moi (tính lương ca kíp 20.000 VNĐ/ca, phân loại bảng giá menu bánh miếng, bánh sinh nhật, đồ uống, chu kỳ kiểm kho 3 ngày/lần).
  • Xây dựng thành công ứng dụng phần mềm thực thi trên nền tảng C# và Microsoft SQL Server, giải quyết triệt để bài toán quản lý thủ công, hỗ trợ tính tiền nhanh chóng, chính xác và trực quan hóa trạng thái bàn ăn cho cơ sở kinh doanh vừa và nhỏ.

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

Theo đánh giá của tác giả trong văn bản báo cáo:

  • Hạn chế: Hệ thống mới chỉ đáp ứng tốt nhu cầu quản lý cục bộ tại các cửa hàng quy mô vừa và nhỏ; chức năng phân tích thống kê báo cáo chuyên sâu còn đơn giản; hệ thống chưa tích hợp cổng thanh toán trực tuyến hoặc kênh bán hàng trực tuyến đồng bộ qua Internet.
  • Hướng mở rộng: Bổ sung các module quản trị chuỗi cung ứng nâng cao, tích hợp tính năng đặt hàng từ xa qua website/ứng dụng di động và nâng cấp hệ thống báo cáo tài chính - doanh thu theo thời gian thực.

Giá trị tham khảo

Báo cáo bài tập lớn là tài liệu tham khảo thiết thực cho:

  • Sinh viên chuyên ngành Công nghệ thông tin, Công nghệ phần mềm đang học tập và thực hiện đồ án môn học "Phân tích thiết kế hướng đối tượng" hoặc "Phân tích thiết kế hệ thống thông tin".
  • Người học cần tài liệu mẫu chuẩn về phương pháp chuyển đổi quy trình nghiệp vụ thực tế thành hệ thống biểu đồ UML (Use Case, Activity, Sequence, Collaboration, Class Diagram) bằng công cụ Rational Rose.
  • Các lập trình viên mới bắt đầu tìm hiểu quy trình xây dựng ứng dụng quản lý bán hàng (POS/Desktop App) sử dụng ngôn ngữ C# kết hợp hệ quản trị cơ sở dữ liệu SQL Server.

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

1. Hệ thống quản lý tiệm bánh Chez Moi sử dụng công thức nào để tính lương cho nhân viên?
Lương nhân viên được tính theo ca với định mức 20.000 VNĐ/ca (ca sáng 9h–13h hoặc ca chiều 13h–18h). Công thức tính lương cuối tháng được thiết lập như sau: $$\sum \text{Lương} = (\text{Số ca làm/Ngày} \times \text{Số ngày làm/Tháng}) \times 20.000 + \text{Thưởng ngày lễ (nếu có)}$$

2. Giao diện phần mềm phân biệt trạng thái bàn ăn thông qua cơ chế nào?
Phần mềm sử dụng mã màu trực quan: bàn đang có khách ngồi ("Đang sử dụng") được hiển thị màu đỏ, bàn chưa có khách ("Còn trống") được hiển thị màu xanh da trời. Người quản lý có thể tìm kiếm theo số thứ tự bàn hoặc lọc theo trạng thái màu sắc này.

3. Quy định kiểm tra tính hợp lệ khi đăng nhập vào hệ thống gồm những điều kiện gì?
Tài khoản đăng nhập có độ dài tối đa 16 ký tự (có thể là tên đăng nhập hoặc số điện thoại). Mật khẩu bắt buộc phải có độ dài trên 4 ký tự, không được chỉ chứa riêng chữ số hoặc chữ cái thuần túy mà phải bao gồm ký tự đặc biệt.

4. Hệ thống được xây dựng và mô hình hóa dựa trên những công cụ phần mềm nào?
Hệ thống sử dụng phần mềm Rational Rose để mô hình hóa chuẩn UML, môi trường lập trình Microsoft Visual Studio 2022 với ngôn ngữ C#, hệ quản trị cơ sở dữ liệu Microsoft SQL Server (bản 2018) và trình duyệt Google Chrome.

5. Quy trình kiểm kê và nhập hàng của kho tiệm Chez Moi được thiết kế ra sao?
Cứ sau 3 ngày, nhân viên phụ trách kho sẽ kiểm tra lượng đồ ăn và nguyên liệu đồ uống còn dư rồi cập nhật vào hệ thống. Chủ quán căn cứ trên số liệu tồn kho hiển thị trên phần mềm để chốt số lượng hàng hóa và nguyên liệu cần đặt mua thêm.


Kết luận

Báo cáo bài tập lớn "Phân tích thiết kế hệ thống quản lý cửa hàng bánh ngọt Chez Moi" của sinh viên Hoàng Xuân Hiếu và Nguyễn Đức Quang đã hoàn thành tốt các mục tiêu nghiên cứu của học phần Phân tích thiết kế hướng đối tượng. Đề tài đã khảo sát toàn diện nghiệp vụ thực tế tại cơ sở Chez Moi, xây dựng hệ thống biểu đồ UML chi tiết và hiện thực hóa thành phần mềm chạy trên nền tảng C# và SQL Server. Kết quả nghiên cứu cung cấp một giải pháp tin học hóa phù hợp, nâng cao hiệu quả quản trị cho mô hình cửa hàng bánh ngọt vừa và nhỏ.