LỜI MỞ ĐẦU ......................................................................................................................4 Phần I : Xác định yêu cầu bài toán ...................................................................................5 1.Giới thiệu chung .....................................................................................................5 1.1. Sơ đồ tổ chức bộ phận quản lý nhà hàng ..........................................................5 1.2. Mô tả bài toán......................................................................................................5 1.3. Xác định và phân tích các giá trị nghiệp vụ......................................................6 1.4. Xác định yêu cầu của hệ thống...........................................................................6 Chƣơng 2 : Phân tích hệ thống..........................................................................................7 1.Xây dựng biểu đồ use case.....................................................................................7 1.1 Xác định các tác nhân hệ thống .........................................................................7 1.2 Xác định các ca sử dụng .....................................................................................7 1.3. Các biểu đồ use case............................................................................................8 1.4. Đặc tả các ca sử dụng hệ thống ........................................................................11 2. Tìm lớp lĩnh vực ...................................................................................................13 2.1. Xác định các lớp dựa vào các khái niệm của lĩnh vực ứng dụng:.................13 2.2 Gán trách nhiệm cho các lớp vừa tìm đƣợc....................................................15 2.3. Sơ đồ lớp lĩnh vực của bài toán:......................................................................16 2.4. Xác định các lớp tham gia vào các ca sử dụng ...............................................16 Chƣơng 3 Thiết kế hệ thống ............................................................................................21 1.Xây dựng biểu đồ lớp chi tiết: ..............................................................................21 2.Thiết kế CSDL .......................................................................................................21 3.Thiết kế giao diện. .................................................................................................23 Kết luận .............................................................................................................................28
Trang 1TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI
KHOA CÔNG NGHỆ THÔNG TIN
Trang 2TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI
KHOA CÔNG NGHỆ THÔNG TIN
BÀI TẬP LỚN MÔN HỌC: Phân tích thiết kế hệ thống ĐỀ TÀI: Phần Mềm Quản Lý Nhà Hàng
Giáo viên hướng dẫn: TS.Đỗ Mạnh Hùng
Trang 3LỜI MỞ ĐẦU 4
Phần I : Xác định yêu cầu bài toán 5
1.Giới thiệu chung 5
1.1 Sơ đồ tổ chức bộ phận quản lý nhà hàng 5
1.2 Mô tả bài toán 5
1.3 Xác định và phân tích các giá trị nghiệp vụ 6
1.4 Xác định yêu cầu của hệ thống 6
Chương 2 : Phân tích hệ thống 7
1.Xây dựng biểu đồ use case 7
1.1 Xác định các tác nhân hệ thống 7
1.2 Xác định các ca sử dụng 7
1.3 Các biểu đồ use case 8
1.4 Đặc tả các ca sử dụng hệ thống 11
2 Tìm lớp lĩnh vực 13
2.1 Xác định các lớp dựa vào các khái niệm của lĩnh vực ứng dụng: 13
2.2 Gán trách nhiệm cho các lớp vừa tìm được 15
2.3 Sơ đồ lớp lĩnh vực của bài toán: 16
2.4 Xác định các lớp tham gia vào các ca sử dụng 16
Chương 3 Thiết kế hệ thống 21
1.Xây dựng biểu đồ lớp chi tiết: 21
2.Thiết kế CSDL 21
3.Thiết kế giao diện 23
Kết luận 28
Trang 4LỜI MỞ ĐẦU
Trong thời đại ngày nay, Công nghệ thông tin đang được phát triển mạnh mẽ, nhanh chóng
và xâm nhập vào nhiều lĩnh vực khoa học, kỹ thuật cũng như trong cuộc sống Nó trở thành công cụ đắc lực trong nhiều ngành nghề như giao thông, quân sự, y học và đặc biệt trong công tác quản lý nói chung và Quản Lý Nhà Hàng nói riêng
Trước đây khi máy tính chưa được ứng dụng rộng rãi, các công việc Quản Lý Nhà Hàng đều được làm thủ công nên rất mất thời gian và tốn kém về nhân lực cũng như tài chính Ngày nay, với
sự phát triển công nghệ thông tin mà máy tính đã được sử dụng rộng rãi trong các cơ quan, nhà máy, trường học giúp cho công việc được tốt hơn Việc sử dụng máy tính vào công tác Quản Lý Nhà Hàng là một yêu cầu cần thiết nhằm xóa bỏ những phương pháp lạc hậu, lỗi thời gây tốn kém về nhiều mặt
Quá trình tìm hiểu công tác quản lý nhà hàng của một số nhà hàng khu vực Số 110 Cầu Giấy– Q uan Hoa – Hà Nội (Nhà hàng Lào Cầu Giấy), chúng em đã xây dựng đề tài “Quản Lý Nhà Hàng” với mong muốn giúp cho việc quản lý được dễ dàng, thuận tiện và tránh sai sót
Do thời gian có hạn và sự hiểu biết về ngôn ngữ lập trình còn hạn chế nên chắc chắn bài làm không tránh khỏi những thiếu xót, rất mong được sự giúp đỡ và góp ý kiến của các thầy cô Chúng
em chân thành cảm ơn!
Trang 5Phần I : Xác định yêu cầu bài toán
1 Giới thiệu chung
- khách hàng đặt bàn có thể liên hệ trực tiếp tại quầy lễ tân hoặc có thể gọi điện đặt bàn
- Khi đặt bàn khách hàng phải trả tiền đặt cọc trước, nhân viên lễ tân tiếp nhận thông tin
cá nhân, yêu cầu khách hàng(vị trí bàn, đồ ăn, ngày ăn) và lưu thông tin vào hệ thống
Chủ Nhà hàng
Trang 6b Thanh toán
- khách hàng yêu cầu thanh toán với nhân viên và nhân viên báo cáo lại với lễ tân Nhân viên in hóa đơn và cập nhật vào hệ thống
1.3 Xác định và phân tích các giá trị nghiệp vụ
a Mang lại giá trị nghiệp vụ
- Tăng khả năng xử lý: thông tin được xử lý một cách tự động, có thể xử lý đồng thời và cho kết quả nhanh chóng, chính xác Thu thập được thông tin về các khách hàng một cách tự động, không phải mất công nhập lại thông tin
- Đáp ứng yêu cầu nghiệp vụ một cách tin cậy, chính xác, an toàn, bí mật
b Mang lại giá trị sử dụng
- Khách hàng có thể nhanh chóng tìm ra các thông tin về đồ ăn, giá tiền, địa điểm, mà mình muốn đặt
- Chủ nhà hàng có thể dựa vào hệ thống để kiểm tra doanh thu của nhà hàng, quản lý hàng hóa của nhà hàng
- rút ngắn thời gian Thay vì phải đến trực tiếp thì khách hàng có thể sử dụng hệ thống
để tìm hiểu thông tin cần thiết hoặc quản lý có thể kiểm soát được thông tin về nhân viên của mình
c Mang lại giá trị kinh tế
- Giảm chi phí hoạt động: nhờ có hệ thống quản lý nhà hàng, thông tin được xử lý tự động, không phải mất nhiều giấy tờ nên số lượng người tham gia hoạt động thanh toán giảm, từ đó giảm chi phí hoạt động
- khách hàng có thể tiết kiệm thời gian và công sức khi sử dụng hệ thống quản lý nhà hàng
1.4 Xác định yêu cầu của hệ thống
- Hệ thống phải cung cấp cho Khách hàng một danh sách các món ăn cùng với các thông tin liên quan(tên món , giá món ăn ,)
- Khi khách hàng có nhu cầu đăng ký thì hệ thống phải cung cấp cho họ mẫu Form để
họ điền những thông tin cần thiết giúp họ đăng ký dễ dàng
- Sau khi đăng ký xong hệ thống xác nhận thông tin và xử lý thông tin phản hồ tới khách hàng về việc đăng ký thành công hay không Thông tin phản hồi nhanh chóng chính xác
Trang 7- Hệ thống hỗ trợ việc hiển thị lịch đăng ký của khách hàng Hệ thống sẽ tạo ra cho mỗi Khách hàng một tài khoản đăng nhập
- Qua đó hệ thống hiển thị thông tin khách hàng Khi đặt bàn và món ăn, danh sách các bàn
đã được đặt sẽ được gửi cho lễ tân để tính tiền của khách hàng
+ Tác nhân nhà quản lý : sử dụng hệ thống để quản lý thông tin khách hàng , quản lý thông
tin món ăn , quản lý thông tin nhân viên
1.2 Xác định các ca sử dụng
Dựa trên văn bản mô tả bài toán và việc phân tích để tìm ra các tác nhân, ta xác định được các ca sử dụng như sau:
Đăng nhập hệ thống
Quản lý , lưu trữ thông tin khách hàng đặt bàn
Tra cứu thông tin món , bàn ăn
Quản lý thông tin nhân viên
Cập nhật thông tin món ăn
Thanh toán hóa đơn
Quản lý các tiêu chuẩn cho nhân viên: lương, khen thưởng
Trang 81.3 Các biểu đồ use case
Hình 1 : Biểu đồ use case chính
Trang 9Hình 2 : Chức năng quản lý thông tin món
Hình 3 : Chức năng quản lý thông tin khách hàng
Trang 10Hình 4: Chức năng quản lý thông tin nhân viên
Hình 5: Chức năng quản lý thông tin đặt bàn
Trang 11Hình 6: Chức năng quản lý thông tin thanh toán
1.4 Đặc tả các ca sử dụng hệ thống
1.4.1 Ca sử dụng Đăng nhập hệ thống
a Mô tả tóm tắt
Tên ca sử dụng: Đăng nhập hệ thống
Mục đích: Mô tả cách một người sử dụng đăng nhập vào hệ thống
Tác nhân: Khách hàng , nhân viên , nhà quản lý
b Các luồng sự kiện
Luồng sự kiện chính
Ca sử dụng này bắt đầu khi tác nhân muốn đăng nhập vào hệ thống
Hệ thống yêu cầu tác nhân nhập tài khoản và mật khẩu đăng nhập
Tác nhân nhập tên đăng nhập và mật khẩu đăng nhập của mình
Hệ thống xác nhận tài khoản và mật khẩu đăng nhập có hợp lệ không, nếu không hợp lệ thì
thực hiện luồng A1
Hệ thống ghi lại quá trình đăng nhập
Các luồng rẽ nhánh
Luồng A1: Nhập sai tài khoản/mật khẩu đăng nhập
Hệ thống hiển thị một thông báo lỗi
- Người sử dụng có thể chọn hoặc là đăng nhập lại hoặc là huỷ bỏ đăng nhập, khi
Trang 12đó ca sử dụng kết thúc
c Tiền điều kiện: Không
d Hậu điều kiện: Nếu việc đăng nhập thành công, người sử dụng sẽ đăng nhập được
+ Giúp cho Khách hàng có thể đặt món ăn và bàn ăn mà mình muốn
+ Khách hàng chọn các bàn , món ăn có thể đặt hoặc có thể huỷ bỏ, thay đổi các món
Hệ thống yêu cầu Khách hàng chọn bàn ăn, món ăn
Hệ thống hiển thị các lựa chọn: Thêm, Xoá, Xem, Thoát
Hệ thống yêu cầu khách lựa chọn chức năng mà họ muốn thực hiện
- Nếu Khách hàng lựa chọn “Thêm một món” thì luồng sự kiện con Thêm
sẽ được thực hiện
- Nếu Khách hàng lựa chọn “Xoá một món đã đặt ” thì luồng
sự kiện con Xoá sẽ được thực hiện
- Nếu Khách hàng chọn “Xem món ăn” thì luồng sự kiện con Xem sẽ được thực hiện
- Nếu hết hạn đăng kí, thực hiện luồng A2
- Khách hàng chọn một bàn Nếu việc lựa chọn của Khách hàng không thoả mãn điều
kiện tiên quyết hoặc là Khách hàng đó đã đủ số lượng Khách hàng đặt thì thực hiện luồng
A1
- Khách hàng chọn một bàn ăn xác nhận Nếu Sinh viên chọn Huỷ (không đăng kí nữa),
ca sử dụng bắt đầu lại
Các luồng rẽ nhánh
Luồng A1: Bàn ăn mà Khách hàng đặt không thoả mãn các điều kiện tiên
quyết, hoặc là bàn ăn đó đã đủ số lượng Khách hàng đặt
- Hệ thống hiển thị thông báo lỗi
- Khách hàng có thể lựa chọn bàn khác và đặt lại hoặc là thoát khỏi ca sử dụng này
Luồng A2: Hết hạn đặt
- Hệ thống hiển thị thông báo lỗi
- Ca sử dụng kết thúc
Trang 13 Luồng A3: Phiếu đặt không in được
- Hệ thống hiển thị thông báo cho người dùng
- Ca sử dụng bắt đầu lại
d Tiền điều kiện
- Khách hàng phải đăng nhập thành công vào hệ thống
e Hậu điều kiện
- Nếu ca sử dụng được thực hiện thành công thì danh sách các món mà Khách hàng đặt
sẽ được in ra Khách hàng có thể thay đổi hoặc xóa những món đã đặt trong trường hợp khác
hệ thống ở trong trạng thái thay đổi
1.4.3 Ca sử dụng quản lý nhân viên
- Tên ca sử dụng : Quản lý nhân viên
- Tác nhân : Nhân viên , nhàn quản lý
- Mô tả : Chức năng liên quan đến quá trình quản lý thông tin nhân viên , tăng lương giảm lương
- Điều kiện bắt đầu : nhà quản lý đăng nhập vào hệ thống
- Điều kiện kết thúc :thông tin nhân viên được cập nhật và lưu trữ vào hệ thống
1.4.4 Ca sử dụng quản lý thông tin khách hàng
- Tên ca sử dụng : Quản lý khách hàng
- Tác nhân :Nhân viên , nhàn quản lý , khách hàng
- Mô tả : Chức năng liên quan đến quá trình quản lý thông tin khách hàng đặt bàn , đặt món ăn
- Điều kiện bắt đầu : Nhà quản lý, nhân viên đăng nhập vào hệ thống
- Điều kiện kết thúc :thông tin Khách hàng được cập nhật và lưu trữ vào hệ thống
2 Tìm lớp lĩnh vực
2.1 Xác định các lớp dựa vào các khái niệm của lĩnh vực ứng dụng
- Dựa vào các khái niệm của lĩnh vực ứng dụng và dựa văn bản mô tả bài toán, ta xác định được các lớp thực thể như sau:
- Lớp Khách hàng (KhachHang) gồm có các thông tin:
Mã khách hàng (MaKH)
Họ tên khách hàng (TenKH)
Số điện thoại (ĐTKH)
Địa chỉ (DiachiKH)
Trang 14- Lớp Nhân viên (NhanVien) gồm có các thông tin sau:
Mã nhân viên (MaNV)
Họ tên nhân viên (TenNV)
- Lớp Hoá đơn (HoaDon) gồm có các thông tin sau:
Số hóa đơn (SoHD)
- Lớp Thanh toán(Thanhtoan) gồm các thông tin sau:
Số hóa đơn (Sohoadon)
Tên ban (Ten ban)
- Lớp Người dùng (Nguoidung) gồm các thông tin sau: Tên người dùng (TenND)
Trang 15- Lớp Ngày giờ (Ngaygio) gồm các thông tin sau:
Giờ vào (Giovao)
Giờ ra (Giora)
Ngày đặt (Ngaydat)
2.2 Gán trách nhiệm cho các lớp vừa tìm đƣợc
Lớp Khách hàng (KhachHang)
- Chứa thông tin tài khoản đăng nhập của người sử dụng
- Khách hàng là người đặt các món ăn trước khi ăn
- Tra cứu thông tin món ăn để đặt món trước khi đến ăn
- Cung cấp thông tin cho nhân viên để quản lý thông tin khách hàng
Lớp Nhân viên (NhanVien)
- Cung cấp các thông tin cần thiết để đặt các món và thanh toán
- Cung cấp thông tin cho nhà quản lý để quản lý thông tin nhân viên
Lớp Món ăn(MonAn)
- Chứa thông tin về các món ăn
Lớp Hóa đơn(HoaDon)
- Chứa thông tin về ngày lập , số hóa đơn, nhân viên , món ăn , bàn ăn
- Cung cấp thông tin cho nhà quản lý để quản lý thông tin hóa đơn
Lớp Thanh toán(Thanhtoan)
- Chứa thông tin số hóa đơn,thông tin món ăn và số lượng món ăn
- Cung cấp thông tin để khách hàng thanh toán
Lớp Bàn ăn(Banan)
Chứa thông tin bàn ăn
Lớp Đặt hàng (Dathang)
- Chứa thông tin số phiếu đặt , ngày đặt , thông tin khách hàng và nhân viên
Lớp Ngày giờ (Ngaygio)
- Chứa thông tin giờ vào , giờ ra , ngày đặt
Trang 162.3 Sơ đồ lớp lĩnh vực của bài toán:
2.4 Xác định các lớp tham gia vào các ca sử dụng
- Dựa vào văn bản mô tả bài toán và dựa vào văn bản đặc tả các ca sử dụng, ta
- xác định các lớp tham gia vào các ca sử dụng như sau:
Trang 17Ca sử dụng Đăng nhập hệ thống
Ca sử dụng Đặt món ăn
Các lớp biên gồm:
Lớp W_DangNhap: Là giao diện chính giao tiếp với tác nhân Khách hàng và hệ thống
Lớp W_Dat mon: Là giao diện phụ tương ứng với việc đặt
Trang 18 Lớp điều khiển: Quan ly thong tin khach hang
Lớp thực thể: Khach hang
Ca sử dụng quản lý thông tin món ăn
Thêm món ăn
Các lớp biên gồm:
Lớp W_DangNhap: Là giao diện chính giao tiếp với tác nhân nhà quản lý và hệ thống
Lớp W_themMon: Là giao diện phụ tương ứng với việc
Lớp W_DangNhap: Là giao diện chính giao tiếp với tác nhân nhà quản lý và hệ thống
Lớp W_SuaMon: Là giao diện phụ tương ứng với việc
sửa món
Lớp điều khiển: QL mon
Trang 19 Lớp thực thể: món
Ca sử dụng quản lý thông tin Nhân viên
Thêm nhân viên
Các lớp biên gồm:
Lớp W_DangNhap: Là giao diện chính giao tiếp với tác nhân nhà quản lý và hệ thống
Lớp W_them nhan vien: Là giao diện phụ tương ứng với việc
thêm nhân viên
Lớp điều khiển: Quan ly nhan vien
Lớp thực thể: Nhân viên
Sửa nhân viên
Các lớp biên gồm:
Lớp W_DangNhap: Là giao diện chính giao tiếp với tác nhân nhà quản lý và hệ thống
Lớp W_sua nhan vien : Là giao diện phụ tương ứng với việc
sửa nhân viên
Lớp điều khiển: QL nhan vien
Lớp thực thể: Nhân viên
Trang 20Xóa nhân viên
Các lớp biên gồm:
Lớp W_DangNhap: Là giao diện chính giao tiếp với tác nhân nhà quản lý và hệ thống
Lớp W_xoa nhan vien : Là giao diện phụ tương ứng với việc
xóa nhân viên
Lớp điều khiển: QL nhan vien
Lớp thực thể: Nhân viên
Trang 21- Liên kết 1- 1: Đưa khoá chính của 1 bảng vào bảng kia để nó trở thành khoá ngoài
- Liên kết 1 – n: Đưa khoá chính của bảng bên 1 vào bảng bên nhiều để nó trở thành khoá ngoài
- Liên kết n – n: Tạo ra một bảng kết nối, khoá chính của bảng kết nối là khoá bội hợp từ 2 khoá chính của 2 bảng
- Với quan hệ kết nhập được mô hình hoá như một liên kết bình thường
- Lớp Khach hang ta có bảng sau:
Trang 22Bảng Khachhang
nVarchar(10) nVarchar(35) nVarchar(100) nVarchar(12)
Bảng HoaDon (Vì có liên kết 1-n nên thêm maKH)
nVarchar(10) Date nVarchar(10) nVarchar(10) time time
- Lớp Mon an
Trang 23Bảng MonAn
nVarchar(10) nVarchar(35) nVarchar(20) float
- Tách liên kết n-n
Ta có 1 bảng mới giữa Mon An và Hoadon là Mon da an
3 Thiết kế giao diện
- 1 lớp lĩnh vực 1 giao diện nhập dữ liệu
- Thêm các giao diện xử lý: thống kê, tìm kiếm
3.1.1 Các biểu mẫu điền dùng cho nhập dữ liệu
3.1.2 Biểu mẫu nhập thông tin khách hàng
- Tên biểu mẫu: Thông tin khách hàng
- Người thực hiện: Nhân viên , người quản trị hệ thống
- Thời gian thực hiện: Khi có một khách hàng đặt bàn ăn
- CSDL liên quan: bảng khach/qlkh.mdb
- Mẫu thiết kế:
Trang 243.1.3 Biểu mẫu nhập thông tin Hóa đơn
- Tên biểu mẫu: Thông tin hóa đơn
- Người thực hiện: Nhân viên , người quản trị hệ thống
- Thời gian thực hiện: Khi có khách hàng thanh toán
- CSDL liên quan: bảng hd/qlhd.mdb, monan/qlmn.mdb, khach/qlk.mdb, Nhanvien/qlnv.mdb
- Mẫu thiết kế:
Trang 253.1.3 Biểu mẫu tìm kiếm khách hàng
- Tên biểu mẫu: Tìm kiếm khách hàng
- Người thực hiện: Nhân viên bán hàng, người quản trị hệ thống
- Thời gian thực hiện: Khi người quản lý muốn xem thông tin khách hoặc nhân viên có nhu cầu
- CSDL liên quan: khach/qlk.mdb
- Mẫu thiết kế:
3.1.4 Thiết kế tài liệu xuất
- Hóa đơn
Trang 27Nhà hàng Lào Cầu Giấy
Số 110, Cầu Giấy,Quan hoa, Hà Nội
HÓA ĐƠN
Số HD:… … ……
Ngày lập:…… ……
Mã khách hàng:………
Họ tên:………
Điện thoại liên hệ:………
Địa chỉ:………
Địa chỉ khách hàng:………
Mã Món Tên Món Mô tả Số lượng Đơn giá Thành tiền 01 LAP 2 đĩa 30000 30000 02 Cá Hấp Chanh 2 cái 5000 25000 03 Nộm Đu đủ 2đĩa 40000 80000 04 Thịt ba chi Rang Cháy Cạnh 2 đĩa 40000 80000 05 Bia Lào To 640ml 12 chai 30000 420000 … … … …
Tổng số tiền cần thanh toán: ………Đã thanh toán: ………
Ghi chú………
Khách hàng Người lập hoá đơn (kí tên) (kí tên)