2 .6Biểu đồ use case và đặc tả use case của hệ thống
2.7 Các use case được phân rã ở mức nhỏ nhất
2.7.1 Các use case được phân rã ở mức nhỏ nhất của Người dùng
2.7.1.1 Sơ đồ và đặc tả Use Case đăng nhập
Hình 2. 8 Use case đăng nhập cho người dùng
Use Case ID UC-1.1 Use Case Name Đăng nhập
Description Là người dùng, tôi muốn đăng nhập vào ứng dụng, để sử dụng dịch vụ từ ứng dụng.
Actor(s) Người dùng
Priority Có
Trigger Người dùng muốn đăng nhập vào ứng dụng bán laptop online Pre-
Condition(s):
Tài khoản người dùng đã được tạo sẵn Tài khoản người dùng đã được phân quyền
Thiết bị của người dùng đã được kết nối internet khi thực hiện đăng
nhập Post-
Condition(s):
Người dùng đăng nhập ứng dụng thành công
Hệ thống ghi nhận hoạt động đăng nhập thành công vào Activity Trang Chủ.
Basic Flow 1. Người dùng truy cập ứng dụng bán laptop online.
2. Người dùng chọn phương thức đăng nhập bằng tài khoản 3. Người dùng nhập tài khoản và chọn lệnh đăng nhập
4. Hệ thống xác thực thông tin đăng nhập thành công và cho phép người dùng truy cập ứng dụng
5. Hệ thống ghi nhận hoạt động đăng nhập thành công vào Activity Trang Chủ.
Alternative Flow Không có
Exception Flow 4c. Hệ thống xác thực thông tin đăng nhập không thành công và hiển thị thông báo.
4c1. Người dùng chọn lệnh hủy đăng nhập. Use Case dừng lại. Business Rules Không có
Non-Functional Requirement
NFR1.1-1: Timeout cho màn hình đăng nhập dưới 60 giây. NFR1.1-2: Mật khẩu của người dùng phải được hash bằng MD5. NFR1.1-3: Mật khẩu của người dùng phải trên 8 ký tự.
2.7.1.2 Sơ đồ và đặc tả Use Case đăng ký
Hình 2. 9 Use case đăng ký cho người dùng
Use Case ID UC-1.2 Use Case Name Đăng ký
Description Giúp người dùng (khách hàng) đăng ký tài khoản trên ứng dụng
Actor(s) Người dùng
Priority Có
Trigger Là người dùng, tôi muốn đăng ký tài khoản, để sử dụng dịch vụ tại ứng dụng bán laptop online
Pre-
Condition(s):
Thiết bị của người dùng đã được kết nối internet khi thực hiện đăng ký
Post-
Condition(s):
Người dùng đăng ký tại ứng dụng thành công
Hệ thống ghi nhận hoạt động đăng ký thành công vào Activity đăng nhập.
Basic Flow 1. Người dùng truy cập ứng dụng bán laptop online.
2. Khách hàng chọn chức năng “Đăng ký tài khoản”
3. Hệ thống hiển thị các thông tin yêu cầu để đăng ký: tên đăng nhập, mật khẩu, email, … các thông tin cá nhân liên quan khác. 4. Khách hàng cung cấp các thông tin và tạo tài khoản
5. Hệ thống xác nhận thông tin và tạo tài khoản cho khách hàng 6. Lấy thông tin khách hàng
7. Hệ thống trả về kết quả 8. Hiển thị
Alternative Flow
Không có
Exception Flow 4c. Khách hàng cung cấp các thông tin yêu cầu không đúng, để trống, tên đăng nhập, email, mật khẩu không hợp lệ hay đã tồn tại. Người dùng cần cung cấp lại thông tin đăng ký.
4c1. Người dùng chọn lệnh hủy đăng ký. Use Case dừng lại. Business Rules Không có
Non-Functional Requirement
NFR1.1-1: Timeout cho màn hình đăng nhập dưới 60 giây. NFR1.1-2: Mật khẩu của người dùng phải được hash bằng MD5. NFR1.1-3: Mật khẩu của người dùng phải trên 8 ký tự.
NFR1.1-4: Số điện thoại của người dùng phải đúng 10 ký tự số. NFR1.1-5: Email của dùng phải có ký tự “@”.
NFR1.1-6: Mật khẩu và nhập lại mật khẩu phải trùng khớp.
2.7.1.3 Sơ đồ và đặc tả Use Case tìm kiếm
Hình 2. 10 Use case tìm kiếm cho người dùng
Use Case ID UC-1.3
Use Case Name Tìm kiếm sản phẩm
Description Giúp người dùng có thể tìm kiếm sản phẩm
Actor(s) Người dùng
Priority Không
Trigger Là người dùng, tôi muốn tìm kiếm sản phẩm, để xem và mua sản phẩm trên ứng dụng bán laptop online
Pre-Condition(s): Thiết bị của người dùng đã được kết nối internet khi thực hiện Post-
Condition(s):
Hệ thống chuyển thành công vào Activity tìm kiếm sản phẩm Basic Flow 1. Người dùng chọn chức năng tìm kiếm
2. Hệ thống hiển thị giao diện tìm kiếm đáp ứng cho người dùng 3. Người dùng sẽ nhập vào thông tin sản phẩm cần tìm
4. Hệ thống sẽ kiểm tra và trả kết quả cho người dùng Alternative Flow 3a. Người dùng chọn bộ lọc theo danh mục sản phẩm laptop
Use case tiếp tục bước thứ 4 3b. Tìm kiếm theo lịch sử Use case tiếp tục bước thứ 4
Exception Flow Người dùng thoát chức năng tìm kiếm *Usecase dừng lại
Hệ thống kiểm tra không có từ khóa trong tìm kiếm *Hệ thống sẽ trả hết quả gợi ý
Business Rules Không có Non-Functional
Requirement
NFR1.1-1: Timeout cho trang thống kê dưới 60 giây. NFR1.1-2: Không được để trống nội dung tìm kiếm. NFR1.1-3: Không được tìm kiếm bằng ký tự đặc biệt.
1.2.1.4 Sơ đồ và đặc tả Usecase thanh toán
Hình 2. 11 Use case thanh toán cho người dùng
Use Case ID UC-1.4 Use Case Name Thanh toán
Description Giúp người dùng có thể thanh toán các sản phẩm
Actor(s) Người dùng
Priority Không
Trigger Là người dùng, tôi muốn thanh toán sản phẩm, để thanh toán các sản phẩm của tôi trong giỏ hàng trong ứng dụng bán laptop online Pre-Condition(s): Thiết bị của người dùng đã được kết nối internet khi thực hiện
Người dùng đã có tài khoản Người dùng phải đăng nhập Post-
Condition(s):
Hệ thống chuyển thành công vào Activity thanh toán Basic Flow 1. Người dùng chọn thanh toán trên ứng dụng
2. Hệ thống sẽ kiểm tra người dùng đã đăng nhập hay chưa và trả
về thông báo
3. Hệ thống sẽ kiểm tra giỏ hàng của người dùng và trả về kết quả 4. Hiển thị giao diện nhập thông tin hóa đơn (số điện thoại, địa
chỉ, ghi chú, …)
5. Hệ thống kiểm tra thông tin hóa đơn và trả về thông báo cho người dùng
Alternative Flow 2a. Người dùng chưa đăng nhập, hệ thống chuyển người dùng sang Activity đăng nhập.
3a. Giỏ hàng không có sản phẩm, hệ thống chuyển sang Activity sản phẩm
Use case tiếp tục thực hiện bước 4
Exception Flow Người dùng chọn hủy hóa đơn thanh toán *Usecase dừng lại
Business Rules Không có Non-Functional
Requirement
NFR1.1-1: Timeout cho màn hình đăng nhập dưới 300 giây.
NFR1.1-2: Địa chỉ không được bỏ trống và không chứa ký tự đặc biệt.
NFR1.1-3: Số điện thoại của người dùng phải 10 - 11 ký tự số.
2.7.1.4 Sơ đồ và đặc tả Use Case hiển thị sản phẩm
Hình 2. 12 Use case hiển thị sản phẩm cho người dùng
Use Case ID UC-1.5
Use Case Name Hiển thị sản phẩm
Description Giúp người dùng xem chi tiết sản phẩm
Actor(s) Người dùng
Priority Không
Trigger Là người dùng, tôi muốn xem thông tin, xem bình luận, xem đánh giá sản phẩm, để mua sản phẩm trên ứng dụng
Pre-Condition(s): Thiết bị của người dùng đã được kết nối internet khi thực hiện Post-
Condition(s):
Hệ thống chuyển thành công vào activity chi tiết sản phẩm Basic Flow 1. Người dùng chọn vào sản phẩm cần xem
2. Hệ thống sẽ hiển thị chi tiết sản phẩm cho người dùng
Alternative Flow Không có
Exception Flow Người dùng thoát khỏi activity xem chi tiết sản phẩm *Use Case dừng lại
Business Rules Không có Non-Functional
Requirement
NFR1.1-1: Timeout cho activity chi tiết sản phẩm dưới 300 giây.
2.7.1.5 Sơ đồ và đặc tả Use Case quản lý bình luận
Hình 2. 13 Use case quản lý bình luận cho người dùng
Use Case ID UC-1.6
Use Case Name Quản lý bình luận
Description Giúp người dùng bình luận hoặc đánh giá sản phẩm
Actor(s) Người dùng
Priority Không
Trigger Là người dùng, tôi muốn bình luận hoặc đánh giá sản phẩm, để phản hồi chất lượng sản phẩm trên ứng dụng
Pre-Condition(s): Thiết bị của người dùng đã được kết nối internet khi thực hiện Người dùng phải đăng nhập vào hệ thống
Post-
Condition(s):
Hệ thống chuyển thành công vào activity chi tiết sản phẩm
Basic Flow 1. Hệ thống sẽ hiển thị ra các bình luận và tổng điểm đánh giá của sản phẩm đó
2. Người dùng chọn chức năng bình luận sản phẩm 3. Người dùng nhập nội dung cần bình luận
4. Hệ thống sẽ kiểm tra và trả về thông báo
Alternative Flow 2.a Người dùng chọn chức năng đánh giá sản phẩm 3.a Người dùng nhập số điểm đánh giá cho sản phẩm Use case tiếp tục bước 4
Exception Flow Người dùng thoát khỏi activity xem chi tiết sản phẩm *Use Case dừng lại
Business Rules Không có Non-Functional
Requirement
NFR1.1-1: Timeout cho activity chi tiết sản phẩm dưới 300 giây. NFR1.1-2: Không được để trống nội dung bình luận.
NFR1.1-3: Không được bình luận bằng ký tự đặc biệt.
NFR1.1-4: Đánh giá sản phẩm không được dùng chữ và ký tự đặc biệt.
NFR1.1-5: Đánh giá sản phẩm trong khoản 1 - 10.
2.7.1.6 Sơ đồ và đặc tả Use Case quản lý dịch vụ
Hình 2. 14 Use case quản lý dịch vụ cho người dùng
Use Case ID UC-1.7
Use Case Name Quản lý dịch vụ
Description Giúp người dùng có trải nghiệm dịch vụ tốt hơn đối với ứng dụng
Actor(s) Người dùng
Priority Không
Trigger Là người dùng, tôi muốn góp ý, xem thông tin liên hệ và xem thông tin tuyển dụng, để có trải nghiệm dịch vụ tốt nhất trên ứng dụng Pre-Condition(s): Thiết bị của người dùng đã được kết nối internet khi thực hiện Post-
Condition(s):
Hệ thống chuyển thành công vào activity dịch vụ Basic Flow 1. Người dùng chọn chức năng góp ý
2. Người dùng nhập nội dung cần góp ý 3. Hệ thống sẽ kiểm tra và trả về kết quả
Alternative Flow 1.a Người dùng chọn chức năng xem thông tin liên hệ Use case tiếp tục thực hiện bước 3
1.a Người dùng chọn chức năng xem thông tin tuyển dụng Use case tiếp tục thực hiện bước 3
Exception Flow Người dùng thoát khỏi activity dịch vụ *Use Case dừng lại
Business Rules Không có Non-Functional
Requirement
NFR1.1-1: Timeout cho activity chi tiết sản phẩm dưới 300 giây. NFR1.1-2: Không được để trống nội dung góp ý.
NFR1.1-3: Không được góp ý bằng ký tự đặc biệt.
2.7.1.7 Sồ đồ và đặc tả Use Case quản lý giỏ hàng
Hình 2. 15 Use case đăng ký cho người dùng
Use Case ID UC-1.8
Use Case Name Quản lý giỏ hàng
Description Giúp người dùng có thể lưu lại sản phẩm đã chọn
Actor(s) Người dùng
Priority Không
Trigger Là người dùng, tôi muốn thêm, lưu, sửa số lượng, xóa sản phẩm khỏi giỏ hàng, để có thể mua sản phẩm trên ứng dụng
Pre-Condition(s): Thiết bị của người dùng đã được kết nối internet khi thực hiện Người dùng phải đăng nhập
Post-
Condition(s):
Hệ thống chuyển thành công vào activity giỏ hàng Basic Flow 1. Người dùng chọn giỏ hàng
2. Hệ thống hiển thị giao diện các tính năng thêm sản phẩm 3. Hệ thống sẽ chuyển về giao diện sản phẩm
4. Người dùng chọn sản phẩm để thêm vào giỏ hàng 5. Hệ thống sẽ lưu sản phẩm đó vào giỏ hàng
Alternative Flow 2.a Người dùng chọn tính năng sửa số lượng sản phẩm 3.a Người dùng thay đổi số lượng của sản phẩm
4.a Hệ thống sẽ kiểm tra và cập nhật lại giỏ hàng 2.b Người dùng chọn tính năng xóa sản phẩm
3.b Hệ thống hiển thị tất cả sản phẩm trong giỏ hàng 4.b Người dùng chọn sản phẩm cần xóa
5.b Hệ thống sẽ kiểm tra và cập nhật lại giỏ hàng Exception Flow Người dùng thoát giỏ hàng
*Use Case dừng lại Business Rules Không có
Non-Functional Requirement
NFR1.1-1: Timeout cho activity chi tiết sản phẩm dưới 300 giây. NFR1.1-2: Số lượng không được nhập chữ hoặc ký tự đặc biệt
2.7.2 Các use case được phân rã ở mức nhỏ nhất của Quản lý.2.7.2.1 Sơ đồ và đặc tả Use Case đăng nhập 2.7.2.1 Sơ đồ và đặc tả Use Case đăng nhập
Hình 2. 16 Use case đăng nhập cho quản lý
Use Case ID UC-2.1 Use Case Name Đăng nhập
Description Là người dùng, tôi muốn đăng nhập vào ứng dụng, để sử dụng dịch vụ từ ứng dụng.
Actor(s) Quản lý
Priority Có
Trigger Người dùng muốn đăng nhập vào ứng dụng bán laptop online Pre-Condition(s): Tài khoản người dùng đã được tạo sẵn
Tài khoản người dùng đã được phân quyền
Thiết bị của người dùng đã được kết nối internet khi thực hiện đăng nhập
Post- Người dùng đăng nhập ứng dụng thành công
Condition(s):
Hệ thống ghi nhận hoạt động đăng nhập thành công vào Activity Trang Chủ.
Basic Flow 1. Người dùng truy cập ứng dụng bán laptop online.
2. Người dùng chọn phương thức đăng nhập bằng tài khoản 3. Người dùng nhập tài khoản và chọn lệnh đăng nhập
4. Hệ thống xác thực thông tin đăng nhập thành công và cho phép người dùng truy cập ứng dụng
5. Hệ thống ghi nhận hoạt động đăng nhập thành công vào Activity Trang Chủ.
Alternative Flow Không có
Exception Flow 4a. Hệ thống xác thực thông tin đăng nhập không thành công và hiển thị thông báo.
4b. Người dùng chọn lệnh hủy đăng nhập. Use Case dừng lại. Business Rules Không có
Non-Functional Requirement
NFR1.1-1: Timeout cho màn hình đăng nhập dưới 60 giây. NFR1.1-2: Mật khẩu của người dùng phải được hash bằng MD5. NFR1.1-3: Mật khẩu của người dùng phải trên 8 ký tự.
2.7.2.2 Sơ đồ và đặc tả Use Case quản lý thống kê
Hình 2. 17 Use case quản lý thống kê cho quản lý
Use Case ID UC-2.2
Use Case Name Quản lý thống kê
Description Giúp quản lý thống kê trên website
Actor(s) Quản lý
Priority Không
Trigger Là quản lý, tôi muốn xem thống kê, để theo dõi doanh thu bán được trên ứng dụng bán laptop online
Pre-Condition(s): Thiết bị của người dùng đã được kết nối internet khi thực hiện Đăng nhập tài khoản có quyền là quản lý
Post-
Condition(s):
Hệ thống chuyển thành công vào trang quản lý thống kê. Hệ thống hiển thị danh laptop loại thống kê để quản lý chọn. Basic Flow 1. Quản lý chọn chức năng thống kê
2. Hệ thống hiển thị ra danh laptop các mục thống kê 3. Quản lý chọn loại thống kê doanh thu
4. Hệ thống trả về kết quả 5. Hiển thị
Alternative Flow Không có
Exception Flow Quản lý chọn chức năng đăng xuất *Use Case dừng lại
Business Rules Không có Non-Functional
Requirement
NFR1.1-1: Timeout cho trang thống kê dưới 300 giây.
2.7.2.3 Sơ đồ và đặc tả Use Case quản lý sản phẩm
Hình 2. 18 Use case quản lý sản phẩm cho quản lý
Use Case ID UC-2.3
Use Case Name Quản lý sản phẩm
Description Giúp quản lý thêm sửa xóa sản phẩm trên website của cửa hàng
Actor(s) Quản lý
Priority Không
Trigger Là quản lý, tôi muốn thêm sửa xóa sản phẩm, để quản lý sản phẩm trên website của cửa hàng
Pre-Condition(s): Thiết bị của quản lý đã được kết nối internet khi thực hiện Đăng nhập tài khoản có quyền là quản lý
Post-
Condition(s):
Hệ thống chuyển thành công vào trang quản lý sản phẩm Hệ thống hiển thị danh laptop loại sản phẩm để quản lý chọn. Basic Flow 1. Hệ thống hiển thị tất cả sản phẩm
2. Quản lý có thể chọn các chức năng như: thêm, sửa, xóa sản phẩm
3. Hệ thống hiển thị giao diện theo chức năng đã lựa chọn 4. Quản lý thực hiện thao tác chức năng đã lựa chọn
5. Hệ thống sẽ kiểm tra và trả về kết quả 6. Hiển thị
Alternative Flow Không có
Exception Flow Quản lý chọn chức năng đăng xuất *Usecase dừng lại
Business Rules Không có Non-Functional
Requirement
NFR1.1-1: Timeout cho trang thống kê dưới 300 giây.
2.7.2.4 Sơ đồ và đặc tả Use Case quản lý hóa đơn
Hình 2. 19 Use case quản lý hóa đơn cho quản lý
Use Case ID UC-2.4
Use Case Name Quản lý hóa đơn