



















Preview text:
lOMoAR cPSD| 59078336
1PHÂN TÍCH YÊU CẦU CHỨC NĂNG (Requirement Analysis) I. Mục Đích
Trình bày các yêu cầu chức năng và phi chức năng của khách hàng đối với hệ thống quản lý nhà
hàng ăn. Thông tin được thu thập từ quá trình khảo sát thực tế, phân tích nghiệp vụ, và các buổi
thảo luận giữa các thành viên nhóm dự án.
II. Phạm vi hệ thống
• Hệ thống áp dụng cho nhà hàng ăn quy mô lớn
• Đối tượng sử dụng : quản lý chi nhánh, nhân viên phục vụ, thu ngân, khách hàng, đầu bếp
• Tập trung vào các chức năng: quản lý thực đơn, đặt món, hóa đơn, quản lý nguyên vật
liệu, quản lý nhân viên, thống kê, báo cáo doanh thu III.
Yêu cầu chức năng
a. Các chức năng dành cho khách hàng
• Xem menu món ăn trong ngày Description
Xem menu món ăn trong ngày tại chi nhánh Input
Chi nhánh, ngày hiện tại Process Truy xuất món ăn và giá Output
Hiện thị danh sách món ăn • Đặt món ăn Description
Khách hàng chọn món trên màn hình cảm ứng Input
Món ăn, số lượng, ghi chú Process
Ghi nhận đơn hàng và gửi yêu cầu đến bếp Output
Hiện thị danh sách món đã đặt
• Xem tình trạng đơn hàng Description
Khách hàng có thể xem tình trạng của các món ăn đã đặt Input Số bàn Process
Truy xuất trạng thái món ăn Output
Hiện thị trạng thái món ăn : Đã xong, đang chờ
• Xem hóa đơn tạm tính Description
Khách hàng xem được hóa đơn đã tạm tính và điểm cộng Input Số bàn Process
Tính tổng số tiền và điểm cộng Output
Hiển thị hóa đơn tạm tính và điểm cộng
• Nhận thông báo món ăn đã xong Description
Khách hàng có thể xem tình trạn của các món ăn đã đặt lOMoAR cPSD| 59078336 Input Số bàn Process
Truy xuất trạng thái món ăn Output
Hiện thị trạng thái món ăn : Đã xong, đang chờ
• Quét thẻ cộng điểm Description
Khách hàng quét thẻ đẻ cộng điểm Input Mã thẻ hội viên Process
Gửi mã thẻ, tìm kiếm mã thẻ, ghi nhận điểm thưởng Output
Cập nhật và hiển thị điểm đã cộng
b. Các chức năng cho nhân viên thu ngân
• Xem thông tin hóa đơn theo bàn Description
Nhân viên thu ngân xem hóa đơn theo bàn để tạo hóa đơn thanh toán Input Mã bàn, Process
Truy xuất đơn hàng, tổng tiền Output
Hiển thị thông tin thanh toán • Ghi nhận thanh toán Description
Cập nhật trạng thái đơn hàng sau khi thanh toán hoàn tất Input
Mã đơn hàng, phương thức thanh toán (tiền mặt, QR, thẻ, v.v.) Process
Ghi nhận hình thức thanh toán, cập nhật doanh thu ngày Output
Trạng thái đơn hàng đổi sang "Đã thanh toán", lưu vào lịch sử doanh thu
• Nhận thanh toán từ khách Description
Nhân viên thu ngân thông báo số tiền, nhập số tiền khách hàng đưa và trả lại cho khách Input
Số bàn, số tiền khách đưa Process
Tính tổng tiền, trừ ưu đãi(nếu có), tính tiền trả lại Output
Xuất hóa đơn và in thông tin hoàn tất • Tổng kết doanh thu Description
Thu ngân in ra tổng doanh thu và danh sách món ăn đã được gọi trong ngày Input Số món ăn, Process Lưu nhật ký chốt ca Output
xác nhận đã bàn giao và lưu dữ liệu ca
• Chốt ca và bàn giao ca Description
Ghi nhận kết thúc ca làm việc, bàn giao doanh thu cho người kế tiếp hoặc quản lý Input
Mã thu ngân, ca trực, doanh thu thực tế, tiền mặt tại quầy Process Lưu nhật ký chốt ca Output
xác nhận đã bàn giao và lưu dữ liệu ca
• Đăng nhập theo ca làm việc lOMoAR cPSD| 59078336 Description
Khi đến ca làm, nhân viên phải đăng nhập vào và chấm công cho ca làm hôm đó Input Tài khoản, mật khẩu Process
Tìm kiếm và xác thực tài khoản trong database Output
Đăng nhập vào màn hình chính của hệ thống nếu tài khoản và mật khẩu đúng
c. Chức năng dành cho người duyệt web
Xem món ăn trong ngày tại các chi nhánh Description
Người duyệt web sẽ vào trang web của cửa hàng để biết được các
món ăn được phục vụ trong ngày tại các chi nhánh Input
Chi nhánh, ngày hiện tại Process
Truy xuất menu từ hệ thống theo chi nhánh và ngày Output
Menu món ăn và giá tiền tương úng
d. Chức năng dành cho Bếp • Tiếp nhận đơn hàng Description
Nhận danh sách món ăn mà khách đã gọi từ hệ thống gửi đến bếp Input
Mã bàn, danh sách món ăn, số lượng, ghi chú món Process
Hiển thị đơn hàng mới, tự động xếp theo thời gian hoặc độ ưu tiên Output
Đơn hàng hiển thị trong danh sách chờ chế biến
• Cập nhật trạng thái món ăn Description
Cập nhật trạng thái món khi đã nấu xong, sẵn sàng để phục vụ Input Mã món ăn, mã bàn Process
Đổi trạng thái sang “Hoàn tất” và thông báo đến phục vụ Output
Món ăn được đánh dấu “Đã xong”, chuyển lên danh sách sẵn sàng phục vụ
• Xem danh sách đơn hàng Description
Theo dõi tất cả đơn hàng đang xử lý, phân loại theo bàn/món Input
Không có (dữ liệu lấy tự động từ hệ thống) Process
Tự động cập nhật liên tục khi có đơn mới, món hoàn thành,... Output
Giao diện hiển thị danh sách món, trạng thái và thời gian đặt
• Cập nhật danh sách món ăn Description
Đầu bếp có thể thêm vào hoặc bớt đi món ăn có thể phục vụ trong ngày Input Mã món, lý do Process
Cập nhật trạng thái món sang “Tạm hết” trong thực đơn Output
Món sẽ bị ẩn khỏi trang hiển thị thực đơn của khách hàng lOMoAR cPSD| 59078336
IV.Yêu cầu phi chức năng a. Hiệu năng
• Hệ thống phải có khẳ năng phản hồi nhanh
• Bếp và thu ngân phải nhận được thông tin nhanh chóng sau khi thông tin đưuọc gửi đi
b. Khả năng mở rộng và nâng cấp
• Hệ thống cần thiết kể để dễ dàng mở rộng trong tương lai nếu nhà hàng mở rộng thị trường
• Có thể thêm các đối tượng mà không ảnh hưởng đến hiệu suất ( VD: người dùng, bàn, món ăn … c. Giao diện
• Đối với giao diện dành cho khách hàng sẽ chạy trên màn hình cảm ứng tại bàn
hoặc tại quầy (máy POS, máy tính bảng, màn hình cảm ứng, …)
• Giao diện người dùng phải thân thiện, dễ thao tác với cả nhân viên không am hiểu công nghệ.
• Các thao tác quan trọng như “Thêm món”, “Tính tiền” phải trực quan, dễ nhận biết.
V. Mô tả quy trình nghiệp vụ 1. Đặt món tại bàn Thành phần Mô tả lOMoAR cPSD| 59078336 Tên quy trình Đặt món tại bàn Mục tiêu
Cho phép khách hàng gọi món ăn không cần nhân viên phục vụ Phạm vi
Áp dụng cho tất cả chi nhánh có hệ thống tự phục vụ Vai trò
Khách hàng, hệ thống máy POS, đầu bếp Pre-condition
Khách hàng ngồi vào bàn, màn hình cảm ứng hoạt động bình thường Post-condition
Đơn hàng được gửi thành công đến bếp Luồng chính
1. Hệ thống hiển thị menu
2. Khách hàng chọn món và số lượng
3. Khách hàng xác nhận đơn hàng
4. Hệ thống tính tạm tổng tiền và gửi yêu cầu đến bếp Luồng phụ
- Khách hàng thay đổi món trước khi xác nhận
- Khách hàng xem thông tin món ăn trước khi gọi Luồng ngoại lệ
- Màn hình không phản hồi → hiển thị lỗi và yêu cầu liên hệ nhân viên
- Món đã hết → thông báo không thể gọi món đó
Tài nguyên sử dụng Màn hình cảm ứng, cơ sở dữ liệu món ăn, hệ thống quản lý bếp
2. Thông báo trạng thái món ăn Thành phần Mô tả Tên quy trình
Thông báo món ăn hoàn tất Thành phần Mô tả Mục tiêu
Thông báo cho khách hàng biết món đã sẵn sàng nhận tại quầy Phạm vi
Áp dụng tại bàn ăn và quầy phục vụ Vai trò
Hệ thống, khách hàng, đầu bếp Pre-condition
Món đã được đầu bếp chuẩn bị xong Post-condition
Khách hàng biết món ăn đã sẵn sàng Luồng chính
1. Đầu bếp đánh dấu món đã hoàn tất trên hệ thống
2. Hệ thống hiển thị thông báo trên màn hình tại bàn khách lOMoAR cPSD| 59078336 Luồng phụ
- Khách hàng có thể kiểm tra trạng thái món bất kỳ lúc nào Luồng ngoại lệ
- Mạng lỗi → Thông báo không gửi được, chờ nhân viên can thiệp
Tài nguyên sử dụng
Hệ thống quản lý bếp, màn hình cảm ứng tại bàn 3. Xem hóa đơn tạm tính Thành phần Mô tả Tên quy trình
Thông báo món ăn hoàn tất Mục tiêu
Thông báo cho khách hàng biết món đã sẵn sàng nhận tại quầy Phạm vi
Áp dụng tại bàn ăn và quầy phục vụ Vai trò
Hệ thống, khách hàng, đầu bếp Pre-condition
Món đã được đầu bếp chuẩn bị xong Post-condition
Khách hàng biết món ăn đã sẵn sàng Luồng chính
1. Đầu bếp đánh dấu món đã hoàn tất trên hệ thống
2. Hệ thống hiển thị thông báo trên màn hình tại bàn khách Luồng phụ
- Khách hàng có thể kiểm tra trạng thái món bất kỳ lúc nào Luồng ngoại lệ
- Mạng lỗi → Thông báo không gửi được, chờ nhân viên can thiệp Tài nguyên sử
Hệ thống quản lý bếp, màn hình cảm ứng tại bàn dụng 4. Thanh toán Thành phần Mô tả Tên quy trình Thanh toán tại quầy Mục tiêu
Cho phép khách hàng hoàn tất thanh toán Phạm vi
Áp dụng tại quầy thu ngân Vai trò
Thu ngân, khách hàng, hệ thống Pre-condition
Khách hàng cung cấp mã bàn lOMoAR cPSD| 59078336 Post-condition
Đơn hàng được thanh toán, hệ thống cập nhật trạng thái Luồng chính 1. Thu ngân nhập mã bàn
2. Hệ thống hiển thị hóa đơn
3. Thu ngân nhận tiền và xử lý thanh toán
4. In hóa đơn và trả tiền thừa Luồng phụ
- Thu ngân kiểm tra lại món nếu khách hàng yêu cầu Luồng ngoại
- Không tìm thấy mã bàn → yêu cầu xác minh lệ lại Tài nguyên sử
Hệ thống POS, máy in hóa đơn dụng 5. Cập nhật menu Thành phần Mô tả Tên quy trình Cập nhật menu Thành phần Mô tả Mục tiêu
Cập nhật danh sách món ăn có thể phục vụ trong ngày Phạm vi
Áp dụng tại bếp và hiển thị tại POS Vai trò Đầu bếp, hệ thống Pre-condition
Đầu bếp đăng nhập vào hệ thống quản lý bếp Post-condition
Menu được cập nhật thành công và đồng bộ đến các bàn Luồng chính
1. Đầu bếp thêm/xóa/chỉnh sửa món ăn
2. Hệ thống xác nhận và cập nhật danh sách món Luồng phụ
- Cập nhật món theo loại món (món chính, món phụ, nước uống…) Luồng ngoại lệ
- Món ăn trùng tên → yêu cầu đổi tên hoặc xác nhận ghi đè Tài nguyên sử
Hệ thống quản lý bếp, cơ sở dữ liệu món ăn dụng
6. Quản lý doanh thu cuối ngày Thành phần Mô tả Tên quy
Quản lý doanh thu cuối ngày trình lOMoAR cPSD| 59078336 Thành phần Mô tả Mục
In và báo cáo doanh thu trong ngày tiêu Phạm
Áp dụng tại quầy thu ngân vi Vai Thu ngân, hệ thống trò Pre-
Hệ thống đã ghi nhận đầy đủ đơn hàng trong ngày condition Postcondition
Doanh thu được in và lưu trữ Luồng chính 1.
Thu ngân chọn chức năng in báo cáo 2.
Hệ thống thống kê và in danh sách món đã bán, doanh thu, các khoản giảm giá Luồng phụ
- Lưu file báo cáo trên hệ thống nội bộ Luồng
- Không thể in → hiển thị thông báo và lưu bản mềm ngoại lệ Tài nguyên
Hệ thống POS, máy in, cơ sở dữ liệu hóa đơn sử dụng 7. Xem menu trên website Thành phần Mô tả Tên quy Xem menu trên website trình Mục tiêu
Cho phép người dùng online xem món ăn theo từng chi nhánh Phạm vi
Truy cập công khai qua internet Vai trò
Người duyệt web, hệ thống website Pre-
Người dùng truy cập website thành công condition Post-
Hiển thị đúng danh sách món ăn theo chi nhánh condition lOMoAR cPSD| 59078336 Luồng
1. Người dùng chọn chi nhánh chính
2. Hệ thống hiển thị menu và giá tiền Luồng phụ
- Lọc theo loại món hoặc tìm kiếm Luồng ngoại
- Lỗi kết nối → thông báo thử lại sau lệ Tài nguyên sử
Web server, cơ sở dữ liệu món ăn dụng
VI. Use case tổng thể hệ thống lOMoAR cPSD| 59078336
VII. Use case chi tiết a. Usecase đặt món lOMoAR cPSD| 59078336 b. Usecase thanh toán lOMoAR cPSD| 59078336
e. Usecase quét thẻ cộng điểm lOMoAR cPSD| 59078336
f. Usecase tiếp nhận đơn hàng lOMoAR cPSD| 59078336
g. Usecase cập nhật trạng thái món ăn lOMoAR cPSD| 59078336
h. Usecase cập nhật danh sách món ăn trong ngày lOMoAR cPSD| 59078336
i. Usecase thanh toán cho khách hàng lOMoAR cPSD| 59078336
j. Usecase Tổng kết doanh thu lOMoAR cPSD| 59078336
k. Usecase xem món ăn trong ngày tại chi nhánh
VIII. Đặc tả usecase 1) Đặc tả : Usecase đặt món Name Đặt món Code UC01 Description
Khách hàng đặt món qua màn hình cảm ứng được đặt tại mỗi bàn Actor Khách hàng, Đầu bếp Trigger
- Actor đứng tại trang Menu, chọn món mình muốn Priority
Must have – bắt buộc phải có Pre_Condition
• Khách hàng đã ngồi vào bàn
• Màn hình cảm ứng hoạt động bình thường
• Danh sách món ăn trong ngày đã được cập nhật Post_Condition
• Màn hình hiện thị danh sách món ăn cùng với giá tiền
• Đơn hàng được gửi đến bếp Error situation
• Lỗi kết nối hệ thống.
• Món ăn không tồn tại trong danh sách ngày.
• Hệ thống không phản hồi. lOMoAR cPSD| 59078336 System state in error
• "Không thể kết nối đến hệ thống. Vui lòng thử lại sau." situation
• "Món ăn không khả dụng."
• "Hệ thống đang bận, vui lòng liên hệ nhân viên." Activites Flow Main Flow Đặt món thành công Actor System • Chạm vào màn hình • Hiển thị menu
• Chọn món, số lượng
• Ghi nhận và hiển thị tiền tạm tính • Xác nhận đặt
• Gửi thông tin đến bếp
• Hiển thị trạng thái “Đơn hàng đã gửi” Alternative Flow
AF1_Thay đổi món ăn trước khi đặt Actor System Chọn lại món khác Cập nhật đơn hàng
AF2_Xem thông tin món ăn Actor System Nhấn vào tên món
Hiển thị mô tả, nguyên liệu ….. Bussiness Rules
• Mỗi bàn được gán một mã riêng biệt.
• Chỉ những món đang phục vụ trong ngày mới hiển thị trong menu.
• Món ăn chỉ được gửi đến bếp khi khách hàng xác nhận.
• Hệ thống lưu trữ lịch sử các món đã đặt.
Non_Functional Requirement
• Giao diện phải thân thiện, mọi người đều có thể sử dụng
• Hệ thống phải hoạt động ổn định và có
cảnh báo khi xảy ra lỗi.
2) Đặc tả usecase : Tiếp nhận đơn hàng Name Tiếp nhận đơn hàng Code UC01 Description
Bếp tiếp nhận đơn hàng mới từ hệ thống khi khách hàng đặt món, và
theo dõi danh sách món ăn cần chuẩn bị. Actor Đầu bếp Trigger
- Hệ thống tự động hiển thị danh
sách món ăn cần chuẩn bị khi khách lOMoAR cPSD| 59078336
hàng gửi yêu cầu đặt món. Priority
Must have – bắt buộc phải có Pre_Condition
• Hệ thống đã nhận được đơn hàng từ thực khách
• Bếp đã đăng nhập hệ thống hoặc truy cập giao diện bếp. Post_Condition
• Bếp xem được danh sách món ăn cần chuẩn bị cùng số lượng, thời gian đặt món.
• Món ăn được thêm vào danh sách món đang chờ thực hiện. Error situation
• Lỗi kết nối giữa hệ thống thực khách và hệ thống bếp.
• Lỗi không tải được danh sách đơn hàng mới từ hệ thống.. System state in error
• “Không thể tải đơn hàng mới, vui lòng kiểm tra kết nối.” situation
• “Lỗi hệ thống - Không nhận được dữ liệu món ăn.” Activites Flow Main Flow
Tiếp nhận đơn hàng thành công: Actor System • Chạm vào màn hình
• Gửi yêu cầu đơn hàng mới từ thực khách
• Chọn món, số lượng đến hệ thống bếp • Xác nhận đặt
• Hiển thị danh sách các món cần chế biến
với số lượng và thời gian đặt
• Xem danh sách đơn hàng
• Sắp xếp thứ tự đơn hàng dựa trên thời gian đặt món Alternative Flow
AF1_Thay đổi món ăn trước khi đặt Actor System Chọn lại món khác Cập nhật đơn hàng
AF2_Xem thông tin món ăn Actor System Nhấn vào tên món
Hiển thị mô tả, nguyên liệu …..