Bối cảnh và vấn đề nghiên cứu
Đồ án tốt nghiệp của sinh viên Lê Thanh Tân (ngành Công nghệ thông tin, Trường Đại học Dân lập Hải Phòng, năm 2013) tập trung vào đề tài xây dựng phần mềm quản lý ứng dụng cho cơ sở kinh doanh dịch vụ ẩm thực và giải trí.
-
Lý do chọn đề tài và bối cảnh thực tiễn:
Cơ sở khảo sát thực tế là Hữu Hạnh Club – một địa điểm kinh doanh dịch vụ giải trí và ẩm thực tọa lạc tại ngã tư Quán Toan (Hải Phòng), khu vực có mật độ dân cư đông đúc. Cơ sở hạ tầng của quán gồm 2 tầng với quy mô 44 bàn (tầng một có 14 bàn, tầng hai có 30 bàn). Đội ngũ nhân sự trực tiếp gồm 8 người: 1 nhân viên bếp, 4 nhân viên chạy bàn, 2 nhân viên bảo vệ và 1 quản lý chung; thời gian làm việc được chia làm 2 ca (ca sáng: 6h00 – 14h00; ca chiều: 14h00 – 22h00). Mặc dù cơ sở đã từng áp dụng phần mềm quản lý, hệ thống cũ còn bộc lộ nhiều điểm hạn chế, đặc biệt là thiếu phân hệ quản lý - chấm công nhân viên (vẫn phải chấm công thủ công bằng sổ tay) và thiếu phân hệ quản lý thông tin khách hàng thân thiết. Do đó, việc xây dựng một phần mềm quản lý toàn diện mới là yêu cầu cấp thiết nhằm tin học hóa triệt để quy trình vận hành.
-
Mục tiêu và nhiệm vụ nghiên cứu:
- Khảo sát hiện trạng, mô tả chi tiết các tiến trình nghiệp vụ thực tế tại Hữu Hạnh Club bao gồm: bán hàng, quản lý món ăn, nhập kho, tính lương, quản lý nhân viên và quản lý khách hàng.
- Áp dụng phương pháp phân tích và thiết kế hệ thống thông tin hướng cấu trúc để xây dựng sơ đồ phân rã chức năng (BFD), biểu đồ luồng dữ liệu (DFD) các mức và mô hình dữ liệu quan hệ (ERD).
- Thiết kế cơ sở dữ liệu vật lý và xây dựng giao diện ứng dụng đáp ứng đầy đủ các quy trình cập nhật, tính toán và báo cáo.
- Lập trình và cài đặt hoàn thiện phần mềm quản lý trên nền tảng ngôn ngữ C# và hệ quản trị cơ sở dữ liệu Microsoft SQL Server 2005.
-
Đối tượng và phạm vi nghiên cứu:
- Đối tượng nghiên cứu: Quy trình quản lý hoạt động kinh doanh, bán hàng, nhân sự, tiền lương và kho hàng của một nhà hàng/câu lạc bộ giải trí.
- Phạm vi không gian: Áp dụng cụ thể tại Hữu Hạnh Club (ngã tư Quán Toan, Hải Phòng).
- Phạm vi thời gian: Đồ án được khảo sát và hoàn thành vào năm 2013.
Cơ sở lý thuyết và phương pháp
Tác giả sử dụng khung lý thuyết và phương pháp luận tiêu chuẩn của chuyên ngành Công nghệ phần mềm:
Thiết kế và triển khai
Hệ thống được thiết kế theo kiến trúc ứng dụng desktop hoàn chỉnh phục vụ công tác quản lý nội bộ:
1. Kiến trúc phân rã chức năng (BFD)
Hệ thống được chia thành 5 phân hệ chức năng chính:
- Quản lý bán hàng: Chọn món, lập thực đơn, cập nhật món ăn, thanh toán, lưu sổ bán hàng.
- Quản lý nhân viên: Lập hồ sơ nhân viên, tra cứu thông tin, cập nhật thông tin hồ sơ (thêm, sửa, xóa).
- Quản lý lương: Chấm công nhân viên hàng ngày, tính lương và thưởng/phạt theo tháng.
- Quản lý kho: Thêm nguyên liệu, cập nhật thông tin nguyên liệu, lập phiếu nhập kho, lưu sổ kho.
- Báo cáo thống kê: Báo cáo doanh thu kinh doanh (theo tháng/năm), báo cáo xuất/nhập/tồn kho.
2. Thiết kế cơ sở dữ liệu vật lý
Cơ sở dữ liệu được xây dựng trên Microsoft SQL Server 2005 gồm 13 bảng dữ liệu vật lý được chuẩn hóa:
| Tên bảng |
Chức năng lưu trữ |
Khóa chính (Primary Key) |
Các trường dữ liệu chính |
QUANLY |
Thông tin tài khoản và người quản lý |
MaQuanLy (int) |
HoTen, DiaChi, NgaySinh, Dienthoai, TrangThai, NgayTao, NgayCapNhat, TaiKhoan, MatKhau |
NHANVIEN |
Thông tin hồ sơ nhân viên |
MaNhanVien (int) |
Hoten, DiaChi, NgaySinh, SoCMND, DienThoai, TrangThai, MaBangLuong, MaHopDong, MaBangChamCong |
KHACHHANG |
Thông tin khách hàng |
MaKhachHang (int) |
NguoiTao, NgayTao, ThanhTien, TrangThai, NguoiCapNhat, NgayCapNhat |
KHO |
Danh mục kho hàng |
MaKho (int) |
TenKho, TrangThai, NguoiTao, NgayTao, NguoiCapNhat |
MONAN |
Danh mục món ăn và đơn giá |
MaMonAn (int) |
TenMonAn, GiaMonAn, TrangThai, NguoiTao, NgayTao, MaQuanLy |
NGUYENLIEU |
Thông tin nguyên liệu chế biến |
MaNguyenLieu (int) |
TenNguyenLieu, GiaNguyenLieu, TrangThai, MaKho, MaQuanLy |
HOPDONG |
Hợp đồng lao động nhân viên |
MaHopDong (int) |
LoaiHopDong, NgayBatDau, NgayKetThuc, TrangThai, NguoiKy, NgayKy, LuongCoBan |
THUCDON |
Thông tin hóa đơn/thực đơn bán |
Mathucdon (int) |
MaNhanVien, NgayLap, MaKhachHang, ThanhTien |
NOIDUNGTHUCDON |
Chi tiết món ăn trong hóa đơn |
MaMonAn, MaThucDon |
SoLuong, TienKhuyenMai |
PHIEUNHAP |
Thông tin phiếu nhập nguyên liệu |
MaPhieuNhap (int) |
NguoiTao, NgayTao, MaQuanLy, ThanhTien |
NOIDUNGPHIEUNHAP |
Chi tiết nguyên liệu trong phiếu nhập |
MaPhieuNhap, MaNguyenLieu |
SoLuong |
BANGCHAMCONG |
Dữ liệu chấm công hàng tháng |
MaBangChamCong (int) |
TenNhanVien, NgayCong, GioLamThem, SoNgayNghi, ThanhTien, Thang |
BANGLUONG |
Bảng lương tổng hợp |
MaBangLuong (int) |
TenNhanVien, LuongCoBan, LuongThemGio, TienPhat, LuongThuong, Thang, TongLuong |
3. Thiết kế giao diện
Hệ thống triển khai trên nền Windows Forms gồm:
- Màn hình đăng nhập (
Form Đăng nhập) bảo mật bằng tài khoản và mật khẩu của Quản lý.
- Màn hình giao diện chính điều hướng tới 5 phân hệ: Quản lý nhân viên, Quản lý bán hàng, Quản lý kho, Quản lý lương, Báo cáo.
- Các giao diện cập nhật dữ liệu chuyên biệt: Form cập nhật món ăn, Form hồ sơ nhân viên, Form quản lý hợp đồng lao động, Form bảng chấm công và tính lương. Tất cả các form đều trang bị các nút thao tác tiêu chuẩn: Nhập, Sửa, Xóa, Lưu, Thoát.
Nội dung chính theo từng chương
CHƯƠNG I: MÔ TẢ BÀI TOÁN VÀ GIẢI PHÁP
- Nghiệp vụ thực tế: Mô tả chi tiết 6 luồng công việc tại quán: Bán hàng (ghi món, chuyển bếp, hỗ trợ chuyển/gộp bàn, in hóa đơn duy nhất cho mỗi khách); Quản lý món (cập nhật menu, công thức, giá bán, ẩn tạm món theo mùa); Nhập kho (đánh giá mức tiêu thụ, lập phiếu nhập kho, theo dõi hạn dùng); Thống kê (tổng kết thu-chi định kỳ tuần/tháng theo hóa đơn); Quản lý lương (chấm công theo ca, tính lương thêm giờ, chế độ thưởng theo doanh thu, trừ lương/phạt vi phạm); Quản lý nhân sự và khách hàng (lưu trữ sơ yếu lý lịch, hợp đồng làm việc bán thời gian cho học sinh/sinh viên, theo dõi thông tin khách quen để áp dụng chính sách giảm giá).
- Bảng phân tích 17 công việc nghiệp vụ: Liệt kê rõ đối tượng thực hiện và hồ sơ dữ liệu tương ứng:
| STT |
Tên công việc |
Đối tượng thực hiện |
Hồ sơ dữ liệu sử dụng |
| 1 |
Ghi yêu cầu khách hàng |
Nhân viên bàn |
Phiếu ghi yêu cầu |
| 2 |
Nhập yêu cầu khách hàng |
Quản lý |
Phiếu ghi yêu cầu |
| 3 |
Nhận thực đơn |
Nhân viên bếp |
Phiếu ghi yêu cầu |
| 4 |
Tính tiền |
Quản lý |
Hóa đơn |
| 5 |
Nhập hàng |
Quản lý |
Phiếu nhập |
| 6 |
Chấm công |
Quản lý |
Bảng chấm công |
| 7 |
Kiểm tra bảng chấm công |
Giám đốc |
Bảng chấm công |
| 8 |
Tính lương |
Giám đốc |
Bảng lương |
| 9 |
Quản lý nhân viên |
Quản lý |
Hồ sơ nhân viên |
| 10 |
Tuyển nhân viên |
Quản lý |
Hồ sơ nhân viên |
| 11 |
Lập hợp đồng |
Quản lý |
Hợp đồng |
| 12 |
Lập báo cáo |
Quản lý |
Báo cáo |
| 13 |
Kiểm tra báo cáo |
Giám đốc |
Báo cáo |
| 14 |
Bảo vệ |
Nhân viên bảo vệ |
- |
| 15 |
Chế biến món |
Nhân viên bếp |
- |
| 16 |
Yêu cầu nguyên liệu |
Nhân viên bếp |
Phiếu đề xuất |
| 17 |
Quản lý tài sản |
Quản lý |
Báo cáo |
- Tiến trình nghiệp vụ: Xây dựng 4 sơ đồ tiến trình chính gồm Bán hàng, Tính lương, Báo cáo và Quản lý nhân viên với sự tham gia của 4 tác nhân: Giám đốc, Quản lý, Nhân viên (bàn, bếp, bảo vệ) và Khách hàng.
CHƯƠNG II: PHÂN TÍCH THIẾT KẾ HỆ THỐNG
- Bảng phân tích yếu tố bài toán: Phân loại chi tiết các cụm Động từ + Bổ nghĩa thành Chức năng nghiệp vụ, Danh từ thành Tác nhân hoặc Hồ sơ dữ liệu.
- Mô hình hóa luồng dữ liệu:
- Biểu đồ ngữ cảnh: Thể hiện sự tương tác giữa Hệ thống quản lý bán hàng với 4 tác nhân bên ngoài: Khách hàng, Quản lý, Giám đốc, Nhân viên.
- Biểu đồ phân rã chức năng (BFD): Cấu trúc hóa hệ thống thành 5 nhóm lớn và 14 chức năng lá cụ thể.
- Biểu đồ luồng dữ liệu mức 0: Tích hợp 5 luồng tiến trình (1.0 Quản lý bán hàng, 2.0 Quản lý nhân viên, 3.0 Quản lý lương, 4.0 Quản lý kho, 5.0 Báo cáo) liên kết với các kho dữ liệu (Sổ bán hàng, Bảng chấm công, Hợp đồng, Hồ sơ nhân viên, Sổ kho, Bảng lương).
- Biểu đồ luồng dữ liệu mức 1: Chi tiết hóa cho từng phân hệ nghiệp vụ cụ thể.
- Thiết kế dữ liệu và giao diện: Xác định 6 thực thể nền tảng, thiết lập sơ đồ liên kết thực thể (ERD), chuyển đổi thành 13 quan hệ logic và bảng vật lý chi tiết; hoàn thiện thiết kế các layout giao diện nhập liệu.
CHƯƠNG 3: CƠ SỞ LÝ THUYẾT
- Tổng quan về hệ thống thông tin: Định nghĩa HTTT, phân tích các thành phần cấu thành (dữ liệu, thông tin, hoạt động xử lý, giao diện, môi trường).
- Phân loại hệ thống: Phân loại theo chức năng (OAS, TPS, ESS, PES, MIS, DSS, ES, GS) và theo kiến trúc kỹ thuật (máy tính cá nhân, hệ thống làm việc nhóm, hệ thống đa người dùng).
- Phương pháp luận phát triển: Trình bày 4 cách tiếp cận (tiến trình, dữ liệu, cấu trúc, hướng đối tượng); các mô hình phát triển phần mềm (Mô hình thác nước - Waterfall, Làm bản mẫu - Prototyping, Mô hình xoắn ốc - Spiral).
- Lý thuyết thiết kế CSDL quan hệ: Định nghĩa mô hình E-R, phân loại thuộc tính (định danh, tên gọi, mô tả, đa trị) và nguyên tắc chuẩn hóa dữ liệu.
- Công nghệ C# và SQL Server 2005: Trình bày các đặc tính của ngôn ngữ C# (đơn giản, hiện đại, hướng đối tượng, hướng mô-đun, mềm dẻo) và cấu trúc quản trị cơ sở dữ liệu trên MS SQL Server 2005.
CHƯƠNG 4: CÀI ĐẶT CHƯƠNG TRÌNH
- Môi trường vận hành: Đặc tả yêu cầu hệ thống phần cứng và phần mềm nền tảng cần thiết để triển khai ứng dụng tại doanh nghiệp.
- Hệ thống màn hình chức năng: Minh họa và hướng dẫn vận hành các form chức năng chính: Form đăng nhập, Menu hệ thống, các giao diện cập nhật bán hàng, nhân sự, bảng lương và kho.
Kết quả và đóng góp
-
Kết quả đạt được:
- Khảo sát và mô hình hóa thành công toàn bộ nghiệp vụ thực tế của một mô hình dịch vụ ăn uống - giải trí quy mô 44 bàn, 8 nhân viên.
- Xây dựng đầy đủ hồ sơ phân tích thiết kế hệ thống thông tin theo phương pháp luận hướng cấu trúc: Bảng phân tích yếu tố, Biểu đồ ngữ cảnh, Sơ đồ BFD, Biểu đồ DFD mức 0 và 5 biểu đồ DFD mức 1.
- Chuẩn hóa mô hình dữ liệu quan hệ gồm 13 bảng dữ liệu vật lý với đầy đủ khóa chính, khóa ngoại, ràng buộc toàn vẹn và kiểu dữ liệu chi tiết.
- Hoàn thiện giao diện đồ họa người dùng bằng C# và cơ sở dữ liệu SQL Server 2005, xử lý triệt để bài toán chấm công nhân viên và theo dõi khách hàng mà phần mềm cũ chưa đáp ứng được.
-
Đóng góp của tác giả:
- Giải quyết bài toán chuyển đổi số khâu quản lý nhân sự - tiền lương cho cơ sở dịch vụ vừa và nhỏ: tự động hóa tính lương dựa trên số ngày công, giờ làm thêm, tiền phạt và tiền thưởng thay vì chấm công sổ tay.
- Tích hợp quản lý thông tin khách hàng quen để phục vụ các chính sách giảm giá và chăm sóc khách hàng tùy biến.
Hạn chế và hướng nghiên cứu tiếp
-
Hạn chế:
- Hệ thống được thiết kế dưới dạng ứng dụng desktop (Windows Forms) cài đặt cục bộ, chưa hỗ trợ đồng bộ dữ liệu thời gian thực qua môi trường mạng Internet hoặc nền tảng di động.
- Chưa tích hợp cơ chế phân quyền chi tiết cho từng nhân viên phục vụ trực tiếp tại bàn (order bằng thiết bị cầm tay), các thao tác ghi nhận yêu cầu phần lớn vẫn do nhân viên bàn ghi giấy rồi chuyển quản lý nhập liệu.
-
Hướng phát triển tiếp:
- Mở rộng kiến trúc phần mềm kết nối đa người dùng thông qua mạng nội bộ hoặc nền tảng Web/Cloud.
- Tích hợp thêm các thiết bị ngoại vi chuyên dụng như máy in nhiệt tại quầy bar/bếp và thiết bị quét mã vạch phục vụ quản lý xuất - nhập nguyên liệu kho nhanh chóng.
Giá trị tham khảo
Đồ án là tài liệu tham khảo hữu ích đối với:
- Sinh viên ngành Công nghệ thông tin, Hệ thống thông tin, Công nghệ phần mềm: Cung cấp tài liệu mẫu mực, hoàn chỉnh về quy trình phân tích thiết kế hệ thống hướng cấu trúc (từ khảo sát bài toán thực tế, vẽ BFD, DFD mức 0/1, lập mô hình ERD đến chuẩn hóa bảng CSDL vật lý).
- Người phát triển ứng dụng quản lý nhà hàng/quán ăn: Tham khảo trực tiếp cấu trúc cơ sở dữ liệu (13 bảng) và quy trình nghiệp vụ đặc thù gồm quản lý bàn, quản lý công thức món ăn, trừ nguyên liệu kho, chấm công theo ca và tính lương nhân viên.
Câu hỏi thường gặp
1. Hiện trạng cơ sở vật chất và nhân sự của Hữu Hạnh Club được tác giả khảo sát cụ thể như thế nào?
Hữu Hạnh Club gồm 2 tầng với 44 bàn (tầng một 14 bàn, tầng hai 30 bàn). Nhân sự gồm 8 người: 1 nhân viên bếp, 4 nhân viên chạy bàn, 2 bảo vệ và 1 quản lý chung. Quán hoạt động theo 2 ca làm việc: ca sáng từ 6h00 đến 14h00, ca chiều từ 14h00 đến 22h00.
2. Lý do chính khiến tác giả đề xuất xây dựng phần mềm mới thay thế phần mềm cũ của quán là gì?
Phần mềm cũ của Hữu Hạnh Club còn thiếu sót các phân hệ quan trọng, đặc biệt là thiếu mô-đun quản lý và chấm công nhân viên (vẫn đang phải ghi chép chấm công thủ công bằng sổ tay) và thiếu mô-đun quản lý thông tin khách hàng thân thiết để áp dụng khuyến mại.
3. Cơ sở dữ liệu của phần mềm gồm bao nhiêu bảng và những bảng nào lưu trữ chi tiết quan hệ n-n?
Cơ sở dữ liệu vật lý gồm 13 bảng: QUANLY, NHANVIEN, KHACHHANG, KHO, MONAN, NGUYENLIEU, HOPDONG, THUCDON, BANGCHAMCONG, BANGLUONG, PHIEUNHAP cùng 2 bảng sinh ra từ mối quan hệ nhiều-nhiều (n-n) là NOIDUNGTHUCDON (chi tiết món ăn - hóa đơn) và NOIDUNGPHIEUNHAP (chi tiết nguyên liệu - phiếu nhập).
4. Quy trình tính lương cho nhân viên trong hệ thống được thực hiện dựa trên các dữ liệu nào?
Quy trình tính lương dựa trên dữ liệu từ BANGCHAMCONG (ngày công, giờ làm thêm, số ngày nghỉ) và hợp đồng lao động (HOPDONG - lương cơ bản), kết hợp các khoản thưởng theo doanh thu tháng và tiền phạt vi phạm để tổng hợp thành BANGLUONG hàng tháng trước khi gửi Giám đốc phê duyệt.
5. Đồ án sử dụng phương pháp luận phân tích thiết kế và công nghệ lập trình nào?
Đồ án áp dụng phương pháp phân tích thiết kế hệ thống thông tin hướng cấu trúc (vòng đời Waterfall, sơ đồ BFD, biểu đồ DFD, mô hình dữ liệu quan hệ ERD) và triển khai trên nền tảng ngôn ngữ C# kết hợp hệ quản trị cơ sở dữ liệu Microsoft SQL Server 2005.
Kết luận
Đồ án tốt nghiệp của sinh viên Lê Thanh Tân đã trình bày một cách có hệ thống toàn bộ quy trình khảo sát, phân tích, thiết kế và cài đặt phần mềm quản lý cho cơ sở kinh doanh Hữu Hạnh Club tại Hải Phòng. Bằng việc áp dụng phương pháp luận phân tích thiết kế hệ thống thông tin hướng cấu trúc, tác giả đã chuẩn hóa 13 bảng cơ sở dữ liệu và xây dựng đầy đủ 5 phân hệ chức năng trên nền tảng C# và SQL Server 2005. Kết quả của đề tài giải quyết trọn vẹn những bất cập trong quản lý bán hàng, nhập kho và tự động hóa công tác chấm công, tính lương cho nhân viên tại doanh nghiệp.