Đăng nhập bằng email và mật khẩu

Một phần của tài liệu Xây dựng ứng dụng đọc truyện tranh trên android (Trang 43 - 60)

CHƯƠNG 3. MÔ HÌNH HÓA YÊU CẦU

3.1.1. Đăng nhập bằng email và mật khẩu

3.1.2. Đăng nhập bằng tài khoản Google

Name Đăng nhập bằng email và mật khẩu Brief

description Người dùng đăng nhập vào ứng dụng bàng email và mật khẩu Actor(s) Người dùng

Pre-

conditions Người dùng đã có tài khoản trong hệ thống Post-

conditions

Nếu đăng nhập thành công người dùng được thực hiện các chức năng theo phân quyền

Flow of events

Basic flow 1. Người dùng nhập Email và Mật khẩu

2. Hệ thống kiểm tra định dạng Email và Mật khẩu 3. Hệ thống xác thực Email và Mật khẩu của người dùng 4.

4. Hệ thống xác định roles và thông tin của người dùng 5. Người dùng đăng nhập thành công vào hệ thống Alternative

flow

2.1. Hệ thống thông báo sai định dạng Email hoặc định dạng Mật khẩu không đúng

2.2. Quay trở lại bước 1 của luồng hoạt động

3.1. Hệ thống thông báo đăng nhập thất bại vì đăng nhập sai thông tin

3.2. Quay trở lại bước 1 của luồng hoạt động

Exception flow Thoát ‘Đăng nhập’

Người dùng thoát khỏi giao diện ‘Đăng nhập’

Quay lại bước 1 của luồng hoạt động Extension

point Không có

Name Đăng nhập bằng Google

44 3.1.3. Đăng nhập bằng tài khoản Facebook

Brief

description Người dùng đăng nhập vào ứng dụng bằng tài khoản Google Actor(s) Người dùng, Google

Pre-

conditions Post- conditions

Nếu đăng nhập thành công người dùng được thực hiện các chức năng theo phân quyền

Flow of events

Basic flow 1. Người dùng nhấn vào Icon Google ở Dialog đăng nhập

2. Người dùng chọn tài khoản Google muốn sử dụng để đăng nhập 3. Hệ thống nhận access token trong response từ Google và gửi lên server

4. Hệ thống nhận token từ server và nhận thông tin của người dùng 5. Người dùng đăng nhập thành công vào hệ thống

Alternative flow

Exception flow 2.1. Người dùng quay lại và không chọn tài khoản Google 2.2. Quay lại bước 1 của luồng hoạt động

Extension

point Không có

Name Đăng nhập bằng Facebook Brief

description Người dùng đăng nhập vào ứng dụng bằng tài khoản Facebook Actor(s) Người dùng, Facebook

Pre-

conditions Post- conditions

Nếu đăng nhập thành công người dùng được thực hiện các chức năng theo phân quyền

45 3.1.4. Đăng ký

Flow of events

Basic flow 1. Người dùng nhấn vào Icon Facebook ở Dialog đăng nhập

2. Người dùng chọn tài khoản Facebook muốn sử dụng để đăng nhập 3. Hệ thống nhận access token trong response từ Facebook và gửi lên server

4. Hệ thống nhận token từ server và nhận thông tin của người dùng 5. Người dùng đăng nhập thành công vào hệ thống

Alternative flow

Exception flow 2.1. Quay lại và không chọn tài khoản Facebook 2.2. Quay lại bước 1 của luồng hoạt động

Extension

point Không có

46 Name Đăng ký

Brief

description

UseCase này cho phép người dùng đăng ký tài khoản bằng email và mật khẩu

Actor(s) Người dùng Pre-

conditions

+ Không có tài khoản nào đang đăng nhập ở thiết bị của người dùng + Email đăng ký chưa tồn tại trong hệ thống

Post- conditions

+ Nếu đăng ký thành công, hệ thống tạo tài khoản mới và người dùng được chuyển về trang đăng nhập

+ Nếu đăng ký thất bại, hệ thống hiện thông báo và yêu cầu người dùng thực hiện lại thao tác đăng nhập

Flow of events

Basic flow 1. Người dùng nhập email, mật khẩu và xác nhận mật khẩu 2. Hệ thống kiểm tra format của email và mật khẩu

3. Hệ thống kiểm tra sự trùng khớp giữa mật khẩu và mật khẩu xác nhận

4. Hệ thống gửi email, mật khẩu, mật khẩu xác nhận lên server và chuyển đến màn hình nhập OTP được gửi qua email

5. Người dùng nhập OTP được gửi qua email 6. Hệ thống gửi OTP lên server

7. Hệ thống tạo tài khoản cho người dùng

8. Hệ thống chuyển hướng người dùng đến trang đăng nhập Alternative

flow

2.1. Hệ thống thông báo lỗi vì email hoặc mật khẩu không hợp lệ 2.2. Quay lại bước 1 của luồng hoạt động

3.1. Hệ thống thông báo lỗi vì mật khẩu và xác nhận mật khẩu không trùng khớp

3.2. Quay lại bước 1 của luồng hoạt động

4.1. Hệ thống thông báo lỗi vì Email đã tồn tại trong hệ thống 4.2. Quay lại bước 1 của luồng hoạt động

6.1. Hệ thống thông báo lỗi khi người dùng nhập sai OTP 6.2. Quay lại bước 5 của luồng hoạt động

47 3.1.5. Thêm số điện thoại vào tài khoản

Exception flow Thoát ‘Đăng ký’

Người dùng thoát khỏi màn hình đăng ký Quay lại bước 1 của luồng hoạt động Extension

point

Không có

48 3.1.6. Xóa số điện thoại khỏi tài khoản

Name Thêm số điện thoại vào tài khoản Brief

description

Người dùng thêm số điện thoại vào tài khoản

Actor(s) Người dùng Pre-

conditions

Người dùng đã đăng nhập thành công

Post- conditions

Thêm số điện thoại vào ứng dụng thành công

Flow of events

Basic flow 1. Người dùng nhấn vào icon “Menu” ở thanh Appbar ở màn hình chính

2. Người dùng nhấn vào avatar ở thanh sidebar 3. Hệ thống điều hướng đến màn hình “Profile”

4. Người dùng nhấn vào button “Add” ở field Number Phone 5. Hệ thống điều hướng đến màn hình nhập số điện thoại

6. Người dùng chọn quốc gia và nhập số điện thoại và xác nhận 7. Hệ thống điều hướng đến màn hình nhập mã OTP

8. Người dùng nhập mã OTP được gửi qua số điện thoại vừa nhập 9. Hệ thống xác thực mã OTP và đăng kí số điện thoại vào tài khoản Alternative

flow

6.1. Hệ thống hiển thị lỗi nếu số điện thoại không hợp lệ 6.2. Quay lại bước 6 của luồng hoạt động

9.1. Hệ thống hiển thị thông báo lỗi nếu mã OTP không đúng 9.2. Quay lại bước 8 của luồng hoạt động

Exception flow Extension

point

Không có

49 3.1.7. Đăng xuất

Name Đăng xuất

Brief

description

UseCase này cho phép người dùng đăng xuất tài khoản khỏi thiết bị

Actor(s) Người dùng

Name Xóa số điện thoại khoỉ tài khoản Brief

description

Người dùng xóa số điện thoại khỏi tài khoản

Actor(s) Người dùng Pre-

conditions

Người dùng đã đăng nhập thành công

Người dùng đã thêm số điện thoại thành công Post-

conditions

Xóa số điện thoại khỏi tài khoản thành công

Flow of events

Basic flow 1. Người dùng nhấn vào icon “Menu” ở thanh Appbar ở màn hình chính

2. Người dùng nhấn vào avatar ở thanh sidebar 3. Hệ thống điều hướng đến màn hình “Profile”

4. Người dùng nhấn vào button “Delete” ở field Number Phone 7. Hệ thống điều hướng đến màn hình nhập mã OTP

8. Người dùng nhập mã OTP được gửi qua số điện thoại vừa nhập 9. Hệ thống xác thực mã OTP và đăng kí số điện thoại vào tài khoản Alternative

flow

6.1. Hệ thống hiển thị lỗi nếu số điện thoại không hợp lệ 6.2. Quay lại bước 6 của luồng hoạt động

9.1. Hệ thống hiển thị thông báo lỗi nếu mã OTP không đúng 9.2. Quay lại bước 8 của luồng hoạt động

Exception flow Extension

point

Không có

50 Pre-

conditions

Người dùng đã đăng nhập tài khoản vào hệ thống

Post- conditions

Người dùng đăng xuất khỏi ứng dụng

Flow of events

Basic flow Người dùng chọn nút đăng xuất

Tài khoản được đăng xuất khỏi hệ thống và thiết bị Alternative

flow

Không có

Exception flow Không có Extension

point

Không có

3.1.8. Đổi mật khẩu Name Đổi mật khẩu Brief

description

UseCase này cho phép người dùng đổi mật khẩu của tài khoản

Actor(s) Người dùng Pre-

conditions Post- conditions

Người dùng đổi mật khẩu thành công

Flow of events

Basic flow 1. Người dùng nhập email của tài khoản cần đồi mật khẩu 2. Hệ thống chuyển hướng đến màn hình nhập OTP 3. Người dùng nhập mã OTP được gửi qua email 4. Hệ thống chuyển hướng đến màn hình đổi mật khẩu

5. Người dùng nhập mật khẩu mới và xác nhận mật khẩu mới 6. Hệ thống đổi mật khẩu thành công

51 Alternative

flow

1.1. Hệ thống thông báo lỗi nếu email người dùng nhập không có trong hệ thống

1.2. Quay lại bước 1 của luồng hoạt động

3.1. Hệ thống thông báo nếu người dùng nhập sai mã OTP 3.2. Quay lại bước 3 của luồng hoạt động

5.1. Hệ thống thông báo nếu mật khẩu mới và xác nhận mật khẩu mới không trùng khớp

5.1.2. Quay lại bước 5 của luồng hoạt động Exception

flow

Thoát ‘Đổi mật khẩu’

1. Người dùng thoát khỏi màn hình đổi mật khẩu 2. Quay lại bước 1 của luồng hoạt động

Extension point

Không có

3.1.9. Đổi thông tin cá nhân

Name Đổi thông tin cá nhân

Brief description

UseCase này cho phép người dùng đổi thông tin cá nhân

Actor(s) Người dùng Pre-

conditions

Người dùng đã đăng nhập tài khoản vào hệ thống

Post- conditions Flow of events

Basic flow 1. Hiển thị màn hình đổi thông tin cá nhân

2. Người dùng nhập First Name, Last Name, chọn Ngày sinh và Giới tính

3. Hệ thống cập nhật thông tin cá nhân mới cho tài khoản Alternative

flow

52 Exception

flow

2.1. Thoát dialog “Edit Information”

2.2. Quay lại bước 1 của luồng hoạt động Extension

point

Không có

3.1.10. Theo dõi truyện tranh Name Theo dõi truyện tranh Brief

description

UseCase này cho phép người dùng theo dõi một bộ truyện

Actor(s) Người dùng

Pre-conditions Người dùng đã đăng nhập tài khoản vào hệ thống

Post-conditions Người dùng theo dõi truyện thành công và thêm bộ truyện vừa theo dõi vào thư viện

Flow of events

Basic flow 1. Người dùng chọn vào bộ truyện 2. Hiển thị màn hình chi tiết truyện

3. Hệ thống kiểm tra người dùng đã theo dõi bộ truyện hay chưa 4. Người dùng nhập nhấn vào button “Follow”

5. Hệ thống thêm bộ truyện vào danh sách các bộ truyện đã theo dõi Alternative flow 3.1. Hệ thống hiển thị button “Following” thay vì button “Follow” khi

người dùng đã theo dõi bộ truyện

3.2. Quay lại bước 2 của luồng hoạt động

4.1. Hiển thị dialog “Sign In” khi người dùng chưa đăng nhập vào hệ thống

4.2. Quay lại bước 4 của luồng hoạt dộng Exception flow 1. Thoát màn hình “Chi tiết truyện”

2. Quay lại bước 1 của luồng hoạt động Extension point Không có

3.1.11. Tìm kiếm truyện tranh Name Tìm kiếm truyện tranh Brief

description

UseCase này cho phép người dùng tìm kiếm bộ truyện

Actor(s) Người dùng

53 Pre-conditions

Post-conditions Hiển thị tất cả bộ truyện có tên chứa dữ liệu người dùng nhập vào Flow of events

Basic flow 1. Người dùng chọn vào icon “Search” ở bên phải thanh Appbar ở màn hình “Home”

2. Chuyển đến màn hình tìm kiếm truyện tranh 3. Người dùng nhập tên truyện cần tìm kiếm

4. Hệ thống tìm kiếm trong cơ sở dữ liệu và hiển thị những bộ truyện phù hợp với dữ liệu người dùng vừa nhập

Alternative flow 4.1. Hiển thị “No result found” khi hệ thống không tìm thấy bộ truyện nào có tên chứa dữ liệu người dùng nhập vào

4.2. Quay lại bước 3 của luồng hoạt động Exception flow Thoát màn hình “Search Comic”

1. Người dùng thoát khỏi màn hình “Search Comic”

2. Quay lại bước 1 của luồng hoạt động Extension point Không có

3.1.12. Chuyển sang chương tiếp theo Name Chuyển sang chương tiếp theo Brief

description

UseCase này cho phép người dùng chuyển sang chương tiếp theo khi đọc truyện

Actor(s) Người dùng Pre-conditions

Post-conditions Chuyển sang chương tiếp theo Flow of events

Basic flow 1. Người dùng nhấn button “→” để chuyển đến chương tiếp theo 2. Hệ thống chuyển đến màn hình đọc truyện chương tiếp theo

Alternative flow 2.1.1. Hệ thống sẽ hiển thị Dialog thông báo “This is the lastest chapter”

khi không còn chương tiếp theo 2.1.2. Quay lại bước 1

2.2.1. Hệ thống hiển thị dialog Sign In khi người dùng chưa đăng nhập và muốn đọc chap bị khóa

2.2.1. Quay lại bước 1

54 Exception flow Thoát màn hình “Read Comic”

1. Người dùng thoát khỏi màn hình “Comic”

2. Quay lại bước 1 của luồng hoạt động Extension point Không có

3.1.13. Chuyển sang chương trước Name Chuyển sang chương trước Brief

description

UseCase này cho phép người dùng chuyển sang chương khi đọc truyện

Actor(s) Người dùng Pre-conditions

Post-conditions Chuyển sang chương trước Flow of events

Basic flow 1. Người dùng nhấn button “” để chuyển đến chương tiếp theo 2. Hệ thống chuyển đến màn hình đọc truyện chương tiếp theo

Alternative flow 2.1. Hệ thống sẽ hiển thị Dialog thông báo “No previous chapter available” khi không còn chương tiếp theo

2.2. Quay lại bước 1

Exception flow Thoát màn hình “Read Comic”

1. Người dùng thoát khỏi màn hình “Comic”

2. Quay lại bước 1 của luồng hoạt động Extension point Không có

3.1.14. Xem những truyện đang theo dõi Name Xem những truyện đang theo dõi Brief

description

UseCase này cho phép người dùng xem những bộ truyện đang theo dõi

Actor(s) Người dùng

Pre-conditions Người dùng đã đăng nhập hệ thống

Post-conditions Hệ thống cung cấp tất cả các bộ truyện người dùng đang theo dõi Flow of events

Basic flow 1. Người dùng nhấn vào Icon “Library” ở trang thanh Appbar ở màn hình chính

2. Người dùng nhấn vào tab “Following”

55 3. Hệ thống hiển thị tất cả những bộ truyện người dùng đã theo dõi Alternative flow 1.1. Hiển thị dialog Sign In nếu người dùng chưa đăng nhập

1.2. Quay lại bước 1 Exception flow

Extension point Không có

3.1.15. Nạp coin bằng PayPal Name Nạp coin bằng PayPal Brief

description

Người dùng nạp coin vào ứng dụng bằng PayPal

Actor(s) Người dùng, Paypal

Pre-conditions Người dùng đã đăng nhập ứng dụng Có tài khoản Paypal SandBox

Post-conditions Nạp tiền thành công vào ứng dụng và đổi thành coin tương ứng Flow of events

Basic flow 1. Người dùng nhấn vào icon “Payment” trên thanh Appbar ở màn hình chính

2. Hệ thống chuyển hướng đến màn hình “Payment” và hiển thị tất cá mức nạp

3. Người dùng chọn mức muốn nạp

4. Hệ thống hiển thị phương pháp thanh toán 5. Người dùng chọn Icon PayPal

6. Hệ thống điều hướng đến màn hình đăng nhập PayPal 7. Người dùng đăng nhập PayPal bằng tài khoản SandBox 8. Hệ thống chuyển hướng đến màn hình thanh toán bằng PayPal 9. Người dùng xác nhận thanh toán

10. Hệ thống xác nhận thanh toán và chuyển mức tiền thanh toán thành coin

Alternative flow 9.1. Người dùng hủy thanh toán

9.2. Hệ thống hủy thanh toán và quay lại bước 4 của luồng hoạt động Exception flow Có lỗi khi thanh toán bằng PayPal

Hệ thống hiển thị lỗi Extension point Không có

3.1.16. Nạp coin bằng ZaloPay

56 Name Nạp coin bằng ZaloPay

Brief description

Người dùng nạp coin vào ứng dụng bằng ZaloPay

Actor(s) Người dùng, ZaloPay

Pre-conditions Người dùng đã đăng nhập ứng dụng

Đã đăng nhập ứng dụng ZaloPay SandBox thành công

Post-conditions Nạp tiền thành công vào ứng dụng và đổi thành coin tương ứng Flow of events

Basic flow 1. Người dùng nhấn vào icon “Payment” trên thanh Appbar ở màn hình chính

2. Hệ thống chuyển hướng đến màn hình “Payment” và hiển thị tất cá mức nạp

3. Người dùng chọn mức muốn nạp

4. Hệ thống hiển thị phương pháp thanh toán 5. Người dùng chọn Icon ZaloPay

6. Hệ thống điều hướng đến ứng dụng ZaloPay 7. Người dùng xác nhận thanh toán

8. Hệ thống xác nhận thanh toán và chuyển mức tiền thanh toán thành coin

Alternative flow 7.1. Người dùng hủy thanh toán

7.2. Hệ thống hủy thanh toán và quay lại bước 4 của luồng hoạt động Exception flow Có lỗi khi thanh toán ZaloPay

Hệ thống hiển thị thông báo lỗi Extension point Không có

3.1.17. Xem lịch sử nạp của tài khản Name Lịch sử nạp tiền

Brief description

Xem lịch sử nạp tiền của tài khoản

Actor(s) Người dùng

Pre-conditions Người dùng đã đăng nhập ứng dụng Người dùng đã nạp tiền

Post-conditions Xem tất cả lịch sử nạp tiền và thông tin nạp tiền của tài khoản

57 Flow of events

Basic flow 1. Người dùng nhấn vào icon “Menu” trên thanh Appbar ở màn hình chính

2. Người dùng nhấn vào icon “Coin” ở thanh SideBar 3. Hệ thống chuyển hướng đến màn hình “My Coin”

4. Hệ thống hiển thị tất cả lịch sử nạp tiền của tài khoản Alternative flow

Exception flow

Extension point Không có

3.1.18. Xem lịch sử mua truyện Name Lịch sử mua truyện Brief

description

Xem lịch sử mua truyện của tài khoản

Actor(s) Người dùng

Pre-conditions Người dùng đã đăng nhập ứng dụng Người dùng đã mua truyện

Post-conditions Xem tất cả lịch sử nạp tiền và thông tin nạp tiền của tài khoản Flow of events

Basic flow 1. Người dùng nhấn vào icon “Menu” trên thanh Appbar ở màn hình chính

2. Người dùng nhấn vào icon “Coin” ở thanh SideBar 3. Hệ thống chuyển hướng đến màn hình “My Coin”

4. Người dùng nhấn vào tab “Purchase”

4. Hệ thống hiển thị tất cả lịch sử mua truyện của tài khoản Alternative flow

Exception flow

Extension point Không có

3.1.19. Mua chương truyện

Name Mua chương truyện

Brief description

Người dùng mua truyện bằng coin

Actor(s) Người dùng

58 Pre-conditions Người dùng đã đăng nhập ứng dụng

Post-conditions Người dùng mua chương truyện thành công Flow of events

Basic flow 1. Người dùng nhấn vào bộ truyện muốn đọc 2. Người dùng chọn chương muốn mua 3. Người dùng xác nhận mua chương truyện 4. Hệ thống mở khóa chương truyện

Alternative flow 3.1. Hiển thị thông báo “There is not enough COINS left in your account to use this service” khi tài khoản của người dùng không đủ coin

Exception flow 3.2. Quay lại bước 3 của luồng hoạt động Extension point Không có

3.1.20. Xem thông báo

Name Xem thông báo

Brief description

Người dùng xem thông báo

Actor(s) Người dùng

Pre-conditions Người dùng đã đăng nhập ứng dụng

Post-conditions Người dùng mua chương truyện thành công Flow of events

Basic flow 1. Người dùng nhấn vào icon “Notification” trên thanh Appbar ở màn hình chính

2. Hệ thống hiển thị danh sách thông báo Alternative flow

Exception flow

Extension point Không có 3.1.21. Bình luận

Name Bình luận

Brief description

Người dùng bình luận về bộ truyện

Actor(s) Người dùng

Pre-conditions Người dùng đã đăng nhập ứng dụng Post-conditions

59 Flow of events

Basic flow 1. Người dùng chọn bộ truyện muốn bình luận 2. Người dùng nhấn vào button “Show all”

3. Hệ thống điều hướng đến màn hình “Comment”

4. Người dùng nhập nội dung muốn bình luận

5. Người dùng nhấn vào button “Send” để gửi bình luận 6. Hệ thống hiển thị bình luận của người dùng

Alternative flow Exception flow

Extension point Không có

Một phần của tài liệu Xây dựng ứng dụng đọc truyện tranh trên android (Trang 43 - 60)

Tải bản đầy đủ (PDF)

(154 trang)