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ở
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
Trang 2MỞ ĐẦU
Trong thời đại phát triển kinh tế thị trường như hiện nay, đất nước ngày càng đilê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ụ chonhu 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 kinhdoanh 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 quanhoặ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ôngngừ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 – ĐHQuốc Gia TP.HCM – Xây dựng một website quản lí bán món ăn quán ăn Với mongmuố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ómsinh 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êucầ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
Trang 3LỜI CẢM ƠN
Để 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ânthà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.sNguyễn Đình Loan Phương đã hướng dẫn, chỉ dạy và vạch ra hướng đi cho nhóm xâydự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 đổivớ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ếnthứ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ầnnữ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
Trang 4(Của giảng viên hướng dẫn)
………
………
………
………
………
………
………
………
………….
MỤC LỤC
Trang 5Mở đầu
Chương 1: PHÁT BIỂU BÀI TOÁN 9
1 Nêu vấn đề 9
2 Mô tả bài toán 9
Chương 2: KHẢO SÁT HIỆN TRẠNG 11
1 Hiện trạng tổ chức 11
2 Chức năng nhóm người dùng 11
Chương 3: PHÂN TÍCH YÊU CẦU 12
1 Yêu cầu chức năng: 12
1.1 Yêu cầu lưu trữ: 12
1.2 Yêu cầu tính toán: 14
1.3 Yêu cầu tra cứu: 15
1.4 Yêu cầu thống kê 15
1.5 Yêu cầu tư vấn, bình luận, đánh giá: 15
2 Yêu cầu phi chức năng: 16
2.1 Yêu cầu bảo mật: 16
2.2 Yêu cầu phân quyền 16
Chương 4: Mô hình Usecase 17
1 Sơ đồ Usecase 17
2 Danh sách các tác nhân nghiệp vụ 18
3 Danh sách các usecase nghiệp vụ 19
4 Đặc tả usecase 20
4.1 Đặc tả usecase Login 20
4.2 Đặc tả usecase RegisterCustomer 21
4.3 Đặc tả usecase RegisterSale 22
4.4 Đặc tả usecase Manage Profile 23
4.5 Đặc tả usecase “Search Restaurant” 24
Trang 64.6 Đặc tả usecase “Search Food” 24
4.7 Đặc tả usecase “Manage Cart” 25
4.8 Đặc tả usecase “Pay the Cart” 26
4.9 Đặc tả usecase “ManageShip Address” 28
4.10 Đặc tả usecase “ManageTyFoOfRes” 29
4.11 Đặc tả usecase “ManageFood” 30
4.12 Đặc tả usecase “ManageTypeFood” 32
4.13 Đặc tả usecase “ManageArea” 33
4.14 Đặc tả usecase “ManageRestaurant” 34
4.15 Đặc tả usecase “ManageCustomer” 36
4.16 Đặc tả usecase “ManageOrder” 37
4.17 Đặc tả usecase “Count/Report” 38
5 Danh sách hiện thực hóa usecase 39
6 Sơ đồ hoạt động (Activity Diagram) 39
6.1 Đăng nhập (Login) 40
6.2 Đăng kí khách hàng (RegisterCustomer) 40
6.3 Đăng kí nhà hàng (ResgisterSale) 41
6.4 Tìm kiếm món ăn (Search Food) 41
6.5 Tìm kiếm nhà hàng (Search Restaurant) 42
6.6 Tìm kiếm món ăn vào giỏ hàng (SearchFood into Cart) 42
6.7 Thanh toán (PayThe Cart) 43
6.8 Thêm khu vực (ManageArea_Add) 43
6.9 Cập nhập khu vực (ManageArea_Update) 44
6.10 Xóa khu vực (ManageArea_Delete) 44
6.11 Thêm loại món ăn (ManageTypeFood_Add) 45
6.12 Cập nhập loại món ăn (ManageTypeFood_Update) 45
6.13 Xóa loại món ăn (ManageTypeFood_Delete) 46
Trang 76.14 Thêm món ăn (ManageFood_Add) 46
6.15 Cập nhập món ăn (ManageFood_Update) 47
6.16 Xóa món ăn (ManageFood_Delete) 47
Chương 5: SƠ ĐỒ TRÌNH TỰ (SEQUENCE DIAGRAM) 48
1 Đăng nhập (Login) 48
2 Đăng kí khách hàng (RegisterCustomer) 49
3 Đăng kí nhà hàng (RegisterSale) 50
4 Tìm kiếm món ăn (SearchFood) 50
5 Thánh toán (PayTheCart) 51
6 Thêm khu vực (ManageArea_Add) 52
7 Cập nhập khu vực (ManageArea_Update) 52
8 Xóa khu vực (ManageArea_Delete) 53
9 Thêm loại món ăn (ManageTypeFood_Add) 53
10 Cập nhập loại món ăn (ManageTypeFood_Update) 54
11 Xóa loại món ăn (ManageTypeFood_Delete) 54
12 Thêm món ăn (ManageFood_Add) 55
13 Cập nhập món ăn (ManageFood_Update) 56
14 Xóa món ăn (ManageFood_Delete) 57
Chương 6: SƠ ĐỒ LỚP (CLASS DIAGRAM) 58
Chương 7: SƠ ĐỒ TRẠNG THÁI (STATE DIAGRAM) 59
1 Entity ‘Food’ 59
2 Entity ‘TypeFood’ 59
3 Entity ‘Hóa đơn’ 60
4 Entity ‘TypeResFood’ 60
5 Entity ‘Service’ 60
6 Entity ‘Delivery’ 61
7 Entity ‘Area’ 61
Trang 8Chương 8: THIẾT KẾ GIAO DIỆN 62
1 Danh sách các màn hình 62
2 Mô tả các màn hình 65
2.1 Màn hình trang chủ Home 65
2.2 Màn hình đăng kí 66
2.3 Màn hình đăng nhập 67
2.4 Màn hình thông tin tài khoản 67
2.5 Màn hình tìm kiếm nhà hàng 67
2.6 Màn hình tìm kiếm món ăn 70
2.7 Màn hình chi tiết nhà hàng 71
2.8 Màn hình quản lí của admin 72
2.9 Màn hình quản lí của nhà hàng 76
Chương 9: CÀI ĐẶT, XỬ LÍ 77
1 Ngôn ngữ cài đặt 77
2 Mô hình sử dụng 77
3 Môi trường phát triển 77
4 Môi trường triển khai ứng dụng: 77
Chương 10: KẾT LUẬN 78
1 Bảng phân công công việc 78
2 Kết quả đạt được 79
3 Hướng phát triển 80
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
Trang 9Chính vì vậy hệ thống thông tin ngày càng khẳng định được vai trò quan trọngtrong 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 trongviệ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ịchtrong 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ướchướ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 quamạ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ểncá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àngthô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 quawebsite để 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, đánhgiá 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àngthuộ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 đượcphâ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ủamì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 trangweb: 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áchhà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 muahà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ỉ,
Trang 10tổ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ắmtrên website hơn Ngoài ra có thể có giảm giá, ưu đãi, khuyến mãi,… cho kháchhà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àngtrên website
- 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 doanhtheo thời gian, mặt hàng, khách hàng, cho người quản lý Hệ thống sẽ hỗ trợ chứcnăng báo cáo phân tích tình hình kinh doanh (doanh thu, chi phí bán hàng, côngnợ, )
- 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
Trang 112 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ỉ… )
Khách hàng vãng lai
Khách hàng vãng lai thường xuyên Khách hàng
Khách hàng thường xuyên
Trang 121.1.1 Thông tin món ăn:
Các thông tin về món ăn được lưu trữ:
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ữ:
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
Trang 13- 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
1.2 Yêu cầu tính toán:
1.1.11 Tính tiền hóa đơn:
Trang 14- 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ủahà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ậncho 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ẻ
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
Trang 15thường mua hoặc thông qua trách nghiệm, khảo sát về sở thích, tính cáchcủa khách hàng Từ đó có hướng phát triển món ăn yêu thích, bổ ích chotừ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áttriể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:
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
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
Trang 16Chương 4: Mô hình Usecase
1 Sơ đồ Usecase
Trang 17Send 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
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ổngkết doanh thu của hệ thố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
Trang 182 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
r
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
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
khoản sử dụng hệ thống
đăng xuất tài khoản sử dụng hệ thống
nhà hàng
món ăn
thay đổi giỏ hàng
giỏ hàng
Trang 1916 ManageCustomer Admin quản lí khách hàng thành viên
đă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:
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ó.
Trang 20củ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
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
Trang 21- 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
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ụ,…
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
Trang 22Dò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
với tài khoản của khách hàng
(1) Dòng sự kiện xem profile:
(2) Dòng sự kiện sửa thông tin profile:
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
Trang 23- 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
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ụ
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ó
Usecase này bắt đầu khi người dùng muốn tìm kiếm món ăn
món ăn cần tìm kiếm
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
Trang 24Nế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úcnà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ó
với tài khoản của khách hàng
(1) Dòng sự kiện xem giỏ hàng:
trang detail restaurant
(2) Dòng sự kiện thêm món ăn vào giỏ hàng:
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:
đã mua
Trang 25 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
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ó
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ểucủa nhà hàng đưa ra chưa) Nếu chưa thì đến dòng sự kiện khác 1
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:
Trang 26 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ạohóa đơn và gửi đến cho nhà hàng
hợp lệ, chuyển đến dòng sự kiện khác 2+Thanh toán online:
hàng, phân phối, số lượng món ăn, giá cả) Nếu hợp lệ, hệ thống sẽ tạohóa đơn và kết nối với hệ thống ngân lượng (hệ thống thanh toán online)
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
- 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
- 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ẽ lưu trữ thông tin thông tin hóa đơn, điểm khách kháng
- Điểm mở rộng: Không có
4.9 Đặc tả usecase “ManageShip Address”
- Tóm tắt:
Trang 27Usecase này mô tả cách khách hàng quản lí thông tin địa chỉ giao hàng
- Dòng sự kiện:
Dòng sự kiện chính
Usecase này bắt đầu khách hàng thanh toán hoặc muốn xem thông tin các địa chỉ giao hàng của khách hàng
với tài khoản của khách hàng
(1) Dòng sự kiện xem thông tin địa chỉ giao hàng:
(2) Dòng sự kiện thêm thông tin địa chỉ giao hàng:
dùng
thêm mới thông tin địa chỉ giao 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 thông tin địa chỉ giao hàng:
thống sẽ cập nhập thông tin địa chỉ giao 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 thông tin địa chỉ giao hàng
Dòng sự kiện khác
Nếu không hợp lệ, 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 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ó
Trang 28- Trạng thái hệ thống trước khi bắt đầu usecase: Hệ thông chưa lưu trữ lại
thông mới mới về địa chỉ giao hàng
- Trạng thái hệ thống sau khi kết thúc usecase: Hệ thống cập nhập và lưu trữ
lại thông mới mới về địa chỉ giao hàng
1 Actor (nhà hàng ) chọn module “Quản lý thực đơn” từ màn hình chính
2 Hệ thống hiển thị mục chọn loại món trong thực đơn
3 Người dùng chọn thêm, sửa hoặc xóa các loại món ăn trong thực đơn
4 Hệ thống lưu những thay đổi khi người dùng chọn thêm, sửa, hoặc xác nhận xóa
(3) Dòng sự kiện thêm loại món ăn :
(4) Dòng sự kiện sửa thông tin loại món ăn:
(5) Dòng sự kiện xóa loại món ăn:
Dòng sự kiện khác:
Nhập thiếu các trường bắt buộc:
Trang 29 Người dùng nhập thiếu các trường dữ liệu bắt buộc thì hệ thống hiển thị thông báo các trường bắt buộc chưa được nhập.
và chọn lưu hoặc chuyển qua chức năng khá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: Chưa lưu trữ thông tin mới
- 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ẽ cập nhật lại thông tin của loại món ăn Ngược lại, trạng thái của hệ thốngkhông đổi
1 Actor (nhà hàng ) chọn module “Quản lý thực đơn” từ màn hình chính
2 Hệ thống hiển thị mục chọn loại món trong thực đơn
3 Người dùng chọn loại món
4 Hệ thống hiển thị danh sách các món ăn trong loại đó
5 Người dùng chọn thêm, sửa hoặc xóa món ăn
6 Hệ thống lưu những thay đổi khi người dùng chọn thêm, sửa, hoặc xác nhận xóa
(1) Dòng sự kiện thêm món ăn:
Trang 30(2) Dòng sự kiện sửa thông tin món ăn:
(3) Dòng sự kiện xóa món ăn:
Dòng sự kiện khác:
Nhập thiếu các trường bắt buộc:
hiển thị thông báo các trường bắt buộc chưa được nhập
và chọn lưu hoặc chuyển qua chức năng khá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: Chưa lưu trữ thông tin mới
- 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ẽ cập nhật lại thông tin của món ăn Ngược lại, trạng thái của hệ thống không đổi
Trang 312 Hệ thống hiển thị danh sách các loại món ăn trong hệ thống
3 Actor (admin ) chọn thêm, sửa hoặc xóa các loại món ăn trong hệ thống
4 Hệ thống lưu những thay đổi khi actor (admin ) chọn thêm, sửa, hoặc xác nhận xóa
(1) Dòng sự kiện thêm loại món ăn :
(2) Dòng sự kiện sửa thông tin loại món ăn:
lưu
(3) Dòng sự kiện xóa loại món ăn:
Dòng sự kiện khác:
Nhập thiếu các trường bắt buộc:
hiển thị thông báo các trường bắt buộc chưa được nhập
và chọn lưu hoặc chuyển qua chức năng khá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: Chưa lưu trữ thông tin mới
- 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ẽ cập nhật lại thông tin của loại món ăn trong 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ó.
Trang 321 Actor (admin ) chọn module “Quản lý khu vực” từ màn hình chính.
2 Hệ thống hiển thị danh sách các khu vực trong hệ thống
3 Actor (admin ) chọn thêm, sửa hoặc xóa các khu vực trong hệ thống
4 Hệ thống lưu những thay đổi khi actor (admin ) chọn thêm, sửa, hoặc xác nhận xóa
(1) Dòng sự kiện thêm khu vực :
(2) Dòng sự kiện sửa thông tin khu vực:
(3) Dòng sự kiện xóa khu vực:
Dòng sự kiện khác:
Nhập thiếu các trường bắt buộc:
hiển thị thông báo các trường bắt buộc chưa được nhập
và chọn lưu hoặc chuyển qua chức năng khác
Trang 33- 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: Chưa lưu trữ thông tin mới
- 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ẽ cập nhật lại thông tin của khu vực Ngược lại, trạng thái của hệ thống không đổi
3 Actor (admin ) chọn thêm, sửa hoặc xóa nhà hàng
4 Hệ thống lưu những thay đổi khi actor (admin ) chọn thêm, sửa, hoặc xác nhận xóa
(1) Dòng sự kiện thêm nhà hàng :
(2) Dòng sự kiện sửa thông tin nhà hàng:
(3) Dòng sự kiện xóa nhà hàng:
Trang 34Dòng sự kiện khác:
Nhập thiếu các trường bắt buộc:
hiển thị thông báo các trường bắt buộc chưa được nhập
và chọn lưu hoặc chuyển qua chức năng khá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: Chưa lưu trữ thông tin mới
- 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ẽ cập nhật lại thông tin của nhà hàng Tài khoản nhà hàng sau khi đăng nhập sẽ có thể vào được trang quản lý thực đơn của nhà hàng và tùy chỉnh thông tin của nhà hàng Ngược lại, trạng thái của hệ thống không đổi
3 Actor (admin ) chọn thêm, sửa hoặc xóa khách hàng
4 Hệ thống lưu những thay đổi khi actor (admin ) chọn thêm, sửa, hoặc xác nhận xóa
(1) Dòng sự kiện thêm khách hàng :
Trang 35(2) Dòng sự kiện sửa thông tin khách hàng:
lưu
(3) Dòng sự kiện xóa khách hàng:
Dòng sự kiện khác:
Nhập thiếu các trường bắt buộc:
hiển thị thông báo các trường bắt buộc chưa được nhập
và chọn lưu hoặc chuyển qua chức năng khá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: Chưa lưu trữ thông tin mới
- 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ẽ cập nhật lại thông tin của người dùng Người dùng đăng nhập vào sẽ thấythông tin được thay đổi Ngược lại, trạng thái của hệ thống không đổi
Trang 361 Actor (admin ) chọn module “Quản lý hóa đơn” từ màn hình chính.
2 Hệ thống hiển thị danh sách các hóa đơn
3 Actor (admin ) chọn thêm, sửa hoặc xóa hóa đơn
4 Hệ thống lưu những thay đổi khi actor (admin ) chọn thêm, sửa, hoặc xác nhận xóa
(1) Dòng sự kiện thêm hóa đơn :
(2) Dòng sự kiện sửa thông tin hóa đơn:
(3) Dòng sự kiện xóa hóa đơn:
(4) Dòng sự kiện tiềm kiếm hóa đơn:
người mua, mã nhà hàng…
kiếm
cầu tìm kiếm mà Actor (admin) nhập
Dòng sự kiện khác:
Nhập thiếu các trường bắt buộc:
hiển thị thông báo các trường bắt buộc chưa được nhập
và chọn lưu hoặc chuyển qua chức năng khác
Trang 37- 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: Chưa lưu trữ thông tin mới
- 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ẽ cập nhật lại thông tin của hóa đơn Ngược lại, trạng thái của hệ thống không đổi
1 Actor (admin ) chọn module “Count/Report” từ màn hình chính
2 Hệ thống hiển thị màn “báo cáo kết quả hoạt động kinh doanh/thống kê”
3 Actor (admin ) chọn xem “báo cáo kết quả hoạt động kinh doanh/thống kê”
4 Actor (admin ) chọn ngày bắt đầu và ngày kết thúc
5 Hệ thống lưu lấy dữ liệu về thống kê và báo cáo kết quả hoạt động kinh doanh lên và hiển thị biểu đồ chart
Dòng sự kiện khác:
Nhập thiếu các trường bắt buộc:
hiển thị thông báo các trường bắt buộc chưa được nhập
và chọn lưu hoặc chuyển qua chức năng khác
Trang 38- 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: Chưa lưu trữ thông tin mới
- Trạng thái hệ thống sau khi kết thúc usecase: Ngược lại, trạng thái của hệ
thống không đổi
- Điểm mở rộng: Không có.
5 Danh sách hiện thực hóa usecase
6 Sơ đồ hoạt động (Activity Diagram)
6.1 Đăng nhập (Login)
Enter UserName and PassWord
CheckAccount
Show M essege Error Decentralize
Load Page of this decentralize
Trang 396.2 Đăng kí khách hàng (RegisterCustomer)
Enter info User and Register
Check email and Activ e Account
Send a email to email of user
Check info
Show Messege Error
True False
Open Account
6.3 Đăng kí nhà hàng (ResgisterSale)
Show Form RegisterSale
Checkinfo Send an Email RegisterSale to Admin
True False
Check email and check info RegisterSell
Create Account Restaurant
valid Send email Active Account
invalid Send email: not successful
User
Choose RegisterSale
Enter info Res and RegisterSell