Mô hình hóa yêu cầu

Một phần của tài liệu Phát triển mạng xã hội tana kết nối và sáng tạo (Trang 27 - 77)

CHƯƠNG 3. PHÂN TÍCH THIẾT KẾ HỆ THỐNG

3.2. Mô hình hóa yêu cầu

3.2.1. Sơ đồ phân rã chức năng

Ảnh 1: Sơ đồ phân rã chức năng - 1

Ảnh 2: Sơ đồ phân rã chức năng - 2

3.2.2. Lược đồ usecase tổng quan

Ảnh 3: Lược đồ usecase tổng quan của User

Ảnh 4: Lược đồ usecase tổng quan của Guest

Ảnh 5: Lược đồ usecase tổng quan của Admin

3.2.2.1. Danh sách các Actor

STT Actor Ý nghĩa

1 Admin Người dùng đã đăng nhập

vào hệ thống với quyền của người quản trị

2 User Người dùng đã đăng nhập

vào hệ thống

3 Guest Khách: người chưa đăng

nhập vào hệ thống Bảng 1: Danh sách các Actor

3.2.2.2. Danh sách các Use Case chính

STT Use-Case Ý nghĩa

1 Đăng ký tài khoản Tạo tài khoản mới cho

người dùng

2 Đăng nhập Đăng nhập vào hệ thống

3 Đăng xuất Đăng xuất khỏi hệ thống

4 Quên mật khẩu Người dùng quên mật

khẩu sử dụng chức năng này để gửi link đặt lại mật khẩu qua mail.

5 Đặt lại mật khẩu Sử dụng link đăng lại mật

khẩu ở mail để đặt lại mật khẩu mới.

6 Xem danh sách bạn bè Xem những bạn bè đã kết

bạn

7 Gửi lời mời kết bạn Gửi lời mời kết bạn đến

với người dùng khác

8 Hủy yêu cầu kết bạn Hủy yêu cầu kết bạn đã

gửi đi

9 Chấp nhập lời mời kết bạn Chấp nhận yêu cầu kết bạn gửi đến

10 Gửi tin nhắn Gửi tin nhắn trong cuộc

trò chuyện

11 Xóa tin nhắn Xóa tin nhắn của chính

chủ gửi trong cuộc trò chuyện

12 Xem tin nhắn trong cuộc

trò chuyện

Xem những tin nhắn trong cuộc trò chuyện đã tham

13 Thay đổi thông tin tài khoản

Thay đổi những thông tin cá nhân của người dùng

14 Thay đổi mật khẩu Đổi mật khẩu

15 Tạo cuộc trò chuyện Tạo cuộc trò chuyện mới

16 Thay đổi avatar cuộc trò

chuyện

Đổi ảnh đại diện của cuộc trò chuyện

17 Thêm người dùng vào

cuộc trò chyện

Thêm người dùng mới vào cuộc trò chuyện

18 Xóa người dùng khỏi

cuộc trò chuyện

Xóa người dùng khỏi cuộc trò chuyện

19 Đổi biệt danh người dùng

trong cuộc trò chuyện

Thay đổi biệt danh của người dùng trong cuộc trò chuyện

20 Cập nhật quyền cho thành

viên trong cuộc trò chuyện

Thay đổi quyền của người dùng trong cuộc trò chuyện (Admin/ thành viên)

21 Xem bình luận trong bài

viết

Xem những bình luận trong bài viết

22 Thêm bình luận vào bài

viết

Đăng bình luận mới vào bài viết

23 Sửa bình luận Sửa bình luận đã đăng

24 Xóa bình luận Xóa bình luận của chính

chủ

25 Xem bài viết Xem những bài viết

26 Sửa bài viết Chỉnh sửa bài viết đã đăng

27 Xóa bài viết Xóa bài viết đã đăng

28 Đăng bài viết Đăng bài viết mới

29 Tạo album Tạo album mới

30 Xóa album Xóa album đã tạo

31 Sửa album Sửa album đã tạo

32 Thêm ảnh vào album Thêm ảnh mới vào album

đã tạo

33 Chỉnh mô tả hình ảnh

trong album

Chỉnh sửa lại mô tả hình ảnh trong album

34 Xem các hình ảnh trong

album

Xem các hình ảnh trong album

35 Xóa ảnh trong album Xóa hình ảnh trong album

36 Xem album Xem album đã tạo

37 Nhận thông báo Nhận thông báo khi người

dùng khác tương tác với người dùng

38 Xem thông báo Xem thông báo và có thể

truy cập đối nội dung được thông báo

39 Xóa thông báo Xóa những thông báo đã

đọc hoặc muốn xóa Bảng 2: Bảng danh sách các UseCase chính

3.2.3. Lược đồ usecase chi tiết

Ảnh 6: Usecase quản lý thông báo

Ảnh 7: Usecase quản lý album

Ảnh 9: Usecase quản lý tin nhắn

Ảnh 10: Usecase quản lý bình luận

Ảnh 11: Usecase quản lý bài viết

Ảnh 12: Usecase quản lý tài khoản

Ảnh 13: Usecase quản lý bạn bè

Ảnh 14: Usecase tìm kiếm

3.2.4. Phân tích Use Case và Sequence 3.2.4.1. Đăng ký tài khoản

Ảnh 15: Sequence - Đăng ký tài khoản

Name Register – Đăng ký tài khoản

Brief description Khách (Guest) truy cập tạo mới tài khoản.

Actor(s) Guest

Pre-conditions Không

Post-conditions

− Nếu đăng ký thành công: Người dùng được tạo mới tài khoản, thông tin cá nhân được lưu vào CSDL.

− Nếu đăng ký không thành công: Thông báo không tạo được tài khoản, buộc người dùng nhập lại thông tin cho chính xác.

Flow of events

Basic flow Use case bắt đầu khi khách truy cập vào trang tạo tài khoản.

1. Khách điền vào các thông tin mà hệ thống yêu cầu và nhấn ĐĂNG KÝ.

2. Hệ thống xác thực thông tin theo quy định.

3. Hệ thống tạo mới tài khoản và lưu thông tin vào CSDL.

4. Hệ thống thông báo tạo tài khoản thành công và chuyển đến trang đăng nhập.

Alternative flow

Nếu người dùng nhập thiếu thông tin, trùng email hoặc mật khẩu không đúng quy định, khi đó hệ thống sẽ:

1. Hệ thống mô tả lý do không thể tạo mới tài khoản.

2. Hệ thống hiển thị lại biểu mẫu cho người dùng chỉnh sửa thông tin đăng ký.

3. Người dùng nhập lại thông tin được yêu cầu, Basic Flow khi đó sẽ tiếp tục tại bước 1.

Extension point Không có

Bảng 3: Mô tả UseCase Register – Đăng ký tài khoản

3.2.4.2. Đăng nhập

Ảnh 16: Sequence – Đăng nhập

Name Login – Đăng nhập.

Brief description Người dùng đăng nhập vào hệ thống

Actor(s) Guest, Admin

Pre-conditions Actors đã có tài khoản trong hệ thống

Post-conditions

− Sau khi đăng nhập: người dùng được xác thực và vào trang được chỉ định tùy theo từng chức vụ.

− Đăng nhập thất bại: thông báo lỗi đăng nhập và yêu cầu đăng nhập lại.

Flow of events

Basic flow (Thành công)

Use case được kích hoạt khi người dùng cần đăng nhập vào hệ thống hoặc xác thực danh tính để sử dụng các chức năng của hệ thống:

1. Người nhập tài khoản và mật khẩu vào các ô input hoặc chọn Đăng nhập bằng tài khoản Google hoặc Đăng nhập bằng tài khoản GitHub.

2. Hệ thống kiểm tra input và xác thực.

3. Hệ thống thông báo xác thực thành công.

Alternative flow

(Thất bại) Khi xác thực thất bại hoặc xảy ra lỗi: hệ thống thông báo lỗi sai.

Extension point

Bảng 4: Mô tả UseCase Login- Đăng nhập

3.2.4.3. Đăng xuất

Ảnh 17: Sequence – Đăng xuất

Name Logout – Đăng xuất

Brief description Đăng xuất tài khoản người dùng khỏi hệ thống.

Actor(s) User, Admin

Pre-conditions Actors đã đăng nhập thành công vào hệ thống.

Post-conditions Tài khoản được đăng xuất thành công ra khỏi hệ thống.

Flow of events Basic flow (Thành công)

1. Người dùng bấm vào Đăng xuất 2. Chuyển qua trang đăng nhập Alternative flow

(Thất bại) Extension point

Bảng 5: Mô tả UseCase Logout- Đăng xuất

3.2.4.4. Quên mật khẩu và đặt lại mật khẩu

Ảnh 18: Sequence – Quên và đặt lại mật khẩu

Name Gửi link quên mật khẩu và đặt lại mật khẩu

Brief description Cấp lại mật khẩu cho người dùng qua email khi người dùng quên mật khẩu.

Actor(s) User

Pre-conditions Actors đã có tài khoản trong hệ thống.

Post-conditions Tài khoản của người dùng được cập nhật mật khẩu mới.

Flow of events

Basic flow (Thành công)

1. Người dùng chọn quên mật khẩu ở trang đăng nhập 2. Người dùng nhập email của mình

3. Người dùng chọn nút “Lấy lại mật khẩu”

4. Hệ thống kiểm tra email và gửi mail đặt lại mật khẩu đến email của người dùng

5. Người dùng mở mail đặt lại mật khẩu và chọn nút đặt lại mật khẩu

6. Người dùng được chuyển đến trang đặt lại mật khẩu 7. Người dùng nhập mật khẩu mới và chọn “Đặt lại mật khẩu”

8. Đặt lại mật khẩu thành công, người dùng được chuyển về trang đăng nhập

Alternative flow (Thất bại)

1. Hệ thống kiểm tra email thất bại 2. Hệ thống hiện thông báo lỗi 3. Người dùng nhập lại email

Use Case quay lại bước 3 của Basic flow Extension point

Bảng 6: Mô tả UseCase - Gửi link quên mật khẩu và đặt lại mật khẩu

3.2.4.5. Tạo tài khoản cho admin

Ảnh 19: Sequence – Tạo tài khoản cho admin

Name Tạo tài khoản cho người quản trị (Admin)

Brief description Người quản trị (Admin) truy cập tạo tài khoản mới cho người quản trị khác.

Actor(s) Admin

Pre-conditions Đăng nhập vào hệ thống với tư cách là người quản trị (Admin)

Post-conditions

− Nếu tạo tài khoản thành công: Người quản trị được tạo tài khoản mới, thông tin cá nhân được lưu vào CSDL.

− Nếu tạo tài khoản không thành công: Thông báo không tạo được tài khoản, buộc người quản trị nhập lại thông tin cho chính xác.

Flow of events

Basic flow

Use case bắt đầu khi người quản trị truy cập vào hệ thống và sử dụng chức năng tạo tài khoản mới cho người quản trị.

1. Người quản trị điền vào các thông tin mà hệ thống yêu cầu rồi nhấn TẠO TÀI KHOẢN.

2. Hệ thống xác thực thông tin theo quy định.

3. Hệ thống tạo mới tài khoản và lưu thông tin vào CSDL.

4. Hệ thống thông báo tạo tài khoản thành công.

Alternative flow

Nếu người quản trị nhập thiếu thông tin, trùng email hoặc mật khẩu không đúng quy định, khi đó hệ thống sẽ:

1. Hệ thống mô tả lý do không thể tạo mới tài khoản.

2. Hệ thống hiển thị lại biểu mẫu cho người quản trị chỉnh sửa thông tin đăng ký.

3. Người quản trị nhập lại thông tin được yêu cầu, Basic Flow khi đó sẽ tiếp tục tại bước 1.

Extension point

Bảng 7: Mô tả UseCase - Tạo tài khoản cho người quản trị (Admin)

3.2.4.6. Quản lý bạn bè

Ảnh 20: Sequence – Quản lý bạn bè

Bảng 8: Mô tả UseCase – Xem danh sách bạn bè Name Xem danh sách bạn bè

Brief description Người dùng (User) truy cập vào danh sách bạn bè của họ.

Actor(s) User

Pre-conditions Đăng nhập vào hệ thống với tư cách là người dùng (User) Post-conditions Hệ thống trả về danh sách bạn bè của người dùng (User) Flow of events

Basic flow

Use case bắt đầu khi người dùng chọn hiển thị danh sách bạn bè:

1. Người dùng chọn “bạn bè” trên thanh navigation 2. Hệ thống tìm kiếm và trả về danh sách bạn bè.

Alternative flow

Extension point Không có

Name Gửi lời mời kết bạn

Brief description Người dùng gửi lời mời kết bạn đến người dùng khác chưa phải là bạn bè

Actor(s) User

Pre-conditions Người dùng đăng nhập thành công với tư cách là User

Post-conditions

Hệ thống thông báo gửi lời mời kết bạn thành công, đồng thời gửi thông báo đến người dùng được đề nghị kết bạn có lời mời kết bạn mới

Flow of events

Basic flow

Use case bắt đầu khi người dùng chọn chức năng gửi lời mời kết bạn.

1. Người dùng chọn mục “bạn bè” trên thanh navigation

2. Tiếp tục chọn mục gợi ý kết bạn

3. Chọn nút kết bạn tại người dùng mong muốn được kết bạn

4. Hệ thống chuyển nút kết bạn sang “hủy yêu cầu”

5. Dữ liệu được lưu vào cơ sở dữ liệu Alternative flow

Extension point Không có

Bảng 9: Mô tả UseCase gửi lời mời kết bạn

Name Hủy yêu cầu kết bạn

Brief description Người dùng hủy yêu cầu kết bạn đến người dùng khác chưa phải là bạn bè

Actor(s) User

Pre-conditions Người dùng đăng nhập thành công và đã gửi lời mời kết

Post-conditions Hệ thống thông báo hủy lời mời kết bạn thành công Flow of events

Basic flow

Use case bắt đầu khi người dùng chọn chức năng hủy lời mời kết bạn.

1. Người dùng chọn mục “bạn bè” trên thanh navigation

2. Tiếp tục chọn mục gợi ý kết bạn

3. Tại người dùng muốn hủy lời mời kết bạn, chọn nút “hủy lời mời kết bạn”

4. Hệ thống chuyển trạng thái của nút “hủy lời mời kết bạn” bạn sang “kết bạn”

Thay đổi được lưu vào cơ sở dữ liệu Alternative flow

Extension point Không có

Bảng 10: Mô tả UseCase- Hủy yêu cầu kết bạn

Name Chấp nhận lời mời kết bạn

Brief description Người dùng chấp nhận yêu cầu kết bạn từ người dùng khác

Actor(s) User

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

Post-conditions Hệ thống thông báo chấp nhận yêu cầu kết bạn thành công Flow of events

Basic flow

Use case bắt đầu khi người dùng chọn chức năng chấp nhận lời mời kết bạn

1. Người dùng chọn mục “bạn bè” trên thanh navigation

2. Tiếp tục chọn mục “lời mời kết bạn”

3. Tại người dùng muốn chấp nhận yêu cầu kết bạn, chọn nút “đồng ý"

4. Hệ thống thông báo chấp nhận lời mời kết bạn thành công

5. Thay đổi được lưu vào cơ sở dữ liệu Alternative flow

Extension point Không có

Bảng 11: Mô tả UseCase – Chấp nhận lời mời kết bạn

3.2.4.7. Quản lý tin nhắn

Ảnh 21: Sequence – Quản lý tin nhắn

Name Gửi tin nhắn

Brief description Người dùng gửi tin nhắn đến người dùng khác đã được kết bạn

Actor(s) User

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

Post-conditions Hệ thống lưu dữ liệu và cập nhật lại tin nhắn trong cuộc trò chuyện

Flow of events

Basic flow

Use case bắt đầu khi người dùng chọn chức năng gửi tin nhắn

1. Người dùng chọn mục “tin nhắn” trên thanh navigation

2. Chọn người dùng muốn gửi tin nhắn

3. Hệ thống lấy dữ liệu các tin nhắn trước đó và hiển thị trên cửa số cuộc trò chuyện

4. Người dùng nhập nội dung tin nhắn cần gửi sau đó chọn nút “gửi” để gửi tin đi

5. Hệ thống lưu lại tin nhắn và cập nhật lại danh sách tin nhắn của cuộc trò chuyện

Alternative flow

Ở bước 5, nếu hệ thống lưu tin nhắn thất bại. Hệ thống sẽ thông báo gửi tin nhắn thất bại bằng cách tô đỏ tin nhắn vừa nhập, đồng thời hiển dị dòng chữ “gửi tin nhắn thất bại”

Extension point Không có

Bảng 12: Mô tả UseCase- Gửi tin nhắn

Name Xem tin nhắn trong cuộc trò chuyện Brief description Người dùng xem nhắn trong cuộc trò chuyện

Actor(s) User

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

Post-conditions Hệ thống lấy danh sách tin nhắn đã được gửi trong cuộc trò chuyện và hiển thị lên cho người dùng

Flow of events

Basic flow

Use case bắt đầu khi người dùng chọn chức năng xem tin nhắn

1. Người dùng chọn mục “tin nhắn” trên thanh navigation

2. Chọn cuộc trò chuyện muốn xem tin nhắn

3. Hệ thống lấy dữ liệu các tin nhắn trước đó và hiển thị trên cửa số cuộc trò chuyện

Alternative flow Ở bước 3, nếu hệ thống lấy dữ liệu thất bại, hệ thống sẽ thông bằng khung thông báo “có lỗi xảy ra”

Extension point Không có

Bảng 13: Mô tả UseCase- Xem tin nhắn trong cuộc trò chuyện

Name Xóa tin nhắn

Brief description Người dùng xóa tin nhắn trong cuộc trò chuyện đã được gửi trước đó.

Actor(s) User

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

Post-conditions Hệ thống lưu dữ liệu và thông báo đã xóa tin nhắn thành công trong cuộc trò chuyện

Flow of events Basic flow

Use case bắt đầu khi người dùng chọn chức năng xóa tin nhắn

1. Người dùng chọn mục “tin nhắn” trên thanh

2. Chọn người dùng muốn gửi tin nhắn

3. Hệ thống lấy dữ liệu các tin nhắn trước đó và hiển thị trên cửa số cuộc trò chuyện

4. Người dùng focus vào nội dung tin nhắn cần xóa để hiển thị nút “xóa”

5. Chọn “xóa” để xóa tin nhắn

6. Hệ thống lưu lại các thay đổi và thông báo xóa cuộc trò chuyện thành công bằng cách tại vị trí tin nhắn vừa xóa, hiển thị khung tin “tin nhắn đã bị xóa”

Alternative flow

Ở bước 6, nếu hệ thống xóa tin nhắn thất bại. Hệ thống sẽ thông báo gửi tin nhắn thất bại bằng cách vẫn hiển thị tin nhắn, không hiển thị khung tin “tin nhắn đã bị xóa”

Extension point Không có

Bảng 14: Mô tả UseCase – Xóa tin nhắn 3.2.4.8. Quản lý tài khoản

Ảnh 22: Sequence – Quản lý tài khoản

Name Thay đổi thông tin tài khoản

Brief description Người dùng thay đổi thông tin cá nhân

Actor(s) User

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

Post-conditions Hệ thống lưu dữ liệu và thông báo đã thay đổi thông tin thành công

Flow of events

Basic flow

Use case bắt đầu khi người dùng nhấn thay đổi thông tin 1. Người dùng chọn mục “thông tin” trên thanh

navigation

2. Người dùng nhập thông tin thay đổi 3. Người dùng nhấn “Lưu lại thông tin”

Alternative flow Khi người dùng nhập sai thông tin hệ thống sẽ thông báo lỗi và Usecase quay lại Bước 2

Extension point Không có

Bảng 15: Mô tả UseCase -Thay đổi thông tin tài khoản

Name Thay đổi mật khẩu

Brief description Người dùng thay đổi thông tin mật khẩu

Actor(s) User

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

Post-conditions Hệ thống lưu dữ liệu và thông báo đã thay đổi mật khẩu thành công

Flow of events

Basic flow

Use case bắt đầu khi người dùng nhấn thay đổi mật khẩu 1. Người dùng chọn mục “Thay đổi mật khẩu” trên

thanh navigation

2. Người dùng thông tin mật khẩu (mật khẩu cũ, mật khẩu mới, xác nhận mật khẩu)

3. Người dùng nhấn “Thay đổi mật khẩu”

Alternative flow Khi người dùng nhập sai thông tin mật khẩu hệ thống sẽ thông báo lỗi và Usecase quay lại Bước 2

Extension point Không có

Bảng 16: Mô tả UseCase – Thay đổi mật khẩu

3.2.4.9. Tìm kiếm

Ảnh 23: Sequence – Tìm kiếm

Name Tìm kiếm

Brief description Người dùng tìm kiếm người dùng khác hoặc bài viết

Actor(s) User

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

Post-conditions Hệ thống truy xuất dữ liệu và trả kết quả tìm kiếm ra màn hình

Flow of events

Basic flow Use case bắt đầu khi người dùng nhấn vào icon “Tìm kiếm” trên thanh Header

Một phần của tài liệu Phát triển mạng xã hội tana kết nối và sáng tạo (Trang 27 - 77)

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

(170 trang)