Tải bản đầy đủ (.doc) (77 trang)

ĐỒ ÁN XÂY DỰNG HỆ THỐNG THÔNG TIN Xây dựng Website quản lí bán món ăn và quán ăn

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (3.25 MB, 77 trang )

1
ĐẠI HỌC QUỐC GIA TP.HỒ CHÍ MINH
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
KHOA HỆ THỐNG THÔNG TIN

ĐỒ ÁN XÂY DỰNG HỆ THỐNG THÔNG TIN
Đề tài: Xây dựng Website quản lí bán món ăn và quán ăn

Giảng viên hướng dẫn :TH.S NGUYỄN ĐÌNH LOAN PHƯƠNG
Sinh viên thực hiện: VÕ THỊ NGỌC HÒA – 09520523
VƯƠNG KIM LOAN – 09520553
Lớp : IS311.D21
Khoá : 4
TP. Hồ Chí Minh, tháng 06 năm 2013
MỞ ĐẦU
2
Trong thời đại phát triển kinh tế thị trường như hiện nay, đất nước ngày càng đi
lên đẩy mạnh phát triển xây dựng nền kinh tế hàng hóa. Do đó, các doanh nghiệp, các
nhà đầu tư trong ngoài nước không ngừng vạch ra những chiến lược kinh doanh, phục vụ
cho nhu cầu tiêu dùng trong nước. Một trong những hình thức mới trong các hình thức
kinh doanh hàng hóa đó là thương mại điện tử. Ngoài ra, việc sử dụng các ứng dụng liên
quan hoặc thuộc lĩnh vực Hệ thống thông tin trong các nghiệp vụ kinh doanh, quản lý,
dịch vụ cũng ngày càng được phát triển mạnh mẽ
Nắm bắt được những nhu cầu đó cũng như sự liên quan mật thiết giữa hai vấn đề,
các website thương mại điện tử kết hợp với quản lí hệ thống thông tin của web đã không
ngừng ra đời phát triển đời thỏa mãn yêu cầu tối ưu hóa kinh doanh trong doanh nghiệp.
Và đây cũng là một đề tài do nhóm sinh viên trường ĐH Công Nghệ Thông Tin – ĐH
Quốc Gia TP.HCM – Xây dựng một website quản lí bán món ăn quán ăn. Với mong
muốn giúp cho các đối tác kinh doanh có một kênh thông tin và mua bán hiệu quả, nhóm
sinh viên lớp HTTT04 đã cố gắng xây dựng một website dễ thao tác, đảm bảo các yêu
cầu của một website thương mại điện tử cũng như quản lí một hệ thống thông tin


LỜI CẢM ƠN
3
Để hoàn thành trang web quản lí bán món ăn và quán ăn, nhóm thực hiện xin chân
thành cám ơn giảng viên hướng dẫn môn học Đồ án xâu dựng hệ thống thông tin–Th.s
Nguyễn Đình Loan Phương đã hướng dẫn, chỉ dạy và vạch ra hướng đi cho nhóm xây
dựng được đồ án này, cám ơn các bạn sinh viên lớp HTTT04 đã tận tình giúp đỡ, trao đổi
với nhóm những vấn đề liên quan đến lập trình, cơ sở dữ liệu,… cũng như những kiến
thức chuyên môn hỗ trợ cho việc xây dựng một trang web thương mại điện tử. Một lần
nữa nhóm xin cảm ơn và mong nhận được những góp ý của mọi người cho đồ án này.
NHẬN XÉT
(Của giảng viên hướng dẫn)
4

………………………………………………………………………………
………………………………………………………………………………
………………………………………………………………………………
………………………………………………………………………………
………………………………………………………………………………
………………………………………………………………………………
………………………………………………………………………………
………………………………………………………………………………
………….
MỤC LỤC
Mở đầu
5
Chương 1: PHÁT BIỂU BÀI TOÁN 8
1.Nêu vấn đề 8
2.Mô tả bài toán 9
Chương 2: KHẢO SÁT HIỆN TRẠNG 10
1.Hiện trạng tổ chức 10

2.Chức năng nhóm người dùng 11
Chương 3: PHÂN TÍCH YÊU CẦU 11
1.Yêu cầu chức năng: 11
1.1 Yêu cầu lưu trữ: 11
1.2 Yêu cầu tính toán: 13
1.3 Yêu cầu tra cứu: 14
1.4 Yêu cầu thống kê 14
1.5 Yêu cầu tư vấn, bình luận, đánh giá: 14
2.Yêu cầu phi chức năng: 14
2.1 Yêu cầu bảo mật: 14
2.2 Yêu cầu phân quyền 15
Chương 4: Mô hình Usecase 16
4.1Đặc tả usecase Login 18
4.2Đặc tả usecase RegisterCustomer 19
4.3Đặc tả usecase RegisterSale 20
4.4Đặc tả usecase Manage Profile 21
4.5Đặc tả usecase “Search Restaurant” 22
4.6Đặc tả usecase “Search Food” 22
4.7 Đặc tả usecase “Manage Cart” 23
4.8Đặc tả usecase “Pay the Cart” 24
4.9Đặc tả usecase “ManageShip Address” 26
6
4.10 Đặc tả usecase “ManageTyFoOfRes” 27
4.11 Đặc tả usecase “ManageFood” 28
4.12Đặc tả usecase “ManageTypeFood” 29
4.13 Đặc tả usecase “ManageArea” 30
4.14 Đặc tả usecase “ManageRestaurant” 31
4.15 Đặc tả usecase “ManageCustomer” 32
4.16 Đặc tả usecase “ManageOrder” 34
4.17Đặc tả usecase “Count/Report” 35

6.1Đăng nhập (Login) 36
6.2Đăng kí khách hàng (RegisterCustomer) 37
6.3Đăng kí nhà hàng (ResgisterSale) 37
6.4Tìm kiếm món ăn (Search Food) 38
6.5Tìm kiếm nhà hàng (Search Restaurant) 38
6.6Tìm kiếm món ăn vào giỏ hàng (SearchFood into Cart) 39
6.7Thanh toán (PayThe Cart) 40
6.8Thêm khu vực (ManageArea_Add) 40
6.9Cập nhập khu vực (ManageArea_Update) 41
6.10Xóa khu vực (ManageArea_Delete) 41
6.11Thêm loại món ăn (ManageTypeFood_Add) 42
6.12Cập nhập loại món ăn (ManageTypeFood_Update) 42
6.13Xóa loại món ăn (ManageTypeFood_Delete) 43
6.14Thêm món ăn (ManageFood_Add) 43
6.15Cập nhập món ăn (ManageFood_Update) 44
6.16Xóa món ăn (ManageFood_Delete) 44
Chương 5: SƠ ĐỒ TRÌNH TỰ (SEQUENCE DIAGRAM) 45
1.Đăng nhập (Login) 45
7
2.Đăng kí khách hàng (RegisterCustomer) 46
3.Đăng kí nhà hàng (RegisterSale) 47
4.Tìm kiếm món ăn (SearchFood) 47
5.Thánh toán (PayTheCart) 48
6.Thêm khu vực (ManageArea_Add) 49
7.Cập nhập khu vực (ManageArea_Update) 49
8.Xóa khu vực (ManageArea_Delete) 50
9.Thêm loại món ăn (ManageTypeFood_Add) 50
10.Cập nhập loại món ăn (ManageTypeFood_Update) 51
11.Xóa loại món ăn (ManageTypeFood_Delete) 51
12.Thêm món ăn (ManageFood_Add) 52

13.Cập nhập món ăn (ManageFood_Update) 53
14.Xóa món ăn (ManageFood_Delete) 54
Chương 6: SƠ ĐỒ LỚP (CLASS DIAGRAM) 55
Chương 7: SƠ ĐỒ TRẠNG THÁI (STATE DIAGRAM) 56
1.Entity ‘Food’ 56
2.Entity ‘TypeFood’ 56
3.Entity ‘Hóa đơn’ 57
4.Entity ‘TypeResFood’ 57
5.Entity ‘Service’ 57
6.Entity ‘Delivery’ 58
7.Entity ‘Area’ 58
Chương 8: THIẾT KẾ GIAO DIỆN 59
1.Danh sách các màn hình 59
2.Mô tả các màn hình 62
2.1Màn hình trang chủ Home 62
8
2.2Màn hình đăng kí 63
2.3 Màn hình đăng nhập 64
2.4Màn hình thông tin tài khoản 64
2.5 Màn hình tìm kiếm nhà hàng 64
2.6Màn hình tìm kiếm món ăn 67
2.7Màn hình chi tiết nhà hàng 68
2.8Màn hình quản lí của admin 69
2.9Màn hình quản lí của nhà hàng 73
Chương 9: CÀI ĐẶT, XỬ LÍ 74
1.Ngôn ngữ cài đặt 74
2.Mô hình sử dụng 74
3.Môi trường phát triển 74
4.Môi trường triển khai ứng dụng: 74
Chương 10: KẾT LUẬN 75

1.Bảng phân công công việc 75
2.Kết quả đạt được 76
3.Hướng phát triển 77
Chương 1: PHÁT BIỂU BÀI TOÁN
1. Nêu vấn đề
Trước xu thế hiện đại hóa trong thương mại và sự phát triển không ngừng của
công nghệ thông tin, việc áp dụng công nghệ thông tin, đặc biệt là các ứng dụng liên
quan hoặc thuộc lĩnh vực Hệ thống thông tin trong các nghiệp vụ kinh doanh, quản lý,
dịch vụ,… của doanh nghiệp ngày càng trở nên phổ biến và rộng khắp.
Chính vì vậy hệ thống thông tin ngày càng khẳng định được vai trò quan trọng
trong việc hỗ trợ các nghiệp vụ quản lí và dần trở thành một công cụ đắc lực trong
việc phát triển kinh tế, quản lý của các doanh nghiệp trong nước nói riêng và nền kinh
tế quốc gia nói chung. Việc ứng dụng hệ thống thông tin vào các quy trình, giao dịch
9
trong kinh doanh như quản lý, mua bán, thanh toán, tìm kiếm, định vị địa lí, … trở
thành một xu hướng mới mà các doanh nghiệp lớn và nhỏ Việt Nam đang từng bước
hướng tới.
2. Mô tả bài toán
Nắm bắt được xu thế đó, cùng với môn học Đồ án xây dựng Hệ Thống Thông Tin,
nhóm sinh viên lớp HTTT04 đã xây dựng nên một đồ án với đề tài: Website bán thức
ăn. Trang web sẽ liên kết với các nhà hàng, quán ăn trong phạm vi Thành phố Hồ Chí
Minh để thực hiện quản lý hệ thống, các giao dịch mua hàng online và thanh toán qua
mạng. Với mục đích xây dựng một trang thương mại điện tử tiện dụng và hữu ích có
thể giúp người dùng cũng như người bán giao dịch, mua bán, kinh doanh, phát triển
các dịch vụ thương mại,… một cách nhanh chóng và tiện lợi hơn, trang web sẽ có
những chức năng chính như:
- Bán trực tuyến các mặt hàng là thức ăn, thức uống,… cho người dùng, khách hàng
thông qua việc liên kết với các nhà cung cấp. Các nhà cung cấp muốn thông qua
website để bán hàng cần phải liên hệ thông qua việc đăng ký thông tin và đăng ký
bán hàng trên trang web.

- Cho phép người mua đánh giá được chất lượng sản phẩm và phản hồi ý kiến, đánh
giá của mình về sản phẩm hay nhà cung cấp.
- Quản lý các thông tin của nhà cung cấp (Tên nhà cung cấp, địa chỉ, các mặt hàng
mà nhà cung cấp đó cung cấp cùng giá của nó,…). Các nhà cung cấp ở đây thường
là các nhà hàng, quán ăn, Mỗi nhà cung cấp có thể cung cấp nhiều mặt hàng
thuộc nhiều loại món ăn khác nhau, mỗi mặt hàng có một giá duy nhất.
- Quản lý thức ăn và loại thức ăn: Website có nhiều loại thức ăn khác nhau được
phân loại thành các loại thức ăn khác nhau. Mỗi loại bán một số mặt hàng tùy theo
số lượng mà nhà cung cấp đưa ra.
- Ngoài ra, trang web còn quản lý thông tin các nhân viên bán hàng trực tuyến của
mình (Họ Tên, Lương, Địa chỉ, )
- Thêm vào đó, hệ thống còn có chức năng quản lý khách hàng mua hàng trên trang
web: Có hai loại khách hàng:
+ Khách vãng lai: với loại khách này, không cần quản lý thông tin khách
hàng mà chỉ cần quản lý hóa đơn bán hàng
+ Khách hàng thường xuyên: Đối với loại khách hàng thường xuyên mua
hàng trên website, hệ thống cần quản lý thông tin của khách hàng (họ tên, địa chỉ,
tổng tiền mua,…) để giúp khách hàng tiện lợi và tiếp kiệm thời gian khi mua sắm
trên website hơn. Ngoài ra có thể có giảm giá, ưu đãi, khuyến mãi,… cho khách
hàng khi mua hàng tùy theo số điểm cộng tích lũy của khách hàng (nếu có). Đó là
một hình thức nâng cao chất lượng phục vụ và thu hút khách hàng khi mua hàng
trên website .
10
- Trang web cũng cần có những yêu cầu về báo cáo – thống kê tình hình kinh doanh
theo thời gian, mặt hàng, khách hàng, cho người quản lý. Hệ thống sẽ hỗ trợ chức
năng báo cáo phân tích tình hình kinh doanh (doanh thu, chi phí bán hàng, công
nợ, )
- Tư vấn cho khách hàng những món ăn, những thực đơn hữu ích tùy theo nhu cầu
và sở thích của khách hàng
 Yêu cầu: Xây dựng website quản lí bán món ăn và quán ăn. Hệ thống phải thể

hiện được chế độ bảo mật, phân quyền, chống truy cập trái phép vào hệ thống và
dữ liệu, tư vấn cho người sử dụng.
Chương 2: KHẢO SÁT HIỆN TRẠNG
1. Hiện trạng tổ chức
Admin
Admin
Nhân viên
Nhân viên
Khách hàng
Khách hàng
Nhà cung cấp
Nhà cung cấp
Khách hàng
vãng lai
Khách hàng
vãng lai
Khách hàng
thường xuyên
Khách hàng
thường xuyên
Hệ thống quản lí bán món
ăn và quán ăn
Hệ thống quản lí bán món
ăn và quán ăn
11
2. Chức năng nhóm người dùng
Chương 3: PHÂN TÍCH YÊU CẦU
1. Yêu cầu chức năng:
1.1 Yêu cầu lưu trữ:
- Hệ thống lưu trữ các thông tin thiết yếu về sản phẩm (món ăn, loại món

ăn ),
- Lưu trữ thông tin về khách hàng thường xuyên, nhân viên, tài khoản đăng
nhập trang web
- Lưu trữ nhà cung cấp, (các quán ăn, nhà hàng, địa điểm, khu vực,…)
- Lưu trữ thông tin về đơn hàng, giao hàng
- Lưu trữ thông tin nhân viên (Họ tên, lương, địa chỉ… )
1.1.1 Thông tin món ăn:
Các thông tin về món ăn được lưu trữ:
- Mã món ăn
- Tên món ăn
- Loại món ăn
- Nhà cung cấp
- Số lượng
- Hình ảnh
12
- Mô tả
1.1.2 Thông tin loại món ăn:
- Mã loại món ăn
- Tên loại món ăn
- Mô tả
1.1.3 Thông tin nhà cung cấp, quán ăn:
Các thông tin về quán ăn, địa điểm của nhà cung cấp được lưu trữ:
- Mã địa điểm
- Tên địa điểm
- Địa chỉ
- Số điện thoại
- Mô tả
- Hình ảnh
1.1.4 Thông tin khách hàng:
- Họ tên khách hàng

- Mã khách hàng
- Mã tài khoản đăng nhập
- Địa chỉ
- Mã khu vực
1.1.5 Thông tin về nhân viên:
- Mã tài khoản đăng nhập
- Mã nhân viên
- Chức vụ
1.1.6 Thông tin về tài khoản đăng nhập
- Mã tài khoản đăng nhập
- Họ tên
- Tài khoản
- Mật khẩu
- Ngày sinh
- Email
- Giới tính
- Số điện thoại
1.1.7 Thông tin về khu vực
- Mã khu vực
- Tên khu vực
1.1.8 Thông tin về đơn hàng
- Mã đơn hàng
- Mã nhà cung cấp
- Mã khách hàng
- Mã giao hàng
- Địa chỉ giao hàng
- Ngày tạo
13
- Tên người thanh toán
- Email

- Số điện thoại
- Mã thẻ ngân hàng (nếu có)
- Tổng tiền hóa đơn
1.1.9 Thông tin về chi tiết đơn hàng
- Mã chi tiết đơn hàng
- Mã đơn hàng
- Mã món
- Số lượng
- Thuế VAT
- Giảm giá (nếu có)
- Thành tiền
1.1.10 Thông tin về giao hàng
- Mã giao hàng
- Mã nhà cung cấp
- Mã khu vực
- Thời gian
- Chi phí
1.2 Yêu cầu tính toán:
1.1.11 Tính tiền hóa đơn:
- Tính tiền hóa đơn dựa vào thông tin hàng hóa mà khách hàng mua trên
website. Hệ thống sẽ truy xuất cơ sở dữ liệu để lấy thông tin về giá của
hàng hóa đã được thêm vào giỏ hàng, từ đó tính tổng tiền hóa đơn.
- Công thức tính tiền hóa đơn:
Tổngtiền=
Trong đó: n là số mặt hàng trong hóa đơn
1.1.12 Thanh toán điện tử:
- Mỗi đơn hàng có thể có hai hình thức thanh toán: thu tiền tại nhà (COD)
hoặc thanh toán qua thẻ ngân hàng (quán ăn sẽ cung cấp email xác nhận
cho khách hàng và gửi số tài khoản thanh toán của quán cho khách hàng).
Với hình thức thanh toán qua ngân hàng, khách hàng phải nhập mã thẻ hợp

lệ để hệ thống kiểm tra và trừ tiền vào thẻ.
14
1.3 Yêu cầu tra cứu:
- Tìm kiếm món ăn theo loại món ăn
- Tìm kiếm quán ăn, địa điểm theo món ăn
- Tìm kiếm quán ăn, địa điểm theo khu vực
- Tìm kiếm quán ăn theo đánh giá người dùng
1.4 Yêu cầu thống kê
- Báo cáo, thống kê đơn đặt hàng trong một khoảng thời gian được chỉ định
- Thống kê món ăn được người dùng lựa chọn nhiều nhất trong một khoảng
thời gian
- Thống kê loại món ăn được người dùng lựa chọn nhiều nhất trong một
khoảng thời gian
- Thống kê nhà cung cấp có số hóa đơn bán được nhiều nhất trong một
khoảng thời gian
- Thống kê doanh thu của hệ thống
- Báo cáo kết quả hoạt động kinh doanh
- Thống kê doanh thu của một quán ăn trong một khoảng thời gian cho trước
1.5 Yêu cầu tư vấn, bình luận, đánh giá:
- Tư vấn cho các khách hàng về thực đơn, về món ăn đi kèm phù hợp với nhu
cầu, sở thích của khách hàng thông qua thống kê những món ăn khách hàng
thường mua hoặc thông qua trách nghiệm, khảo sát về sở thích, tính cách
của khách hàng. Từ đó có hướng phát triển món ăn yêu thích, bổ ích cho
từng khách hàng khi có nhu cầu
- Khách hàng có thể bình luận, đánh giá (rank) về món ăn, địa điểm đã sử
dụng, chọn lựa để có cái nhìn tổng quát, khách quan từ đó hệ thống sẽ phát
triển dựa trên đánh giá đó
2. Yêu cầu phi chức năng:
2.1 Yêu cầu bảo mật:
- Chỉ cho phép các đối tượng được đăng nhập và thao tác trên hệ thống:

• Đăng nhập: Nhân viên, admin, khách hàng thường xuyên
• Tìm địa điểm, món ăn, mua hàng: Khách hàng thường xuyên hoặc
không cần đăng nhập (khách hàng vãng lai).
- Mã hóa mật khẩu người dùng
15
2.2 Yêu cầu phân quyền
Tùy vào chức vụ chuyên môn, và quyền lợi đặc thù của từng đối tượng mà
được tương tác với trang web trong những chức năng cụ thể tương ứng:
- Khách hàng: Có thể đăng nhập hoặc không đăng nhập, được phép xem
thông tin hàng hóa, tìm địa điểm, món ăn, mua hàng, quản lý giỏ hàng,
thanh toán.
- Nhân viên: Đăng nhập và quản lý đơn hàng, món ăn, loại món ăn.
- Admin: Đăng nhập, có toàn quyền của nhân viên và được phép quản lý tài
khoản đăng nhập vào hệ thống, xem và quản lý thông tin của nhân viên,
khách hàng, đăng ký nhà cung cấp
16
Chương 4: Mô hình Usecase
1. Sơ đồ Usecase
<<extend>>
Admin
RegisteredCustomer
NormalCustomer
Restaurant
ManageRestaurant
Count/report
Login
Logout
RegisterCustomer
RegisterSale
ManageArea

Search Restaurant
SearchFood
ManageCart
Pay the cart
ManageProfile
ManageCustomer
ViewHistorySale
Send confirm-order Email
System of online payment services
<<extend>>
SystemEasyFood
ManageTypeFood
ManageFood
ManageOrder
ManageShipAddress
2. Danh sách các tác nhân nghiệp vụ
STT Tác nhân hệ thống › nghĩa
1 Admin Là người tác động vào hệ thống, có toàn quyền với các
chức năng quản lí của hệ thống, quản lí nhà hàng, dịch
vụ, quản lí khách hàng, khu vực, báo cáo thống kê tổng
kết doanh thu của hệ thống.
17
2 Restaurant Là người/ đơn vị nhà hàng tác động vào hệ thống, đăng
kí tài khoản và dịch vụ bán hàng trên hệ thống, tạo và
quản lí menu, thức ăn của mình, xem lịch sử bán thức ăn,
chỉnh sửa thông tin món ăn
2 NormalCustomer Là người tác động vào hệ thống, xem và tìm kiếm món
ăn, nhà hàng, tạo và chỉnh sửa giỏ hàng, đặt mua món ăn,
thanh toán, xem thông tin đặt hàng của mình
3 RegisteredCustomer Là người tác động vào hệ thống, đăng ký tài khoản, xem

và chỉnh sửa thông tin cá nhân và có tất cả các quyền của
NormalCustomer
4 System of online
payment services
Là người/ hệ thống khác tác động lên hệ thống, hỗ trợ
chức năng giao dịch thanh toán online
3. Danh sách các usecase nghiệp vụ
STT Usecase › nghĩa
1 Login Khách hàng, nhà hàng sử dụng dịch vụ đăng nhập tài
khoản sử dụng hệ thống
2 RegisterCustomer Khách hàng đăng ký tài khoản hệ thống
3 Logout Khách hàng, người quản lý, nhà hàng sử dụng dịch vụ
đăng xuất tài khoản sử dụng hệ thống
4 RegisterSale Nhà hàng đăng kí tài khoản sử dụng dịch vụ hệ thống
5 ManageProfile Khách hàng quản lí thông tin cá nhân của khách hàng
6 SearchRestaurant Khách hàng (thông thường và thành viên) tìm kiếm nhà
hàng
7 SearchFood Khách hàng (thông thường và thành viên) tìm kiếm món
ăn
8 ManageCart Khách hàng (thông thường và thành viên) cập nhập,
thay đổi giỏ hàng
9 Pay the cart Khách hàng (thông thường và thành viên) thanh toán giỏ
hàng
10 ManageShipAddress Khách hàng quản ý thông tin địa chỉ người nhận
11 ViewHistorySale Nhà hàng xem lịch sử bán hàng
12 ManageFood Nhà hàng, admin quản lí món ăn
18
13 ManageTypeFood Admin quản lí loại món ăn
14 ManageArea Admin quản lí khu vực
15 ManageRestaurant Admin quản lí nhà hàng

16 ManageCustomer Admin quản lí khách hàng thành viên
17 ManageOrder Admin quản lí hóa đơn khách hàng
18 Count/Report Admin báo cáo thông kê
4. Đặc tả usecase
4.1 Đặc tả usecase Login
- Tóm tắt:
Usecase này mô tả cách người quản lý, nhân viên tiếp tân, khách hàng đăng nhập
vào hệ thống
- Dòng sự kiện:
Dòng sự kiện chính
Usecase này bắt đầu khi một actor (người admin, nhà hàng, khách hàng) muốn
đăng nhập vào hệ thống.
• Hệ thống yêu cầu các actor (người admin, nhà hàng, khách hàng) nhập tên
và mật khẩu.
• Actor (người admin, nhà hàng, khách hàng) nhập tên và mật khẩu.
• Hệ thống kiểm tra tên và mật khẩu mà actor đã nhập và cho phép actor
đăng nhập vào hệ thống.
Dòng sự kiện khác
Tên/ mật khẩu sai: Nếu trong dòng sự kiện chính các actor nhập tên và mật khẩu
sai thì hệ thống sẽ thông báo lỗi. Actor có thể quay trở về đầu dòng sự kiện hoặc
huỷ bỏ việc đăng nhập lúc này usecase kết thúc.
- Các yêu cầu đặc biệt: Không có.
- Điều kiện tiên quyết: Không có
- Trạng thái hệ thống trước khi bắt đầu usecase: Không có.
- Trạng thái hệ thống sau khi kết thúc usecase:
19
- Nếu Usecase thành công thì người đăng nhập sẽ có các quyền sử dụng hệ
thống tương ứng. Ngược lại, trạng thái của hệ thống không đổi.
- Điểm mở rộng: Không có.
4.2 Đặc tả usecase RegisterCustomer

- Tóm tắt:
Usecase này mô tả cách khách hàng đăng ký tài khoản của hệ thống
- Dòng sự kiện:
Dòng sự kiện chính
Usecase này bắt đầu khi một khách hàng muốn tạo tài khoản để sử dụng các chức
năng của hệ thống
• Hệ thống yêu cầu actor (khách hàng) nhập các thông tin các nhân cần thiết
của khách hàng để tạo tài khoản như: Họ tên, địa chỉ, Số CMND, số điện thoại,
email, username, password
• Hệ thống kiểm tra các thông tin chính đã có trong cơ sở dữ liệu chưa, kiểm
tra có lỗi khóa chính, mà actor đã nhập và thông báo kết quả đăng ký cho actor.
Dòng sự kiện khác
Đã có tài khoản: Nếu trong dòng sự kiện chính các actor nhập các thông tin của
một khách hàng mà một khách hàng đã có tài khoản và thông tin đã được lưu trữ
trong cơ sở dữ liệu, cụ thể là Số CMND, username, email thì hệ thống sẽ thông
báo lỗi. Actor có thể quay trở về đầu dòng sự kiện hoặc huỷ bỏ việc đăng ký lúc
này usecase kết thúc.
- Các yêu cầu đặc biệt: Không có.
- Điều kiện tiên quyết: Không có
- Trạng thái hệ thống trước khi bắt đầu usecase: Hệ thống chưa lưu trữ thông
tin của khách hàng muốn đăng ký
- Trạng thái hệ thống sau khi kết thúc usecase:Nếu Usecase thành công thì
actor sẽ có các quyền sử dụng hệ thống tương ứng, actor có thể chỉnh sửa thông
tin cá nhân, đổi mật khẩu. Ngược lại, trạng thái của hệ thống không đổi.
- Điểm mở rộng: Không có.
20
4.3 Đặc tả usecase RegisterSale
- Tóm tắt:
Usecase này mô tả cách nhà hàng đăng ký bán hảng trên hệ thống. Nhà hàng sẽ
đến trao đổi trực tiếp với admin, cung cấp thông tin về nhà hàng. Nếu các điều

kiện về đăng kí bán thỏa mãn, admin sẽ tạo tài khoản cho nhà hàng dựa trên
thông tin mà nhà hàng cung cấp
- Dòng sự kiện:
Dòng sự kiện chính
Usecase này bắt đầu admin chấp nhận việc đăng kí bán hàng trên hệ thống của
nhà hàng, admin tạo tài khoản cho nhà hàng để sử dụng các chức năng của hệ
thống
• Hệ thống yêu cầu actor (admin, nhà hàng) nhập các thông tin các cần thiết
của nhà hàng để tạo tài khoản như: Họ tên người đăng kí, địa chỉ, Số CMND, số
điện thoại, email, username, password, tên nhà hàng, loại dịch vụ nhà hàng chọn,
thời gian phục vụ của nhà hàng, thời gian dùng dịch vụ,…
• Hệ thống kiểm tra các thông tin chính đã có trong cơ sở dữ liệu chưa, kiểm
tra có lỗi khóa chính,lỗi các trường cần thiết (username, email, ) mà actor đã
nhập và thông báo kết quả đăng ký cho actor.
Dòng sự kiện khác
Đã có tài khoản: Nếu trong dòng sự kiện chính các actor nhập các thông tin của
một khách hàng mà một khách hàng đã có tài khoản và thông tin đã được lưu trữ
trong cơ sở dữ liệu, cụ thể là Số CMND, username, email thì hệ thống sẽ thông
báo lỗi. Actor có thể quay trở về đầu dòng sự kiện hoặc huỷ bỏ việc đăng ký lúc
này usecase kết thúc.
- Các yêu cầu đặc biệt: Usecase này phải thông qua admin trước đó.
- Điều kiện tiên quyết: Không có
- Trạng thái hệ thống trước khi bắt đầu usecase: Hệ thống chưa lưu trữ thông
tin của nhà hàng muốn đăng ký
- Trạng thái hệ thống sau khi kết thúc usecase:Nếu Usecase thành công thì
actor sẽ có các quyền sử dụng hệ thống tương ứng, actor có thể chỉnh sửa thông
tin về nhà hàng, về món ăn theo ràng buộc của hợp đồng, của hệ thống. Ngược
lại, trạng thái của hệ thống không đổi.
- Điểm mở rộng: Không có.
21

4.4 Đặc tả usecase Manage Profile
- Tóm tắt:
Usecase này mô tả cách khách hàng thành viên của hệ thống quản lí thông tin cá
nhân của khách hàng
- Dòng sự kiện:
Dòng sự kiện chính
Usecase này bắt đầu khách hàng muốn xem, cập nhập, chỉnh sửa thông tin cá
nhân và thông tin khác của khách hàng
• Hệ thống yêu cầu actor (khách hàng) đăng nhập thành công vào hệ thống
với tài khoản của khách hàng
(1) Dòng sự kiện xem profile:
• Người dùng vào profile xem các thông tin cá nhân.
(2) Dòng sự kiện sửa thông tin profile:
• Người dùng nhập, cập nhập thông tin mới cho profile.
• Hệ thống kiểm tra thông tin. Nếu hợp lệ hệ thống sẽ cập nhập lại
thông tin profile của khách hàng vào cơ sở dữ liệu. Nếu không
hợp lệ thì chuyển đến dòng sự kiện khác
Dòng sự kiện khác
Nếu trong dòng sự kiện chính các actor cập nhập các thông tin mà các thông tin
đó không hợp lệ (trùng với thông tin của một khách hàng khác đã được lưu trữ
trong cơ sở dữ liệu, cụ thể là Số CMND, username, email hoặc sai lỗi cú pháp) thì
hệ thống sẽ thông báo lỗi. Actor có thể quay trở về đầu dòng sự kiện hoặc huỷ bỏ
việc đăng ký lúc này usecase kết thúc.
- Các yêu cầu đặc biệt: Không có
- Điều kiện tiên quyết: Khách hàng phải có tài khoản cá nhân trên hệ thống
- Trạng thái hệ thống trước khi bắt đầu usecase: Hệ thống chưa lưu trữ thông
tin profile mới (nếu khách hàng cập nhập profile)
- Trạng thái hệ thống sau khi kết thúc usecase:Nếu Usecase thành công thì hệ
thống sẽ thay đổi thông tin profile của khách hàng. Ngược lại, hệ thống không
thay đổi.

- Điểm mở rộng: Không có.
22
4.5 Đặc tả usecase “Search Restaurant”
- Tóm tắt:
Usecase này mô tả cách người dùng tìm kiếm nhà hàng theo quận phục vụ, theo
loại món ăn
- Dòng sự kiện:
Dòng sự kiện chính
Usecase này bắt đầu khi người dùng muốn tìm kiếm nhà hàng
• Hệ thống yêu cầu actor (khách hàng, người dùng hệ thống) chọn quận phục
vụ mà người dùng muốn tìm kiếm nhà hàng có phục vụ hoặc chọn loại món ăn
mà nhà hàng có phục vụ
• Hệ thống dựa vào thông tin của quận phục vụ của nhà hàng, thông tin loại
món ăn được chọn, dựa vào dữ liệu được lưu trữ, thực hiện chức năng tìm kiếm
nhà hàng theo quận phục vụ, tìm kiếm nhà hàng theo loại món ăn
Dòng sự kiện khác
Nếu nhà hàng không có theo yêu cầu, actor có thể quay trở về đầu dòng sự kiện
lúc này usecase kết thúc.
- Các yêu cầu đặc biệt
- Điều kiện tiên quyết: Không có
- Trạng thái hệ thống trước khi bắt đầu usecase: Không có
- Trạng thái hệ thống sau khi kết thúc usecase: Không có
- Điểm mở rộng: Không có.
4.6 Đặc tả usecase “Search Food”
- Tóm tắt:
Usecase này mô tả cách người dùng tìm kiếm món ăn theo yêu cầu
- Dòng sự kiện:
Dòng sự kiện chính
Usecase này bắt đầu khi người dùng muốn tìm kiếm món ăn
23

• Hệ thống yêu cầu actor (khách hàng, người dùng hệ thống) nhập từ khóa
món ăn cần tìm kiếm
• Hệ thống dựa vào thông tin từ khóa tìm kiếm món ăn mà người dùng nhập,
dựa vào dữ liệu được lưu trữ, thực hiện chức năng tìm kiếm món ăn theo từ khóa
của người dùng
Dòng sự kiện khác
Nếu món ăn không có theo yêu cầu, actor có thể quay trở về đầu dòng sự kiện lúc
này usecase kết thúc.
- Các yêu cầu đặc biệt
- Điều kiện tiên quyết: Không có
- Trạng thái hệ thống trước khi bắt đầu usecase: Không có
- Trạng thái hệ thống sau khi kết thúc usecase: Không có
- Điểm mở rộng: Không có
4.7 Đặc tả usecase “Manage Cart”
- Tóm tắt:
Usecase này mô tả cách khách hàng quản lí giỏ hàng
- Dòng sự kiện:
Dòng sự kiện chính
Usecase này bắt đầu khách hàng muốn xem, thêm món ăn vào giỏ hàng, cập nhập
giỏ hàng, xóa giỏ hàng
• Hệ thống yêu cầu actor (khách hàng) đăng nhập thành công vào hệ thống
với tài khoản của khách hàng
• Khách hàng vào màn hình chi tiết của nhà hàng muốn mua
(1) Dòng sự kiện xem giỏ hàng:
• Người dùng xem thông tin giỏ hàng khi chọn mua món ăn tại
trang detail restaurant.
(2) Dòng sự kiện thêm món ăn vào giỏ hàng:
• Người dùng chọn món ăn vào giỏ hàng, click chọn số lượng mua.
24
• Hệ thống kiểm tra thông tin (số lượng, đơn giá). Nếu hợp lệ hệ

thống sẽ cập nhập thông tin giỏ hàng. Nếu không hợp lệ thì
chuyển đến dòng sự kiện khác
(3) Dòng sự kiện sửa giỏ hàng:
• Người dùng xóa món ăn muốn mua, chỉnh sửa số lượng món ăn
đã mua.
• Hệ thống kiểm tra thông tin (số lượng, đơn giá). Nếu hợp lệ hệ
thống sẽ cập nhập thông tin giỏ hàng. Nếu không hợp lệ thì
chuyển đến dòng sự kiện khác
(4) Dòng sự kiện xóa giỏ hàng
• Người dùng chọn xóa giỏ hàng.
• Hệ thống sẽ xóa session giỏ hàng của người dùng
Dòng sự kiện khác
Nếu số lượng món ăn yêu cầu lớn hơn số lượng món ăn hiện có, hệ thống sẽ báo
lỗi, yêu cầu người dùng nhập lại, actor phải nhập lại số lượng hoạc hủy bỏ
usecase, lúc này usecase kết thúc.
- Các yêu cầu đặc biệt: Không có
- Điều kiện tiên quyết: Không có
- Trạng thái hệ thống trước khi bắt đầu usecase: Không có
- Trạng thái hệ thống sau khi kết thúc usecase: Không có
- Điểm mở rộng: Không có.
4.8 Đặc tả usecase “Pay the Cart”
- Tóm tắt:
Usecase này mô tả cách người dùng thanh toán giỏ hàng
- Dòng sự kiện:
Dòng sự kiện chính
Usecase này bắt đầu sau khi người dùng chọn món ăn vào giỏ hàng và chọn nút
thanh toán
• Actor (khách hàng, người dùng hệ thống) chọn món ăn vào giỏ hàng và
chọn nút thanh toán
25

• Hệ thống dựa vào thông tin của giỏ hàng người dùng (số lượng món ăn, tên
món ăn, ), kiểm tra hợp lệ của giỏ hàng (giỏ hàng đã đạt mức thanh toán tối thiểu
của nhà hàng đưa ra chưa). Nếu chưa thì đến dòng sự kiện khác 1.
• Hệ thống yêu cầu người dùng nhập các thông tin cần thiết như địa chỉ
người nhận, thông tin người nhận, chọn phương thức thanh toán:
+ Thanh toán trực tiếp:
• Hệ thống sẽ kiểm tra thông tin người mua đã nhập (về địa chỉ giao
hàng, phân phối, số lượng món ăn, giá cả) Nếu hợp lệ, hệ thống sẽ tạo
hóa đơn và gửi đến cho nhà hàng.
• Nhà hàng nhận hóa đơn và giao hàng đến cho người dùng. Nếu
không hợp lệ, chuyển đến dòng sự kiện khác 2
+Thanh toán online:
• Hệ thống sẽ kiểm tra thông tin người mua đã nhập (về địa chỉ giao
hàng, phân phối, số lượng món ăn, giá cả) Nếu hợp lệ, hệ thống sẽ tạo
hóa đơn và kết nối với hệ thống ngân lượng (hệ thống thanh toán
online).
• Khách hàng sẽ nhập thông tin tài khoản ngân lượng và thanh toán. Hệ
thống thanh toán ngân lượng sẽ gửi về hệ thống xác nhận khách hàng
đã thanh toán và hệ thống sẽ chuyển hóa đơn đến cho nhà hàng.
• Nhà hàng nhận hóa đơn và giao hàng đến cho người dùng. Nếu
không hợp lệ, chuyển đến dòng sự kiện khác 2
Dòng sự kiện khác1
Nếu giỏ hàng không đủ mức tối thiểu theo có theo yêu cầu, actor phải chọn thêm
món ăn để đủ điều kiện tối thiểu hoạc hủy bỏ usecase, lúc này usecase kết thúc.
Dòng sự kiến khác 2
Nếu các điều kiện không hợp lệ, hệ thống sẽ yêu cầu actor sẽ nhập lại thông tin
hoạc hủy bỏ usecase, lúc này usecase kết thúc
- Các yêu cầu đặc biệt
- Điều kiện tiên quyết: Khách hàng phải có giỏ hàng trước đó
- Trạng thái hệ thống trước khi bắt đầu usecase: Hệ thống chưa lưu trữ chưa

lưu trữ thông tin của hóa đơn

×