1.3 Phạm vi Phần mềm hướng tới các cửa hàng quần áo vừa và nhỏ Phần mềm phục vụ đối tượng dùng với các chức năng tương ứng sau − Khách hàng + Tra cứu sản phẩm + Tra cứu đơn hàng + Quản
Trang 1ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
BÁO CÁO ĐỒ ÁN 2
Đề tài:
Xây dựng website bán quần áo online
Giảng viên hướng dẫn:
Trang 2MỤC LỤC
2 Tông quan 6
2.1 Khảo sát hiện trạng 6
2.1.1 Nhu cầu thực tiển 6
2.1.2 Hiện trạng của đơn vị cần xây dựng phần mềm 6
2.1.3 Các phần mềm cùng loại hiện đang có, hoặc hệ thống tin học đang được sử dụng 6
2.1.4 Những hạn chế hay những vấn đề còn tồn tại trong những phần mềm đang có 6
2.2 Mục đích 7
2.3 Phạm vi 7
2.4 Quy trình làm viêc chính 7
3 CƠ SỠ LÝ THUYẾT/TỔNG QUAN CÔNG NGHỆ 8
3.1 Phương pháp làm việc 8
3.2 Phương pháp nghiên cứu 8
3.3 Phương pháp công nghệ 8
3.4 Nền tảng công nghệ 8
4 PHÂN TÍCH THIẾT KẾ ỨNG DỤNG 8
4.1 Yêu cầu phần mềm 8
4.1.1 Yêu cầu nghiệp vụ 8
4.1.2 Yêu cầu chất lượng 9
4.2 Bảng trách nhiệm cho từng loại yêu cầu 9
4.2.1 Bảng trách nhiệm yêu cầu nghiệp vụ 9
4.2.2 Bảng trách nhiệm yêu cầu tiến hóa 10
4.3 Đặt tả USECASE 11
4.3.1 Usercase đăng ký tài khoảng 11
4.3.2 Usecase đăng nhập 12
4.3.3 Usercase thay đổi thông tin giao hàng 13
4.3.4 Usercase thay đổi thông tin cá nhân 15
4.3.5 Usercase thay đổi mật khẩu 16
4.3.6 Usercase thêm sản phẩm vào giỏ hàng 18
4.3.7 Usercase thêm sản phẩm vào danh sách yêu thích 19
4.3.8 Usercase yêu cầu đặt hàng 20
4.3.9 Usercase thêm đánh giá sản phẩm 22
Trang 34.4 Sơ đồ ACTIVITY 24
4.4.1 Sơ đồ activity đăng nhập 24
4.4.2 Sơ đồ activity đăng kí 25
4.4.3 Sơ đồ activity thêm vào giỏ hàng 26
4.4.4 Sơ đồ activity yêu cầu đặt hàng 27
4.4.5 Sơ đồ activity đánh giá sản phẩm 28
4.5 Sơ đồ luồng dữ liêu cho từng loại nghiệp vụ 29
4.5.1 Sơ đồ luồng dữ liêu cho yêu cầu tra cứu thông tin tài khoảng 29
4.5.2 Sơ đồ luồng dữ liệu cho yêu cầu tra cứu lịch sử yêu cầu đặt hàng: 30
4.5.3 Sơ đồ luồng dữ liệu cho yêu cầu tra cứu thông tin đơn yêu cầu đặt hàng 31
4.5.4 Sơ đồ luồng dữ liệu cho yêu cầu tra cứu thông tin sản phẩm 32
4.5.5 Sơ đồ luồng dữ liệu cho yêu cầu đánh giá sản phẩm 33
4.5.6 Sở đồ luồng dữ liêu cho yêu cầu thêm sản phẩm vào danh mục yêu thích 35
4.5.7 Sở đồ luồng dữ liêu cho yêu cầu tra cứu Blog 36
4.6 Thiết kế dữ liệu 37
4.6.1 Sơ đồ ERD 37
4.6.2 Danh sách các bảng dữ liệu (table) trong sơ đồ 37
4.6.3 Mô tả từng bảng dữ liệu 38
4.7 Thiết kế giao diện 47
4.8 Đăng nhập 47
4.8.1 Giao diện 47
4.8.2 Mô tả các đối tượng trên màn hình 47
4.8.3 Danh sách biến cố và xử lý tương ứng trên màn hình 47
4.9 Đăng ký 48
4.9.1 Giao diện 48
4.9.2 Mô tả các đối tượng trên màn hình 48
4.9.3 Danh sách biến cố và xử lý tương ứng trên màn hình 48
4.10 Trang chủ 49
4.10.1 Giao diện 49
4.10.2 Mô tả các đối tượng trên màn hình 50
4.10.3 Danh sách biến cố và xử lý tương ứng trên màn hình 50
4.11 Trang danh mục sản phẩm 52
4.11.1 Giao diện 52
4.11.2 Mô tả các đối tượng trên màn hình 53
4.12 Trang chi tiết sản phẩm 54
4.12.1 Giao diện 54
4.12.2 Mô tả các đối tượng trên màn hình 54
Trang 44.12.3 Danh sách biến cố và xử lý tương ứng trên màn hình 55
4.13 Trang danh sách bài viết 56
4.13.1 Giao diện 56
4.13.2 Mô tả các đối tượng trên màn hình 57
4.14 Trang chi tiết bài viết 58
4.14.1 Giao diện 58
4.14.2 Mô tả các đối tượng trên màn hình 58
4.14.3 Danh sách biến cố và xử lý tương ứng trên màn hình 59
4.15 Trang thông tin cửa hàng 59
4.15.1 Giao diện 59
4.15.2 Mô tả các đối tượng trên màn hình 59
4.15.3 Danh sách biến cố và xử lý tương ứng trên màn hình 60
4.16 Trang thông tin liên hệ 61
4.16.1 Giao diện 61
4.16.2 Mô tả các đối tượng trên màn hình 61
4.16.3 Danh sách biến cố và xử lý tương ứng trên màn hình 62
4.17 Trang thông tin người dùng 62
4.17.1 Giao diện 62
4.17.2 Mô tả các đối tượng trên màn hình 62
4.17.3 Danh sách biến cố và xử lý tương ứng trên màn hình 63
4.18 Trang thông tin danh sách đơn hàng 63
4.18.1 Giao diện 63
4.18.2 Mô tả các đối tượng trên màn hình 63
4.18.3 Danh sách biến cố và xử lý tương ứng trên màn hình 63
4.19 Trang sản phẩm yêu thích 64
4.19.1 Mô tả các đối tượng trên màn hình 64
4.19.2 Danh sách biến cố và xử lý tương ứng trên màn hình 65
4.20 Trang thay đổi mật khẩu 65
4.20.1 Giao diện 65
4.20.2 Mô tả các đối tượng trên màn hình 65
4.20.3 Danh sách biến cố và xử lý tương ứng trên màn hình 66
4.21 Trang quản lý địa chỉ 66
4.21.1 Giao diện 66
4.21.2 Mô tả các đối tượng trên màn hình 66
4.21.3 Danh sách biến cố và xử lý tương ứng trên màn hình 66
4.22 Cài đặt và thử nghiệm 68
5 TÔNG KẾT 68
Trang 55.1 Kết quả 69
5.2 Hạn chế 69
5.3 Hướng phát triển 69
TÀI LIỆU KHAM KHẢO 70
PHỤ LỤC PHÂN CÔNG NHIỆM VỤ 70
MỤC LỤC HÌNH Hình 1 Mô tả USECASE 11 Hình 2 Activity đăng nhập 24 Hình 3 Activity đăng kí 25 Hình 4 Activity thêm vào giỏ hàng 26 Hình 5 Activity yêu cầu đặt hàng 27 Hình 6 Activity đánh giá sản phẩm 28 Hình 7 DFD tra cứu thông tin tài khoảng 29 Hình 8 DFD tra cứu lịch sử đặt hàng 30 Hình 9 DFD yêu cầu đặt hàng 31 Hình 10 Tra cứu thông tin sản phẩm 32 Hình 11 DFD đánh giá sản phẩm 33 Hình 12 Thêm sản phẩm vào giỏ hàng 34 Hình 13 DFD thêm vào danh mục yêu thích 35 Hình 14 DFD tra cứu Blog 36 Hình 15 Sơ đồ ERD 37 Hình 16 Giao diện đăng nhập 47 Hình 17 Giao diện đăng ký 48 Hình 18 Giao diện đăng ký 49 Hình 19 Giao diện danh mục sản phẩm 52 Hình 20 Giao diện chi tiết sản phẩm 54 Hình 21 Giao diện danh sách bài viết 56 Hình 22 Giao diện chi tiết bài viết 58 Hình 23 Giao diện thông tin cửa hàng 59 Hình 24 Giao diện thông tin liên hệ 61 Hình 25 Giao diện thông tin người dùng 62 Hình 26 Giao diện danh sách đơn hàng 63 Hình 27 Giao diện danh mục yêu thích 64 Hình 28 Giao diện thay đổi mật khẩu 65 Hình 29 Giao diện quản lý địa chỉ 66 MỤC LỤC BẢNG BIỂU Bảng 1 Trách nhiệm yêu cầu nghiệp vụ 10
Trang 6Bảng 2 Usecase đăng ký tài khoảng 12
Bảng 3 Usecase đăng nhập 13
Bảng 4 Usecase thay đổi thông tin giao hàng 15
Bảng 5 Usecase thay đổi thông tin cá nhân 16
Bảng 6 Usecase thay đổi mật khẩu 18
Bảng 7 Usecase thêm sản phẩm vào giỏ hàng 19
Bảng 8 Usecase thêm sản phẩm vào danh sách yêu thích 20
Bảng 9 Usecase đăng nhập 21
Bảng 10 Usecase thêm đánh giá sản phẩm 23
Bảng 11 Biểu mẩu thông tin tài khoảng 29
Bảng 12 Biểu mẩu lịch sử yêu cầu đặt hàng 30
Bảng 13 Biểu mẩu yêu cầu đặt hàng 31
Bảng 14 Biểu mẩu tra cứu thông tin sản phẩm 32
Bảng 15 Biểu mẩu đánh giá sản phẩm 33
Bảng 16 Thêm sản phẩm vào giỏ hàng 34
Bảng 17 Biểu mẩu thêm sản phẩm vào danh mục yêu thích 35
Bảng 18 Biểu mẩu tra cứu blog 36
Bảng 19 Danh sách các bảng dữ liệu 38
Bảng 20 Mô tả bảng đánh giá 39
Bảng 21 Mô tả bảng chi tiết sản phẩm 40
Bảng 22 Mô tả bảng chi tiết giỏ hàng 40
Bảng 23 Mô tả bảng chi tiết số lượng sản phẩm 41
Bảng 24 Bảng khách hàng 42
Bảng 25 Mô tả bảng ảnh sản phẩm 42
Bảng 26 Mô tả bảng chi tiết hóa đơn 43
Bảng 27 Mô tả bảng chi tiết địa chỉ vận chuyển 44
Bảng 28 Mô tả bảng chi tiết thanh toán 44
Bảng 29 Mô tả bảng chi tiết vận chuyển 45
Bảng 30 Mô tả bảng thông tin mã giảm giá 45
Bảng 31 Mô tả bảng thông tin blog 46
Bảng 32 Mô tả bảng thông tin tác giả 46
Bảng 33 Mô tả các đối tượng trên màn hình đăng nhập 47
Bảng 34 Danh sách biến cố màn hình đăng nhập 47
Bảng 35 Mô tả các đối tượng trên màng hình đăng ký 48
Bảng 36 Danh sách các biến cố trên màn hình đăng ký 48
Bảng 37 Mô tả đối tượng màn hình trang chủ 50
Bảng 38 Danh sách biến cố trên màn hình trang chủ 51
Bảng 39 Mô tả đối tượng màn hình danh mục sản phẩm 53
Bảng 40 Mô tả các đối tượng trên màn hình chi tiết sản phẩm 55
Bảng 41 Danh sách biến cố trên màn hình chi tiết sản phẩm 55
Trang 7Bảng 42 Mô tả đối tượng màn hình danh sách blog 57
Bảng 43 Mô tả các đối tượng màn hình chi tiết blog 59
Bảng 44 Mô tả các đối tượng trên màn hình thông tin cửa hàng 60
Bảng 45 Mô tả các đối tượng trên màn hình thông tin liên hệ 62
Bảng 46 Mô tả các đối tượng trên màn hình thông tin tài khoảng 62
Bảng 47 Danh sach các biến cố trên màn hình thông tin tài khoảng 63
Bảng 48 Mô tả các đối tượng trên màn hình danh sách đơn hàng 63
Bảng 49 Danh sách biến cố trên màn hình danh sách đơn hàng 64
Bảng 50 Mô tả các đổi tượng trên màn hình sản phẩm yêu thích 65
Bảng 51 Danh sách biến cố trên màn hình sản phẩm yêu thích 65
Bảng 52 Mô tả các đối tượng trên màn hình đổi mật khẩu 66
Bảng 53 Danh sách biến cố trên màn hình đổi mật khẩu 66
Bảng 54 Mô tả các đối tượng trên màn hình địa chỉ 66
Bảng 55 Danh sách các biến cố trên màn hình địa chỉ 67
Trang 8TÀI LIỆU THAM KHẢO
Trong cuộc sống hiện đại ngày nay, nhu cầu mua sắm ngày nay của con người tăng một cách nhanh chóng, đặc biệt về thương mại điện tử một trong những thị
trường đang phát triển hơn bao giờ hết Nhiều shop bán hàng hay các website thương mại điện tử lớn ra đời, điều đó cũng dẫn đến việc các cửa hàng, đặt biệt là các cửa hàng quần áo muốn mở rộng phạm vi buôn bán phải phát triển theo hướng thương mại điện tử Áp dụng kiến thức về lập trình, những hướng dẫn của giảng viên và những hiểu biết thu thập được trong quá trình học tập, nhóm chúng tôi đã quyết định xây dựng nên một phần mềm bán quần áo trực tuyến Phần mềm này được xây dựng đề phục vụ các yêu cầu nghiệp vụ sau: tra cứu sản phẩm, tiếp nhận đơn hàng, tra cứu thông tin đơn hàng, tra cứu thông tin tin khách hàng Phần nội dung chính tiếp theo sẽ trình bày quá trình mà nhóm đã nghiên cứu và thiết kế, các sơ đồ mà chúng tôi đã sử dụng để xây dựng thành công ứng dụng trên
1 T ÔNG QUAN
1.1 Khảo sát hiện trạng
1.1.1 Nhu cầu thực tiển
Ứng dụng những công nghệ vào việc kinh doanh không còn là điều mới mẻ Đối với các cửa hàng quần áo cũng vậy nhu cầu mở rộng khả năng tiếp cận khách hàng là cần thiết, việc tăng sự thuận tiện cho việc mua hàng và loại bỏ các khó khăn và bất tiện của các cửa hàng theo cách truyền thống là nhu cầu mà các cửa hàng truyền thống đang hướng tới Với sự phát triển của thương mại điện tử như hiện nay các cửa hàng bán quần áo trực tuyến đang rất được ưa chuộng và ứng dụng rộng rãi
1.1.2 Hiện trạng của đơn vị cần xây dựng phần mềm
Những đơn vị cần xây dựng phần mềm hiện nay trải rộng từ nhỏ và vừa, không
có nhu cầu mở mặt bằng kinh doanh
Chưa tin học hóa các nghiệp vụ chính Ví dụ như trong việc lập đơn hàng, áp dụng các phương thức thanh toán điện tử mà các bên ngân hàng hay ví điện tử cung cấp, lưu trữ thông tin sản phẩm, quản lý kho hàng…
1.1.3 Các phần mềm cùng loại hiện đang có, hoặc hệ thống tin học đang được sử
Trang 91.2 Mục đích
− Cung cấp đầy đủ tính năng cần thiết
− Dễ sử dụng, nhanh gọn, tiện lợi
− Giao diện thân thiện
− Nâng cao tính chính xác, bám sát thực tiễn
− Đảm bảo tốt về mặt bảo mật và phân quyền
1.3 Phạm vi
Phần mềm hướng tới các cửa hàng quần áo vừa và nhỏ
Phần mềm phục vụ đối tượng dùng với các chức năng tương ứng sau
− Khách hàng
+ Tra cứu sản phẩm + Tra cứu đơn hàng + Quản lý thông tin tài khoản + Tra cứu thông tin cửa hàng + Yêu cầu đặt hàng
+ Theo dõi đơn hàng
1.4 Quy trình làm viêc chính
− Hiện nay có rất nhiều quy trình phát triển phần mềm khác nhau Tuy nhiên theo yêu cầu của đề tài và gợi ý của giảng viên, nhóm đã sử dụng mô hình thác nước cải tiến Mô hình trên bao gồm các trình tự: xác định yêu cầu, phân tích, thiết kế, cài đặt, kiểm thử, bảo trì Trong đó, kết quả của giai đoạn trước là cơ sở đầu vào của giai đoạn sau Vì vậy, nếu như có lỗi xảy
ra, nhóm có thể quay lui để sửa lỗi và tối ưu phần mềm trong khi tiến độ hiện tại vẫn được duy trì
− Cụ thể các trình tự phát triển phần mềm của nhóm như sau:
+ Xác định yêu cầu: Khảo sát yêu cầu người dùng, lập ra bảng các yêu cầu
+ Cài đặt: Dựa theo những thiết kế và phân tích, tiến hành xây dựng chương trình thực tế
+ Kiểm thử: Chạy thực nghiệm và đánh giá, tìm và sửa lỗi
Trang 102 CƠ SỠ LÝ THUYẾT/TỔNG QUAN CÔNG NGHỆ
2.1 Phương pháp làm việc
Làm việc theo hình thức online thông qua discord, messenger và microsoft team
2.2 Phương pháp nghiên cứu
− Khảo sát nhu cầu thực tế của người dùng
− Phân tích, đánh giá các phần mềm có sẵn
− Nghiên cứu các nền tảng công nghệ hiện đại, phổ biến ngày nay
2.3 Phương pháp công nghệ
− Nghiên cứu cơ sở dữ liệu MongoDB
− Nghiên cứu về kiến trúc trang web
3.1.1 Yêu cầu nghiệp vụ
- Lưu trữ: lịch sử yêu cầu đặt hàng, lập danh sách sản phẩm trong giỏ hàng, lập danh mục sản phẩm yêu thích, danh sách sản phẩm, danh sách các đánh giá của sản phẩm, danh sách các blog, lập đơn yêu cầu đặt hàng
- Tra cứu: thông tin khách hàng, thông tin sản phẩm
- Kết xuất: Lập hóa đơn yêu cầu đặt hàng
- Tính toán: Lập báo giá cho đơn yêu cầu đặt hàng
Trang 113.1.2 Yêu cầu chất lượng
3.1.2.1 Yêu cầu về tính hiệu quả, đúng đắn
+ Bảo đảm tính toàn vẹn của dữ liệu
+ Các thông báo phản hồi ngay lập tức khi người dùng thao tác + Các thông số được tính toán, cập nhật và hiển thị ngay lập tức
3.1.2.2 Yêu cầu về bảo mật
+ Các dữ liệu quan trọng như mật khẩu được mã hóa
+ Phân quyền rõ ràng, linh hoạt
3.1.2.3 Yêu cầu về tính tương thích
+ Tương thích trên hầu hết các trình duyệt và hệ điều hành khác nhau
3.2 Bảng trách nhiệm cho từng loại yêu cầu
3.2.1 Bảng trách nhiệm yêu cầu nghiệp vụ
hàng
Người dùng cung cấp thông tin tra cứu
Tìm và xuất thông tin liên quan
phẩm trong giỏ hàng
Người dùng vào danh trang giỏ hàng
Tìm và xuất thông tin liên quan
phẩm yêu thích
Người dùng vào trang danh sách sản phẩm yêu thich
Tìm và xuất thông tin liên quan
cung cấp các thông tin cần thiết
Tìm và xuất thông tin liên quan
Trang 12vào trang blog
Tìm và xuất thông tin liên quan
hàng
Người dùng cung cấp các thông tin cần thiết
Tiến hàng kiểm tra
và ghi nhận lưu trữ
khoản
Người dùng vào trang thông tin tài khoản
Tìm và xuất thông tin liên quan
Bảng 1 Trách nhiệm yêu cầu nghiệp vụ
3.2.2 Bảng trách nhiệm yêu cầu tiến hóa
Trang 133.3 Đặt tả USECASE
Hình 1 Mô tả USECASE
3.3.1 Usercase đăng ký tài khoảng
Use case: Đăng ký tài khoản
Tác nhân chính: Khách hàng
Mô tả ngắn gọn:
Khách hàng tạo tài khoản mới
Điều kiện tiên quyết:
− Hệ thống đang ở trạng thái hoạt động
− Chưa đăng nhập
Trang 14Sự kiện kích hoạt: Chọn “Sign Up” ở trang trang đăng nhập
Điều kiện thực hiện: Chưa đăng nhập
Luồng sự kiện chính:
1 Người dùng truy cập website
2 Chọn vào phần đăng nhập (Login/Register)
3 Chọn vào phần Sign Up
4 Nhập email, tên và mật khẩu
5 Người dùng nhấn nút tạo tài khoản
6 Hiện thông báo và gửi mail xác nhận (A1)
7 Người xác minh mail
8 Kết thúc usecase
Luồng sự kiện phụ:
Luồng A1 (Người dùng nhập không hợp lệ, email ko hợp lệ hoặc email đã
được đăng ký)
1 Về lại bước 4 của luồng sự kiện chính
Luồng sự kiện ngoại lệ:
Bảng 2 Usecase đăng ký tài khoảng
Trang 15Điều kiện tiên quyết:
− Hệ thống đang ở trạng thái hoạt động
− Chưa đăng nhập
Sự kiện kích hoạt: Chọn “Sign In” ở trang trang đăng nhập
Điều kiện thực hiện: Chưa đăng nhập
Luồng sự kiện chính:
2 Người dùng truy cập website
3 Chọn vào phần đăng nhập (Login/Register)
4 Chon vào phần Sign In
5 Nhập phần tên đăng nhập và mật khẩu
6 Người dùng nhấn vào nút đăng nhập
7 Người dùng đăng nhập thành công và chuyển đến cửa sổ trang chủ (A1, A2)
8 Kết thúc usecase
Luồng sự kiện phụ:
− Luồng A1 ( Thông tin đang nhập sai)
1 Hiện thông báo tài khoản hoặc mật khẩu sai
2 Quay về bước 4 của luồng sự kiện chính
− Luồng A2 ( Tài khoản chưa được xác minh)
1 Hệ thống hiện thông báo tài khoản chưa được xác minh
2 Quay lai bước 4 của luồng sự kiện chính
Luồng sự kiện ngoại lệ:
Bảng 3 Usecase đăng nhập
3.3.3 Usercase thay đổi thông tin giao hàng
Use case: Thay đổi thông tin về địa chỉ giao hàng
Trang 16Tác nhân chính: Khách hàng
Mô tả ngắn gọn:
Khách hàng xem các thông tin của tài khoản
Điều kiện tiên quyết:
− Hệ thống đang ở trạng thái hoạt động
− Đa đăng nhập
Sự kiện kích hoạt: Chọn phần “My Account”
Điều kiện thực hiện: Đã đăng nhập
Luồng sự kiện chính:
1 Người dùng truy cập website
2 Chọn vào phần My Account
3 Hệ thống chuyển đến cửa sổ thông tin tài khoản
4 Người dùng chọn phần “Address Management”
5 Hệ thống hiển thị cửa sổ thông tin địa chỉ giao hàng
6 Người dùng thay đổi thông tin.(A1, A2)
7 Kết thúc use case
Luồng sự kiện phụ:
− Luồng A1 ( Người dùng thêm địa chỉ)
1 Người dùng nhập thông tin địa địa chỉ giao nhận
2 Người dùng xác nhận thêm địa chỉ
3 Trở về bước 7 của luồng sự kiện chính
− Luồng A2 ( Người dùng thay thông tin của địa chỉ đã đã có)
1 Người dùng chọn địa chỉ muốn thay đổi
2 Sửa đổi thông tin
3 Nhấn xác nhận
Trang 174 Trở về bước 7 của luồng sự kiện chính
− Luồng A3 (Người dùng xóa bỏ địa chỉ )
1 Người dùng nhấn vào nút xóa
2 Người dùng xác nhận
3 Trở về bước 7 của luồng sự kiện chính
Luồng sự kiện ngoại lệ:
Bảng 4 Usecase thay đổi thông tin giao hàng
3.3.4 Usercase thay đổi thông tin cá nhân
Use case: Thay đổi thông tin các nhân
Tác nhân chính: Khách hàng
Mô tả ngắn gọn:
Khách hàng xem thông tin cá nhân của tài khoản
Điều kiện tiên quyết:
− Hệ thống đang ở trạng thái hoạt động
− Đa đăng nhập
Sự kiện kích hoạt: Chọn phần “My Account”
Điều kiện thực hiện: Đã đăng nhập
Trang 185 Hệ thống hiển thị cửa sổ thông tin tài khoản
6 Người dùng thay đổi thông tin
7 Người dùng xác nhận thay đổi(A1)
8 Kết thúc use case
Luồng sự kiện phụ:
− Luồng A1 (Thông tin thay đổi không hợp lệ)
1 Hệ thống hiện thông báo phần thông tin không hợp lệ
2 Trở về bước 6
Luồng sự kiện ngoại lệ:
Bảng 5 Usecase thay đổi thông tin cá nhân
3.3.5 Usercase thay đổi mật khẩu
Use case: Thay đổi mật khẩu
Tác nhân chính: Khách hàng
Mô tả ngắn gọn:
Khách hàng xem thông tin cá nhân của tài khoản
Điều kiện tiên quyết:
− Hệ thống đang ở trạng thái hoạt động
Trang 19− Đã đăng nhập
Sự kiện kích hoạt: Chọn phần “My Account”
Điều kiện thực hiện: Đã đăng nhập
5 Người dùng nhập thông tin
6 Người dùng xác nhận thay đổi mật khẩu (A1,A2)
7 Hệ thống hiện thông báo thay đổi mật khẩu thành công (A3)
8 Kết thúc usecase
Luồng sự kiện phụ
− Luồng A1 (Người dùng nhập mật khẩu không hợp lệ)
1 Hệ thống hiện thông báo mật khẩu không hợp lệ
2 Trở về bước 5
− Luồng A2 (Người dùng nhập mật khẩu không trùng khớp)
1 Hệ thống hiện thông báo mật khẩu không trùng
2 Trở về bước 5
− Luồng A3 (Người dùng nhập mật khẩu hiện tại không đúng)
1 Hệ thống hiện thông báo mật khẩu không đúng
2 Trở về bước 5
Trang 20Luồng sự kiện ngoại lệ:
Bảng 6 Usecase thay đổi mật khẩu
3.3.6 Usercase thêm sản phẩm vào giỏ hàng
Use case: Thêm sản phẩm vào giỏ hàng
Tác nhân chính: Khách hàng
Mô tả ngắn gọn:
Khách hàng xem thông tin cá nhân của tài khoản
Điều kiện tiên quyết:
− Hệ thống đang ở trạng thái hoạt động
− Đã đăng nhập
Sự kiện kích hoạt: Chọn phần “Add To Cart”
Điều kiện thực hiện: Đã đăng nhập
Luồng sự kiện chính:
1 Truy cập website
2 Người dùng chọn sản phẩm cần thêm vào giỏ
3 Hệ thống hiển thị trang thông tin sản phẩm
4 Người dùng chọn size, màu và số lượng
5 Nhấn nút thêm vào giỏ hàng(A2)
6 Hệ thống thông báo thêm vào giỏ thành công (A1)
7 Kết thúc use case
Trang 21Luồng sự kiện phụ:
− Luồng A1 (Người dùng chừa chọn size và màu)
1 Hệ thống hiện thông báo chưa chọn size hoặc màu
2 Trở về bước 4
− Luồng A2 (Người dùng chưa đăng nhập)
1 Hệ thống chuyển đến cửa sổ đăng nhập
2 Trở về bước 7 của luồng sự kiện chính
Luồng sự kiện ngoại lệ:
Bảng 7 Usecase thêm sản phẩm vào giỏ hàng
3.3.7 Usercase thêm sản phẩm vào danh sách yêu thích
Use case: Thêm sản phẩm vào danh sách yêu thích
Tác nhân chính: Khách hàng
Mô tả ngắn gọn:
Khách hàng thêm sản phẩm vào danh sách sản phẩm yêu thích của tài khoản
Điều kiện tiên quyết:
− Hệ thống đang ở trạng thái hoạt động
− Đa đăng nhập
Sự kiện kích hoạt: Chọn phần “Add WishList”
Điều kiện thực hiện: Đã đăng nhập
Trang 22Luồng sự kiện chính:
1 Truy cập website
2 Người dùng chọn sản phẩm cần thêm vào giỏ
3 Hệ thống hiển thị trang thông tin sản phẩm
4 Nhấn nút “Add wishlist”(A2)
5 Hệ thống thông báo thêm thành công (A1)
6 Kết thúc use case
Luồng sự kiện phụ
− Luồng A1 (Sản phẩm đã được thêm)
1 Hệ thống hiện thông báo sản phẩm đã tồn tại
2 Trở về bước 4
− Luồng A2 (Người dùng chưa đăng nhập)
1 Hệ thống chuyển đến cửa sổ đăng nhập
2 Trở về bước 7 của luồng sự kiện chính
Luồng sự kiện ngoại lệ:
Bảng 8 Usecase thêm sản phẩm vào danh sách yêu thích
3.3.8 Usercase yêu cầu đặt hàng
Use case: Yêu cầu đặt hàng
Tác nhân chính: Khách hàng
Mô tả ngắn gọn:
Khách hàng tiến hành đặt hàng các sản phẩm trong giỏ
Điều kiện tiên quyết:
− Hệ thống đang ở trạng thái hoạt động
Trang 23− Đã đăng nhập
Sự kiện kích hoạt: Chọn phần “Place Order”
Điều kiện thực hiện: Đã đăng nhập
Luồng sự kiện chính:
1 Truy cập website
2 Người nhấn vào giỏ hàng
3 Hệ thống hiển thị cửa sổ giỏ hàng
4 Người dùng chọn phương thức thanh toán
5 Người dùng nhập mã giảm giá(A1)
6 Người dùng xác dụng áp dùng mã giảm giá
7 Hệ thống thông báo áp dụng mã giảm thành công(A2)
8 Hệ thống thay đổi giá phải trả của giỏ hàng
9 Người dùng nhấn nút “Place Order”
10 Hệ thống chuyển đến trang thông tin đơn hàng
11 Kết thúc use case
Luồng sự kiện phụ:
− Luồng A1 (Người dùng không dùng mà giảm giá)
1 Chuyển tới bước 9 của luồng sự kiện chính
− Luồng A2 (Mã xác thực không hợp lệ)
2 Hệ thống thông báo áp dụng mã giảm không hợp lệ
3 Trở về bước 9 của luồng sự kiện chính
Luồng sự kiện ngoại lệ:
Bảng 9 Usecase đăng nhập
Trang 243.3.9 Usercase thêm đánh giá sản phẩm
Use case: Thêm đánh giá sản phẩm
Tác nhân chính: Khách hàng
Mô tả ngắn gọn:
Khách hàng thêm đánh giá sản phẩm của cửa hàng
Điều kiện tiên quyết:
Hệ thống đang ở trạng thái hoạt động
Sự kiện kích hoạt: Chọn phần “Submit”
Điều kiện thực hiện: Truy cập website
Luồng sự kiện chính:
1 Người dùng vào trang thông tin sản phẩm
2 Người dùng điền thông tin để đánh giá
3 Nhấn nút submit
4 Hệ thống hiện thông báo thêm đánh giá thành công (A1 ,A2)
5 Hệ thống thêm đánh giá của khách hàng vào danh sách các đánh giá của sản phẩm
6 Kêt thúc usecase
Luồng sự kiện phụ:
− Luồng A1 (Người dùng không nhập đầy đủ thông tin)
1 Hệ thống hiện thông báo chưa nhập đủ thông tin
2 Trở lại bước 2 của luồng sự kiện chính
− Luồng A2 (Người dùng chưa đăng nhập)
1 Hệ thống chuyển đến màn hình đăng nhập
Trang 252 Trở về bước 6 của luồng sự kiện chính
Luồng sự kiện ngoại lệ:
Bảng 10 Usecase thêm đánh giá sản phẩm
Trang 263.4 Sơ đồ ACTIVITY
3.4.1 Sơ đồ activity đăng nhập
Hình 2 Activity đăng nhập
Trang 273.4.2 Sơ đồ activity đăng kí
Hình 3 Activity đăng kí
Trang 283.4.3 Sơ đồ activity thêm vào giỏ hàng
Hình 4 Activity thêm vào giỏ hàng
Trang 293.4.4 Sơ đồ activity yêu cầu đặt hàng
Hình 5 Activity yêu cầu đặt hàng
Trang 303.4.5 Sơ đồ activity đánh giá sản phẩm
Hình 6 Activity đánh giá sản phẩm
Trang 313.5 Sơ đồ luồng dữ liêu cho từng loại nghiệp vụ
3.5.1 Sơ đồ luồng dữ liêu cho yêu cầu tra cứu thông tin tài khoảng
- Biểu mẩu 1
Thông tin tài khoảng
Ngày tạo tài khoảng
Chi tiết tài khoảng
Thông tin khách hàng
Bảng 11 Biểu mẩu thông tin tài khoảng
- Quy đinh:
- Sơ đồ DFD
Hình 7 DFD tra cứu thông tin tài khoảng
Các luồng dữ liệu:
Trang 32D1: Mã tài khoảng khách hàng sử dụng D2: Không có
D3: Giá trị tìm kiếm D4: D1
D5: Không có D6: D3
3.5.2 Sơ đồ luồng dữ liệu cho yêu cầu tra cứu lịch sử yêu cầu đặt hàng:
Phương thức thanh toán
Thông tin vận chuyển
D3: Giá trị tìm kiếm
Trang 33D4: Không có D5: Không có D6: D3
3.5.3 Sơ đồ luồng dữ liệu cho yêu cầu tra cứu thông tin đơn yêu cầu đặt hàng
- Biểu mẩu 3
Yêu cầu đặt hàng
Mã tài khoảng khách hàng
Sản phẩm đang trong giỏ
Thông tin nhận
Phương thức thanh toán
Hình 9 DFD yêu cầu đặt hàng
D1: Thông tin yêu cầu đặt hàng D2: Không có
D3: D1
Trang 34D4: D1 D5: Không có D6: D1
3.5.4 Sơ đồ luồng dữ liệu cho yêu cầu tra cứu thông tin sản phẩm
- Biểu mẩu 4
Tra cứu thông tin sản phẩm
Tên sản phẩm
Mô tả
Thông tin chi tiết
Hình 10 Tra cứu thông tin sản phẩm
D1: Tên sản phẩm cần tra cứu D2: Không có
Trang 35D3: Thông tin sản phẩm D4: Không có
D5: Không có D6: D3
3.5.5 Sơ đồ luồng dữ liệu cho yêu cầu đánh giá sản phẩm
Trang 36D3: Không có D4: Nội dung đánh giá D5: Không có
Thông tin chi tiêt
Bảng 16 Thêm sản phẩm vào giỏ hàng
- Quy định:
- Sơ đồ DFD:
Hình 12 Thêm sản phẩm vào giỏ hàng
Các luồng dữ liệu: