You are on page 1of 231

1

TÓM TẮT
Chúng ta đang sống trong xã hội mà sự kết nối cũng như hiệu quả và tốc độ
xử lý thông tin được đặt lên hàng đầu, đặc biệt là đối với lĩnh vực dịch vụ. Do đó,
việc áp dụng Công Nghệ Thông Tin vào lĩnh vực dịch vụ như nhà hàng là hết sức
cần thiết và không còn xa lạ. Vì vậy, bài toán đặt ra làm sao để xây dựng một hệ
thống giúp quản lý nhà hàng trở nên hiệu quả, tiện lợi, gia tăng hiệu suất làm việc
và giảm thời gian xử lý các thông tin ngày càng lớn; đồng thời phải đáp ứng nhanh
chóng và kịp thời trong quá trình vận hành cũng như công tác quản lý.
Đi từ những vấn đề được nêu trên và nhận thấy tầm quan trọng của công tác
quản lý nhà hàng, nhóm chúng em sẽ thực hiện đồ án với đề tài: “Hệ Thống Quản
Lý Nhà Hàng”.
Nhóm chúng em mong muốn phát triển một hệ thống quản lý nhà hàng giúp
cải thiện hiệu suất và tăng hiệu quả làm việc, thay thế cho cách quản lý nhà hàng
truyền thống trên giấy tờ. Do thời gian và kiến thức có hạn, nhóm chúng em chỉ tập
trung phân tích và phát triển một số chức năng cơ bản của hệ thống bằng việc sử
dụng các ngôn ngữ lập trình như: HTML, CSS, Javascript, C# và hệ cơ sở dữ liệu
SQL Server trên nền tảng .NET cụ thể là Hệ thống website cho khách hàng sẽ sử
dụng Framework ASP.NET Core MVC và sẽ gọi đến API được xây dựng bằng
ASP.NET API có sử dụng Entity Framework để tương tác với cơ sở dữ liệu và phần
mềm WindowForm cho phía nhà hàng để quản lý các nghiệp vụ tại nhà hàng sử
dụng ADO.NET để kết nối và tương tác với cơ sở dữ liệu.
2

MỤC LỤC
LỜI CẢM ƠN.............................................................................................................1
ĐỒ ÁN ĐƯỢC HOÀN THÀNH TẠI TRƯỜNG ĐẠI HỌC TÔN ĐỨC THẮNG...2
PHẦN XÁC NHẬN VÀ ĐÁNH GIÁ CỦA GIẢNG VIÊN......................................3
TÓM TẮT...................................................................................................................4
MỤC LỤC..................................................................................................................5
DANH MỤC KÍ HIỆU VÀ CHỮ VIẾT TẮT..........................................................11
DANH MỤC CÁC BẢNG BIỂU, HÌNH VẼ, ĐỒ THỊ...........................................12
CHƯƠNG 1 – KHẢO SÁT......................................................................................21
1.1 Giới thiệu:................................................................................................21
1.2 Khảo sát:..................................................................................................21
1.3 Tổng quan hệ thống:................................................................................27
1.3.1 Các quy trình nghiệp vụ:............................................................27
1.3.1.1 Quy trình phục vụ khách trực tiếp tại nhà hàng:..........27
1.3.1.2 Quy trình đặt bàn trực tuyến của nhà hàng:.................27
1.3.1.3 Quy trình đặt món trên nền tảng đặt món trực tuyến của
nhà hàng:..................................................................................28
1.3.1.4 Quy trình kiểm tra và nhập nguyên vật liệu:...............28
1.3.2 Đặc tả hệ thống :........................................................................29
CHƯƠNG 2 – PHÂN TÍCH YÊU CẦU..................................................................31
2.1. Đặc tả yêu cầu.........................................................................................31
2.2. Các tác nhân trong hệ thống...................................................................32
2.3. Các Use Case trong hệ thống..................................................................33
CHƯƠNG 3 – THIẾT KẾ YÊU CẦU......................................................................40
3.1. Sơ đồ Use Case:......................................................................................40
3.2. Đặc tả Use Case:.....................................................................................40
3.3 Sơ đồ hoạt động ( Activity Diagram ):....................................................92
3.3.1 Usecase Đăng nhập....................................................................92
3.3.2 Usecase Đăng xuất.....................................................................92
3

3.3.3 Usecase Đổi mật khẩu................................................................93


3.3.4 Usecase Xem giỏ hàng...............................................................94
3.3.5 Usecase Đặt bàn.........................................................................94
3.3.6 Usecase Xem thực đơn..............................................................95
3.3.7 Usecase Đặt món trực tuyến......................................................95
3.3.8 Usecase Thanh toán...................................................................96
3.3.9 Usecase Thanh toán qua thẻ ngân hàng.....................................97
3.3.10 Usecase Thanh toán qua ví điện tử..........................................98
3.3.11 Usecase Xem danh sách bàn ăn...............................................98
3.3.12 Usecase Tạo phiếu gọi món.....................................................99
3.3.13 Usecase Xóa món ăn..............................................................100
3.3.14 Usecase Chọn món ăn............................................................101
3.3.15 Usecase Thêm ghi chú...........................................................102
3.3.16 Usecase In phiếu gọi món......................................................104
3.3.17 Usecase Xem danh sách hội viên...........................................104
3.3.18 Usecase Thêm hội viên..........................................................105
3.3.19 Usecase Chỉnh sửa thông tin hội viên....................................106
3.3.20 Usecase Thêm chiết khấu......................................................108
3.3.21 Usecase Xem lịch đặt bàn......................................................108
3.3.22 Usecase Xem thông tin nhà cung cấp....................................109
3.3.23 Usecase Thêm nhà cùng cấp..................................................110
3.3.24 Usecase Chỉnh sửa thông tin nhà cùng cấp............................111
3.3.25 Usecase Xóa nhà cùng cấp.....................................................113
3.3.26 Usecase Xem thông tin nguyên vật liệu.................................113
3.3.27 Usecase Thêm nguyên vật liệu..............................................114
3.3.28 Usecase Chỉnh sửa thông tin nguyên vật liệu........................114
3.3.29 Usecase Xóa nguyên vật liệu.................................................115
3.3.30 Usecase Xem thông tin phiếu nhập nguyên vật liệu..............116
3.3.31 Usecase Tạo phiếu nhập nguyên vật liệu...............................116
4

3.3.32 Usecase Chỉnh sửa thông tin phiếu nhập nguyên vật liệu.....117
3.3.33 Usecase Xóa phiếu nhập nguyên vật liệu..............................118
3.3.34 Usecase Xem thông tin hóa đơn............................................119
3.3.35 Usecase Tạo hóa đơn.............................................................120
3.3.36 Usecase Chỉnh sửa thông tin hóa đơn....................................121
3.3.37 Usecase Xóa hóa đơn.............................................................122
3.3.38 Usecase In hóa đơn................................................................123
3.3.39 Usecase Thống kê doanh thu.................................................123
3.3.40 Usecase Thống kê doanh thu theo tháng...............................124
3.3.41 Usecase Thống kê doanh thu theo năm.................................124
3.3.42 Usecase Xem thông tin món ăn.............................................125
3.3.43 Usecase Thêm món ăn...........................................................125
3.3.44 Usecase Chỉnh sửa thông tin món ăn.....................................126
3.3.45 Usecase Xóa thông tin món ăn..............................................127
3.3.46 Usecase Xem thông tin nhân viên..........................................128
3.3.47 Usecase Thêm nhân viên.......................................................129
3.3.48 Usecase Chỉnh sửa thông tin nhân viên.................................130
3.3.49 Usecase Xóa nhân viên..........................................................131
3.3.50 Usecase Tra cứu chiết khấu...................................................132
3.3.51 Usecase Đổi mật khẩu hội viên..............................................133
3.4 Sơ đồ tuần tự ( Sequence Diagram )......................................................134
3.4.1 Usecase Đăng nhập..................................................................134
3.4.2 Usecase Đăng xuất...................................................................134
3.4.3 Usecase Đổi mật khẩu..............................................................135
3.4.8 Usecase Thanh toán.................................................................138
3.4.9 Usecase Thanh toán qua thẻ ngân hàng...................................138
3.4.10 Usecase Thanh toán qua ví điện tử........................................139
3.4.11 Usecase Xem danh sách bàn ăn.............................................140
3.4.12 Usecase Tạo phiếu gọi món...................................................140
5

3.4.13 Usecase Xóa món ăn..............................................................141


3.4.14 Usecase Chọn món ăn............................................................142
3.4.15 Usecase Thêm ghi chú...........................................................142
3.4.16 Usecase In phiếu gọi món......................................................143
3.4.17 Usecase Xem danh sách hội viên...........................................143
3.4.18 Usecase Thêm hội viên..........................................................144
3.4.19 Usecase Chỉnh sửa thông tin hội viên....................................144
3.4.20 Usecase Thêm chiết khấu......................................................145
3.4.21 Usecase Xem lịch đặt bàn......................................................145
3.4.22 Usecase Xem thông tin nhà cung cấp....................................146
3.4.23 Usecase Thêm nhà cùng cấp..................................................146
3.4.24 Usecase Chỉnh sửa thông tin nhà cùng cấp............................147
3.4.25 Usecase Xóa nhà cùng cấp.....................................................147
3.4.26 Usecase Xem thông tin nguyên vật liệu.................................148
3.4.27 Usecase Thêm nguyên vật liệu..............................................148
3.4.28 Usecase Chỉnh sửa thông tin nguyên vật liệu........................148
3.4.29 Usecase Xóa nguyên vật liệu.................................................149
3.4.30 Usecase Xem thông tin phiếu nhập nguyên vật liệu..............150
3.4.31 Usecase Tạo phiếu nhập nguyên vật liệu...............................150
3.4.32 Usecase Chỉnh sửa thông tin phiếu nhập nguyên vật liệu.....150
3.4.33 Usecase Xóa phiếu nhập nguyên vật liệu..............................151
3.4.34 Usecase Xem thông tin hóa đơn............................................152
3.4.35 Usecase Tạo hóa đơn.............................................................152
3.4.36 Usecase Chỉnh sửa thông tin hóa đơn....................................153
3.4.37 Usecase Xóa hóa đơn.............................................................153
3.4.38 Usecase In hóa đơn................................................................154
3.4.39 Usecase Thống kê doanh thu.................................................154
3.4.40 Usecase Thống kê doanh thu theo tháng...............................155
3.4.41 Usecase Thống kê doanh thu theo năm.................................155
6

3.4.42 Usecase Xem thông tin món ăn.............................................156


3.4.43 Usecase Thêm món ăn...........................................................156
3.4.44 Usecase Chỉnh sửa thông tin món ăn.....................................157
3.4.45 Usecase Xóa thông tin món ăn..............................................157
3.4.46 Usecase Xem thông tin nhân viên..........................................158
3.4.47 Usecase Thêm nhân viên.......................................................158
3.4.48 Usecase Chỉnh sửa thông tin nhân viên.................................159
3.4.49 Usecase Xóa nhân viên..........................................................159
3.4.50 Usecase Tra cứu chiết khấu...................................................160
3.4.51 Usecase Đổi mật khẩu hội viên..............................................160
3.5 Mô hình thực thể ERD...........................................................................162
3.6 Chuyển mô hình thực thể ERD sang mô hình quan hệ..........................162
3.7 Sơ đồ Class (Class Diagram).................................................................163
3.8 Phân tích tiêu chí SWOT:......................................................................165
CHƯƠNG 4 – PERSONAS....................................................................................167
4.1 Thực hiện khảo sát người dùng và đánh giá..........................................167
4.2 Thực hiện tạo các Personas:...................................................................172
CHƯƠNG 5 – LÊN Ý TƯỞNG THIẾT KẾ..........................................................176
5.1 Nêu ý tưởng thiết kế...............................................................................176
5.2 Storyboard cho khách hàng:..................................................................176
CHƯƠNG 6 – HIỆN THỰC HÓA HỆ THỐNG....................................................188
6.1 Wireframe giao diện khách hàng:..........................................................188
6.2 Prototype giao diện khách hàng:............................................................196
6.3 Mô hình phát triển phần mềm................................................................204
6.3.1. Mô hình thác nước (Waterfall Model)....................................204
6.3.2. Ưu Nhược Điểm.....................................................................205
6.3.3. Lý do chọn mô hình................................................................206
6.4 ASP.NET Core API và Entity Framework Core...................................206
6.4.1 Setup Project:...........................................................................206
7

6.4.2 API Controller..........................................................................208


6.4.2.1 BookController..........................................................208
6.4.2.2 MenuController..........................................................211
6.4.2.3 OrderController..........................................................212
6.5 ASP.NET MVC.....................................................................................215
6.5.1 Views.......................................................................................216
6.5.2 Controllers...............................................................................218
6.6 Winform:................................................................................................221
6.6.1 Giao diện:.................................................................................221
6.6.2 Hiện thực chức năng:...............................................................225
CHƯƠNG 7 – ĐÁNH GIÁ KẾT QUẢ..................................................................233
7.1 Kết quả đạt được:...................................................................................233
7.2 Kết luận hệ thống:..................................................................................233
7.2.1 Ưu điểm của hệ thống:.............................................................233
7.2.2 Khuyết điểm của hệ thống:......................................................233
7.2.3 Hướng phát triển trong tương lai của hệ thống:.......................234
7.3 GitHub Desktop:....................................................................................235
PHÂN CÔNG VÀ ĐÁNH GIÁ..............................................................................236
1.1 Kế hoạch giao tiếp nhóm.......................................................................237
1.2 Quy tắc quản lý đồ án của nhóm............................................................238
1.2.1 Quản lý tài liệu.........................................................................238
1.2.2 Quản lý tiến độ.........................................................................238
TÀI LIỆU THAM KHẢO......................................................................................239
8

DANH MỤC KÍ HIỆU VÀ CHỮ VIẾT TẮT

CÁC KÝ HIỆU

CÁC CHỮ VIẾT TẮT


9

DANH MỤC CÁC BẢNG BIỂU, HÌNH VẼ, ĐỒ THỊ

DANH MỤC HÌNH


Hình 1: Nhà hàng Cơm Nhà Q.4...............................................................................21
Hình 2 Sơ đồ Usecase tổng quát...............................................................................40
Hình 3 Sơ Đồ Hoạt Động Usecase Đăng nhập.........................................................92
Hình 4 Sơ Đồ Hoạt Động Usecase Đăng xuất..........................................................93
Hình 5 Sơ Đồ Hoạt Động Usecase Đổi mật khẩu.....................................................94
Hình 6 Sơ Đồ Hoạt Động Usecase Xem giỏ hàng....................................................94
Hình 7 Sơ Đồ Hoạt Động Usecase Đặt bàn..............................................................95
Hình 8 Sơ Đồ Hoạt Động Usecase Xem thực đơn....................................................95
Hình 9 Sơ Đồ Hoạt Động Usecase Đặt món trực tuyến...........................................96
Hình 10 Sơ Đồ Hoạt Động Usecase Thanh toán......................................................97
Hình 11 Sơ Đồ Hoạt Động Usecase Thanh toán qua thẻ ngân hàng........................98
Hình 12 Sơ Đồ Hoạt Động Usecase Thanh toán qua ví điện tử...............................98
Hình 13 Sơ Đồ Hoạt Động Usecase Xem danh sách bàn ăn....................................99
Hình 14 Sơ Đồ Hoạt Động Usecase Tạo phiếu gọi món........................................100
Hình 15 Sơ Đồ Hoạt Động Usecase Xóa món ăn...................................................101
Hình 16 Sơ Đồ Hoạt Động Usecase Chọn món ăn.................................................102
Hình 17 Sơ Đồ Hoạt Động Usecase Thêm ghi chú................................................104
Hình 18 Sơ Đồ Hoạt Động Usecase In phiếu gọi món...........................................104
Hình 19 Sơ Đồ Hoạt Động Usecase Xem danh sách hội viên................................105
Hình 20 Sơ Đồ Hoạt Động Usecase Thêm hội viên...............................................106
Hình 21 Sơ Đồ Hoạt Động Usecase Chỉnh sửa thông tin hội viên.........................108
Hình 22 Sơ Đồ Hoạt Động Usecase Thêm chiết khấu............................................108
Hình 23 Sơ Đồ Hoạt Động Usecase Xem lịch đặt bàn...........................................109
Hình 24 Sơ Đồ Hoạt Động Usecase Xem thông tin nhà cung cấp.........................110
Hình 25 Sơ Đồ Hoạt Động Usecase Thêm nhà cùng cấp.......................................111
Hình 26 Sơ Đồ Hoạt Động Usecase Chỉnh sửa thông tin nhà cùng cấp.................113
Hình 27 Sơ Đồ Hoạt Động Usecase Xóa nhà cùng cấp..........................................113
10

Hình 28 Sơ Đồ Hoạt Động Usecase Xem thông tin nguyên vật liệu......................114
Hình 29 Sơ Đồ Hoạt Động Usecase Thêm nguyên vật liệu....................................114
Hình 30 Sơ Đồ Hoạt Động Usecase Chỉnh sửa thông tin nguyên vật liệu.............115
Hình 31 Sơ Đồ Hoạt Động Usecase Xóa nguyên vật liệu......................................116
Hình 32 Sơ Đồ Hoạt Động Usecase Xem thông tin phiếu nhập nguyên vật liệu...116
Hình 33 Sơ Đồ Hoạt Động Usecase Tạo phiếu nhập nguyên vật liệu....................117
Hình 34 Sơ Đồ Hoạt Động Usecase Chỉnh sửa thông tin phiếu nhập nguyên vật liệu
.................................................................................................................................118
Hình 35 Sơ Đồ Hoạt Động Usecase Xóa phiếu nhập nguyên vật liệu....................119
Hình 36 Sơ Đồ Hoạt Động Usecase Xem thông tin hóa đơn..................................120
Hình 37 Sơ Đồ Hoạt Động Usecase Tạo hóa đơn..................................................121
Hình 38 Sơ Đồ Hoạt Động Usecase Chỉnh sửa thông tin hóa đơn.........................122
Hình 39 Sơ Đồ Hoạt Động Usecase Xóa hóa đơn..................................................123
Hình 40 Sơ Đồ Hoạt Động Usecase In hóa đơn.....................................................123
Hình 41 Sơ Đồ Hoạt Động Usecase Thống kê doanh thu......................................124
Hình 42 Sơ Đồ Hoạt Động Usecase Thống kê doanh thu theo tháng.....................124
Hình 43 Sơ Đồ Hoạt Động Usecase Thống kê doanh thu theo năm.......................125
Hình 44 Sơ Đồ Hoạt Động Usecase Xem thông tin món ăn...................................125
Hình 45 Sơ Đồ Hoạt Động Usecase Thêm món ăn................................................126
Hình 46 Sơ Đồ Hoạt Động Usecase Chỉnh sửa thông tin món ăn..........................127
Hình 47 Sơ Đồ Hoạt Động Usecase Xóa thông tin món ăn....................................128
Hình 48 Sơ Đồ Hoạt Động Usecase Xem thông tin nhân viên...............................129
Hình 49 Sơ Đồ Hoạt Động Usecase Thêm nhân viên.............................................130
Hình 50 Sơ Đồ Hoạt Động Usecase Chỉnh sửa thông tin nhân viên......................131
Hình 51 Sơ Đồ Hoạt Động Usecase Xóa nhân viên...............................................132
Hình 52 Sơ Đồ Hoạt Động Usecase Tra cứu chiết khấu.........................................133
Hình 53 Sơ Đồ Hoạt Động Usecase Đổi mật khẩu hội viên...................................133
Hình 54 Sơ Đồ Tuần Tự Usecase Đăng nhập.........................................................134
Hình 55 Sơ Đồ Tuần Tự Usecase Đăng xuất..........................................................135
11

Hình 56 Sơ Đồ Tuần Tự Usecase Đổi mật khẩu.....................................................136


Hình 57 Sơ Đồ Tuần Tự Usecase Xem giỏ hàng....................................................136
Hình 58 Sơ Đồ Tuần Tự Usecase Đặt bàn..............................................................137
Hình 59 Sơ Đồ Tuần Tự Usecase Xem thực đơn...................................................137
Hình 60 Sơ Đồ Tuần Tự Usecase Đặt món trực tuyến...........................................138
Hình 61 Sơ Đồ Tuần Tự Usecase Thanh toán........................................................138
Hình 62 Sơ Đồ Tuần Tự Usecase Thanh toán qua thẻ ngân hàng..........................139
Hình 63 Sơ Đồ Tuần Tự Usecase Thanh toán qua ví điện tử.................................139
Hình 64 Sơ Đồ Tuần Tự Usecase Xem danh sách bàn ăn......................................140
Hình 65 Sơ Đồ Tuần Tự Usecase Tạo phiếu gọi món............................................141
Hình 66 Sơ Đồ Tuần Tự Usecase Xóa món ăn.......................................................142
Hình 67 Sơ Đồ Tuần Tự Usecase Chọn món ăn.....................................................142
Hình 68 Sơ Đồ Tuần Tự Usecase Thêm ghi chú....................................................143
Hình 69 Sơ Đồ Tuần Tự Usecase In phiếu gọi món...............................................143
Hình 70 Sơ Đồ Tuần Tự Usecase Xem danh sách hội viên....................................144
Hình 71 Sơ Đồ Tuần Tự Usecase Thêm hội viên...................................................144
Hình 72 Sơ Đồ Tuần Tự Usecase Chỉnh sửa thông tin hội viên.............................145
Hình 73 Sơ Đồ Tuần Tự Usecase Thêm chiết khấu................................................145
Hình 74 Sơ Đồ Tuần Tự Usecase Xem lịch đặt bàn...............................................146
Hình 75 Sơ Đồ Tuần Tự Usecase Xem thông tin nhà cung cấp.............................146
Hình 76 Sơ Đồ Tuần Tự Usecase Thêm nhà cùng cấp...........................................147
Hình 77 Sơ Đồ Tuần Tự Usecase Chỉnh sửa thông tin nhà cùng cấp.....................147
Hình 78 Sơ Đồ Tuần Tự Usecase Xóa nhà cùng cấp..............................................148
Hình 79 Sơ Đồ Tuần Tự Usecase Xem thông tin nguyên vật liệu..........................148
Hình 80 Sơ Đồ Tuần Tự Usecase Thêm nguyên vật liệu.......................................148
Hình 81 Sơ Đồ Tuần Tự Usecase Chỉnh sửa thông tin nguyên vật liệu.................149
Hình 82 Sơ Đồ Tuần Tự Usecase Xóa nguyên vật liệu..........................................150
Hình 83 Sơ Đồ Tuần Tự Usecase Xem thông tin phiếu nhập nguyên vật liệu.......150
Hình 84 Sơ Đồ Tuần Tự Usecase Tạo phiếu nhập nguyên vật liệu........................150
12

Hình 85 Sơ Đồ Tuần Tự Usecase Chỉnh sửa thông tin phiếu nhập nguyên vật liệu
.................................................................................................................................151
Hình 86 Sơ Đồ Tuần Tự Usecase Xóa phiếu nhập nguyên vật liệu.......................152
Hình 87 Sơ Đồ Tuần Tự Usecase Xem thông tin hóa đơn.....................................152
Hình 88 Sơ Đồ Tuần Tự Usecase Tạo hóa đơn......................................................153
Hình 89 Sơ Đồ Tuần Tự Usecase Chỉnh sửa thông tin hóa đơn.............................153
Hình 90 Sơ Đồ Tuần Tự Usecase Xóa hóa đơn......................................................154
Hình 91 Sơ Đồ Tuần Tự Usecase In hóa đơn.........................................................154
Hình 92 Sơ Đồ Tuần Tự Usecase Thống kê doanh thu..........................................155
Hình 93 Sơ Đồ Tuần Tự Usecase Thống kê doanh thu theo tháng.........................155
Hình 94 Sơ Đồ Tuần Tự Usecase Thống kê doanh thu theo năm...........................156
Hình 95. Sơ Đồ Tuần Tự Usecase Xem thông tin món ăn.....................................156
Hình 96 Sơ Đồ Tuần Tự Usecase Thêm món ăn....................................................157
Hình 97. Sơ Đồ Tuần Tự Usecase Chỉnh sửa thông tin món ăn.............................157
Hình 98. Sơ Đồ Tuần Tự Usecase Xóa thông tin món ăn......................................158
Hình 99. Sơ Đồ Tuần Tự Usecase Xem thông tin nhân viên..................................158
Hình 100. Sơ Đồ Tuần Tự Usecase Thêm nhân viên.............................................159
Hình 101. Sơ Đồ Tuần Tự Usecase Chỉnh sửa thông tin nhân viên.......................159
Hình 102. Sơ Đồ Tuần Tự Usecase Xóa nhân viên................................................160
Hình 105. Mô hình thực thể ERD...........................................................................162
Hình 106. Mô quan hệ Hệ thống Quản lý nhà hàng...............................................163
Hình 107. Sơ đồ Class Diagram..............................................................................164
Hình 108. Thống kê tần suất khách tới ăn ở nhà hàng............................................167
Hình 109. Thống kê tỷ lệ đặt bàn trước khi đi ăn nhà hàng....................................168
Hình 110. Thống kê tần suất đặt giao món ăn tận nhà............................................168
Hình 111. Thống kê tỷ lệ sử dụng các dịch vụ giao đồ ăn......................................169
Hình 112. Thống kê tỷ lệ giữa đặt trực tuyến và ăn trực tiếp tại nhà hàng.............169
Hình 113. Thống kê tỷ lệ sử dụng các thiết bị để truy cập website........................170
Hình 114. Thống kê tỷ lệ thời gian truy cập website..............................................170
13

Hình 115. Thống kê các dịch vụ được ưa thích khi dùng website..........................171
Hình 116. Thống kê các yếu tố được yêu thích trên website..................................171
Hình 117. Thống kê các yếu tố gây không hài lòng...............................................171
Hình 118. Personas Tăng Kiến Trung.....................................................................172
Hình 119. Personas Đăng Trí..................................................................................173
Hình 120. Personas Lê Hồng Trâm.........................................................................174
Hình 121. Personas Hoàng Vũ................................................................................175
Hình 122. Storyboard Truy cập website Cơm Nhà.................................................177
Hình 123. Storyboard Xem thực đơn......................................................................178
Hình 124. Storyboard Xem giới thiệu.....................................................................179
Hình 125. Storyboard Liên hệ nhà hàng Cơm Nhà.................................................180
Hình 126. Storyboard Tra cứu chiết khấu hội viên.................................................181
Hình 127. Storyboard Đổi mật khẩu hội viên.........................................................182
Hình 128. Storyboard Thêm món ăn vào giỏ hàng.................................................183
Hình 129. Storyboard Xem thông tin giỏ hàng.......................................................184
Hình 130. Storyboard Xóa món ăn khỏi giỏ hàng..................................................185
Hình 131. Storyboard Đặt giao món ăn..................................................................186
Hình 132. Storyboard Đặt bàn................................................................................187
Hình 133. Wireframe trang chủ nhà hàng...............................................................188
Hình 134. Wireframe trang thực đơn nhà hàng......................................................189
Hình 135. Wireframe trang giới thiệu nhà hàng.....................................................190
Hình 136. Wireframe trang liên hệ nhà hàng..........................................................191
Hình 137. Wireframe trang đặt bàn nhà hàng.........................................................192
Hình 139. Wireframe trang đặt món online nhà hàng............................................194
Hình 140. Wireframe trang hội viên nhà hàng.......................................................195
Hình 141. Prototype trang chủ nhà hàng................................................................196
Hình 142. Prototype trang thực đơn nhà hàng........................................................197
Hình 143. Prototype trang giới thiệu nhà hàng.......................................................198
Hình 144. Prototype trang liên hệ nhà hàng...........................................................199
14

Hình 145. Prototype trang đặt bàn nhà hàng...........................................................200


Hình 146. Prototype trang giỏ hàng nhà hàng........................................................201
Hình 147. Prototype trang đặt món online nhà hàng..............................................202
Hình 148. Prototype trang hội viên nhà hàng.........................................................203
Hình 149. Mô hình thác nước.................................................................................205
Hình 150. Các packages cần thiết để sử dụng Entity Framework..........................207
Hình 151. Connection đến database sau khi thêm vào project...............................207
Hình 152. Folder Models chứa các Entity được sinh ra từ Scaffold.......................208
Hình 153. Lớp Booking chứa các thuộc tính mà phía Client sẽ gửi lên API..........209
Hình 154. Code BookController.............................................................................209
Hình 155. Action CreateBook đảm nhiệm nhiệm vụ kiểm tra đặt bàn...................210
Hình 156. API /Book/DatBan xử lý Request POST...............................................211
Hình 157. MenuController chứa các Action xử lý lấy danh sách món ăn, chi tiết
món ăn.....................................................................................................................211
Hình 158.Các Action trong MenuController..........................................................212
Hình 159. OrderController......................................................................................213
Hình 160. API xử lý khi khách hàng đặt món ăn trực tuyến..................................213
Hình 161. API xử lý khi khách hàng đặt món ăn trực tuyến..................................214
Hình 162. Lớp tự định nghĩa để chứa các thông tin được gửi lên từ client thông qua
cơ chế Model Binding.............................................................................................215
Hình 163. Các API trong OrderController..............................................................215
Hình 164. _Layout.cshtml là layout chính của trang web......................................216
Hình 165. Các Partial View được sử dụng.............................................................216
Hình 166. Tổ chức các file css,js trong wwwroot...................................................217
Hình 167. File Index.cshtml trong thư mục Menu đại diện cho trang chính khi xem
Menu món ăn..........................................................................................................218
Hình 168. CheckoutsController Render View Thanh toán.....................................219
Hình 169. CartController Render View Giỏ hàng..................................................219
Hình 170. Dùng HttpClient gọi API lấy danh sách món ăn, nhóm món ăn............220
15

Hình 171. Dùng HttpClient gọi API lấy chi tiết món ăn........................................221
Hình 172. Giao diện Form Đăng nhập....................................................................222
Hình 173. Giao diện Form Quản lý bàn ăn.............................................................222
Hình 174. MenuStrip phân quyền Lễ tân................................................................223
Hình 175. MenuStrip xem thông tin cá nhân..........................................................223
Hình 176. TabPage quản lý doanh thu của nhà hàng..............................................224
Hình 177. TabPage quản lý món ăn........................................................................225
Hình 178. Cấu trúc project phần mềm quản lý nhà hàng........................................225
Hình 179. Các lớp DTO..........................................................................................225
Hình 180. Các lớp DAO.........................................................................................226
Hình 181. Load bàn ăn lên giao diện......................................................................227
Hình 182. Phương thức LoadTableList lấy danh sách bàn ăn từ cơ sở dữ liệu......228
Hình 183. Kết quả danh sách bàn ăn được hiện lên................................................229
Hình 184. Code chức năng thêm món....................................................................230
Hình 185. Code chức năng thêm món trường hợp chưa có hóa đơn.....................230
Hình 186. Code chức năng thêm món đã có hóa đơn.............................................231
Hình 187. Code chức năng thêm món đã có hóa đơn tiếp theo..............................232
Hình 189. Commit History của nhóm.....................................................................235
16

DANH MỤC BẢNG


Bảng 1. Bảng câu hỏi phỏng vấn..............................................................................21
Bảng 2 Các tác nhân trong hệ thống.........................................................................32
Bảng 3 Các Usecase trong hệ thống.........................................................................33
Bảng 4. Đặc tả Usecase Đăng nhập..........................................................................40
Bảng 5. Đặc tả Usecase Đăng xuất...........................................................................42
Bảng 6. Đặc tả Usecase Đổi mật khẩu......................................................................43
Bảng 7. Đặc tả Usecase Xem giỏ hàng.....................................................................44
Bảng 8. Đặc tả Usecase Đặt bàn...............................................................................45
Bảng 9. Đặc tả Usecase Xem thực đơn.....................................................................46
Bảng 10. Đặc tả Usecase Đặt món trực tuyến...........................................................46
Bảng 11. Đặc tả Usecase Thanh toán........................................................................48
Bảng 12. Đặc tả Usecase Thanh toán qua thẻ ngân hàng.........................................49
Bảng 13. Đặc tả Usecase Thanh toán qua ví điện tử.................................................50
Bảng 14. Đặc tả Usecase Xem danh sách bàn ăn.....................................................51
Bảng 15. Đặc tả Usecase Tạo phiếu gọi món...........................................................52
Bảng 16. Đặc tả Usecase Xóa món ăn......................................................................53
Bảng 17. Đặc tả Usecase Chọn món ăn....................................................................54
Bảng 18. Đặc tả Usecase Thêm ghi chú...................................................................54
Bảng 19. Đặc tả Usecase In phiếu gọi món..............................................................55
Bảng 20. Đặc tả Usecase Xem danh sách hội viên...................................................56
Bảng 21. Đặc tả Usecase Thêm hội viên..................................................................58
Bảng 22. Đặc tả Usecase Chỉnh sửa thông tin hội viên............................................59
Bảng 23. Đặc tả Usecase Thêm chiết khấu...............................................................60
Bảng 24. Đặc tả Usecase Xem lịch đặt bàn..............................................................61
Bảng 25. Đặc tả Usecase Xem thông tin nhà cung cấp............................................61
Bảng 26. Đặc tả Usecase Thêm nhà cùng cấp..........................................................62
Bảng 27. Đặc tả Usecase Chỉnh sửa thông tin nhà cùng cấp....................................63
Bảng 28: Đặc tả use case Xóa nhà cung cấp.............................................................65
17

Bảng 29: Đặc tả use case Xem thông tin nguyên vật liệu.........................................66
Bảng 30: Đặc tả use case Thêm nguyên vật liệu......................................................66
Bảng 31: Đặc tả use case Chỉnh sửa thông tin nguyên vật liệu................................68
Bảng 32: Đặc tả use case Xóa nguyên vật liệu.........................................................69
Bảng 33: Đặc tả use case Xem thông tin phiếu nhập nguyên vật liệu......................70
Bảng 34: Đặc tả use case Tạo phiếu nhập nguyên vật liệu.......................................71
Bảng 35: Đặc tả use case Chỉnh sửa thông tin phiếu nhập nguyên vật liệu..............72
Bảng 36: Đặc tả use case Xóa phiếu nhập nguyên vật liệu......................................73
Bảng 37: Đặc tả use case Xem thông tin hóa đơn....................................................74
Bảng 38: Đặc tả use case Tạo hóa đơn.....................................................................75
Bảng 39: Đặc tả use case Chỉnh sửa thông tin hóa đơn............................................76
Bảng 40: Đặc tả use case Xóa hóa đơn.....................................................................77
Bảng 41: Đặc tả use case In hóa đơn........................................................................78
Bảng 42: Đặc tả use case Thống kê doanh thu.........................................................79
Bảng 43: Đặc tả use case Thống kê doanh thu theo tháng........................................80
Bảng 44: Đặc tả use case Thống kê doanh thu theo năm..........................................81
Bảng 45: Đặc tả use case Xem thông tin món ăn.....................................................81
Bảng 46: Đặc tả use case Thêm món ăn...................................................................82
Bảng 47: Đặc tả use case Chỉnh sửa thông tin món ăn.............................................83
Bảng 48: Đặc tả use case Xóa thông tin món ăn.......................................................84
Bảng 49: Đặc tả use case Xem thông tin nhân viên..................................................85
Bảng 50: Đặc tả use case Thêm nhân viên...............................................................86
Bảng 51: Đặc tả use case Chỉnh sửa thông tin nhân viên.........................................87
Bảng 52: Đặc tả use case Xóa nhân viên..................................................................88
Bảng 54: Đặc tả use case Đổi mật khẩu hội viên......................................................91
18

CHƯƠNG 1 – KHẢO SÁT


1.1 Giới thiệu:
Nhà hàng Cơm Nhà là một trong những nhà hàng thích hợp cho việc sum
vầy cùng gia đình trong bữa cơm nhà, hay đơn giản hơn bạn muốn thưởng thức
những món ăn mang hương vị quê nhà. Cơm Nhà đã khẳng định vị trí của mình
trong lòng khách hàng khu vực với những món ăn mang đến hương vị nhà làm. Từ
những món như canh chua, cá kho tộ cho đến mắm kho quẹt hay những món cơm
niêu,… đều đã chinh phục được khá nhiều khách hàng khó tính và mang lại cảm gợi
nhớ quê nhà.

Hiện nay du khách có thể ghé nhà hàng tại địa chỉ 15/44 Đoàn Như Hải,
Phường 12, Quận 4 để thưởng thức hương vị món ăn truyền thống.

Nhận thức được sự phát triển của nhà hàng cũng như muốn mang lại những
giá trị mới nhằm phục vụ cho khách hàng, nhà hàng mong muốn mở rộng quy mô
hoạt động để có thể mang lại những món ăn ngon đến nhiều khách hàng hơn nữa.

Hình 1: Nhà hàng Cơm Nhà Q.4


1.2 Khảo sát:
19

Bảng 1. Bảng câu hỏi phỏng vấn

Người Người được Câu hỏi phỏng Câu trả lời Địa
phỏng vấn phỏng vấn vấn điểm

Nhà
hàng
Cơm
nhà
20
21

1.3 Tổng quan hệ thống:


1.3.1 Các quy trình nghiệp vụ:
1.3.1.1 Quy trình phục vụ khách trực tiếp tại nhà hàng:
- Khi khách hàng đến nhà hàng, quầy lễ tân sẽ có trách nhiệm kiểm tra khách
hàng đã đặt bàn trước hay chưa ?
- Lễ tân sẽ kiểm tra danh sách hội viên của nhà hàng, nếu là khách hàng mới
đến lần đầu tiên và chưa có tên trong danh sách hội viên thì lễ tân sẽ giới thiệu
chương trình hội viên sau đó lưu lại thông tin khách hàng ngược lại thì không cần.
- Nếu khách hàng chưa đặt bàn lễ tân sẽ tiến hành sắp xếp bàn cho khách. Lễ
tân thông báo cho phục vụ bàn để tiến hành sắp xếp bàn ăn và hướng dẫn khách
hàng đến vị trí bàn ăn. Ngược lại nếu khách hàng đã đặt chỗ thì tiến hành thông báo
cho phục vụ hướng dẫn khách đến vị trí bàn ăn đã được sắp xếp.
- Sau khi phục vụ hướng dẫn khách đến được vị trí bàn ăn thì sẽ mang thực
đơn của nhà hàng cho khách hàng xem và lựa chọn món ăn.
- Khách hàng chọn món, số lượng và có thể thêm ghi chú vào món ăn chẳng
hạn như: Muốn ăn mặn hơn, không bỏ ớt, hay dị ứng với một thành phần nào trong
món ăn của nhá hàng…
1.3.1.2 Quy trình đặt bàn trực tuyến của nhà hàng:
- Khách hàng truy cập nền tảng đặt món trực tuyến của nhà hàng.
- Chọn mục “Đặt bàn”.
- Khách hàng tiến hành nhập thông tin cơ bản và chọn ngày, giờ, số người
mong muốn dùng bữa tại nhà hàng.
- Hệ thống kiểm tra xem có trùng lịch hoặc ngày, giờ khách hàng đặt bàn có
hợp lệ hay không.
- Hệ thống sẽ thông báo nếu không hợp lệ và yêu cầu khách hàng đặt lại.
Ngược lại đặt bàn thành công. Khách hàng sẽ cần theo dõi email, số điện thoại để
nhận thông báo từ nhà hàng phòng trường hợp nhà hàng không thể sắp lịch.
22

- Sau khi đặt bàn xong khách hàng chỉ cần đến nhà hàng theo lịch hẹn và sẽ
được phục vụ giống hệt như quy trình 1.3.1.1 Quy trình đặt món ăn trực tiếp tại
nhà hàng.
1.3.1.3 Quy trình đặt món trên nền tảng đặt món trực tuyến của nhà hàng:
- Khách hàng truy cập nền tảng đặt món trực tuyến của nhà hàng.
- Chọn mục “Đặt món trực tuyến”.
- Hệ thống sẽ hiển thị thực đơn của nhà hàng và khách hàng sẽ tiến hành lựa
chọn món ăn mình muốn kèm ghi chú, số lượng…
- Sau khi chọn món hệ thống sẽ yêu cầu khách hàng nhập thông tin và thanh
toán qua tài khoản ngân hàng và trả về hóa đơn trực tuyến kèm thông tin về món ăn
đã đặt.
1.3.1.4 Quy trình kiểm tra và nhập nguyên vật liệu:
- Quản lý kho sẽ được cấp tài khoản nhân viên kho và truy cập vào ứng dụng
nội bộ của nhà hàng để thực hiện nhiệm vụ kiểm tra số lượng, độ tươi ngon của
nguyên liệu để đảm bảo món ăn có chất lượng và mức độ vệ sinh cao nhất. Nếu
nguyên liệu quá cũ hoặc đã hư hỏng thì cần phải loại bỏ khỏi kho nguyên liệu.
- Ngoài ra còn kiểm tra trang thiết bị, vật chất như bàn, ghế, muỗng, dĩa …
cho nhà hàng nếu nhà hàng thiếu nguyên liệu hoặc trang thiết bị hư hỏng cần thay
thế thì Quản lý kho sẽ thực hiện việc nhập nguyên vật liệu.
- Khi nhà hàng cần nhập nguyên liệu Quản lý kho sẽ tiến hành liên hệ với
nhà cung cấp để nhập nguyên liệu, danh sách thông tin nhà cung cấp sẽ được Quản
lý kho lưu trữ lại.
- Khi nhập nguyên vật liệu thì phiếu nhập nguyên vật liệu sẽ được Quản lý
kho tạo, lúc này Thu ngân sẽ phải xuất hóa đơn nhập và xác nhận số tiền nhập
nguyên vật liệu theo phiếu nhập để chi tiền và hạn chế tình trạng kê số khống.
- Các nguyên liệu vừa được nhập sẽ được cập nhật vào danh sách các nguyên
liệu hiện có trong kho thông qua tính năng Quản lý nguyên vật liệu.
23

1.3.2 Đặc tả hệ thống :


- Hệ thống “Quản Lý Nhà Hàng” bao gồm 7 đối tượng chính có tương tác
với hệ thống : User, Khách hàng, Hội viên, Phục vụ, Lễ tân, Quản lý kho, Thu
ngân, Quản lý nhà hàng.
- User có thể được xem là đối tượng mang tính trừu tượng với các chức năng
cơ bản nhất như là : Đăng nhập vào hệ thống, Đổi mật khẩu và Đăng xuất. Tất cả
các Actor còn lại đều được kế thừa từ Actor User và sẽ phải thực hiện chức năng
Đăng nhập để thực hiện chức năng cơ bản của hệ thống, còn đối với Khách hàng
thì sẽ không được kế thừa từ tác nhân User và Khách hàng cũng không cần phải
đăng nhập để thực hiện các chức năng trên website của nhà hàng.
- Khách hàng có thể sử dụng website của nhà hàng để xem thực đơn, đặt món
trực tuyến hoặc tiến hành đặt bàn trực tuyến trước khi đến nhà hàng để tiết kiệm
thời gian không phải chờ đợi lâu.
- Nếu Khách hàng mới đến nhà hàng lần đầu tiên, Lễ tân tiến hành giới thiệu
chương trình hội viên của nhà hàng và lưu thông tin khách hàng vào danh sách hội
viên. Ngoài ra Lễ tân còn có trách nhiệm kiểm tra, sắp xếp lịch đặt bàn của Khách
hàng, nếu không thể sắp xếp lịch Lễ tân sẽ gọi điện thoại hoặc email cho Khách
hàng để thông báo và sắp xếp lại lịch hẹn.
- Khi Khách hàng muốn gọi món, Nhân viên phục vụ của nhà hàng sẽ nhận
trách nhiệm phục vụ và đưa thực đơn cho khách hàng lựa chọn. Sau khi chọn món
nhân viên phục vụ sẽ tạo phiếu gọi món của khách hàng, trong phiếu gọi món có thể
bao gồm nhiều món ăn và số lượng mỗi món mà khách hàng gọi, ngoài ra Khách
hàng còn có thể ghi chú vào phiếu gọi món chẳng hạn như: không chế biến quá cay,
bị dị ứng với một nguyên liệu nào đó ... Sau khi tạo phiếu gọi món, trong nhà bếp
của nhà hàng sẽ tự động in một phiếu gọi món để các đầu bếp có thể tiến hành
chuẩn bị món ăn.
- Hội viên có thể sử dụng tài khoản đã đăng ký để được áp dụng các mức
chiết khấu tương ứng vào các hóa đơn, đồng thời có thể đổi mật khẩu tài khoản hội
viên hoặc tra cứu chiết khấu trên website.
24

- Nhân viên phục vụ còn có trách nhiệm quản lý bàn ăn, sắp xếp bàn để tối
ưu lượng khách nhận vào không để khách đợi lâu. Nếu có bàn trống thì hướng dẫn
khách đến vị trí bàn ăn trống.
- Khi thanh toán Thu ngân có trách nhiệm thu tiền và kiểm tra nếu Khách
hàng đã là hội viên thì nhập mã hội viên vào hóa đơn để kiểm tra xem khách hàng
có đủ điều kiện nhận chiết khấu từ nhà hàng hay không. Tất cả các thông tin như
nhân viên phục vụ, số lượng món ăn, thông tin bàn ăn đều sẽ được nằm trong hóa
đơn và sẽ được truy xuất từ phiếu gọi món của khách hàng, thông tin về chiết khấu
ưu đãi của nhà hàng.
- Đồng thời nhà hàng cần Thu ngân thống kê doanh thu theo tháng và theo
năm để có thể so sánh, đưa ra các chính sách, kế hoạch phát triển nhà hàng phù hợp.
- Để món ăn có thể đạt chất lượng cao nhất và nhà hàng có thể dễ dàng kiểm
tra, thống kê kho nguyên vật liệu thì Quản lý kho còn lưu trữ chi tiết danh sách các
nguyên vật liệu ở nhà hàng.
- Khi nhà hàng cần nhập nguyên vật liệu thì Quản lý kho sẽ tạo phiếu nhập
và Thu ngân sẽ xuất hóa đơn chi tiền nhập nguyên vật liệu để dễ dàng quản lý hạn
chế tình trạng kê khống…
- Để có thể thuận lợi liên lạc với nhà cung cấp cũng như nếu nguồn cung có
vấn đề thì Quản lý kho còn quản lý thông tin các nhà cung cấp.
- Và cuối cùng Quản lý nhà hàng sẽ cần quản lý các nhân viên của mình.
Quản lý nhà hàng còn quản lý nhân viên truy cập vào hệ thống và phân quyền các
tài khoản đúng với chức vụ của từng nhân viên.
Quản lý nhà hàng còn phải làm việc, trao đổi với bếp trưởng để có thể điều
chỉnh thực đơn của nhà hàng theo từng mùa, dịp để đa dạng hóa các món ăn ở nhà
hàng.
25

CHƯƠNG 2 – PHÂN TÍCH YÊU CẦU


2.1. Đặc tả yêu cầu
Hệ thống Quản lý nhà hàng được xây dựng với các yêu cầu sau :
- Xây dựng hệ thống Website của nhà hàng:
 Xem thực đơn của nhà hàng.
 Đặt món trực tuyến.
 Đặt bàn trực tuyến trước khi đến nhà hàng.
 Tra cứu chiết khấu.
 Đổi mật khẩu hội viên.
- Xây dựng hệ thống quản lý nội bộ của nhà hàng:

● Quản lý danh sách bàn ăn.

● Quản lý hội viên.

● Quản lý lịch đặt bàn.

● Quản lý nhà cung cấp.

● Quản lý nguyên vật liệu.

● Quản lý phiếu nhập nguyên vật liệu.

● Quản lý hóa đơn.

● Thống kê doanh thu nhà hàng.

● Quản lý nhân viên.

● Quản lý thực đơn.


26

- Các ràng buộc về thực thi và thiết kế của hệ thống quản lý :

● Website của nhà hàng và phần mềm quản lý nội bộ phải có thiết kế

linh động, tương thích với nhiều hệ điều hành và thiết bị khác
nhau.

● Giao diện phải được thiết kế với mức độ thẩm mỹ cao, dễ sử dụng

và tương tác, không rối mắt.

● Hệ thống website phải hoạt động ổn định, chịu được lưu lượng

truy cập cao.

● Mức độ bảo mật website cao tránh bị tấn công DDOS.

● Hệ thống quản lý nội bộ có khả năng bảo trì, nâng cấp cao nếu

trong tương lai có thay đổi.

2.2. Các tác nhân trong hệ thống


Bảng 2 Các tác nhân trong hệ thống

STT Tác nhân Mô tả


- Thực hiện chức năng đăng nhập, đăng xuất, đổi mật khẩu và
là tác nhân trừu tượng cho các tác nhân khác.
1 User - Lưu ý đặc biệt: Tất cả các tác nhân kế thừa User đều bắt
buộc phải thực hiện chức năng đăng nhập trước thì mới được
sử dụng các Usecase tương ứng của tác nhân đó.
- Là tác nhân tương tác với hệ thống để thực hiện các chức
Khách
2 năng như đặt bàn từ xa, đặt món ăn trực tuyến, xem thực đơn,
hàng
xem giỏ hàng để kiểm tra các món ăn đã chọn.

- Là tác nhân tương tác với hệ thống để thực hiện chức năng
3 Hội viên
như tra cứu chiết khấu hội viên, đổi mật khẩu hội viên.
27

- Là tác nhân có thể tương tác với hệ thống để xem thông tin
danh sách bàn ăn ở nhà hàng, phục vụ khách hàng đến trực tiếp
4 Phục vụ nhà hàng.
- Ghi nhận, giải quyết yêu cầu gọi món hoặc thanh toán của
khách hàng.
- Là tác nhân chịu trách nhiệm quản lý thông tin hội viên của
5 Lễ tân nhà hàng để điều chỉnh ưu đãi hợp lý cho hội viên thân thiết.
- Xem và sắp xếp lịch hẹn đặt bàn.
- Là tác nhân có trách nhiệm quản lý thông tin cũng như liên hệ
với nhà cung cấp nguyên vật liệu cho nhà hàng.
Quản lý - Quản lý kho còn phải thường xuyên tương tác với hệ thống để
6
kho quản lý nguyên vật liệu.
- Ngoài ra còn có thể tương tác với hệ thống để tạo phiếu nhập
hàng mỗi khi nhà hàng cần nhập nguyên vật liệu mới về.
- Là tác nhân sử dụng hệ thống để lập hóa đơn thanh toán bữa
7 Thu ngân ăn, hóa đơn nhập nguyên vật liệu từ đó quản lý và thống kê
doanh thu của nhà hàng.
- Là người có nhiệm vụ: Quản lý mọi tác nhân khác trong hệ
Quản lý thống.
8
nhà hàng - Làm việc với đầu bếp để quản lý, chỉnh sửa thực đơn món ăn
của nhà hàng.

2.3. Các Use Case trong hệ thống


Bảng 3 Các Usecase trong hệ thống

Tên Use
ID Tác nhân Mô tả
Case
UC01 Đăng nhập User, Phục vụ, Tác nhân đăng nhập vào hệ thống của
Lễ tân, Quản lý nhà hàng.
kho, Thu ngân,
28

Quản lý nhà
hàng
User, Phục vụ,
Lễ tân, Quản lý
Tác nhân đăng xuất khỏi hệ thống của
UC02 Đăng xuất kho, Thu ngân,
nhà hàng.
Quản lý nhà
hàng
User, Phục vụ,
Lễ tân, Quản lý
Đổi mật Tác nhân đổi mật khẩu tài khoản của
UC03 kho, Thu ngân,
khẩu mình trong hệ thống của nhà hàng.
Quản lý nhà
hàng
Tác nhân xem giỏ hàng để kiểm tra các
Xem giỏ
UC04 Khách hàng món ăn mình đã chọn vào giỏ hàng rồi
hàng
tiến hành đặt món.
Tác nhân đặt bàn trước từ xa qua hệ
UC05 Đặt bàn Khách hàng
thống của nhà hàng.

Xem thực Tác nhân xem thực đơn các món ăn


UC06 Khách hàng
đơn hiện có ở nhà hàng.

Đặt món Tác nhân đặt món ăn trực tuyến qua hệ


UC07 Khách hàng
trực tuyến thống của nhà hàng.

Tác nhân tiến hành thanh toán trực


UC08 Thanh toán Khách hàng
tuyến qua hệ thống của nhà hàng.
Thanh toán
Tác nhân lựa chọn hình thức thanh toán
UC09 qua thẻ Khách hàng
qua thẻ ngân hàng.
ngân hàng

Thanh toán Tác nhân lựa chọn hình thức thanh toán
UC10 Khách hàng.
qua ví điện qua ví điện tử.
29

tử
Xem danh Tác nhân xem danh sách các bàn ăn
UC11 Phục vụ, Lễ tân
sách bàn ăn hiện có ở nhà hàng.

Tạo phiếu
UC12 Phục vụ, Lễ tân Tác nhân tiến hành đặt món ăn.
gọi món

Khách hàng, Tác nhân xóa món ăn đã chọn khỏi đơn


UC13 Xóa món ăn
Phục vụ, Lễ tân đặt món ăn.

Chọn món Khách hàng, Tác nhân chọn món ăn mong muốn và
UC14
ăn Phục vụ, Lễ tân thêm vào đơn đặt món ăn.

Thêm ghi Khách hàng, Tác nhân thêm ghi chú mình mong
UC15
chú Phục vụ, Lễ tân muốn vào đơn đặt món ăn.

In phiếu gọi Khách hàng, Tác nhân in phiếu gọi món trong máy
UC16
món Phục vụ, Lễ tân in của nhà bếp.
Xem danh
Tác nhân xem danh sách hội viên được
UC17 sách hội Lễ tân
lưu trong hệ thống của nhà hàng.
viên
Tác nhân thêm hội viên vào danh sách
Thêm hội
UC18 Lễ tân hội viên được lưu trong hệ thống của
viên
nhà hàng.
Chỉnh sửa Tác nhân sửa thông tin hội viên trong
UC19 thông tin Lễ tân danh sách hội viên được lưu trong hệ
hội viên thống của nhà hàng.
Tác nhân thêm chiết khấu cho hội viên
Thêm chiết
UC20 Lễ tân trong danh sách hội viên được lưu
khấu
trong hệ thống của nhà hàng.
Xem lịch Tác nhân xem lịch đặt bàn của khách
UC21 Lễ tân
đặt bàn hàng đặt bàn trực tuyến.
UC22 Xem thông Quản lý kho Tác nhân thực hiện xem thông tin nhà
30

tin nhà cung


cung cấp hiện có trong hệ thống.
cấp
Tác nhân thực hiện thêm thông tin của
Thêm nhà
UC23 Quản lý kho một nhà cung cấp hiện có trong hệ
cùng cấp
thống.
Chỉnh sửa
Tác nhân thực hiện sửa thông tin của
thông tin
UC24 Quản lý kho một nhà cung cấp hiện có trong hệ
nhà cùng
thống.
cấp
Tác nhân thực hiện xóa thông tin của
Xóa nhà
UC25 Quản lý kho một nhà cung cấp hiện có trong hệ
cùng cấp
thống.
Xem thông Tác nhân thực hiện xem thông tin của
Quản lý kho,
UC26 tin nguyên Quản lý nhà một nguyên vật liệu hiện có trong hệ
vật liệu hàng thống.
Thêm
Tác nhân thực hiện thêm một nguyên
UC27 nguyên vật Quản lý kho
vật liệu mới vào hệ thống.
liệu
Chỉnh sửa
Tác nhân thực hiện chỉnh sửa thông tin
thông tin
UC28 Quản lý kho một nguyên vật liệu hiện có trong hệ
nguyên vật
thống.
liệu
Xóa nguyên Tác nhân thực hiện xóa thông tin một
UC29 Quản lý kho
vật liệu nguyên liệu vật hiện có trong hệ thống.
Xem thông
tin phiếu Quản lý kho, Tác nhân thực hiện xem thông tin của
UC30 nhập Quản lý nhà một phiếu nhập nguyên vật liệu hiện có
nguyên vật hàng trong hệ thống.
liệu
31

Tạo phiếu
nhập Tác nhân thực hiện tạo một phiếu nhập
UC31 Quản lý kho
nguyên vật nguyên vật liệu.
liệu
Chỉnh sửa
thông tin Tác nhân thực hiện chỉnh sửa thông tin
UC32 phiếu nhập Quản lý kho của một phiếu nhập nguyên vật liệu
nguyên vật hiện có trong hệ thống.
liệu
Xóa phiếu
nhập Tác nhân thực hiện xóa một phiếu nhập
UC33 Quản lý kho
nguyên vật nguyên vật liệu trong hệ thống.
liệu
Thu ngân,
Xem thông Tác nhân thực hiện xem thông tin của
UC34 Quản lý nhà
tin hóa đơn một hóa đơn có trong hệ thống.
hàng
Tạo hóa Tác nhân thực hiện tạo một hóa đơn
UC35 Thu ngân
đơn mới trong hệ thống.
Chỉnh sửa Tác nhân thực hiện chỉnh sửa thông tin
UC36 thông tin Thu ngân của một hóa đơn hiện có trong hệ
hóa đơn thống.
Xóa hóa Tác nhân thực hiện xóa thông tin của
UC37 Thu ngân
đơn một hóa đơn hiện có trong hệ thống.

Tác nhân thực hiện in thông tin một


UC38 In hóa đơn Thu ngân
hóa đơn có trong hệ thống.

Thống kê Hệ thống thống kê doanh thu từ các hóa


UC39 Thu ngân
doanh thu đơn được thanh toán.

UC40 Thống kê Thu ngân Tổng doanh thu được thống kê và gửi
32

doanh thu
về theo tháng
theo tháng
Thống kê
Tổng doanh thu được thống kê và gửi
UC41 doanh thu Thu ngân
về theo năm
theo năm
Xem thông Quản lý nhà Hệ thống cấp quyền cho xem thông tin
UC42
tin món ăn hàng các món ăn trong nhà hàng

Thêm món Quản lý nhà Hệ thống cấp quyền cho phép thêm một
UC43
ăn hàng món ăn mới vào hệ thống
Chỉnh sửa
Quản lý nhà Hệ thống cấp quyền cho phép sửa
UC44 thông tin
hàng thông tin món ăn trong hệ thống
món ăn
Xóa thông Quản lý nhà Hệ thống cấp quyền cho phép xóa một
UC45
tin món ăn hàng món ăn ra khỏi hệ thống
Xem thông
Quản lý nhà Hệ thống cấp quyền cho phép xem
UC46 tin nhân
hàng thông tin nhân viên trong hệ thống
viên
Thêm nhân Quản lý nhà Hệ thống cấp quyền cho phép thêm
UC47
viên hàng nhân viên vào hệ thống
Chỉnh sửa
Quản lý nhà Hệ thống cấp quyền cho phép chỉnh
UC48 thông tin
hàng sửa thông tin nhân viên trong hệ thống
nhân viên
Xóa nhân Quản lý nhà Hệ thống cấp quyền cho phép xóa nhân
UC49
viên hàng viên ra khỏi hệ thống

Tra cứu Tác nhân tra cứu chiết khấu từ tài


UC50 Hội viên
chiết khấu khoản hội viên

Đổi mật Tác nhân đổi mật khẩu tài khoản hội
UC51 Hội viên
khẩu hội viên của mình
33

viên
34

CHƯƠNG 3 – THIẾT KẾ YÊU CẦU


3.1. Sơ đồ Use Case:

Hình 2 Sơ đồ Usecase tổng quát


3.2. Đặc tả Use Case:
Bảng 4. Đặc tả Usecase Đăng nhập
35

Mã use
UC01
case

Use Case Đăng nhập

Ngữ cảnh Đăng nhập vào hệ thống nội bộ của nhà hàng.

Mô tả Tác nhân thực hiện đăng nhập vào hệ thống nội bộ của nhà hàng.

Tác nhân User, Phục vụ, Lễ tân, Quản lý kho, Thu ngân, Quản lý nhà hàng

Sự kiện
Nhấn vào nút “Đăng nhập” trên hệ thống.
kích hoạt

+ Tác nhân truy cập được vào hệ thống nội bộ của nhà hàng.
Điều kiện
+ Tài khoản của tác nhân đã được Quản lý nhà hàng tạo và có trong cơ
tiên quyết
sở dữ liệu hệ thống của nhà hàng.
Kết quả Tác nhân đăng nhập thành công vào hệ thống nội bộ của nhà hàng.

Tác nhân Hệ thống

1. Tác nhân truy cập vào hệ thống 1.1. Hệ thống hiện giao diện “Đăng

nội bộ của nhà hàng. nhập”.

2. Tác nhân nhập Tài khoản và Mật


khẩu vào các ô tương ứng.
Luồng sự
3.1. Hệ thống xác thực tài khoản.
kiện
3.1.1. Hiển thị giao diện hệ thống
tương ứng với quyền đã được cấp
3. Tác nhân nhấn vào nút “Đăng
nếu xác thực thành công.
nhập”.
3.1.2. Hệ thống hiện thông báo lỗi
và trở lại giao diện đăng nhập nếu
xác thực thất bại.
Ngoại lệ Tác nhân đăng nhập không thành công 5 lần liên tiếp.
36

=> Hệ thống tạm khóa chức năng đăng nhập trong 5 phút.

Bảng 5. Đặc tả Usecase Đăng xuất


Mã use
UC02
case

Use Case Đăng xuất

Ngữ cảnh Đăng xuất khỏi hệ thống nội bộ của nhà hàng.

Mô tả Tác nhân thực hiện đăng xuất khỏi hệ thống nội bộ của nhà hàng.

Tác nhân User, Phục vụ, Lễ tân, Quản lý kho, Thu ngân, Quản lý nhà hàng

Sự kiện
Nhấn vào nút “Đăng xuất” trên hệ thống.
kích hoạt

Điều kiện + Tác nhân truy cập được vào hệ thống nội bộ của nhà hàng.
tiên quyết + Tác nhân đã đăng nhập thành công vào hệ thống nội bộ của nhà hàng.

Kết quả Tác nhân đăng xuất thành công khỏi hệ thống nội bộ của nhà hàng.

Tác nhân Hệ thống

1. Tác nhân nhấn vào nút “Đăng 1.1. Hệ thống hiện thông báo “Xác

xuất” trên giao diện hệ thống. nhận đăng xuất”.

2.1 Nếu tác nhân nhấn nút “Xác


Luồng sự
nhận” : Hệ thống đăng xuất tài
kiện
khoản thành công và trở lại giao
2. Tác nhân nhấn vào nút “Xác
diện Đăng nhập.
nhận” hoặc “Hủy”.
2.2 Nếu tác nhân nhấn nút “Hủy” :
Trở lại giao diện và trạng thái
trước khi nhấn nút “Đăng xuất”.
Ngoại lệ Không có ngoại lệ.
37

Bảng 6. Đặc tả Usecase Đổi mật khẩu


Mã use
UC03
case

Use Case Đổi mật khẩu

Ngữ cảnh Đổi mật khẩu tài khoản.

Tác nhân thực hiện đổi mật khẩu tài khoản của mình trong hệ thống của
Mô tả
nhà hàng.

Tác nhân User, Phục vụ, Lễ tân, Quản lý kho, Thu ngân, Quản lý nhà hàng

Sự kiện
Nhấn vào nút “Đổi mật khẩu” trên hệ thống.
kích hoạt

+ Tác nhân truy cập được vào hệ thống nội bộ của nhà hàng.
Điều kiện + Tài khoản của tác nhân đã được Quản lý nhà hàng tạo và có trong cơ
tiên quyết sở dữ liệu hệ thống của nhà hàng.
+ Tác nhân đã đăng nhập thành công vào hệ thống nội bộ của nhà hàng.
Kết quả Tác nhân đổi mật khẩu thành công.

Luồng sự Tác nhân Hệ thống


kiện
1.1. Hệ thống hiện giao diện “Đổi
1. Tác nhân nhấn vào nút “Đổi mật
mật khẩu”. Và yêu cầu tác nhân
khẩu”.
nhập Mật khẩu cũ, Mật khẩu mới.

2. Tác nhân nhập Mật khẩu cũ và 2.1. Hệ thống xác thực thông tin.
Mật khẩu mới cần đổi vào ô tương 2.1.1. Xác thực thành công. Hệ
ứng và nhấn “Xác nhận đổi mật thống lưu mật khẩu mới vào cơ sở
khẩu”. dữ liệu và hiện thông báo “Đổi mật
khẩu thành công”.
2.1.2. Xác thực không thành công.
38

Hệ thống hiện thông báo “Xác thực


không thành công vui lòng nhập lại
!”.
Tác nhân nhập sai mật khẩu cũ 5 lần liên tiếp.
=> Hệ thống tự động đăng xuất.
Mật khẩu mới giống mật khẩu cũ.
Ngoại lệ
=> Hiện cảnh báo yêu cầu mật khẩu mới phải khác mật khẫu cũ.
Mật khẩu mới chứa ký tự lạ hoặc chưa đủ mức độ bảo mật.
=> Hiện thông báo yêu cầu chọn mật khẩu mới có độ bảo mật cao hơn.

Bảng 7. Đặc tả Usecase Xem giỏ hàng


Mã use
UC04
case

Use Case Xem giỏ hàng

Ngữ cảnh Xem giỏ hàng trên hệ thống website của nhà hàng

Tác nhân xem giỏ hàng để kiểm tra và thao tác với các món ăn mình đã
Mô tả
chọn vào giỏ hàng.

Tác nhân Khách hàng

Sự kiện Nhấn vào nút “Xem giỏ hàng” trên giao diện hệ thống website của nhà
kích hoạt hàng.

Điều kiện
+ Tác nhân truy cập được vào website của nhà hàng
tiên quyết

Kết quả Tác nhân xem được giao diện giỏ hàng hiện tại.

Luồng sự Tác nhân Hệ thống


kiện
1. Tác nhân nhấn vào nút “Xem 1.1. Hệ thống hiển thị giao diện
giỏ hàng”.
39

“Giỏ hàng”.

Ngoại lệ Không có ngoại lệ.

Bảng 8. Đặc tả Usecase Đặt bàn


Mã use
UC05
case

Use Case Đặt bàn

Ngữ cảnh Đặt bàn trực tuyến trên website của nhà hàng.

Mô tả Tác nhân thực hiện đặt bàn trực tuyến.

Tác nhân Khách hàng

Sự kiện
Nhấn vào nút “Đặt bàn” trên giao diện đặt bàn của hệ thống.
kích hoạt

Điều kiện
+ Tác nhân truy cập được vào website của nhà hàng.
tiên quyết

+ Tác nhân đặt bàn trực tuyến thành công.


Kết quả
+ Hệ thống của nhà hàng nhận được đơn đặt bàn của khách hàng.

Luồng sự Tác nhân Hệ thống


kiện
1. Tác nhân nhấn vào nút “Đặt
1.1. Hệ thống hiển thị giao diện
bàn” trên giao diện đặt bàn của hệ
form đặt bàn hệ trực tuyến.
thống.

2. Tác nhân nhập các thông tin 2.1. Thông tin khách hàng sau khi
được yêu cầu và nhấn “Xác nhận điền vào form được hệ thống tiếp
đặt bàn trực tuyến”. nhận sau đó lưu lại trong cơ sở dữ
liệu và hiện thông báo “Đặt bàn
40

trực tuyến thành công”.


Tác nhân nhập thiếu hoặc sai thông tin được yêu cầu.
Ngoại lệ
=> Hệ thống hiện thông báo yêu cầu nhập đầy đủ và đúng thông tin.

Bảng 9. Đặc tả Usecase Xem thực đơn


Mã use
UC06
case

Use Case Xem thực đơn

Ngữ cảnh Xem thực đơn trên website của nhà hàng.

Mô tả Tác nhân thực hiện xem thực đơn các món ăn của nhà hàng.

Tác nhân Khách hàng, Phục vụ, Lễ tân

Sự kiện
Nhấn vào nút “Xem thực đơn” trên hệ thống nhà hàng.
kích hoạt

+ Nếu tác nhân là: Khách hàng thì cần phải truy cập được vào website
Điều kiện của nhà hàng.
tiên quyết + Nếu tác nhân là: Phục vụ, Lễ tân thì cần phải truy cập được vào hệ
thống nội bộ của nhà hàng và trong giao diện tạo phiếu gọi món.
Kết quả Tác nhân xem thành công thực đơn của nhà hàng.

Tác nhân Hệ thống


Luồng sự
1. Tác nhân nhấn vào nút “Xem
1.1. Hệ thống hiển thị thực đơn của
kiện
thực đơn” trên website hoặc hệ
nhà hàng.
thống nội bộ của nhà hàng.
Ngoại lệ Không có ngoại lệ.

Bảng 10. Đặc tả Usecase Đặt món trực tuyến

Mã use UC07
41

case

Use Case Đặt món trực tuyến

Ngữ cảnh Đặt món trực tuyến thông qua website của nhà hàng.

Mô tả Tác nhân đặt món trực tuyến thông qua website của nhà hàng.

Tác nhân Khách hàng

Sự kiện
Nhấn vào nút “Đặt món trực tuyến” trên giao diện xem giỏ hàng.
kích hoạt

+ Tác nhân truy cập được vào website của nhà hàng.
Điều kiện + Tác nhân đang trong giao diện “Xem giỏ hàng”.
tiên quyết + Tác nhân đã chọn ít nhất 1 món ăn trong giỏ hàng.
+ Tác nhân phải thanh toán thành công.
Kết quả Tác nhân đặt món trực tuyến thành công.

Luồng sự Tác nhân Hệ thống


kiện
1. Tác nhân nhấn vào nút “Đặt
1.1. Hệ thống hiện giao diện đặt
món trực tuyến” trong giao diện
món trực tuyến.
“Xem giỏ hàng”.
2. Tác nhân nhập các thông tin 2.1. Hệ thống xác nhận quá trình
được yêu cầu vào “Chi tiết đơn thanh toán.
hàng” và chọn phương thức thanh 2.1.1. Nếu thanh toán thất bại hệ
toán sau đó nhấn “Tiến hành đặt thống trở lại giao diện nhập thông
hàng”. tin vào “Chi tiết đơn hàng” và hiện
thông báo thanh toán thất bại.
2.1.2. Nếu thanh toán thành công
hệ thống trở lại giao diện “Trang
chủ” và hiện thông báo “Đặt món
trực tuyến thành công.”
42

2.1.2.1. Hệ thống sẽ tự động tạo


phiếu gọi món tương ứng với các
món ăn trong “Giỏ hàng” kèm
thông tin “Chi tiết đơn hàng”.
2.1.2.2. Hệ thống in phiếu gọi món
cho máy in trong nhà bếp của nhà
hàng.
Tác nhân không chọn món ăn nào trong giỏ hàng.
Ngoại lệ => Hệ thống hiện thông báo “Giỏ hàng đang trống vui lòng chọn ít nhất
1 món ăn”.

Bảng 11. Đặc tả Usecase Thanh toán


Mã use
UC08
case

Use Case Thanh toán

Ngữ cảnh Thanh toán khi khách hàng đặt món trực tuyến.

Mô tả Tác nhân thực hiện thanh toán cho nhà hàng khi đặt món trực tuyến.

Tác nhân Khách hàng

Sự kiện
Tác nhân thực hiện Usecase “Đặt món trực tuyến”.
kích hoạt

Điều kiện
+ Tác nhân đang trong giao diện “Chi tiết đơn hàng”.
tiên quyết

Kết quả Tác nhân chọn thành công hình thức thanh toán.

Luồng sự Tác nhân Hệ thống


kiện
1. Tác nhân trong giao diện “Chi 1.1. Hệ thống hiện giao diện tương
tiết đơn hàng” và chọn hình thức ứng với hình thức thanh toán mà
43

thanh toán. tác nhân chọn.

Ngoại lệ Không có ngoại lệ.

Bảng 12. Đặc tả Usecase Thanh toán qua thẻ ngân hàng
Mã use
UC09
case

Use Case Thanh toán qua thẻ ngân hàng

Ngữ cảnh Thanh toán qua thẻ ngân hàng khi khách hàng đặt món trực tuyến.

Tác nhân thực hiện thanh toán qua thẻ ngân hàng cho nhà hàng khi đặt
Mô tả
món trực tuyến.

Tác nhân Khách hàng

Sự kiện
Tác nhân nhấn nút chọn hình thức “Thanh toán qua thẻ ngân hàng”
kích hoạt

Điều kiện
+ Tác nhân đang trong giao diện “Chi tiết đơn hàng”.
tiên quyết

Kết quả Tác nhân thanh toán thành công qua thẻ ngân hàng.

Luồng sự Tác nhân Hệ thống


kiện
1. Tác nhân nhập đầy đủ các thông 1.1. Hệ thống hiển thị danh sách
tin liên quan đến thẻ ngân hàng. các món ăn và tổng tiền.

1.2. Hệ thống kiểm tra thông tin


thẻ ngân hàng.

1.2.1. Nếu kiểm tra thành công hệ


thống tiến hành thanh toán và tạo
hóa đơn.
44

1.2.1 Nếu kiểm tra thất bại hệ


thống hiện thông báo “Xác minh
thẻ ngân hàng thất bại”.

Tác nhân không nhập hoặc nhập thiếu thông tin thẻ ngân hàng.
Ngoại lệ
=> Hệ thống hiển thị thông báo yêu cầu nhập đủ và chính xác thông tin.

Bảng 13. Đặc tả Usecase Thanh toán qua ví điện tử


Mã use
UC10
case

Use Case Thanh toán qua ví điện tử

Ngữ cảnh Thanh toán qua ví điện tử khi khách hàng đặt món trực tuyến.

Tác nhân thực hiện thanh toán qua ví điện tử cho nhà hàng khi đặt món
Mô tả
trực tuyến.

Tác nhân Khách hàng

Sự kiện
Tác nhân nhấn nút chọn hình thức “Thanh toán qua ví điện tử”
kích hoạt

Điều kiện
+ Tác nhân đang trong giao diện “Chi tiết đơn hàng”.
tiên quyết

Kết quả Tác nhân thanh toán thành công qua ví điện tử.

Luồng sự Tác nhân Hệ thống


kiện
1. Tác nhân nhập đầy đủ các thông 1.1. Hệ thống hiển thị danh sách
tin liên quan đến ví điện tử. các món ăn và tổng tiền.

1.2. Hệ thống kiểm tra thông tin ví


điện tử.

1.2.1. Nếu kiểm tra thành công hệ


45

thống tiến hành thanh toán và tạo


hóa đơn.

1.2.1 Nếu kiểm tra thất bại hệ


thống hiện thông báo “Xác minh ví
điện tử thất bại”.

Tác nhân không nhập hoặc nhập thiếu thông tin ví điện tử.
Ngoại lệ
=> Hệ thống hiển thị thông báo yêu cầu nhập đủ và chính xác thông tin.

Bảng 14. Đặc tả Usecase Xem danh sách bàn ăn


Mã use
UC11
case

Use Case Xem danh sách bàn ăn

Ngữ cảnh Xem danh sách bàn ăn và tình trạng các bàn ăn ở nhà hàng.

Tác nhân thực hiện xem danh sách bàn ăn và tình trạng các bàn ăn ở nhà
Mô tả
hàng.

Tác nhân Phục vụ, Lễ tân

Sự kiện
Đăng nhập thành công vào hệ thống.
kích hoạt

+ Tác nhân truy cập được vào hệ thống nội bộ của nhà hàng.
Điều kiện
+ Tác nhân đã đăng nhập thành công vào hệ thống nội bộ của nhà hàng
tiên quyết
với quyền được cấp là “Phục vụ và Lễ tân”.
Kết quả Tác nhân xem thành công danh sách bàn ăn ở nhà hàng.

Tác nhân Hệ thống


Luồng sự
1. Tác nhân nhấn vào nút “Xem 1.1. Hệ thống hiện giao diện và
kiện
danh sách bàn ăn”. danh sách các bàn ăn hiện có.
46

Ngoại lệ Không có ngoại lệ.

Bảng 15. Đặc tả Usecase Tạo phiếu gọi món


Mã use
UC12
case

Use Case Tạo phiếu gọi món

Ngữ cảnh Tạo phiếu gọi món ăn.

Mô tả Tác nhân thực hiện tạo phiếu gọi món của khách hàng.

Tác nhân Phục vụ, Lễ tân

Sự kiện
Nhấn vào nút “Thêm món ăn” Hoặc Nhấn vào nút “Đặt món trực tuyến”.
kích hoạt

+ Tác nhân đã chọn ít nhất 1 món trong phiếu gọi món.


Điều kiện
+ Nếu tạo phiếu gọi món trực tiếp ở nhà hàng thì tác nhân phải ở trong
tiên quyết
giao diện “Xem danh sách bàn ăn”.
Kết quả Tác nhân tạo thành công phiếu gọi món.

Tác nhân Hệ thống

1a.1. Hệ thống tự dộng tạo phiếu


1a. Tác nhân nhấn vào nút “Thêm gọi món dựa trên món ăn vừa chọn.
Luồng sự
món ăn” trong giao diện “Xem
kiện 1b.1. Hệ thống tự dộng tạo phiếu
danh sách bàn ăn”.
gọi món dựa trên giỏ hàng của
1b. Tác nhân nhấn vào nút “Đặt
Khách hàng và lưu vào cơ sở dữ
món trực tuyến”.
liệu của nhà hàng.

Ngoại lệ Tác nhân chưa chọn ít nhất 1 món và nhấn vào nút “Xác nhận tạo phiếu
gọi món”.
=> Hệ thống hiện thông báo “Yêu cầu chọn ít nhất 1 món”.
47

Tác nhân chưa chọn món có số lượng âm.


=> Hệ thống hiện thông báo “Số lượng món cần là dương”.

Bảng 16. Đặc tả Usecase Xóa món ăn


Mã use UC13.
case
Use Case Xóa món ăn
Ngữ cảnh Khi tác nhân muốn xóa món
Mô tả Các tác nhân xóa món ăn khỏi phiếu gọi món
Tác nhân Khách hàng, phục vụ, lễ tân
Sự kiện Chọn số lượng món ăn là số âm và nhấn vào nút “Thêm món ăn”.
kích hoạt
Điều kiện +Khách hàng vào được website
tiên quyết +Phục vụ, lễ tân vào được phần mềm nội bộ và đăng nhập thành
công
Kết quả Các tác nhân xóa món ăn ở phiếu gọi món thành công
Actor System
1. Tác nhân chọn món ăn có 1.1. Hệ thống xóa món ăn khỏi
Luồng sự số lượng âm và nhấn vào nút phiếu gọi món.
kiện “Thêm món” hoặc chọn món
ăn cần xóa và nhấn “Xóa
món ăn”
Ngoại lệ Không.

Bảng 17. Đặc tả Usecase Chọn món ăn


Mã use UC14.
case
Use Case Chọn món ăn
48

Ngữ cảnh Khi tác nhân muốn đặt món


Mô tả Các tác nhân chọn các món ăn
Tác nhân Khách hàng, phục vụ, lễ tân
Sự kiện Chọn món ăn
kích hoạt
Điều kiện +Khách hàng vào được website
tiên quyết +Phục vụ, lễ tân vào được phần mềm nội bộ và đăng nhập thành
công
Kết quả Các tác nhân chọn được các món ăn
Actor System
1. Tác nhân nhấn vào nút 1.1. Hệ thống hiển thị danh sách
Luồng sự
‘Tạo phiếu gọi món’. các món ăn
kiện
2. Tác nhân nhấn vào món 2.1. Hệ thống thêm món ăn vào giỏ
ăn để chọn món ăn hàng.
Ngoại lệ Không.

Bảng 18. Đặc tả Usecase Thêm ghi chú


Mã use UC15.
case
Use Case Thêm ghi chú
Ngữ cảnh Khi tác nhân muốn thêm ghi chú cho món ăn
Mô tả Các tác nhân thêm ghi chú cho món ăn mình đặt
Tác nhân Khách hàng, phục vụ
Sự kiện Thêm ghi chú
kích hoạt
Điều kiện +Khách hàng vào được website
tiên quyết +Phục vụ, lễ tân vào được phần mềm nội bộ và đăng nhập thành
công
49

Kết quả Các tác nhân thêm ghi chú cho món ăn thành công
Actor System
1. Tác nhân nhấn vào nút có 1.1. Hệ thống hiển thị một box
biểu tượng ‘cây bút’ của nhập văn bản
món ăn đã chọn trong giỏ
Luồng sự hàng.
kiện 2. Tác nhân nhập ghi chú 2.1. Hệ thống hiển thị văn bản mà
vào box người dùng nhập.
3. Tác nhân nhập xong và 3.1 Hệ thống lưu ghi chú của món
chọn nút xác nhận đó và hiển thị thông báo thêm
thông báo thành công
Ngoại lệ Không.

Bảng 19. Đặc tả Usecase In phiếu gọi món


Mã use UC16.
case
Use Case In phiếu gọi món
Ngữ cảnh Khách hàng chọn món xong và in phiếu gọi món
Mô tả Các tác nhân in phiếu gọi món
Tác nhân Khách hàng, phục vụ, lễ tân
Sự kiện In phiếu gọi món
kích hoạt
Điều kiện +Khách hàng vào được website
tiên quyết +Phục vụ, lễ tân vào được phần mềm nội bộ và đăng nhập thành
công
Kết quả Các tác nhân in phiếu gọi món thành công

Luồng sự Actor System

kiện 1. Tác nhân nhấn vào nút in 1.1. Hệ thống hiển thị một thông
50

phiếu gọi món. báo yêu cầu xác nhận


2.a Tác nhân chọn nút chấp 2.a.1. Hệ thống in phiếu gọi món.
nhận 2.b.1 Hệ thống hiện thị phiếu gọi
2.b Tác nhân chọn nút không món

Ngoại lệ Không.

Bảng 20. Đặc tả Usecase Xem danh sách hội viên


Mã use UC17
case
Use Case Xem thông tin hội viên.
Ngữ cảnh Xem thông tin của hội viên trong hệ thống.
Mô tả Lễ tân thực hiện xem thông tin của hội viên trong hệ thống.
Tác nhân Lễ tân.
Sự kiện Xem thông tin hội viên.
kích hoạt
Điều kiện +Lễ tân vào được phần mềm nội bộ và đăng nhập thành công
tiên quyết
Kết quả Lễ tân xem thông tin hội viên thành công.
Luồng sự Actor System
kiện 1. Lễ tân chọn mục “Quản lý hội 1.1. Hệ thống hiển thị giao diện quản
viên”. lý hội viên.
2. Lễ tân chọn mục “Xem thông tin 2.1. Hệ thống hiển thị danh
hội viên”. sách hội viên và thanh tìm
kiếm.
51

3.a. Lễ tân chọn hội viên trong 3.a.1. Hệ thống hiển thị thông
danh sách. tin hội viên đã chọn.
3.b. Lễ tân nhập mã hội viên trên 3.b.1. Hệ thống hiển thị thông
thanh tìm kiếm và nhấn nút tìm tin hội viên tìm kiếm.
kiếm (nếu sử dụng thanh tìm kiếm.
Ngoại lệ Lễ tân nhập mã hội viên không tồn tại.
=>Hệ thống thông báo lỗi.

Mã use UC18
case
Use Case Thêm hội viên
Ngữ cảnh Thêm thông tin hội viên.
Mô tả Lễ tân thêm thông tin hội viên vào hệ thống.
Tác nhân Lễ tân
Sự kiện Thêm hội viên.
kích hoạt
Điều kiện +Lễ tân vào được phần mềm nội bộ và đăng nhập thành công
tiên quyết
Kết quả Lễ tân thêm hội viên thành công.
Actor System
1. Lễ tân chọn mục “Quản lý hội 1.1. Hệ thống hiển thị giao diện
viên”. quản lý hội viên.
2. Lễ tân chọn mục “Thêm hội 2.1. Hệ thống hiển thị giao diện
Luồng sự viên”. thêm hội viên.
kiện
3. Lễ tân tiến hành nhập các thông
tin của hội viên cần thêm vào giao
diện hiển thị
4. Lễ tân nhấn nút “Thêm”. 4.1. Thông tin của hội viên được
52

thêm vào hệ thống


Ngoại lệ Lễ tân nhập thiếu hoặc sai thông tin.
=>Hệ thống báo lỗi tại các mục chưa được nhập hoặc những chỗ nhập sai
và yêu cầu nhập lại.
Bảng 21. Đặc tả Usecase Thêm hội viên

Bảng 22. Đặc tả Usecase Chỉnh sửa thông tin hội viên
Mã use UC19
case
Use Case Chỉnh sửa thông tin hội viên.
Ngữ cảnh Chỉnh sửa thông tin của hội viên trong hệ thống.
Mô tả Lễ tân thực hiện chỉnh sửa thông tin của hội viên trong hệ thống.
Tác nhân Lễ tân
Sự kiện Lễ tân chỉnh sửa thông tin hội viên.
kích hoạt
Điều kiện +Lễ tân vào được phần mềm nội bộ và đăng nhập thành công
tiên quyết
Kết quả Lễ tân chỉnh sửa thông tin hội viên thành công.
Luồng sự Actor System
kiện 1. Lễ tân chọn mục “Quản lý hội 1.1. Hệ thống hiển thị giao diện
viên”. quản lý hội viên.
2. Lễ tân chọn mục “Xem thông tin 2.1. Hệ thống hiển thị danh
hội viên”. sách hội viên và thanh tìm
kiếm.
3.a. Lễ tân chọn hội viên trong 3.a.1. Hệ thống hiển thị
danh sách. thông tin hội viên đã chọn.
3.b. Lễ tân nhập mã hội viên trên 3.b.1. Hệ thống hiển thị
thanh tìm kiếm và nhấn nút tìm thông tin hội viên tìm kiếm.
53

kiếm (nếu sử dụng thanh tìm kiếm).


4. Lễ tân chọn mục “Chỉnh sửa 4.1. Hệ thống hiển thị giao diện cập
thông tin” nhật thông tin.
5. Lễ tân nhập các thông tin cần
thiết.
6. Lễ tân nhấn nút “Lưu thông tin”. 6.1. Thông tin được cập nhật vào
hệ thống.
Ngoại lệ Lễ tân nhập sai hoặc thiếu thông tin
=> Hệ thống báo lỗi và yêu cầu nhập lại tại vị trí sai hoặc thiếu.

Bảng 23. Đặc tả Usecase Thêm chiết khấu


Mã use
UC20.
case

Use Case Thêm chiết khấu

Ngữ cảnh Thêm chiết khấu cho hội viên.

Mô tả Tác nhân thêm chiết khấu cho một hội viên.

Tác nhân Lễ tân.

Sự kiện
Nhấn vào nút “Thêm chiết khấu”
kích hoạt

Điều kiện
+ Tác nhân đã đăng nhập thành công vào hệ thống.
tiên quyết

Kết quả Tác nhân thêm thành công chiết khấu.

Luồng sự Tác nhân Hệ thống


kiện
1. Tác nhân chọn mục “Quản lý 1.1. Hệ thống hiển thị danh sách

hội viên”. hội viên.

2. Tác nhân chọn hội viên và nhấn 2.1. Hệ thống hiển thị thông báo
54

thêm chiết khấu thành công.


thêm chiết khấu. 2.2 Hệ thống cập nhật chiếu khấu
và cơ sở dữ liệu.
Ngoại lệ Không.

Bảng 24. Đặc tả Usecase Xem lịch đặt bàn


Mã use UC21
case
Use Case Xem lịch đặt bàn.
Ngữ cảnh Xem lịch đặt bàn trong hệ thống.
Mô tả Lễ tân thực hiện xem lịch đặt bàn trong hệ thống.
Tác nhân Lễ tân.
Sự kiện Xem lịch đặt bàn.
kích hoạt
Điều kiện + Lễ tân đã đăng nhập vào hệ thống.
tiên quyết
Kết quả Lễ tân xem lịch đặt bàn thành công.
Actor System
Luồng sự
1. Lễ tân chọn mục “Xem lịch đặt 1.1. Hệ thống hiển thị giao diện lịch
kiện
bàn”. đặt bàn.
Ngoại lệ Không

Bảng 25. Đặc tả Usecase Xem thông tin nhà cung cấp
Mã use UC22
case
Use Case Xem thông tin nhà cung cấp.
Ngữ cảnh Xem thông tin của nhà cung cấp trong hệ thống.
Mô tả Quản lý kho thực hiện xem thông tin của nhà cung cấp trong hệ thống.
Tác nhân Quản lý kho
55

Sự kiện Xem thông tin nhà cung cấp.


kích hoạt
Điều kiện + Quản lý kho đã đăng nhập vào hệ thống.
tiên quyết
Kết quả Quản lý kho xem thông tin nhà cung cấp thành công.
Actor System
1. Quản lý kho chọn mục “Quản lý 1.1. Hệ thống hiển thị giao diện quản
nhà cung cấp”. lý nhà cung cấp.
2. Quản lý kho chọn mục “Xem 2.1. Hệ thống hiển thị danh
thông tin nhà cung cấp”. sách nhà cung cấp và thanh tìm
Luồng sự kiếm.
kiện 3.a. Quản lý kho chọn nhà cung cấp 3.a.1. Hệ thống hiển thị thông
trong danh sách. tin nhà cung cấp đã chọn.
3.b. Quản lý kho nhập mã nhà cung 3.b.1. Hệ thống hiển thị thông
cấp trên thanh tìm kiếm và nhấn tin nhà cung cấp tìm kiếm.
nút tìm kiếm (nếu sử dụng thanh
tìm kiếm.
Ngoại lệ Quản lý kho nhập mã nhà cung cấp không tồn tại.
=>Hệ thống thông báo lỗi.

Bảng 26. Đặc tả Usecase Thêm nhà cùng cấp


Mã use UC23
case
Use Case Thêm nhà cung cấp
Ngữ cảnh Thêm thông tin nhà cung cấp .
Mô tả Lễ tân thêm thông tin nhà cung cấp vào hệ thống.
Tác nhân Quản lý kho
Sự kiện Thêm nhà cung cấp.
kích hoạt
56

Điều kiện +Quản lý kho truy cập vào được phần mềm nội bộ và đăng nhập thành
tiên quyết công.
Kết quả Quản lý kho thêm nhà cung cấp thành công.
Actor System
1. Quản lý kho chọn mục “Quản lý 1.1. Hệ thống hiển thị giao diện
nhà cung cấp”. quản lý nhà cung cấp.
2. Quản lý kho chọn mục “Thêm 2.1. Hệ thống hiển thị giao diện
nhà cung cấp”. thêm nhà cung cấp.
Luồng sự
kiện
3. Quản lý kho tiến hành nhập các
thông tin của nhà cung cấp cần
thêm vào giao diện hiển thị
4. Quản lý kho nhấn nút “Thêm”. 4.1. Thông tin của nhà cung cấp
được thêm vào hệ thống
Ngoại lệ Quản lý kho nhập thiếu hoặc sai thông tin.
=>Hệ thống báo lỗi tại các mục chưa được nhập hoặc những chỗ nhập sai
và yêu cầu nhập lại.

Bảng 27. Đặc tả Usecase Chỉnh sửa thông tin nhà cùng cấp
Mã use UC24
case
Use Case Chỉnh sửa thông tin nhà cung cấp.
Ngữ cảnh Chỉnh sửa thông tin của nhà cung cấp trong hệ thống.
Mô tả Quản lý kho thực hiện chỉnh sửa thông tin của nhà cung cấp trong hệ
thống.
Tác nhân Quản lý kho
Sự kiện Quản lý kho chỉnh sửa thông tin nhà cung cấp.
kích hoạt
57

Điều kiện + Quản lý kho truy cập vào được phần mềm nội bộ.
tiên quyết + Quản lý kho đã đăng nhập vào hệ thống.
Kết quả Quản lý kho chỉnh sửa thông tin nhà cung cấp thành công.
Actor System
1. Quản lý kho chọn mục “Quản lý 1.1. Hệ thống hiển thị giao diện
nhà cung cấp”. quản lý nhà cung cấp.
2. Quản lý kho chọn mục “Xem 2.1. Hệ thống hiển thị danh
thông tin nhà cung cấp”. sách nhà cung cấp và thanh
tìm kiếm.
3.a. Quản lý kho chọn nhà cung cấp 3.a.1. Hệ thống hiển thị
trong danh sách. thông tin nhà cung cấp đã
Luồng sự 3.b. Quản lý kho nhập mã nhà cung chọn.
kiện cấp trên thanh tìm kiếm và nhấn 3.b.1. Hệ thống hiển thị
nút tìm kiếm (nếu sử dụng thanh thông tin nhà cung cấp tìm
tìm kiếm). kiếm.
4. Quản lý kho chọn mục “Cập nhật 4.1. Hệ thống hiển thị giao diện cập
thông tin” nhật thông tin.
5. Quản lý kho nhập các thông tin
cần thiết.
6. Quản lý kho nhấn nút “Lưu 6.1. Thông tin được cập nhật vào
thông tin”. hệ thống.
Ngoại lệ Quản lý kho nhập sai hoặc thiếu thông tin
=> Hệ thống báo lỗi và yêu cầu nhập lại tại vị trí sai hoặc thiếu.

Bảng 28: Đặc tả use case Xóa nhà cung cấp


Mã use
UC25.
case

Use Case Xóa nhà cung cấp


58

Ngữ cảnh Xóa thông tin một nhà cung cấp trong hệ thống.

Mô tả Tác nhân xóa thông tin một nhà cung cấp trong hệ thống.

Tác nhân Quản lý kho.

Sự kiện Nhấn vào nút “Xóa” của một nhà cung cấp bất kỳ trong mục “Quản lý
kích hoạt nhà cung cấp”

Điều kiện
+ Tác nhân đã đăng nhập thành công vào hệ thống.
tiên quyết

Kết quả Tác nhân xóa nhà cung cấp thành công.

Tác nhân Hệ thống

1. Tác nhân chọn mục “Quản lý 1.1. Hệ thống hiển thị danh sách

nhà cung cấp”. các nhà cung cấp.


Luồng sự
2. Tác nhân tìm nhà cung cấp cần 2.1. Hệ thống hiển thị thông báo
kiện
xóa và nhấn nút “Xóa”. xác nhận xóa nhà cung cấp.

3.1. Hệ thống xóa nhà cung cấp và


3. Tác nhân nhấn nút “Xác nhận”.
hiển thị thông báo xóa thành công.

Ngoại lệ Không.

Bảng 29: Đặc tả use case Xem thông tin nguyên vật liệu
Mã use
UC26.
case

Use Case Xem thông tin nguyên vật liệu.

Ngữ cảnh Xem thông tin nguyên vật liệu trong hệ thống.

Mô tả Tác nhân muốn xem thông tin nguyên vật liệu hiện có trong hệ thống.

Tác nhân Quản lý kho, Quản lý nhà hàng.


59

Sự kiện Nhấn vào nguyên vật liệu bất kỳ trong danh sách thuộc mục “Quản lý
kích hoạt nguyên vật liệu”.

Điều kiện
+ Tác nhân đã đăng nhập thành công vào hệ thống.
tiên quyết

Kết quả Tác nhân xem được thông tin của nguyên vật liệu.

Tác nhân Hệ thống

1.1. Hệ thống hiển thị danh sách


1. Tác nhân chọn mục “Quản lý
Luồng sự các nguyên vật liệu.
nguyên vật liệu”.
kiện

2. Tác nhân chọn nguyên vật liệu 2.1. Hệ thống hiển thị thông tin chi
muốn xem thông tin. tiết của nguyên vật liệu được chọn.

Ngoại lệ Không.

Bảng 30: Đặc tả use case Thêm nguyên vật liệu


Mã use
UC27.
case

Use Case Thêm nguyên vật liệu.

Ngữ cảnh Thêm nguyên vật liệu mới vào hệ thống.

Mô tả Tác nhân thực hiện thêm một nguyên vật liệu mới vào hệ thống.

Tác nhân Quản lý kho.

Sự kiện Nhấn vào mục “Thêm nguyên vật liệu” trong mục “Quản lý nhà cung
kích hoạt cấp”
60

Điều kiện
+ Tác nhân truy cập vào được phần mềm quản lý nội bộ.
tiên quyết
+ Tác nhân đã đăng nhập thành công vào hệ thống.
Kết quả Tác nhân thêm thông tin một nguyên vật liệu mới thành công.

Tác nhân Hệ thống

1.1. Hệ thống hiển thị danh sách


1. Tác nhân chọn mục “Quản lý
nguyên vật liệu”. các nguyên vật liệu.

Luồng sự
2. Tác nhân chọn mục “Thêm 2.1. Hệ thống hiển thị giao diện
kiện nguyên vật liệu”. thêm nguyên vật liệu.

3.1. Hệ thống thêm thông tin


3. Tác nhân tiến hành nhập các
nguyên vật liệu và hiển thị thông
thông tin cần thiết vào form thông
tin và nhấn nút “Xác nhận”. báo thêm nguyên vật liệu thành
công.

Tác nhân nhập thiếu thông tin cần thiết => Hệ thống báo lỗi và yêu cầu
Ngoại lệ
nhập thông tin tại ô còn thiếu.

Bảng 31: Đặc tả use case Chỉnh sửa thông tin nguyên vật liệu
Mã use
UC28.
case

Use Case Chỉnh sửa thông tin nguyên vật liệu.

Ngữ cảnh Chỉnh sửa thông tin của một nguyên vật liệu trong hệ thống.

Tác nhân thực hiện việc chỉnh sửa thông tin của một nguyên vật liệu
Mô tả
trong hệ thống.

Tác nhân Quản lý kho.


61

Sự kiện Nhấn vào nút“Chỉnh sửa” ứng với nguyên vật liệu muốn sửa nằm trong
kích hoạt danh sách trong mục “Quản lý nguyên vật liệu”.

Điều kiện
+ Tác nhân truy cập vào được phần mềm quản lý nội bộ.
tiên quyết
+ Tác nhân đã đăng nhập thành công vào hệ thống.
Kết quả Tác nhân chỉnh sửa thông tin nguyên vật liệu thành công.

Tác nhân Hệ thống

1.1. Hệ thống hiển thị danh sách


1. Tác nhân chọn mục “Quản lý
nguyên vật liệu”. các nguyên vật liệu.

Luồng sự
2. Tác nhân tìm nguyên vật liệu 2.1. Hệ thống hiển thị giao diện
kiện cần chỉnh sửa và nhấn nút “Chỉnh chỉnh sửa thông tin nguyên vật
sửa”. liệu.

3.1. Hệ thống cập nhật thông tin


3. Tác nhân tiến hành nhập các
thông tin cần thiết vào form thông nguyên vật liệu và hiển thị thông
tin và nhấn nút “Xác nhận”. báo chỉnh sửa thành công.

Tác nhân nhập thiếu thông tin cần thiết => Hệ thống báo lỗi và yêu cầu
Ngoại lệ
nhập thông tin tại ô còn thiếu.

Bảng 32: Đặc tả use case Xóa nguyên vật liệu


Mã use
UC29.
case

Use Case Xóa nguyên vật liệu.

Ngữ cảnh Xóa một nguyên vật liệu trong hệ thống.

Mô tả Tác nhân thực hiện xóa một nguyên vật liệu trong hệ thống.
62

Tác nhân Quản lý kho.

Sự kiện Nhấn vào nút“Xóa” ứng với nguyên vật liệu muốn xóa nằm trong danh
kích hoạt sách trong mục “Quản lý nguyên vật liệu”.

Điều kiện
+ Tác nhân truy cập vào được phần mềm quản lý nội bộ.
tiên quyết
+ Tác nhân đã đăng nhập thành công vào hệ thống.
Kết quả Tác nhân xóa nguyên vật liệu thành công.

Tác nhân Hệ thống

1.1. Hệ thống hiển thị danh sách


1. Tác nhân chọn mục “Quản lý
nguyên vật liệu”. các nguyên vật liệu.

Luồng sự
kiện 2. Tác nhân tìm nguyên vật liệu 2.1. Hệ thống hiển thị thông báo
cần xóa và nhấn nút “Xóa”. xác nhận xóa nguyên vật liệu.

3.1. Hệ thống xóa nguyên vật liệu


3. Tác nhân nhấn nút “Xác nhận”.
và hiển thị thông báo xóa thành
công.

Ngoại lệ Không.

Bảng 33: Đặc tả use case Xem thông tin phiếu nhập nguyên vật liệu
Mã use
UC30.
case

Use Case Xem thông tin phiếu nhập nguyên vật liệu.

Xem thông tin chi tiết của một phiếu nhập nguyên vật liệu trong hệ
Ngữ cảnh
thống.

Mô tả Tác nhân thực hiện việc xem thông tin chi tiết của một phiếu nhập
63

nguyên vật liệu trong hệ thống.

Tác nhân Quản lý kho, Quản lý nhà hàng.

Sự kiện Nhấn vào nguyên vật liệu bất kỳ trong danh sách thuộc mục “Quản lý
kích hoạt phiếu nhập”.

Điều kiện
+ Tác nhân truy cập vào được phần mềm quản lý nội bộ.
tiên quyết
+ Tác nhân đã đăng nhập thành công vào hệ thống.
Kết quả Tác nhân xem thông tin phiếu nhập nguyên vật liệu thành công.

Tác nhân Hệ thống

1.1. Hệ thống hiển thị danh sách


1. Tác nhân chọn mục “Quản lý
Luồng sự các phiếu nhập.
phiếu nhập”.
kiện

2. Tác nhân chọn phiếu nhập cần 2.1. Hệ thống hiển thị thông tin chi
xem thông tin. tiết của phiếu nhập được chọn.

Ngoại lệ Không.

Bảng 34: Đặc tả use case Tạo phiếu nhập nguyên vật liệu
Mã use
UC31.
case

Use Case Tạo phiếu nhập nguyên vật liệu.

Ngữ cảnh Tạo phiếu nhập nguyên vật liệu vào hệ thống.

Mô tả Tác nhân thực hiện tạo phiếu nhập nguyên vật liệu vào hệ thống.

Tác nhân Quản lý kho.

Nhấn vào mục “Tạo phiếu nhập” trong mục “Quản lý phiếu nhập”.
Sự kiện
64

kích hoạt

Điều kiện
+ Tác nhân truy cập vào được phần mềm quản lý nội bộ.
tiên quyết
+ Tác nhân đã đăng nhập thành công vào hệ thống.
Kết quả Tác nhân tạo phiếu nhập nguyên vật liệu thành công.

Tác nhân Hệ thống

1.1. Hệ thống hiển thị danh sách


1. Tác nhân chọn mục “Quản lý
phiếu nhập”. các phiếu nhập.

Luồng sự
2. Tác nhân chọn mục “Tạo phiếu 2.1. Hệ thống hiển thị giao diện tạo
kiện
nhập”. phiếu nhập.

3. Tác nhân tiến hành nhập các 3.1. Hệ thống tạo phiếu nhập và
thông tin cần thiết vào form thông hiển thị thông báo tạo phiếu nhập
tin và nhấn nút “Xác nhận”. thành công.

Tác nhân nhập thiếu thông tin cần thiết => Hệ thống báo lỗi và yêu cầu
Ngoại lệ
nhập thông tin tại ô còn thiếu.

Bảng 35: Đặc tả use case Chỉnh sửa thông tin phiếu nhập nguyên vật liệu
Mã use
UC32.
case

Use Case Chỉnh sửa thông tin phiếu nhập nguyên vật liệu.

Chỉnh sửa thông tin chi tiết của một phiếu nhập nguyên vật liệu trong hệ
Ngữ cảnh
thống.

Mô tả Tác nhân thực hiện việc chỉnh sửa thông tin chi tiết của một phiếu nhập
65

nguyên vật liệu trong hệ thống.

Tác nhân Quản lý kho.

Sự kiện Nhấn vào nút “Chỉnh sửa” của phiếu nhập tương ứng nằm trong danh
kích hoạt sách của mục “Quản lý phiếu nhập”.

Điều kiện
+ Tác nhân truy cập vào được phần mềm quản lý nội bộ.
tiên quyết
+ Tác nhân đã đăng nhập thành công vào hệ thống.
Tác nhân chỉnh sửa thông tin phiếu nhập nguyên vật liệu thành
Kết quả
công.

Tác nhân Hệ thống

1.1. Hệ thống hiển thị danh sách


1. Tác nhân chọn mục “Quản lý
phiếu nhập”. các phiếu nhập.

Luồng sự
2. Tác nhân tìm phiếu nhập cần 2.1. Hệ thống hiển thị giao diện
kiện chỉnh sửa thông tin và nhấn nút chỉnh sửa thông tin phiếu nhập.
“Chỉnh sửa”.

3. Tác nhân tiến hành điền các 3.1. Hệ thống cập nhập lại thông
thông tin cần thiết vào form và tin của phiếu nhập và hiện thông
nhấn nút “Xác nhận”. báo chỉnh sửa thông tin thành cộng

Tác nhân nhập thiếu thông tin cần thiết => Hệ thống báo lỗi và yêu cầu
Ngoại lệ
nhập thông tin tại ô còn thiếu.

Bảng 36: Đặc tả use case Xóa phiếu nhập nguyên vật liệu
Mã use
UC33.
case
66

Use Case Xóa phiếu nhập nguyên vật liệu.

Ngữ cảnh Xóa phiếu nhập nguyên vật liệu trong hệ thống.

Mô tả Tác nhân thực hiện xóa phiếu nhập nguyên vật liệu trong hệ thống.

Tác nhân Quản lý kho.

Sự kiện Nhấn vào nút “Xóa” của phiếu nhập tương ứng nằm trong danh sách của
kích hoạt mục “Quản lý phiếu nhập”.

Điều kiện
+ Tác nhân truy cập vào được phần mềm quản lý nội bộ.
tiên quyết
+ Tác nhân đã đăng nhập thành công vào hệ thống.
Kết quả Tác nhân xóa phiếu nhập nguyên vật liệu thành công.

Tác nhân Hệ thống

1.1. Hệ thống hiển thị danh sách


1. Tác nhân chọn mục “Quản lý
phiếu nhập”. các phiếu nhập.

Luồng sự
kiện 2. Tác nhân tìm phiếu nhập muốn 2.1. Hệ thống hiển thị thông báo
xóa và nhấn nút “Xóa”. xác nhận xóa phiếu nhập.

3. Tác nhân nhấn nút “Xác nhận”. 3.1. Hệ thống xóa phiếu nhập và
hiển thị thông báo xóa thành công.

Ngoại lệ Không.

Bảng 37: Đặc tả use case Xem thông tin hóa đơn
Mã use
UC34.
case

Use Case Xem thông tin hóa đơn.


67

Ngữ cảnh Xem thông tin chi tiết của một hóa đơn trong hệ thống.

Tác nhân thực hiện việc xem thông tin chi tiết của một hóa đơn trong hệ
Mô tả
thống.

Tác nhân Thu ngân, quản lý nhà hàng.

Sự kiện
Nhấn vào hóa đơn bất kỳ trong danh sách thuộc mục “Quản lý hóa đơn”.
kích hoạt

Điều kiện
+ Tác nhân truy cập vào được phần mềm quản lý nội bộ.
tiên quyết
+ Tác nhân đã đăng nhập thành công vào hệ thống.
Kết quả Tác nhân xem thông tin hóa đơn thành công.

Tác nhân Hệ thống

1.1. Hệ thống hiển thị danh sách


1. Tác nhân chọn mục “Quản lý
Luồng sự các hóa đơn.
hóa đơn”.
kiện

2. Tác nhân chọn hóa đơn cần xem 2.1. Hệ thống hiển thị thông tin chi
thông tin. tiết của hóa đơn được chọn.

Ngoại lệ Không.

Bảng 38: Đặc tả use case Tạo hóa đơn


Mã use
UC35.
case

Use Case Tạo hóa đơn.

Ngữ cảnh Tạo hóa đơn mới.


68

Mô tả Tác nhân thực hiện tạo một hóa đơn mới.

Tác nhân Thu ngân.

Sự kiện
Nhấn vào mục “Tạo hóa đơn” trong mục “Quản lý hóa đơn”.
kích hoạt

Điều kiện
+ Tác nhân truy cập vào được phần mềm quản lý nội bộ.
tiên quyết
+ Tác nhân đã đăng nhập thành công vào hệ thống.
Kết quả Tác nhân tạo hóa đơn thành công.

Tác nhân Hệ thống

1.1. Hệ thống hiển thị danh sách


1. Tác nhân chọn mục “Quản lý
hóa đơn”. các hóa đơn.

Luồng sự
2. Tác nhân chọn mục “Tạo hóa 2.1. Hệ thống hiển thị giao diện tạo
kiện
đơn”. hóa đơn.

3. Tác nhân tiến hành nhập các 3.1. Hệ thống tạo hóa đơn và hiển
thông tin cần thiết vào form thông thị thông báo tạo hóa đơn thành
tin và nhấn nút “Xác nhận”. công.

Tác nhân nhập thiếu thông tin cần thiết => Hệ thống báo lỗi và yêu cầu
Ngoại lệ
nhập thông tin tại ô còn thiếu.
Bảng 39: Đặc tả use case Chỉnh sửa thông tin hóa đơn
Mã use
UC36.
case

Use Case Chỉnh sửa thông tin hóa đơn.

Ngữ cảnh Chỉnh sửa thông tin chi tiết của một hóa đơn trong hệ thống.
69

Tác nhân thực hiện việc chỉnh sửa thông tin chi tiết của một hóa đơn
Mô tả
trong hệ thống.

Tác nhân Thu ngân.

Sự kiện Nhấn vào nút “Chỉnh sửa” ứng với hóa đơn muốn sửa trong danh sách
kích hoạt của mục “Quản lý hóa đơn”.

Điều kiện
+ Tác nhân truy cập vào được phần mềm quản lý nội bộ.
tiên quyết
+ Tác nhân đã đăng nhập thành công vào hệ thống.
Kết quả Tác nhân chỉnh sửa thông tin hóa đơn thành công.

Tác nhân Hệ thống

1.1. Hệ thống hiển thị danh sách


1. Tác nhân chọn mục “Quản lý
hóa đơn”. các hóa đơn.

Luồng sự
2. Tác nhân tìm hóa đơn cần chỉnh 2.1. Hệ thống hiển thị giao diện
kiện sủa thông tin và nhấn nút “Chỉnh chỉnh sửa thông tin hóa đơn.
sửa”.

3. Tác nhân tiến hành điền các 3.1. Hệ thống cập nhập lại thông
thông tin cần thiết vào form và tin của hóa đơn và hiện thông báo
nhấn nút “Xác nhận”. chỉnh sửa thông tin thành công.

Tác nhân nhập thiếu thông tin cần thiết => Hệ thống báo lỗi và yêu cầu
Ngoại lệ
nhập thông tin tại ô còn thiếu.

Bảng 40: Đặc tả use case Xóa hóa đơn


Mã use
UC37.
case
70

Use Case Xóa hóa đơn.

Ngữ cảnh Xóa một hóa đơn trong hệ thống.

Mô tả Tác nhân thực hiện việc xóa một hóa đơn trong hệ thống.

Tác nhân Thu ngân.

Sự kiện Nhấn vào nút “Xóa” ứng với hóa đơn muốn xóa trong danh sách của
kích hoạt mục “Quản lý hóa đơn”.

Điều kiện
+ Tác nhân truy cập vào được phần mềm quản lý nội bộ.
tiên quyết
+ Tác nhân đã đăng nhập thành công vào hệ thống.
Kết quả Tác nhân xóa hóa đơn thành công.

Tác nhân Hệ thống

1.1. Hệ thống hiển thị danh sách


1. Tác nhân chọn mục “Quản lý
hóa đơn”. các hóa đơn.

Luồng sự
kiện 2. Tác nhân tìm hóa đơn cần xóa và 2.1. Hệ thống hiển thị thông báo
nhấn nút “Xóa”. xác nhận xóa hóa đơn.

3. Tác nhân nhấn nút “Xác nhận”. 3.1. Hệ thống xóa hóa đơn và hiện
thông báo xóa hóa đơn thành công.

Ngoại lệ Không.

Bảng 41: Đặc tả use case In hóa đơn


Mã use
UC38.
case

Use Case In hóa đơn.


71

Ngữ cảnh In một hóa đơn có trong hệ thống.

Mô tả Tác nhân thực hiện việc in một hóa đơn có trong hệ thống.

Tác nhân Thu ngân.

Sự kiện
Nhấn vào nút “In” trong trang thông tin chi tiết hóa đơn
kích hoạt

Điều kiện
+ Tác nhân truy cập vào được phần mềm quản lý nội bộ.
tiên quyết
+ Tác nhân đã đăng nhập thành công vào hệ thống.
Kết quả Tác nhân in hóa đơn thành công.

Tác nhân Hệ thống

1.1. Hệ thống hiển thị danh sách


1. Tác nhân chọn mục “Quản lý
hóa đơn”. các hóa đơn.
Luồng sự
kiện
2. Tác nhân chọn hóa đơn muốn in. 2.1. Hệ thống hiển thị thông tin hóa
đơn được chọn.

3. Tác nhân nhấn nút “In”. 3.1. Hệ thống in hóa đơn ra.

Ngoại lệ Không.

Bảng 42: Đặc tả use case Thống kê doanh thu


Mã use case UC39

Use Case Thống kê doanh thu

Ngữ cảnh Thống kê doanh thu nhà hàng


72

Mô tả Hệ thống thống kê doanh thu từ các hóa đơn được thanh toán.

Tác nhân Thu ngân

Sự kiện kích
Thống kê doanh thu.
hoạt

Điều kiện tiên + Thu ngân truy cập vào được phần mềm quản lý nội.
quyết + Thu ngân đã đăng nhập vào hệ thống.

Kết quả Thống kê doanh thu thành công

Tác nhân Hệ thống

Luồng sự kiện 1.1. Hệ thống hiển thị giao diện


1. Thu ngân chọn mục “Thống
kê doanh thu”. thống kê doanh thu.

Ngoại lệ Không.

Bảng 43: Đặc tả use case Thống kê doanh thu theo tháng
Mã use case UC40

Use Case Thống kê doanh thu theo tháng

Ngữ cảnh Thống kê doanh thu nhà hàng theo tháng

Mô tả Tổng doanh thu được thống kê theo tháng

Tác nhân Thu ngân

Sự kiện kích
Thống kê doanh thu theo tháng
hoạt

Điều kiện tiên + Thu ngân truy cập vào được phần mềm quản lý nội.
quyết + Thu ngân đã đăng nhập vào hệ thống.

Kết quả Thống kê doanh thu theo tháng thành công


73

Tác nhân Hệ thống

1. Thu ngân chọn mục 1.1. Hệ thống hiển thị giao diện thống
Luồng sự kiện “Thống kê doanh thu”. kê doanh thu.

2. Thu ngân chọn mục 2.1 Hệ thống hiển thị thông tin doanh

“Thống kê theo tháng”. thu thống kê theo tháng.

Ngoại lệ Không.

Bảng 44: Đặc tả use case Thống kê doanh thu theo năm
Mã use case UC41

Use Case Thống kê doanh thu theo năm

Ngữ cảnh Thống kê doanh thu nhà hàng theo năm

Mô tả Tổng doanh thu được thống kê theo năm

Tác nhân Thu ngân

Sự kiện kích
Thống kê doanh thu theo tháng
hoạt

Điều kiện tiên + Thu ngân truy cập vào được phần mềm quản lý nội.
quyết + Thu ngân đã đăng nhập vào hệ thống.

Kết quả Thống kê doanh thu theo năm thành công

Tác nhân Hệ thống

1. Thu ngân chọn mục “Thống 1.1. Hệ thống hiển thị giao diện thống
Luồng sự kiện kê doanh thu”. kê doanh thu.

2. Thu ngân chọn mục “Thống 2.1 Hệ thống hiển thị thông tin doanh
kê theo năm”. thu thống kê theo năm.

Ngoại lệ Không.
74

Bảng 45: Đặc tả use case Xem thông tin món ăn


Mã use case UC42

Use Case Xem thông tin món ăn

Ngữ cảnh Xem thông tin món ăn

Mô tả Hệ thống cấp quyền cho xem thông tin các món ăn trong nhà hàng

Tác nhân Quản lý nhà hàng

Sự kiện kích
Xem thông tin món ăn
hoạt

Điều kiện tiên + Quản lý nhà hàng truy cập vào phần mềm quản lý nội bộ.
quyết + Quản lý nhà hàng đã đăng nhập vào hệ thống.

Kết quả Quản lý truy cập thông tin món ăn thành công

Tác nhân Hệ thống

1. Quản lý nhà hàng chọn mục 1.1. Hệ thống hiển thị giao diện
Luồng sự kiện “Quản lý thực đơn”. quản lý thực đơn.

2. Quản lý nhà hàng chọn món ăn 2.1 Hệ thống hiển thị thông tin

muốn xem thông tin. món ăn.

Ngoại lệ Không.

Bảng 46: Đặc tả use case Thêm món ăn


Mã use case UC43

Use Case Thêm món ăn


75

Ngữ cảnh Thêm một món ăn mới

Mô tả Hệ thống cấp quyền cho phép thêm món ăn mới vào hệ thống

Tác nhân Quản lý nhà hàng

Sự kiện kích
Thêm món ăn
hoạt

Điều kiện + Quản lý nhà hàng truy cập vào phần mềm quản lý nội bộ.
tiên quyết + Quản lý nhà hàng đã đăng nhập vào hệ thống.

Kết quả Thêm món ăn thành công

Tác nhân Hệ thống

1. Quản lý nhà hàng chọn 1.1. Hệ thống hiển thị giao diện quản lý

mục “Quản lý thực đơn”. thực đơn.

2. Quản lý nhà hàng chọn


2.1 Hệ thống hiển thị thêm món ăn mới.
“Thêm món ăn”.
Luồng sự
3. Quản lý nhập thông tin
kiện
món ăn muốn thêm vào.
4.1 Thông tin món ăn đã được thêm vào
hệ thống.
4. Quản lý nhấn nút
“Thêm”. 4.2 Hệ thống thông báo thêm thành công
và cập nhật lại giao diện quản lý thực đơn.

Quản lý nhập sai hoặc thiếu thông tin món ăn => Hệ thống báo lỗi và yêu
Ngoại lệ
cầu bổ sung đầy đủ hoặc nhập lại.

Bảng 47: Đặc tả use case Chỉnh sửa thông tin món ăn
Mã use case UC44

Use Case Chỉnh sửa thông tin món ăn


76

Ngữ cảnh Chỉnh sửa thông tin món ăn

Mô tả Hệ thống cấp quyền cho phép sửa thông tin món ăn trong hệ thống

Tác nhân Quản lý nhà hàng

Sự kiện kích
Chỉnh sửa thông tin món ăn
hoạt

Điều kiện + Quản lý nhà hàng truy cập vào phần mềm quản lý nội bộ.
tiên quyết + Quản lý nhà hàng đã đăng nhập vào hệ thống.

Kết quả Chỉnh sửa thông tin món ăn thành công

Tác nhân Hệ thống

1. Quản lý nhà hàng chọn mục “Quản lý 1.1. Hệ thống hiển thị giao

thực đơn”. diện quản lý thực đơn.

2.1 Hệ thống hiển thị giao


Luồng sự 2. Quản lý nhà hàng chọn nút “Sửa
diện chỉnh sửa thông tin món
kiện thông tin” trên món ăn muốn chỉnh sửa.
ăn.

3. Quản lý nhập thông tin món ăn muốn


cập nhật.
4.1 Thông tin món ăn đã được
4. Quản lý nhấn nút “Lưu”.
cập nhật trong hệ thống.

Quản lý nhập sai hoặc thiếu thông tin món ăn => Hệ thống báo lỗi và yêu
Ngoại lệ
cầu bổ sung đầy đủ hoặc nhập lại.

Bảng 48: Đặc tả use case Xóa thông tin món ăn


Mã use case UC45

Use Case Xóa thông tin món ăn


77

Ngữ cảnh Xóa thông tin món ăn

Mô tả Hệ thống cấp quyền cho phép xóa món ăn ra khỏi hệ thống

Tác nhân Quản lý nhà hàng

Sự kiện kích
Xóa thông tin món ăn
hoạt

Điều kiện + Quản lý nhà hàng truy cập vào phần mềm quản lý nội bộ.
tiên quyết + Quản lý nhà hàng đã đăng nhập vào hệ thống.

Kết quả Xóa món ăn thành công

Tác nhân Hệ thống

1. Quản lý nhà hàng chọn mục 1.1. Hệ thống hiển thị giao diện

“Quản lý thực đơn”. quản lý thực đơn.

2. Quản lý nhà hàng chọn nút 2.1 Hệ thống hiển thị cảnh báo xác
Luồng sự
“Xóa” trên món ăn muốn xóa. nhận xóa món ăn.
kiện
3.1 Món ăn đã được xóa ra khỏi hệ

3. Quản lý xác nhận và chọn thống.

“Xóa”. 3.2 Hệ thống cập nhật lại danh


sách thực đơn trên giao diện.

Quản lý nhấn nút “Hủy” trên cảnh báo xác nhận => Hệ thống dừng thực
Ngoại lệ
thi chức năng xóa.

Bảng 49: Đặc tả use case Xem thông tin nhân viên
Mã use case UC46

Use Case Xem thông tin nhân viên


78

Ngữ cảnh Xem thông tin nhân viên

Mô tả Hệ thống cấp quyền cho phép xem thông tin nhân viên trong hệ thống

Tác nhân Quản lý nhà hàng

Sự kiện kích
Xem thông tin nhân viên
hoạt

Điều kiện + Quản lý nhà hàng truy cập vào phần mềm quản lý nội bộ.
tiên quyết + Quản lý nhà hàng đã đăng nhập vào hệ thống.

Kết quả Xem thông tin nhân viên thành công

Tác nhân Hệ thống

1. Quản lý nhà hàng chọn mục 1.1. Hệ thống hiển thị giao diện quản
Luồng sự
“Quản lý nhân viên”. lý nhân viên.
kiện
2. Quản lý nhà hàng chọn nhân 2.1 Hệ thống hiển thị thông tin chi

viên muốn xem thông tin tiết về nhân viên trong hệ thống.

Ngoại lệ Không

Bảng 50: Đặc tả use case Thêm nhân viên


Mã use case UC47

Use Case Thêm nhân viên

Ngữ cảnh Thêm nhân viên mới

Mô tả Hệ thống cấp quyền cho phép thêm nhân viên mới vào hệ thống.

Tác nhân Quản lý nhà hàng

Sự kiện
Thêm nhân viên
kích hoạt
79

Điều kiện + Quản lý nhà hàng truy cập vào phần mềm quản lý nội bộ.
tiên quyết + Quản lý nhà hàng đã đăng nhập vào hệ thống.

Kết quả Thêm nhân viên mới thành công

Tác nhân Hệ thống

1. Quản lý nhà hàng chọn 1.1. Hệ thống hiển thị giao diện quản lý

mục “Quản lý nhân viên”. nhân viên.

2. Quản lý nhà hàng nhấn 2.1 Hệ thống hiển thị giao diện thêm nhân

nút “Thêm nhân viên”. viên.

Luồng sự 3. Quản lý nhập thông tin


kiện của nhân viên cần thêm
vào.
4.1 Nhân viên mới đã được thêm vào hệ
thống.
4. Quản lý nhấn nút
4.2 Hệ thống hiển thị thông báo thêm thành
“Thêm”
công và cập nhật lại giao diện quản lý nhân
viên.

Quản lý nhập sai hoặc thiếu thông tin nhân viên => Hệ thống báo lỗi và
Ngoại lệ
yêu cầu bổ sung đầy đủ hoặc nhập lại.

Bảng 51: Đặc tả use case Chỉnh sửa thông tin nhân viên
Mã use case UC48

Use Case Chỉnh sửa thông tin nhân viên

Ngữ cảnh Chỉnh sửa thông tin nhân viên

Mô tả Hệ thống cấp quyền cho phép sửa thông tin nhân viên trong hệ thống.

Tác nhân Quản lý nhà hàng


80

Sự kiện
Chỉnh sửa thông tin nhân viên
kích hoạt

Điều kiện + Quản lý nhà hàng truy cập vào phần mềm quản lý nội bộ.
tiên quyết + Quản lý nhà hàng đã đăng nhập vào hệ thống.

Kết quả Sửa thông tin nhân viên thành công

Tác nhân Hệ thống

1. Quản lý nhà hàng chọn mục 1.1. Hệ thống hiển thị giao diện quản lý

“Quản lý nhân viên”. nhân viên.

2. Quản lý nhà hàng nhấn nút


2.1 Hệ thống hiển thị giao diện sửa
“Sửa thông tin” trên nhân viên
thông tin nhân viên.
cần sửa.
Luồng sự
3. Quản lý cập nhật thông tin
kiện
nhân viên cần cập nhật vào.
4.1 Hệ thống cập nhật lại thông tin nhân
viên trong hệ thống

4. Quản lý nhấn nút “Lưu” 4.2 Hệ thống hiển thị thông báo sửa
thành công và cập nhật lại giao diện
quản lý nhân viên.

Quản lý nhập sai hoặc thiếu thông tin nhân viên => Hệ thống báo lỗi và
Ngoại lệ
yêu cầu bổ sung đầy đủ hoặc nhập lại.

Bảng 52: Đặc tả use case Xóa nhân viên


Mã use case UC49

Use Case Xóa nhân viên

Ngữ cảnh Xóa nhân viên


81

Mô tả Hệ thống cấp quyền cho phép xóa nhân viên ra khỏi hệ thống.

Tác nhân Quản lý nhà hàng

Sự kiện
Xóa nhân viên
kích hoạt

Điều kiện + Quản lý nhà hàng truy cập vào phần mềm quản lý nội bộ.
tiên quyết + Quản lý nhà hàng đã đăng nhập vào hệ thống.

Kết quả Xóa thông tin nhân viên thành công

Tác nhân Hệ thống

1. Quản lý nhà hàng chọn 1.1. Hệ thống hiển thị giao diện quản lý

mục “Quản lý nhân viên”. nhân viên.

2. Quản lý nhà hàng nhấn nút


2.1 Hệ thống hiển thị cảnh báo xác nhận
“Xóa” trên nhân viên muốn
xóa nhân viên.
xóa.
3.1 Nhân viên được xóa ra khỏi hệ thống.
Luồng sự
3. Quản lý xác nhận và nhấn 3.2 Hệ thống hiển thị thông báo xóa thành
kiện
nút “Xóa” trên cảnh báo. công và cập nhật lại giao diện quản lý
nhân viên.

4.1 Hệ thống cập nhật lại thông tin nhân


viên trong hệ thống

4. Quản lý nhấn nút “Lưu” 4.2 Hệ thống hiển thị thông báo sửa thành
công và cập nhật lại giao diện quản lý
nhân viên.

Quản lý nhấn nút “Hủy” trên cảnh báo xác nhận => Hệ thống dừng thực
Ngoại lệ
thi chức năng xóa.
82

Bảng 53: Đặc tả use case Tra cứu chiết khấu


Mã use case UC50

Use Case Tra cứu chiết khấu

Ngữ cảnh Hội viên tra cứu chiết khấu

Mô tả Hệ thống cấp quyền cho phép tra cứu chiết khấu hội viên trong hệ thống

Tác nhân Hội viên

Sự kiện kích
Tra cứu chiết khấu
hoạt

Điều kiện + Tác nhân truy cập vào website của nhà hàng.
tiên quyết + Tác nhân đã đăng ký hội viên trong hệ thống.

Kết quả Tra cứu chiết khấu thành công

Tác nhân Hệ thống

1.1. Hệ thống hiển thị giao diện


1. Tác nhân chọn mục “Hội viên”.
hội viên.

2.1 Hệ thống tra cứu mã hội viên


Luồng sự trong hệ thống.
kiện
2.1.1 Hội viên tồn tại, hệ thống
2. Tác nhân nhập mã hội viên và
hiển thị chiết khấu.
nhấn nút “Xác nhận”.
2.1.2 Hội viên không tồn tại, hệ
thống hiện thị thông báo không
tìm thấy hội viên.

Ngoại lệ Không.
83

Bảng 54: Đặc tả use case Đổi mật khẩu hội viên
Mã use case UC51

Use Case Đổi mật khẩu hội viên

Ngữ cảnh Hội viên tiến hành đổi mật khẩu tài khoản hội viên

Mô tả Hệ thống cấp quyền cho phép đổi mật khẩu hội viên trong hệ thống

Tác nhân Hội viên

Sự kiện kích
Đổi mật khẩu hội viên
hoạt

Điều kiện + Tác nhân truy cập vào website của nhà hàng.
tiên quyết + Tác nhân đã đăng ký hội viên trong hệ thống.

Kết quả Đổi mật khẩu hội viên thành công

Tác nhân Hệ thống

1.1. Hệ thống hiển thị giao diện


1. Tác nhân chọn mục “Hội viên”.
hội viên.

2.1. Hệ thống xác thực thông tin.


2.1.1. Xác thực thành công. Hệ
Luồng sự
thống lưu mật khẩu mới vào cơ sở
kiện
2. Tác nhân nhập mã hội viên, mật dữ liệu và hiện thông báo “Đổi

khẩu cũ, mật khẩu mới và nhấn nút mật khẩu thành công”.

“Xác nhận”. 2.1.2. Xác thực không thành công.


Hệ thống hiện thông báo “Xác
thực không thành công vui lòng
nhập lại !”.
84

Ngoại lệ Không.

3.3 Sơ đồ hoạt động ( Activity Diagram ):


3.3.1 Usecase Đăng nhập

Hình 3 Sơ Đồ Hoạt Động Usecase Đăng nhập


3.3.2 Usecase Đăng xuất
85

Hình 4 Sơ Đồ Hoạt Động Usecase Đăng xuất


3.3.3 Usecase Đổi mật khẩu
86

Hình 5 Sơ Đồ Hoạt Động Usecase Đổi mật khẩu


3.3.4 Usecase Xem giỏ hàng

Hình 6 Sơ Đồ Hoạt Động Usecase Xem giỏ hàng


3.3.5 Usecase Đặt bàn
87

Hình 7 Sơ Đồ Hoạt Động Usecase Đặt bàn


3.3.6 Usecase Xem thực đơn

Hình 8 Sơ Đồ Hoạt Động Usecase Xem thực đơn


3.3.7 Usecase Đặt món trực tuyến
88

Hình 9 Sơ Đồ Hoạt Động Usecase Đặt món trực tuyến


3.3.8 Usecase Thanh toán
89

Hình 10 Sơ Đồ Hoạt Động Usecase Thanh toán


3.3.9 Usecase Thanh toán qua thẻ ngân hàng
90

Hình 11 Sơ Đồ Hoạt Động Usecase Thanh toán qua thẻ ngân hàng
3.3.10 Usecase Thanh toán qua ví điện tử

Hình 12 Sơ Đồ Hoạt Động Usecase Thanh toán qua ví điện tử


3.3.11 Usecase Xem danh sách bàn ăn
91

Hình 13 Sơ Đồ Hoạt Động Usecase Xem danh sách bàn ăn


3.3.12 Usecase Tạo phiếu gọi món
92

Hình 14 Sơ Đồ Hoạt Động Usecase Tạo phiếu gọi món


3.3.13 Usecase Xóa món ăn
93

Hình 15 Sơ Đồ Hoạt Động Usecase Xóa món ăn


3.3.14 Usecase Chọn món ăn
94

Hình 16 Sơ Đồ Hoạt Động Usecase Chọn món ăn


3.3.15 Usecase Thêm ghi chú
95
96

Hình 17 Sơ Đồ Hoạt Động Usecase Thêm ghi chú


3.3.16 Usecase In phiếu gọi món

Hình 18 Sơ Đồ Hoạt Động Usecase In phiếu gọi món


3.3.17 Usecase Xem danh sách hội viên
97

Hình 19 Sơ Đồ Hoạt Động Usecase Xem danh sách hội viên


3.3.18 Usecase Thêm hội viên
98

Hình 20 Sơ Đồ Hoạt Động Usecase Thêm hội viên


3.3.19 Usecase Chỉnh sửa thông tin hội viên
99
100

Hình 21 Sơ Đồ Hoạt Động Usecase Chỉnh sửa thông tin hội viên
3.3.20 Usecase Thêm chiết khấu

Hình 22 Sơ Đồ Hoạt Động Usecase Thêm chiết khấu


3.3.21 Usecase Xem lịch đặt bàn
101

Hình 23 Sơ Đồ Hoạt Động Usecase Xem lịch đặt bàn


3.3.22 Usecase Xem thông tin nhà cung cấp
102

Hình 24 Sơ Đồ Hoạt Động Usecase Xem thông tin nhà cung cấp
3.3.23 Usecase Thêm nhà cùng cấp
103

Hình 25 Sơ Đồ Hoạt Động Usecase Thêm nhà cùng cấp


3.3.24 Usecase Chỉnh sửa thông tin nhà cùng cấp
104
105

Hình 26 Sơ Đồ Hoạt Động Usecase Chỉnh sửa thông tin nhà cùng cấp
3.3.25 Usecase Xóa nhà cùng cấp

Hình 27 Sơ Đồ Hoạt Động Usecase Xóa nhà cùng cấp


3.3.26 Usecase Xem thông tin nguyên vật liệu
106

Hình 28 Sơ Đồ Hoạt Động Usecase Xem thông tin nguyên vật liệu
3.3.27 Usecase Thêm nguyên vật liệu

Hình 29 Sơ Đồ Hoạt Động Usecase Thêm nguyên vật liệu


3.3.28 Usecase Chỉnh sửa thông tin nguyên vật liệu
107

Hình 30 Sơ Đồ Hoạt Động Usecase Chỉnh sửa thông tin nguyên vật liệu
3.3.29 Usecase Xóa nguyên vật liệu
108

Hình 31 Sơ Đồ Hoạt Động Usecase Xóa nguyên vật liệu


3.3.30 Usecase Xem thông tin phiếu nhập nguyên vật liệu

Hình 32 Sơ Đồ Hoạt Động Usecase Xem thông tin phiếu nhập nguyên vật liệu
3.3.31 Usecase Tạo phiếu nhập nguyên vật liệu
109

Hình 33 Sơ Đồ Hoạt Động Usecase Tạo phiếu nhập nguyên vật liệu
3.3.32 Usecase Chỉnh sửa thông tin phiếu nhập nguyên vật liệu
110

Hình 34 Sơ Đồ Hoạt Động Usecase Chỉnh sửa thông tin phiếu nhập nguyên vật liệu
3.3.33 Usecase Xóa phiếu nhập nguyên vật liệu
111

Hình 35 Sơ Đồ Hoạt Động Usecase Xóa phiếu nhập nguyên vật liệu
3.3.34 Usecase Xem thông tin hóa đơn
112

Hình 36 Sơ Đồ Hoạt Động Usecase Xem thông tin hóa đơn


3.3.35 Usecase Tạo hóa đơn
113

Hình 37 Sơ Đồ Hoạt Động Usecase Tạo hóa đơn


3.3.36 Usecase Chỉnh sửa thông tin hóa đơn
114

Hình 38 Sơ Đồ Hoạt Động Usecase Chỉnh sửa thông tin hóa đơn
3.3.37 Usecase Xóa hóa đơn
115

Hình 39 Sơ Đồ Hoạt Động Usecase Xóa hóa đơn


3.3.38 Usecase In hóa đơn

Hình 40 Sơ Đồ Hoạt Động Usecase In hóa đơn


3.3.39 Usecase Thống kê doanh thu
116

Hình 41 Sơ Đồ Hoạt Động Usecase Thống kê doanh thu


3.3.40 Usecase Thống kê doanh thu theo tháng

Hình 42 Sơ Đồ Hoạt Động Usecase Thống kê doanh thu theo tháng

3.3.41 Usecase Thống kê doanh thu theo năm


117

Hình 43 Sơ Đồ Hoạt Động Usecase Thống kê doanh thu theo năm


3.3.42 Usecase Xem thông tin món ăn

Hình 44 Sơ Đồ Hoạt Động Usecase Xem thông tin món ăn


3.3.43 Usecase Thêm món ăn
118

Hình 45 Sơ Đồ Hoạt Động Usecase Thêm món ăn


3.3.44 Usecase Chỉnh sửa thông tin món ăn
119

Hình 46 Sơ Đồ Hoạt Động Usecase Chỉnh sửa thông tin món ăn


3.3.45 Usecase Xóa thông tin món ăn
120

Hình 47 Sơ Đồ Hoạt Động Usecase Xóa thông tin món ăn


3.3.46 Usecase Xem thông tin nhân viên
121

Hình 48 Sơ Đồ Hoạt Động Usecase Xem thông tin nhân viên


3.3.47 Usecase Thêm nhân viên
122

Hình 49 Sơ Đồ Hoạt Động Usecase Thêm nhân viên


3.3.48 Usecase Chỉnh sửa thông tin nhân viên
123

Hình 50 Sơ Đồ Hoạt Động Usecase Chỉnh sửa thông tin nhân viên
3.3.49 Usecase Xóa nhân viên
124

Hình 51 Sơ Đồ Hoạt Động Usecase Xóa nhân viên

3.3.50 Usecase Tra cứu chiết khấu


125

Hình 52 Sơ Đồ Hoạt Động Usecase Tra cứu chiết khấu

3.3.51 Usecase Đổi mật khẩu hội viên

Hình 53 Sơ Đồ Hoạt Động Usecase Đổi mật khẩu hội viên


126

3.4 Sơ đồ tuần tự ( Sequence Diagram )


3.4.1 Usecase Đăng nhập

Hình 54 Sơ Đồ Tuần Tự Usecase Đăng nhập


3.4.2 Usecase Đăng xuất
127

Hình 55 Sơ Đồ Tuần Tự Usecase Đăng xuất


3.4.3 Usecase Đổi mật khẩu
128

Hình 56 Sơ Đồ Tuần Tự Usecase Đổi mật khẩu


3.4.4 Usecase Xem giỏ hàng

Hình 57 Sơ Đồ Tuần Tự Usecase Xem giỏ hàng


129

3.4.5 Usecase Đặt bàn

Hình 58 Sơ Đồ Tuần Tự Usecase Đặt bàn


3.4.6 Usecase Xem thực đơn

Hình 59 Sơ Đồ Tuần Tự Usecase Xem thực đơn


130

3.4.7 Usecase Đặt món trực tuyến

Hình 60 Sơ Đồ Tuần Tự Usecase Đặt món trực tuyến


3.4.8 Usecase Thanh toán

Hình 61 Sơ Đồ Tuần Tự Usecase Thanh toán


3.4.9 Usecase Thanh toán qua thẻ ngân hàng
131

Hình 62 Sơ Đồ Tuần Tự Usecase Thanh toán qua thẻ ngân hàng


3.4.10 Usecase Thanh toán qua ví điện tử

Hình 63 Sơ Đồ Tuần Tự Usecase Thanh toán qua ví điện tử


132

3.4.11 Usecase Xem danh sách bàn ăn

Hình 64 Sơ Đồ Tuần Tự Usecase Xem danh sách bàn ăn


3.4.12 Usecase Tạo phiếu gọi món
133

Hình 65 Sơ Đồ Tuần Tự Usecase Tạo phiếu gọi món


3.4.13 Usecase Xóa món ăn
134

Hình 66 Sơ Đồ Tuần Tự Usecase Xóa món ăn


3.4.14 Usecase Chọn món ăn

Hình 67 Sơ Đồ Tuần Tự Usecase Chọn món ăn


3.4.15 Usecase Thêm ghi chú
135

Hình 68 Sơ Đồ Tuần Tự Usecase Thêm ghi chú


3.4.16 Usecase In phiếu gọi món

Hình 69 Sơ Đồ Tuần Tự Usecase In phiếu gọi món


3.4.17 Usecase Xem danh sách hội viên
136

Hình 70 Sơ Đồ Tuần Tự Usecase Xem danh sách hội viên


3.4.18 Usecase Thêm hội viên

Hình 71 Sơ Đồ Tuần Tự Usecase Thêm hội viên


3.4.19 Usecase Chỉnh sửa thông tin hội viên
137

Hình 72 Sơ Đồ Tuần Tự Usecase Chỉnh sửa thông tin hội viên


3.4.20 Usecase Thêm chiết khấu

Hình 73 Sơ Đồ Tuần Tự Usecase Thêm chiết khấu


3.4.21 Usecase Xem lịch đặt bàn
138

Hình 74 Sơ Đồ Tuần Tự Usecase Xem lịch đặt bàn


3.4.22 Usecase Xem thông tin nhà cung cấp

Hình 75 Sơ Đồ Tuần Tự Usecase Xem thông tin nhà cung cấp


3.4.23 Usecase Thêm nhà cùng cấp
139

Hình 76 Sơ Đồ Tuần Tự Usecase Thêm nhà cùng cấp


3.4.24 Usecase Chỉnh sửa thông tin nhà cùng cấp

Hình 77 Sơ Đồ Tuần Tự Usecase Chỉnh sửa thông tin nhà cùng cấp
3.4.25 Usecase Xóa nhà cùng cấp
140

Hình 78 Sơ Đồ Tuần Tự Usecase Xóa nhà cùng cấp


3.4.26 Usecase Xem thông tin nguyên vật liệu

Hình 79 Sơ Đồ Tuần Tự Usecase Xem thông tin nguyên vật liệu


3.4.27 Usecase Thêm nguyên vật liệu

Hình 80 Sơ Đồ Tuần Tự Usecase Thêm nguyên vật liệu


3.4.28 Usecase Chỉnh sửa thông tin nguyên vật liệu
141

Hình 81 Sơ Đồ Tuần Tự Usecase Chỉnh sửa thông tin nguyên vật liệu
3.4.29 Usecase Xóa nguyên vật liệu
142

Hình 82 Sơ Đồ Tuần Tự Usecase Xóa nguyên vật liệu


3.4.30 Usecase Xem thông tin phiếu nhập nguyên vật liệu

Hình 83 Sơ Đồ Tuần Tự Usecase Xem thông tin phiếu nhập nguyên vật liệu
3.4.31 Usecase Tạo phiếu nhập nguyên vật liệu

Hình 84 Sơ Đồ Tuần Tự Usecase Tạo phiếu nhập nguyên vật liệu


3.4.32 Usecase Chỉnh sửa thông tin phiếu nhập nguyên vật liệu
143

Hình 85 Sơ Đồ Tuần Tự Usecase Chỉnh sửa thông tin phiếu nhập nguyên vật liệu
3.4.33 Usecase Xóa phiếu nhập nguyên vật liệu
144

Hình 86 Sơ Đồ Tuần Tự Usecase Xóa phiếu nhập nguyên vật liệu


3.4.34 Usecase Xem thông tin hóa đơn

Hình 87 Sơ Đồ Tuần Tự Usecase Xem thông tin hóa đơn


3.4.35 Usecase Tạo hóa đơn
145

Hình 88 Sơ Đồ Tuần Tự Usecase Tạo hóa đơn


3.4.36 Usecase Chỉnh sửa thông tin hóa đơn

Hình 89 Sơ Đồ Tuần Tự Usecase Chỉnh sửa thông tin hóa đơn


3.4.37 Usecase Xóa hóa đơn
146

Hình 90 Sơ Đồ Tuần Tự Usecase Xóa hóa đơn


3.4.38 Usecase In hóa đơn

Hình 91 Sơ Đồ Tuần Tự Usecase In hóa đơn


3.4.39 Usecase Thống kê doanh thu
147

Hình 92 Sơ Đồ Tuần Tự Usecase Thống kê doanh thu


3.4.40 Usecase Thống kê doanh thu theo tháng

Hình 93 Sơ Đồ Tuần Tự Usecase Thống kê doanh thu theo tháng


3.4.41 Usecase Thống kê doanh thu theo năm
148

Hình 94 Sơ Đồ Tuần Tự Usecase Thống kê doanh thu theo năm


3.4.42 Usecase Xem thông tin món ăn

Hình 95. Sơ Đồ Tuần Tự Usecase Xem thông tin món ăn


3.4.43 Usecase Thêm món ăn
149

Hình 96 Sơ Đồ Tuần Tự Usecase Thêm món ăn


3.4.44 Usecase Chỉnh sửa thông tin món ăn

Hình 97. Sơ Đồ Tuần Tự Usecase Chỉnh sửa thông tin món ăn


3.4.45 Usecase Xóa thông tin món ăn
150

Hình 98. Sơ Đồ Tuần Tự Usecase Xóa thông tin món ăn


3.4.46 Usecase Xem thông tin nhân viên

Hình 99. Sơ Đồ Tuần Tự Usecase Xem thông tin nhân viên


3.4.47 Usecase Thêm nhân viên
151

Hình 100. Sơ Đồ Tuần Tự Usecase Thêm nhân viên


3.4.48 Usecase Chỉnh sửa thông tin nhân viên

Hình 101. Sơ Đồ Tuần Tự Usecase Chỉnh sửa thông tin nhân viên
3.4.49 Usecase Xóa nhân viên
152

Hình 102. Sơ Đồ Tuần Tự Usecase Xóa nhân viên

3.4.50 Usecase Tra cứu chiết khấu

Hình 103. Sơ Đồ Tuần Tự Usecase Tra cứu chiết khấu

3.4.51 Usecase Đổi mật khẩu hội viên


153

Hình 104. Sơ Đồ Tuần Tự Usecase Đổi mật khẩu hội viên


154

3.5 Mô hình thực thể ERD

Hình 105. Mô hình thực thể ERD


3.6 Chuyển mô hình thực thể ERD sang mô hình quan hệ
155

Hình 106. Mô quan hệ Hệ thống Quản lý nhà hàng

3.7 Sơ đồ Class (Class Diagram)


156

Hình 107. Sơ đồ Class Diagram


157

3.8 Phân tích tiêu chí SWOT:


Điểm mạnh (Strengths):
 Nhà hàng đã có một số lượng khách hàng từ trước, vì vậy số lượng
khách sẽ tiếp tục được duy trì và gia tăng.
 Hệ thống giúp việc quản lý trở nên dễ dàng, nhanh chóng, tăng năng
suất làm việc cho nhân viên.
 Góp phần quảng bá hình ảnh và thông tin nhà hàng tốt hơn, từ đó sẽ
tiếp cận nhiều khách hàng hơn.
 Mang lại tiện ích cho khách hàng khi có thể đặt bàn trước và đặt món
ăn tại nhà trên website hệ thống; đồng thời giúp khách hàng dễ dàng
tìm được các thông tin của nhà hàng, xem món ăn được cập nhật mới
nhất một cách nhanh chóng.
 Chương trình hội viên sẽ tăng số lần quay lại của khách hàng.
Điểm yếu (Weaknesses)
 Các chương trình khuyến mãi chưa nhiều.
 Số lượng chi nhánh chưa phân bố rộng rãi trên cả nước.
Cơ hội (Opportunities)
 Nhu cầu sử dụng dịch vụ tại nhà ngày càng tăng do thói quen trong
dịch bệnh.
 Hệ thống có khả năng mở rộng giúp nhà hàng mở rộng chi nhánh.
Thách thức (Threats)
 Các đối thủ cạnh tranh cũng áp dụng hệ thống.
 Các ứng dụng giao đồ ăn chiếm nhiều sự ưu tiên do quá quen thuộc.
Thước đo đánh giá sự thành công
Các tiêu chí đánh giá sự thành công:
 Lượng khách hàng truy cập website ngày càng tăng.
 Tổng doanh thu của nhà hàng tăng đều.
 Số lượng đơn đặt hàng giao tận nhà ngày càng nhiều.
158

 Được nhiều khách hàng đánh giá tốt.


 Thời gian khách hàng ở lại website.
 Keyword Ranking của website nhà hàng nằm ở top 3 trang đầu khi
tìm kiếm.
159

CHƯƠNG 4 – PERSONAS
4.1 Thực hiện khảo sát người dùng và đánh giá
Đối tượng khảo sát:
 Đối tượng: Khách hàng
 Nhóm tuổi: Từ 18 tuổi trở lên
 Khu vực: Thành phố Hồ Chí Minh
 Trình độ: Không yêu cầu
 Mức độ sử dụng công nghệ: Biết và sử dụng công nghệ ở mức cơ bản
 Yêu cầu khác: Sử dụng dịch vụ đặt bàn, giao đồ ăn tại nhà ít nhất 2
lần
Link khảo sát: https://forms.gle/1XFBGxDeo5CRG9Dp6

Câu hỏi khảo sát và kết quả khảo sát:


+ Bạn có thường xuyên đi ăn ở nhà hàng không ?

Hình 108. Thống kê tần suất khách tới ăn ở nhà hàng


+ Bạn có thường đặt bàn trước khi đến nhà hàng không ?
160

Hình 109. Thống kê tỷ lệ đặt bàn trước khi đi ăn nhà hàng


+ Bạn có thường đặt món ăn giao tận nơi tại website nhà hàng không ?

Hình 110. Thống kê tần suất đặt giao món ăn tận nhà
+ Khi đặt món ăn bạn thường dùng dịch vụ giao đồ ăn của bên nào ?
161

Hình 111. Thống kê tỷ lệ sử dụng các dịch vụ giao đồ ăn


+ Bạn thích ăn trực tiếp tại nhà hàng hay đặt món giao tận nhà hơn ?

Hình 112. Thống kê tỷ lệ giữa đặt trực tuyến và ăn trực tiếp tại nhà hàng
+ Thiết bị bạn thường sử dụng để truy cập website của nhà hàng là gì ?
162

Hình 113. Thống kê tỷ lệ sử dụng các thiết bị để truy cập website


+ Thời gian bạn dành cho việc truy cập website là bao nhiêu ?

Hình 114. Thống kê tỷ lệ thời gian truy cập website


+ Dịch vụ ưa thích của bạn khi sử dụng một website nhà hàng là gì ?
163

Hình 115. Thống kê các dịch vụ được ưa thích khi dùng website
+ Những điều khiến bạn chú ý nhất khi vào một website nhà hàng là gì ?

Hình 116. Thống kê các yếu tố được yêu thích trên website

+ Điều khiến bạn không hài lòng khi dùng các website nhà hàng là gì ?

Hình 117. Thống kê các yếu tố gây không hài lòng


164

4.2 Thực hiện tạo các Personas:

Hình 118. Personas Tăng Kiến Trung


165

Hình 119. Personas Đăng Trí


166

Hình 120. Personas Lê Hồng Trâm


167

Hình 121. Personas Hoàng Vũ


168

CHƯƠNG 5 – LÊN Ý TƯỞNG THIẾT KẾ


5.1 Nêu ý tưởng thiết kế
Giao diện của hệ thống quản lý Nhà hàng Cơm Nhà sẽ được xây dựng dựa
trên hai màu chủ đạo là: Trắng và Đỏ. Trong đó màu trắng sẽ tượng trưng cho sự
thuần khiết, tạo cảm giác dễ chịu cũng như làm nổi bật lên các hình ảnh về món ăn
và thông tin của nhà hàng; còn màu đỏ sẽ mang đến cảm giác ấm cúng, gần gũi như
cách mà nhà hàng Cơm nhà được đặt, giúp khách hàng cảm nhận được tình cảm mà
nhà hàng dành cho họ và màu đỏ cũng giúp kích thích khiến món ăn trở nên ngon
miệng hơn. Các giao diện cũng sẽ áp dụng thêm vào các hình ảnh để giúp người
dùng có thêm nhiều thông tin hữu ích hơn, đồng thời giúp giao diện trở nên đẹp và
hấp dẫn người dùng.
Bên cạnh đó, các thao tác sẽ được thiết kế đơn giản và dễ sử dụng, các nút
bấm sẽ được bố trí dễ tìm thấy để giúp trải nghiệm của người dùng được nâng cao
hơn.
Ngoài ra, nhóm cũng sẽ tham khảo thêm các thiết kế của các nhà hàng lớn
trên thị trường để tạo ra một giao diện hoàn hảo nhất có thể như:
 Giao diện nhà hàng KFC.
 Giao diện nhà hàng Lotteria.
 Giao diện nhà hàng Phương Nam.
 Giao diện nhà hàng Mận Đỏ.
Cuối cùng, nhóm sẽ dựa vào các góp ý đã thu thập thông qua khảo sát và các
kinh nghiệm đã học và đúc kết được để áp dụng vào xây dựng ra một giao diện tốt
nhất.
5.2 Storyboard cho khách hàng:
169

Hình 122. Storyboard Truy cập website Cơm Nhà


170

Hình 123. Storyboard Xem thực đơn


171

Hình 124. Storyboard Xem giới thiệu


172

Hình 125. Storyboard Liên hệ nhà hàng Cơm Nhà


173

Hình 126. Storyboard Tra cứu chiết khấu hội viên


174

Hình 127. Storyboard Đổi mật khẩu hội viên


175

Hình 128. Storyboard Thêm món ăn vào giỏ hàng


176

Hình 129. Storyboard Xem thông tin giỏ hàng


177

Hình 130. Storyboard Xóa món ăn khỏi giỏ hàng


178

Hình 131. Storyboard Đặt giao món ăn


179

Hình 132. Storyboard Đặt bàn


180

CHƯƠNG 6 – HIỆN THỰC HÓA HỆ THỐNG


6.1 Wireframe giao diện khách hàng:

Hình 133. Wireframe trang chủ nhà hàng


181

Hình 134. Wireframe trang thực đơn nhà hàng


182

Hình 135. Wireframe trang giới thiệu nhà hàng


183

Hình 136. Wireframe trang liên hệ nhà hàng


184

Hình 137. Wireframe trang đặt bàn nhà hàng


185

Hình 138. Wireframe trang giỏ hàng nhà hàng


186

Hình 139. Wireframe trang đặt món online nhà hàng


187

Hình 140. Wireframe trang hội viên nhà hàng


188

6.2 Prototype giao diện khách hàng:

Hình 141. Prototype trang chủ nhà hàng


189

Hình 142. Prototype trang thực đơn nhà hàng


190

Hình 143. Prototype trang giới thiệu nhà hàng


191

Hình 144. Prototype trang liên hệ nhà hàng


192

Hình 145. Prototype trang đặt bàn nhà hàng


193

Hình 146. Prototype trang giỏ hàng nhà hàng


194

Hình 147. Prototype trang đặt món online nhà hàng


195

Hình 148. Prototype trang hội viên nhà hàng


196

6.3 Mô hình phát triển phần mềm


Vòng đời phát triển phần mềm (SDLC) là một loạt các giai đoạn giúp chúng
ta có cái nhìn chung về quy trình xây dựng phần mềm. Phần mềm sẽ được hiện thực
hóa và phát triển như thế nào? Từ giai đoạn tìm hiểu các yêu cầu và mô hình hóa
việc kinh doanh để chuyển đổi các ý tưởng và yêu cầu kinh doanh này thành các
chức năng và tính năng ! Cho đến khi sử dụng và vận hành để đạt được nhu cầu
kinh doanh.
Một kỹ sư phần mềm giỏi cần có đủ kiến thức về cách chọn mô hình SDLC
dựa trên bối cảnh dự án và yêu cầu kinh doanh. Do đó, có thể được yêu cầu chọn
đúng mô hình SDLC tùy theo mối quan tâm và yêu cầu cụ thể của dự án để đảm bảo
thành công của dự án.
6.3.1. Mô hình thác nước (Waterfall Model)
Mô hình Thác nước là một dòng tuần tự tuyến tính. Trong đó quá trình phát
triển được xem là chảy đều đặn xuống dưới (như thác nước) qua các giai đoạn triển
khai phần mềm. Điều này có nghĩa là bất kỳ giai đoạn nào trong quá trình phát triển
chỉ bắt đầu nếu giai đoạn trước đó hoàn thành. Cách tiếp cận thác nước không xác
định quy trình quay trở lại giai đoạn trước đó để xử lý các thay đổi theo yêu cầu.
Cách tiếp cận thác nước là cách tiếp cận sớm nhất và được biết đến rộng rãi nhất đã
được sử dụng để phát triển phần mềm.
Vậy các giai đoạn trong mô hình phát triển này là gì ?
Requirement Gathering: Thu thập và phân tích yêu cầu được ghi lại vào tài
liệu đặc tả yêu cầu trong giai đoạn này.
System Analysis: Phân tích thiết kế hệ thống phần mềm, xác định kiến trúc
hệ thống tổng thể của phần mềm.
Coding: Hệ thống được phát triển theo từng unit và được tích hợp trong giai
đoạn tiếp theo. Mỗi Unit được phát triển và kiểm thử bởi dev được gọi là Unit Test.
Testing: Cài đặt và kiểm thử phần mềm. Công việc chính của giai đoạn này
là kiểm tra và sửa tất cả những lỗi tìm được sao cho phần mềm hoạt động chính xác
và đúng theo tài liệu đặc tả yêu cầu.
197

Implementation: Triển khai hệ thống trong môi trường khách hàng và đưa
ra thị trường.
Operations and Maintenance: Bảo trì hệ thống khi có bất kỳ thay đổi nào
từ phía khách hàng, người sử dụng.

Hình 149. Mô hình thác nước


6.3.2. Ưu Nhược Điểm
Ưu điểm Nhược điểm
- Dễ dàng giải thích với người dùng - Nếu một giai đoạn gặp khó khăn ( bị
cũng như với khách hàng. đóng băng ) thì không thể chuyển sang
- Có hướng tiếp cận cấu trúc. giai đoạn tiếp theo được.
- Các giai đoạn và hoạt động của hệ - Khi đã hoàn thành một giai đoạn thì
thống được định nghĩa và xác định rõ việc quay lại giai đoạn trước đó để thay
ràng. đổi , chỉnh sửa bổ sung rất khó.
- Giúp cho việc lên kế hoạch và lên lịch - Tính linh hoạt chưa cao , việc điều
cho dự án dễ dàng hơn. chỉnh phạm vi của hệ thống rất khó và
198

- Xác minh ở mỗi giai đoạn đảm bảo tốn kém.


phát hiện sớm các sai sót / hiểu nhầm. - Trong trường hợp phát sinh những
- Kết quả phát triển ở các giai đoạn yêu cầu ngoài kế hoạch ban đầu thì sẽ
được xác nhận rõ ràng. rất tốn chi phí và thời gian để giải quyết
yêu cầu phát sinh đó.

6.3.3. Lý do chọn mô hình


- Do đây mô hình phù hợp với các dự án nhỏ, thời gian phát triển ngắn và cụ
thể ở đây là phần mềm Quản Lý Nhà Hàng mức độ báo cáo cuối kỳ.
- Mô hình có hướng tiếp cận đơn giản, dễ hiểu, do đó việc phân công công
việc cũng như quản lý và xác định tiến độ công việc rất dễ dàng.
- Do mô hình được phát triển theo từng giai đoạn nên việc phát hiện các lỗi
cũng như những điểm bất hợp lý được đảm bảo phát hiện sớm và khắc phục.

6.4 ASP.NET Core API và Entity Framework Core


6.4.1 Setup Project:
Trước khi sử dụng được Entity Framework Core ta cần sử dụng Nuget
Package để cài đặt một số Packages cần thiết như sau:
199

Hình 150. Các packages cần thiết để sử dụng Entity Framework


Tiếp theo ta import cơ sở dữ liệu vào SQL Server bằng cách chạy script
quanlynhahang_SQL.sql sau đó Add Connections vào Project và lấy Connection
String ở tab Properties.

Hình 151. Connection đến database sau khi thêm vào project
Sau khi đã có Connection String ta chạy câu lệnh “Scaffold-DbContext
"Server=[Điền Connection String vào đây];Trusted_Connection=True;"
Microsoft.EntityFrameworkCore.SqlServer -OutputDir Models” trong cửa sở
dòng lệnh Package Manager Console để sinh ra các thực thể (Entity) từ Database ta
đã kết nối.
Kết quả ta được thư mục Models chứa các Entity và lớp DbContext chứa tập
các thực thể và quan hệ giữa chúng.
200

Hình 152. Folder Models chứa các Entity được sinh ra từ Scaffold
Sau khi đã setup thành công các bước kết nối tới cơ sở dữ liệu và tạo ra thư
mục Models chứa các Entity bằng cách sử dụng Entity Framework Core – Database
First giờ ta chỉ cần định nghĩa các Router để tạo ra các API với các URL có trách
nhiệm xử lý những nhiệm vụ khác nhau.
Lưu ý là ta cần cài đặt thêm Package CORS để cho phép những domain
khác gọi được đến URL ComNha_API.
6.4.2 API Controller
6.4.2.1 BookController
BookController đảm nhiệm các thao tác liên quan đến đặt bàn trực tuyến của
khách hàng. Trong Controller này ta sẽ định nghĩa một Action để xử lý khi khách
hàng đặt bàn bằng cách nhận dữ liệu từ client gửi lên API. Do đó ta cần phải định
nghĩa một lớp chứa các thuộc tính cần thiết để khách hàng có thể đặt bàn và những
thông tin mà API này sẽ nhận khi client gửi request đến.
201

Hình 153. Lớp Booking chứa các thuộc tính mà phía Client sẽ gửi lên API.
Tiếp theo để biến một Controller thành một APIController ta cần sử dụng
một số Annotation như [ApiController] và bật CORS lên với Controller này để
những request từ domain khác có thể gọi đến.

Hình 154. Code BookController


202

Khi client gửi request lên API với dữ liệu trong body được gửi dưới dạng
JSON, các dữ liệu này sẽ được gán vào trong lớp Booking mà ta đã định nghĩa ở
trên. Cơ chế này được gọi là Model binding. Sau khi đã có dữ liệu gửi từ client thì
ta chỉ cần thực hiện vài bước validate và trả về kết quả dưới dạng JSON nếu có lỗi.
Ngược lại thì sử dụng ngôn ngữ truy vấn LINQ để thêm yêu cầu đặt bàn vào cơ sở
dữ liệu.

Hình 155. Action CreateBook đảm nhiệm nhiệm vụ kiểm tra đặt bàn
Kết quả:
203

Hình 156. API /Book/DatBan xử lý Request POST

6.4.2.2 MenuController
Làm tương tự với những API tiếp theo. Ta sẽ tạo các API liên quan đến
những chức năng như: Lấy danh sách món ăn, Xem chi tiết thông tin một món ăn.

Hình 157. MenuController chứa các Action xử lý lấy danh sách món ăn, chi tiết
món ăn.
Các Action với các URL và HTTP Method khác nhau để xử lý các thao tác
lấy danh sách, lấy chi tiết món ăn…
204

Hình 158.Các Action trong MenuController


Kết quả:

6.4.2.3 OrderController
Làm tương tự với OrderController, tuy nhiên ở API này ta cần định nghĩa đối
tượng phức tạp hơn để có thể áp dụng Model Binding lấy các dữ liệu cần thiết từ
client. Và ở Controller này hành động đặt món trực tuyến cần phải được validate
một cách kỹ lưỡng hơn.
205

Hình 159. OrderController

Hình 160. API xử lý khi khách hàng đặt món ăn trực tuyến
206

Hình 161. API xử lý khi khách hàng đặt món ăn trực tuyến
207

Hình 162. Lớp tự định nghĩa để chứa các thông tin được gửi lên từ client thông qua
cơ chế Model Binding
Kết quả:

Hình 163. Các API trong OrderController

6.5 ASP.NET MVC


208

6.5.1 Views
Định nghĩa Partial View _Layout để Render các View tương ứng. Trong đây
ta sẽ link tới các thư viện cần thiết như Jquery, Bootstrap, Font-awesome để phục
vụ quá trình phát triển website.

Hình 164. _Layout.cshtml là layout chính của trang web.


Trong layout chính ta sẽ Render một vài Partial view cần thiết vào trang web
như Header, Hotline, GoToTop, Footer…

Hình 165. Các Partial View được sử dụng.


Tiếp theo ta tổ chức các file css, js vào trong thư mục wwwroot để các view
có thể truy cập được.
209

Hình 166. Tổ chức các file css,js trong wwwroot


Cụ thể một Razor Page lấy dữ liệu từ API và truyền từ Controller sang View
và dùng cú pháp Razor để Render những dữ liệu ấy thành html. Dữ liệu được
MenuController gán vào ViewData và ở Razor Page ta sẽ lấy những dữ liệu ấy từ
ViewData ra và dùng vòng lặp foreach để render danh sách nhóm món ăn, danh
sách món ăn.
210

Hình 167. File Index.cshtml trong thư mục Menu đại diện cho trang chính khi xem
Menu món ăn.
6.5.2 Controllers
Khi gửi Request đến thì thông qua cơ chế route các URL được gửi sẽ được
phân tách và Map với Controller và View tương ứng để Render View đó ra cho
người dùng và các Controller có thể tương tác với cơ sở dữ liệu, gọi API... để lấy dữ
liệu và truyền qua cho View. Tuy nhiên thì trong bài tập lần này nhóm chúng em
kết hợp sử dụng hai cách.
1. Gọi API bằng AJAX Javascript.
2. Gọi API bằng HttpClient
Các View sử dụng cơ chế gọi API bằng AJAX Javasciprt ta chỉ đơn giản cài
đặt Controller với các Action để trả về View tương ứng là được.
211

Hình 168. CheckoutsController Render View Thanh toán

Hình 169. CartController Render View Giỏ hàng


212

View xem Menu và chi tiết món ăn cần dữ liệu và được gọi tới API thông
qua cơ chế HttpClient.
Ta sẽ sử dụng đối tượng HttpClient để gọi tới API, nhưng trước đó ta cần
config một số thông số như “RequestHeaders”…
Nếu thành công thì Res sẽ trả về StatusCode thành công lúc đó ta sẽ Convert
kết quả trả về từ dạng JSON sang kiểu Object mà C# có thể hiểu được.
Ở Action này vì hành động gọi API sẽ khá tốn thời gian cho nên chúng ta
cần gọi API một cách bất đồng bộ để tối ưu thời gian và tránh bị block UI. Dữ liệu
sau khi được trả về có thể truyền vào hàm return View() để truyền sang cho View
nhưng vì Action này sẽ còn gọi đến API một lần nữa để lấy danh sách món ăn cho
nên nhóm chọn phương pháp lưu vào ViewData để View sử dụng.

Hình 170. Dùng HttpClient gọi API lấy danh sách món ăn, nhóm món ăn.
213

Hình 171. Dùng HttpClient gọi API lấy chi tiết món ăn
6.6 Winform:
6.6.1 Giao diện:
Giao diện đăng nhập của phần mềm, các form trong phần mềm đều được
thiết lập StartPosition là CenterScreen. Nên phần mềm sẽ luôn được hiển thị chính
giữa màn hình. Giúp cho người dùng dễ thao tác.
214

Hình 172. Giao diện Form Đăng nhập


Sau khi đăng nhập thành công thì nhân viên sẽ được chuyển sang giao diện gọi
món, quản lý bàn ăn.

Hình 173. Giao diện Form Quản lý bàn ăn


Ở giao diện quản lý bàn ăn, người phục vụ sẽ có thể sử dụng ComboBox để
sổ các nhóm món ăn có trong nhà hàng sau đó chọn các món ăn có trong nhóm món
ăn để thêm món ăn đó vào phiếu gọi món của khách hàng.
Trong giao diện còn có các Button để thực hiện các nghiệp vụ như:
215

 Xóa món ăn nếu khách hàng không còn nhu cầu gọi món đó.
 Thanh toán sau khi khách hàng đã dùng món xong.
 Thực hiện giảm giá theo chiết khấu nếu khách hàng đó đã đăng ký trở
thành hội viên của nhà hàng.
Ở góc trên của From Quản lý bàn ăn ta sẽ có một MenuStrip để sử dụng các
chức năng khác và đây cũng là nơi phân quyền các chức năng giữa các Role khác
nhau trong hệ thống như giữa “Quản lý nhà hàng”, “Lễ tân”, “Phục vụ”…

Hình 174. MenuStrip phân quyền Lễ tân

Hình 175. MenuStrip xem thông tin cá nhân


Một số giao diện chính trong phần quản lý của Quản lý nhà hàng:
216

Hình 176. TabPage quản lý doanh thu của nhà hàng.


217

Hình 177. TabPage quản lý món ăn.

6.6.2 Hiện thực chức năng:


Trước khi đi vào chi tiết các chức năng thì hãy xem qua mô hình mà phần
mềm sẽ được phát triển.

Hình 178. Cấu trúc project phần mềm quản lý nhà hàng.
Nhóm lựa chọn phát triển phần mềm theo mô hình 3 lớp. Các lớp DTO đại
diện cho các bảng có trong cơ sở dữ liêu.

Hình 179. Các lớp DTO.


218

Hình 180. Các lớp DAO.


Các lớp DAO được xây dựng theo mẫu thiết kế Singleton chịu trách nhiệm
tương tác thêm, xóa, sửa hay lấy dữ liệu từ cơ sở dữ liệu. Cho nên việc tương tác cơ
sở dữ liệu sẽ được thực hiện bằng cách [Tên lớp DAO].GetInstance().[Tên phương
thức thao tác với cơ sở dữ liệu](Truyền params nếu có).
Các phương thức thao tác cơ sở dữ liệu đều sử dụng SqlCommand params để
hạn chế lỗi SQL Injection.
Tiếp theo sẽ ta sẽ đi vào chi tiết thực hiện hóa các chức năng gọi món và
thanh toán.
Sau khi đăng nhập xong thì Form quản lý bàn ăn sẽ được mở. Và các bàn ăn
có trong cơ sở dữ liệu sẽ được lấy lên và hiện lên giao diện.
219

Hình 181. Load bàn ăn lên giao diện.


Ta sẽ lấy danh sách bàn ăn có trong cơ sở dữ liệu thông qua lớp DAO. Sau
đó sử dụng vòng lặp foreach để lặp qua tất cả bàn ăn và thiết lập các thuộc tính như
Text để hiện số bàn, trạng thái của bàn, và sức chứa.
Đồng thời ta sẽ thiết lập màu cho bàn tùy vào trạng thái. Ví dụ màu đỏ nếu
bàn đang có khách. Màu xanh Aqua nếu bàn đó đã được khách đặt lịch. Và màu
xanh lá nếu là bàn trống.
Sau khi thiết lập các thuộc tính hoàn tất ta sẽ thêm bàn ăn đó lên giao diện
thông qua FlowLayoutPanel.Controls.Add();
220

Hình 182. Phương thức LoadTableList lấy danh sách bàn ăn từ cơ sở dữ liệu.
221

Hình 183. Kết quả danh sách bàn ăn được hiện lên.

Để thêm món ăn cho một bàn ăn trước tiên ta cần chọn bàn ăn đó trước và
phần mềm sẽ ghi nhận lại mã bàn ăn đó vào Tag để tiện lợi thao tác các bước tiếp
theo.

Hình 184. Code chức năng thêm món


222

Một vài trường hợp sẽ gây ra lỗi phần mềm cũng được kiểm tra kỹ càng. Sau
đó sẽ kiểm tra đây là bàn ăn đã có hóa đơn chưa, nếu chưa thì ta thực hiện tạo phiếu
gọi món, tạo hóa đơn mới. Và chuyển trạng thái bàn từ đang trống sang đang phục
vụ. Ngược lại nếu đây là bàn ăn đã có hóa đơn chưa thanh toán, thì ta tiến hành
thêm món ăn và phiếu gọi món của bàn ăn này.

Hình 185. Code chức năng thêm món trường hợp chưa có hóa đơn
223

Hình 186. Code chức năng thêm món đã có hóa đơn


224

Hình 187. Code chức năng thêm món đã có hóa đơn tiếp theo
225

CHƯƠNG 7 – ĐÁNH GIÁ KẾT QUẢ


7.1 Kết quả đạt được:
Nhóm đã phân chia công việc hợp lý giữa các thành viên. Đảm bảo các thành
viên đều làm việc với khối lượng công việc bằng nhau. Nhờ đó nhóm đã hoàn thành
được đồ án cuối kỳ với những kết quả như sau:
 Hoàn thành báo cáo hoàn chỉnh, đầy đủ thông tin.
 Thiết kế được giao diện trang web của nhà hàng bắt mắt, bố cục được
phân chia hợp lý, dễ sử dụng. Tạo cho khách hàng trải nghiệm hài
lòng khi sử dụng.
 Ý tưởng thực hiện đồ án hợp lý, bám sát ý tưởng thực tế của các nhà
hàng.
 Độ lớn của đề tài phù hợp với nhóm 4 người.
 Nhóm hoàn thành được đề tài đúng thời hạn.
7.2 Kết luận hệ thống:
7.2.1 Ưu điểm của hệ thống:
Hệ thống website cho khách hàng:
 Giao diện đẹp, bắt mắt đơn giản mà tinh tế.
 Bố cục phân chia hợp lý, dễ sử dụng.
 Các nút chức năng được đặt ở nơi người dùng dễ thao tác.
 Thông tin, dữ liệu về món ăn đa dạng.
 Chức năng đặt món trực tuyến vô cùng tiện lợi.
Phần mềm quản lý nhà hàng nội bộ:
 Phần mềm quản lý nhà hàng đáp ứng được các chức năng tối thiểu cần
có để quản lý nhà hàng.
 Phần mềm hoạt động ổn định, tốc độ truy xuất cơ sở dữ liệu nhanh
hơn so với website do sử dụng ADO.NET.
7.2.2 Khuyết điểm của hệ thống:
Hệ thống website cho khách hàng:
226

 Tốc độ của website chưa được nhanh do phía API sử dụng


EntityFramework để truy xuất dữ liệu nên không thể nhanh bằng việc
sử dụng ADO.NET. (Nhóm biết dùng EntityFramework sẽ ảnh hưởng
đến performance nhưng nhóm vẫn lựa chọn sử dụng vì muốn tìm hiểu
đa dạng các cách kết nối với cơ sở dữ liệu mà nền tảng .NET hỗ trợ).
 Phần back-end chưa thực sự tận dụng tốt và sử dụng các tính năng của
Framework ASP.NET MVC.
 Phần back-end cần được validate dữ liệu đầu vào kỹ càng hơn nữa.
 Cần phát triển thêm cơ chế hiện lỗi phù hợp.
Phần mềm quản lý nhà hàng nội bộ:
 Giao diện còn khá xấu và cũ. Chưa hiện đại.
 Chức năng quản lý món ăn vẫn còn một số lỗi khi đọc ảnh lên giao
diện.
7.2.3 Hướng phát triển trong tương lai của hệ thống:
Với những gì nhóm đã phát triển được đến hiện tại thì có thể tạm chấp nhận
được với quy mô quản lý 1 nhà hàng. Tuy nhiên trong tương lai nếu có thể nhóm sẽ
phát triển hệ thống lớn hơn nữa cho phép quản lý một chuỗi các nhà hàng. Nhưng
trước khi làm được điều đó thì nhóm sẽ hoàn thiện và sửa những khuyết điểm hiện
đang tồn tại trong hệ thống trước.
227

7.3 GitHub Desktop:


Nhóm sử dụng GitHub để quản lý các tài nguyên của nhóm như: Demo, bài
báo cáo.

Hình 189. Commit History của nhóm


Link to GitHub:
https://github.com/trungjason/c--cnpm-n12-hk2-2022
228

PHÂN CÔNG VÀ ĐÁNH GIÁ


Đánh
STT MSSV Họ và tên Công việc
giá
Khảo sát nghiệp vụ.
Xác định tác nhân, xác định Use case.
Đặc tả hệ thống, quy trình nghiệp vụ.
Viết đặc tả usecase (UC15 – 28).
Vẽ sơ đồ hoạt động (UC15 – 28).
Nguyễn Võ Vẽ sơ đồ tuần tự (UC15 – 28). Hoàn
1 51900286
Hoàng Vũ Vẽ mô hình ERD. thành
Chuyển mô hình ERD sang mô hình quan
hệ.
Thực hiện demo phần website cho khách
hàng.
Làm Slide báo cáo.
Khảo sát nghiệp vụ.
Xác định tác nhân, xác định Use case.
Đặc tả hệ thống, quy trình nghiệp vụ.
Vẽ sơ đồ Usecase tổng quát.
Viết đặc tả use case (UC29 – 41).
Nguyễn Vẽ sơ đồ hoạt động (UC29 – 41). Hoàn
2 51900699
Trường Anh Vẽ sơ đồ tuần tự (UC29 – 41). thành
Vẽ mô hình ERD.
Xây dựng Test case.
Thực hiện demo phần website cho khách
hàng.
Làm Slide báo cáo.
3 51900712 Trương Tuấn Khảo sát nghiệp vụ. Hoàn
Thịnh Viết đặc tả usecase (UC42 – 51). thành
229

Vẽ sơ đồ tuần tự (UC42 – 51).


Vẽ sơ đồ hoạt động (UC42 - 51).
Thực hiện demo phần mềm quản lý nhà
hàng.
Vẽ sơ đồ lớp Class Diagram.
Thiết kế giao diện winform.
Xây dựng Test case.
Khảo sát nghiệp vụ.
Xác định tác nhân, xác định Use case.
Vẽ sơ đồ Usecase tổng quát.
Viết đặc tả Usecase (UC1 – 14).
Vẽ sơ đồ hoạt động (UC1 – 14).
Tăng Kiến Hoàn
4 51900718 Vẽ sơ đồ tuần tự (UC1 – 14).
Trung thành
Vẽ mô hình ERD.
Tạo cơ sở dữ liệu.
Thực hiện demo phần mềm quản lý nhà
hàng.
Chỉnh sửa, hoàn thiện báo cáo.

1.1 Kế hoạch giao tiếp nhóm


- Tần suất: 2 lần 1 tuần hoặc khi nào có thắc mắc, có vấn đề phát sinh cần
bàn bạc.
- Thời gian: Tối thứ 7 , Chủ Nhật
- Địa điểm: Group nhóm trên Facebook hoặc trên Google Meeting khi cần
thiết.
- Đề ra các mục tiêu cụ thể, hạn deadline và phân chia công việc cho các
thành viên trong nhóm.
230

1.2 Quy tắc quản lý đồ án của nhóm


1.2.1 Quản lý tài liệu
- Các tài liệu liên quan đến bài báo cáo đều được các thành viên chia sẻ với
nhau ( Google Drive Share và GitHub Desktop ).
- Không tập trung tài liệu vào một người để phòng trường hợp mất bài.
1.2.2 Quản lý tiến độ
- Nhóm trưởng thông báo và các thành viên trong nhóm báo cáo lại tiến độ.
- Nhóm trưởng cập nhật tiến độ các thành viên và nhắc nhở các thành viên
chưa hoàn thành nhiệm vụ được giao.
- Đặt ra yêu cầu khắt khe cho các thành viên ít đóng góp.
231

TÀI LIỆU THAM KHẢO


[1] J.W. Satzinger, R.B. Jackson, S.D. Burd, [2005], Object-Oriented
Analysis and Design with the Unified Process, Cengage Learning.
[2] Howard Podeswa, [2010], UML for the IT Business Analyst, Cengage
Learning.
[3] J.W. Satzinger, R.B. Jackson, S.D. Burd, [2008], Systems Analysis and
Design in a Changing World, Course Technology.
[4] https://vn.indeed.com/?r=us
[5]https://melsatar.blog/2012/03/15/software-development-life-cycle-
models-and-methodologies/
[6] https://viblo.asia/p/cac-mo-hinh-phat-trien-phan-mem-GrLZDwbgKk0
[7] Báo cáo cuối kỳ môn “Phân tích thiết kế yêu cầu”, “Công nghệ phần
mềm” của các thành viên trong nhóm.

You might also like