Mục Lục
2
Lời nói đầu
Kinh doanh nhà hàng là một loại hình kinh doanh dịch vụ hiện đang rất
phát triển tại Việt Nam và trên thế giới. Ngày nay đời sống kinh tế ngày càng
phát triển, con người ta càng hướng đến những giá trị cao hơn cả về vật chất
lẫn tinh thần. Không đơn giản chỉ là quan hệ người mua – kẻ bán, khách hàng
tìm đến dịch vụ ăn uống còn là để thưởng thức và hưởng thụ. Nhà bếp là
những nghệ sĩ, khách hàng là người thưởng thức nghệ thuật, nhà hàng chính là
một nhà triển lãm các tác phẩm. Vậy phải làm sao để khách hàng đến với mình
một cách thuận tiện nhất, dễ dàng để lại những ấn tượng tốt đẹp nhất, vấn đề
cốt lõi không thể thiếu đối với tất cả các loại hình kinh doanh hay tổ chức nào
là phải đưa ra một mô hình quản lý hợp lý và thống nhất. Các bộ phận làm
việc nhịp nhàng và chỉnh thể chính là tiền đề cho một bộ máy hoạt động hiệu
quả, chuyên nghiệp. Hệ thống quản lý nhà hàng này chúng tôi xây dựng thích
hợp với các nhà hàng cỡ vừa và trung với các chức năng đầy đủ và đơn giản
nhất. Trong quá trình xây dựng chắc chắn không thể thiếu những sơ suất, thiếu
sót. Rất mong nhận được sự hướng dẫn, góp ý của thầy cô và các bạn!
*
*
3
*
Phần I: Phân tích hệ thống
Chương I: Khảo sát
1.
Mô tả bài toán
Một nhà hàng kinh doanh ẩm thực, hình thức kinh doanh phục vụ tại bàn. Bộ phận
Tiếp Tân sẽ tiếp nhận thông tin KHÁCH HÀNG, kiểm tra là khách mới hay khách cũ
và phục vụ Thực Đơn, khách hàng lựa chọn món ăn không hạn chế số lần, số lượng.
Nhân viên sẽ lập phiếu Order (phiếu yêu cầu) dựa theo các yêu cầu của khách. Order
của khách sẽ được chuyển đến bộ phận Thu ngân.
Nhà bếp dựa vào Order của khách (nhận từ thu ngân) để định lượng ra các thực
phẩm cần thiết chế biến các món ăn cho khách hàng.
Sau khi khách hàng hết nhu cầu sử dụng dịch vụ, Hóa Đơn sẽ được ghi tại bộ phận
Thu Ngân, tất cả order của khách sẽ được cộng vào hóa đơn thanh toán. Phiếu Order
được coi như bản chi tiết của hóa đơn thanh toán. Một khách hàng có thể có nhiều hóa
đơn nhưng một hóa đơn chỉ đứng tên một khách hàng.
Nhà hàng sẽ có các bộ phận để quản lý: Bếp, kế toán, thu ngân, tiếp tân. Mỗi bộ phận
sẽ quản lý nhân viên của bộ phận mình.
Sau mỗi tuần, mỗi tháng và sau một năm bộ phận kế toán sẽ tổng hợp báo cáo tình
hình khách hàng, nhập thực phẩm, thực phẩm tồn trong kho,… cho ban lãnh đạo.
4
2.
Chứng tư
a.
Hóa đơn
Hóa Đơn
Số hóa đơn:
Tên khách hàng: ....
Ngày: ….
Địa chỉ: ....
Điện thoại: ….
Tên Đồ
STT
Số Lượng
Giá
Tổng:
Bằng số: …………
Bằng chữ: ……….
Khách hàng:
b.
Người lập:
Phiếu Order (Chi tiết hóa đơn)
ORDER
Số:
Số hóa đơn: ………….
Số bàn: …………………
STT
Tên món
Số lượng
Đơn vị tính
Người lập:
………………..
5
Ghi chú
c.
Thực Đơn
Thực Đơn nhà hàng
Mã món ăn
d.
Tên món
Loại món
Đ/v tính
Đơn giá
Danh sách nhân viên
Danh sách nhân viên
Tên bộ
phận
e.
Mã bộ
phận
Quản lý
Họ và
tên
Nhân viên
Ngày
Giới
Địa
sinh
tính
chỉ
SĐT
Danh sách khách hàng
Danh sách khách hàng
Mã KH
Họ và tên
Giới tính
*
Bộ phận
*
6
Năm sinh
*
Địa Chỉ
Điện Thoại
Chương II: Xác lập các mô hình nghiệp vụ
2.1
Lập ma trận phân tích
Bảng phân tích xác định các chức năng , tác nhân và hồ sơ
Động tư + Bổ ngữ
Danh tư
Hệ thống làm
Bên ngoài hệ thống
làm
Danh tư
Tiếp nhận thông tin
khách hàng
Khách hàng cung cấp Danh sách khách
thông tin
hàng
Lập hóa đơn
Tác nhân
ngoài/HSDL
Tác nhân ngoài
Hóa đơn
Hồ sơ dữ liệu
Thực đơn
Hồ sơ dữ liệu
Lập phiếu Order yêu
cầu xuất
Phiếu Order
Hồ sơ dữ liệu
Tiếp nhận order
Bộ phận bếp
Hồ sơ dữ liệu
Hóa đơn
Hồ sơ dữ liệu
Danh sách nhân viên
Hồ sơ dữ liệu
Báo cáo
Hồ sơ dữ liệu
Ban lãnh đạo
Tác nhân ngoài
Phục vụ thực đơn
Lập hóa đơn thanh toán
Khách lựa chọn món
Khách nhận hóa đơn
và thanh toán
Chia ra các bộ phận
quản lý
Tổng hợp báo cáo
Ban lãnh đạo yêu cầu
7
2.2
Sơ đồ ngữ cảnh của hệ thống
Các tác nhân ngoài trong mối quan hệ với hệ thống là khách hàng và ban lãnh
đạo. Khách hàng yêu cầu phục vụ tới nhà hàng về thực đơn, đáp ứng và thanh
toán.
Nhà hàng cần xây dựng được thông tin về khách hàng, lập hóa đơn, lập phiếu
order để phục vụ món ăn và in hóa đơn thanh toán khi khách hàng hết yêu cầu
sử dụng dịch vụ.
Lập các báo cáo định kỳ theo yêu cầu của ban lãnh đạo.
Thông tin khách hàng
Yêu cầu thông tin
Yêu cầu phục vụ
Yêu cầu thanh toán
Khách hàng
Thực đơn
Hê thông kinh doanh
Chỉ đạo
Báo cáo
Order, Hóa đơn
8
Ban lãnh đạo
2.3
Sơ đồ phân rã chức năng (tư tài liệu khảo sát)
2.3.1 lập bảng phân tích chức năng
Chức năng lá
1.1. Vào danh sách khách hàng
Chức năng mức đỉnh
Chức năng hệ thống
2. Bán hàng
1.2. Phục vụ thực đơn
1.3. Lập hóa đơn
1.4. Lập phiếu order
1.5. Phục vụ món
3.1 Tiếp nhận yêu cầu thanh toán
Quản lý bán hàng
3. Thanh toán
3.2 Kiểm tra hóa đơn
3.3 Thanh toán cho khách
4.1 Thống kê
4. Báo cáo
4.2 Lập báo cáo
2.3.2
Các chứng từ, hồ sơ được sử dụng
Các hồ sơ dữ liệu
A) Hóa đơn
B) Phiếu Order
C) Thực đơn
G) Danh sách nhân viên
H) Danh sách khách hàng
Các tác nhân
o Tác nhân bên ngoài hệ thống:
Khách hàng
Ban lãnh đạo
o Tác nhân bên trong hệ thống:
Bộ phận thu ngân
Bộ phận tiếp tân
Bộ phận bar, bếp
Quản lý bộ phận
9
2.3.3
Xác định phạm vi triển khai: Ma trận thực thể chức năng
Các thực thể
A. Hóa
đơn
B. Phiếu Order
C. Thực đơn
D. Danh sách nhân viên
E. Danh sách khách
Các chức năng
Bán hàng
Thanh toán
Báo cáo
A
U
C
R
B
U
R
C
R
R
R
D
R
E
C
C
R
Kết luận: phân tích ma trận cho thấy, tất cả các chức năng và hồ sơ đều cần
thiết cho việc phân tích và thiết kế tiếp tục sau này.
10
2.3.4 Sơ đồ mô tả các chức năng mức chi tiết
Quản lý nhà hàng
1.Bán hàng
1.1 Vào danh sách khách hàng
1.2 Lâp hóa đơn
1.3 Phục vụ thực đơn
1.4 Lâp phiêu order
2. Thanh toán
3. Báo cáo
2.1 Tiêp nhân Y/c thanh toán
3.1 Thống kê
2.2 Lâp và Kiêm tra hóa đơn
3.2 Báo cáo
2.3 Thanh toán cho khách
1.5 Phục vụ món
2.4 Mô tả các chức năng chi tiết (chức năng lá)
1.1. Vào danh sách khách hàng: Khách hàng khi vào nhà hàng sẽ được kiểm tra
thông tin nếu là khách cũ, yêu cầu thông tin cần thiết nếu là khách hàng mới.
1.2. Lập hóa đơn: Lập hóa đơn khi khách bắt đầu sử dụng dịch vụ.
1.3. Phục vụ thực đơn: Khách hàng lựa chọn món ăn trong thực đơn.
1.4. Lập phiếu order: Các món ăn khách đã lựa chọn được ghi vào phiếu order để
yêu cầu nhà bếp xuất món.
11
1.5. Phục vụ món: Món ăn sau khi chế biến được mang ra phục vụ khách.
2.1. Tiếp nhận yêu cầu thanh toán: Bộ phận thu ngân tiếp nhận yêu cầu thanh toán
của khách.
2.2. Lập và kiểm tra hóa đơn: Kiểm tra các thông tin trong hóa đơn và trao đổi với
khách xem có gì sai sót không. Hóa đơn thanh toán sẽ được lập để lưu vào máy và in
cho khách hàng.
2.3. Thanh toán cho khách: Khách hàng thanh toán theo số tiền hợp lệ trong hóa
đơn.
3.1. Thống kê: Bộ phận kế toán dựa vào các chứng từ để kiểm tra, hệ thống thông
tin theo những mốc thời gian nhất định.
3.2. Báo cáo: Báo cáo chi tiết bằng những truy vấn cụ thể và in cho lãnh đạo.
12
Chương III: Mô hình luồng dữ liệu
4.1
Mô hình luồng dữ liệu mức 0
Sơ đồ luồng dữ liệu mức 0 được xây dựng bằng cách:
1. Làm mịn sơ đồ ngữ cảnh khi thay tiến trình duy nhất bằng các
tiến trình con (chức năng mức 1 của sơ đồ ngữ cảnh).
2. Thêm các kho dữ liệu lấy từ danh sách hồ sơ dữ liệu sử dụng.
Xem thông tin
C | Thực đơn
Thông tin khách hàng
1.0 Bán hàng
Khách hàng
B | Phiêu Order
Thông tin trao đổi
Thực đơn
A | Hóa đơn-order
J | Danh sách khách hàng
Yêu cầu thanh toán
2.0 Thanh toán
Kiêm tra thông tin
Đáp ứng thanh toán
Lấy thông tin
Yêu cầu báo cáo
D| Danh sách nhân viên
3.0 Báo cáo
E | Danh sách khách hàng
Lãnh đạo Nhà hàng
Gửi báo cáo cáo
A | Hóa đơn
C | Thực đơn
Chú ý:
Khi nghiên cứu ta thấy: có nhiều thông tin trong phiếu Order và Hóa
đơn giống nhau, vì vậy có thể hợp nhất chúng lại bằng cách bổ sung
thông tin của order vào hóa đơn và bỏ phiếu order đi. Trong sơ đồ
không cần thêm “Phiếu order”
13
4.2
Mô hình luồng dữ liệu mức 1
4.2.1. Sơ đồ luồng dữ liệu mức 1 của tiến trình 1.0: “Bán hàng”
Tách từ sơ đồ luồng dữ liệu mức 0 ta có tiến trình riêng:
Xem thông tin
A | Hóa đơn-Order
Thông tin khách hàng
1.0 Bán hàng
Khách hàng
Kiêm tra khách
Thực đơn
E | Danh sách khách hàng
C | Thực đơn
2.0 Thanh toán
14
Kết hợp với sơ đồ phân cấp chức năng, nhật ký khảo sát ta có:
Thông tin khách hàng
Thực đơn
Khách hàng
2.1 Vào danh sách khách hàng
E | Danh sách khách hàng
Kiêmtra khách
C | Thực đơn
2.2 Phục vụ thực đơn
Thực đơn được chọn
2.3 Lâp hóa đơn
A | Hóa đơn-order
Order
2.4 lâp phiêu order
Đối chiêu
2.0 Thanh toán
2.5 Phục vụ món
15
4.2.3.
Sơ đồ luồng dữ liệu của tiến trình 2.0: “Thanh toán”
Tách từ sơ đồ luồng dữ liệu mức 0 ta có tiến trình riêng:
1.0 Bán hàng
Khách hàng
Yêu cầu thanh toán
2.0 Thanh toán
Kiêm tra thông tin
A | Hóa đơn-order
Đáp ứng thanh toán
3.0 Báo cáo
1.0 Bán hàng
Kết hợp với sơ đồ phân cấp chức năng, nhật ký khảo sát ta có:
Yêu cầu thanh toán
Vđ cần giải quyêt
2.1 Tiêp nhân Y/c thanh toán
2.2 Kiêm tra hóa đơn
Đáp ứng thanh toán
A | Hóa đơn
Hóa đơn
Hợp lê
2.3 Thanh toán cho khách
16
4.2.3.
Sơ đồ luồng dữ liệu của tiến trình 3.0: “Báo cáo”
Tách từ sơ đồ luồng dữ liệu mức 0 ta có tiến trình riêng:
Lấy thông tin
Yêu cầu báo cáo
D | Danh sách nhân viên
3.0 Báo cáo
E | Danh sách khách hàng
A | Hóa đơn-order
Lãnh đạo Nhà hàng
Gửi báo cáo cáo
C | Thực đơn
Kết hợp với sơ đồ phân cấp chức năng, nhật ký khảo sát ta có:
Lấy thông tin
Yêu cầu báo cáo
D | Danh sách Nhân viên
3.1 Thống kê
3.2 Báo cáo
E | Danh sách khách hàng
A | Hóa đơn-order
Lãnh đạo Nhà hàng
Gửi báo cáo cáo
C | Thực đơn
*
*
17
*
Phần II: Thiết kế hệ thống
Chương I: Xây dựng CSDL mức logic
1.
Chính xác hóa dữ liệu và xác định các thuộc tính
Chính xác hóa dữ liệu
Dữ liệu gốc
THỰC ĐƠN
Mã món ăn
Tên món
Đ/v tính
Đơn giá
DANH SÁCH KHÁCH
HÀNG
Mã khách hàng
Họ và tên
Giới tính
Năm sinh
Địa chỉ
SĐT
HÓA ĐƠN THANH TOÁN
Sô hóa đơn
Tên khách hàng
Ngày
Địa chỉ
Điện thoại
Nhân viên lập
Tên món
Số lượng
Đ/v tính
Thành tiền
DANH SÁCH NHÂN VIÊN
Mã bộ phận
Tên bộ phận
Họ và tên nhân viên
Ngày sinh nhân viên
Địa chỉ nhân viên
SĐT nhân viên
Dữ liệu chính xác hóa
THỰC ĐƠN
Mã món
Tên món
Đ/v tính
Đơn giá
DANH SÁCH KHÁCH
HÀNG
Mã KH
Họ tên KH
Giới tính
Năm sinh
Địa chỉ KH
SĐT KH
HÓA ĐƠN THANH TOÁN
Số HD
Mã KH
Ngày lập
Mã NV
Mã món
Số lượng
DANH SÁCH NHÂN VIÊN
Mã BP
Tên BP
Mã NV
Họ tên NV
Ngày sinh NV
Địa chỉ NV
SĐT NV
18
Chú giải
Xác định danh sách các tập thuộc tính
- R1={Mã món, Tên món, Loại món, Đ/v tính, Đơn giá }
- R2={ Số HD, Mã KH, Mã NV, Ngày lập, Mã món, Số lượng }
- R3 ={ Mã BP, Tên BP, Mã NV, Họ tên NV, Ngày sinh NV, Giới tính, Địa chỉ NV,
SĐT NV }
- R4={ Mã KH, Họ tên KH, Giới tính, Năm sinh, Địa chỉ KH, SĐT KH }(*)
Xác định khóa chính
R1={Mã món, Tên món, Đ/v tính, Đơn giá }
Mã món Tên món, Loại món, Đơn vị tính, Đơn giá
{Mã món} là khóa chính
R2={ Số HD, Mã KH, Ngày lập, Mã món, Số lượng }
Ta có:
Số hóa đơn Mã khách hàng, Địa chỉ , Ngày lập, Điện thoại, Mã món, Tên đồ, Số
lượng, Giá
Số hóa đơn,Mã món Số lượng
{Số hóa đơn, Mã món} là khóa chính
R3 ={ Mã BP, Tên BP, Mã NVQL, Mã NV, Họ tên NV, Ngày sinh NV, Giới tính, Địa
chỉ NV, SĐT NV }
Ta có:
Mã BP Tên BP, Mã NV, Họ tên NV, Ngày sinh NV, Giới tính, Địa chỉ NV, SĐT NV
{Mã BP} là khóa chính
R4={ Mã KH, Họ tên KH, Giới tính, Năm sinh, Địa chỉ KH, SĐT KH }
Ta có:
19
Mã KH Họ tên KH, Giới tính, Năm sinh, Địa chỉ KH, SĐT KH
{mã KH} là khóa chính
Ta có các lược đồ quan hệ sau :
R1={Mã món, Tên món, Đ/v tính, Đơn giá }
R2={ Số HD, Mã KH, Ngày lập, Mã món, Số lượng }
R3 ={ Mã BP, Tên BP, Mã NV, Họ tên NV, Ngày sinh NV, Giới tính, Địa chỉ NV,
SĐT NV }
R4={ Mã KH, Họ tên KH, Giới tính, Năm sinh, Địa chỉ KH, SĐT KH }
Chuẩn hóa
Chuẩn hóa về 1NF
Lược đồ R1, R3, R4 đều đạt chuẩn 1 vì không có thuộc tính lặp.
Tách lược đồ R2 vì tồn tại thuộc tính lặp :
R21{số hóa đơn, mã KH, ngày lập}
R22{số hóa đơn, mã món, số lượng}
Chuẩn hóa về 2NF
Các lược đồ R1, R3, R4 đã đạt chuẩn 2 vì chỉ có 1 thuộc tính khóa
Lược đồ R21 và R22 cũng đạt chuẩn 2 vì không có thuộc tính ngoài khóa phụ thuộc
vào 1 phần của khóa.
Chuẩn hóa về 3NF
Xét R3 ={ Mã BP, Tên BP, Mã NV, Họ tên NV, Ngày sinh NV, Giới tính, Địa chỉ
NV, SĐT NV }
Ta thấy Mã BP Tên BP
Mã NV Họ tên NV, Ngày sinh NV, Giới tính, Địa chỉ NV, SĐT NV
Mà Mã NV là thuộc tính ngoài khóa nên là thuộc tính cầu vậy ta tách thành 2 quan
hệ để đạt chuẩn 3:
R31 { Mã NV, Họ tên NV, Ngày sinh NV, Giới tính, Địa chỉ NV, SĐT NV }
- Các thuộc tính còn lại và thuộc tính cầu
R32 { Mã BP, Mã NV, Tên BP }
20
Kết luận : ta có mô hình quan hệ sau đã chuẩn hóa đến 3NF :
1. THUC_DON (Mã món, Tên món, Đ/v tính, Đơn giá)
2. KHACH_HANG (Mã KH, Họ tên KH, Giới tính, Năm sinh, Địa chỉ KH, SĐT
KH)
3. HOA_DON (số hóa đơn, mã KH, Mã NV lập, ngày lập)
4. CT_HOADON (số hóa đơn, mã món, số lượng)
5. NHAN_VIEN (Mã NV, Họ tên NV, Ngày sinh NV, Giới tính, Địa chỉ NV,
SĐT NV)
6. BO_PHAN (Mã BP, Tên BP)
21
2.
Sơ đồ E-R
Mã BP
BO_PHAN
Mã NV
Tên BP
Họ tên
Ngày sinh
Địa chỉ
NHAN_VIEN
Giới tính
Mã KH
Giới tính
Ngày lâp
Số hóa đơn
Họ tên
Mã KH
KHACH_HANG
Địa chỉ
HOADON
Mã NV lâp
SĐT
Năm sinh
Đ/v tính
Số lượng
CT_HOADON
THUC_DON
Số hóa đơn
Đơn giá
Tên món
Mã món
Mã món
22
Chương II : Thiết kế giao diện
2.1 Xác định luồng dữ liệu hệ thống
Phân định công việc người-máy
2.1.1 Sơ đồ tiến trình hệ thống của « 1.0 Tiếp nhận đơn hàng»
Thông tin khách hàng
Thực đơn
Khách hàng
1.1 Vào danh sách khách hàng
Kiêm tra khách
C | Thực đơn
E | Danh sách khách hàng
1.2 Phục vụ thực đơn
Thực đơn được chọn
1.3 Lâp hóa đơn
A | Hóa đơn
1.4 Lâp phiêu order
1.5 Phục vụ món
Tiến trình (1.1), (1.3) và (1.4) được chọn để máy thực hiện
23
2.1.2 Sơ đồ tiến trình hệ thống của « 2.0 Thanh toán »
2.1 Tiêp nhân Y/c thanh toán
Vđ cần giải quyêt
2.2 Kiêm tra hóa đơn
Hợp lê
Hóa đơn
A | Hóa đơn
2.3 Thanh toán cho khách
2.1.3 Sơ đồ tiến trình hệ thống của « 3.0 Báo cáo »
Lấy thông tin
Yêu cầu báo cáo
D | Danh sách Nhân viên
3.1 Thống kê
E | Danh sách khách hàng
A | Hóa đơn-order
3.2 Báo cáo
Lãnh đạo Nhà hàng
Gửi báo cáo cáo
C | Thực đơn
24
2.2 Xác định và đặc tả các giao diện
2.2.1 Xác định các giao diện cập nhật dữ liệu
Xác định các giao diện dựa cập nhật dữ kiệu dựa trên mô hình E-R
Về nguyên tắc, tương ứng với mỗi thực thể và mỗi mối quan hệ có ít nhất một thuộc
tính trên mô hình E- ta có một giao diện cập nhật dữ liệu. Từ mô hình khái niệm dữ
liệu ta có các giao diện sau :
1. Giao diện cập nhật Khách hàng (tương ứng với thực thể KHACH_HANG)
2. Giao diện cập nhật Hóa đơn (tương ứng với thực thể HOA_DON)
3. Giao diện cập nhật Thực đơn (tương ứng với thực thể THUC_DON)
4. Giao diện cập nhật Nhân viên (tương ứng với thực thể NHAN_VIEN)
5. Giao diện cập nhật Bộ phận (tương ứng với thực thể BO_PHAN)
6. Giao diện cập nhật Order (tương ứng với thực thể CT_HOADON)
2.2.2 Xác định các giao diện xử lý dữ liệu
7. Giao diện kiểm tra khách hàng
8. Giao diện Nhập hóa đơn
9. Giao diện lập Order
10. Giao diện kiểm tra hóa đơn thanh toán
25