Phân tích yêu cầu chức năng

Một phần của tài liệu Xây dựng ứng dụng hỗ trợ kết nối và hỗ trợ trong học tập (Trang 29)

Chương 2 PHÂN TÍCH THIẾT KẾ VÀ XÂY DỰNG ỨNG DỤNG

2.1.1.Phân tích yêu cầu chức năng

2.1. Phân tích yêu cầu hệ thống

2.1.1.Phân tích yêu cầu chức năng

2.1.1.1. Yêu cầu lưu trữ

Một hệ thống được gọi là khả dụng khi chức năng lưu trữ được đảm bảo chính xác. Theo khảo sát thì hệ thống cần lưu trữ các thông tin như sau:

- Thông tin người dùng: thông tin cá nhân, thông tin học vấn, nghề nghiệp, các thông tin chuyên môn, lĩnh vực yêu thích, thơng tin về những hoạt động trong ứng dụng.

- Thông tin bài viết: Thông tin chi tiết, nội dung, danh sách bình luận, phản hồi của bài viết. Thông tin về đánh giá bài viết, lĩnh vực bài viết.

- Thông tin về các nội dung không hợp lệ.

- Thơng tin cho cuộc trị chuyện.

2.1.1.2. Yêu cầu tính năng

Ứng dụng sản phẩm là ứng dụng di động chạy trên nền tảng hệ điều hành Android, yêu cầu Internet khi truy cập.

Các chức năng mà hệ thống cần đáp ứng:

- Tìm kiếm: Hệ thống cần đáp ứng được các yêu cầu tìm kiếm của người dùng

như tìm kiếm bài viết, danh sách bạn bè, cuộc trò chuyện, ….

- Cập nhật: Hệ thống có thể xử lý tốt các sai sót của người dùng bằng khả năng cập nhật.

- Tạo mới: Hệ thống cho phép người dùng tạo mới bài viết, bình luận, phản hồi, …

- Thời gian thực: Hệ thống có thể cập nhật các hành động của người dùng theo

17

- Xác thực: Hệ thống phải xác định rõ đâu là những hoạt động người dùng được phép làm.

2.1.2. Yêu cầu phi chức năng

- Ứng dụng có khả năng bảo mật và dễ dàng khơi phục với người dùng chính

chủ.

- Tài nguyên sử dụng để triển khai có giá thành phù hợp.

- Ứng dụng giao diện Tiếng Việt, thiết kế thân thiện người dùng, tăng tính tiện dụng bằng cách gợi ý trên giao diện. Yêu cầu hệ thống từ Android 9.0, RAM lớn hơn 4GB.

2.1.3. Phân tích yêu cầu người dùng

Dựa trên nghiên cứu, phân tích các hiện trạng và khảo sát, kết quả các yêu cầu người dùng được phân rã thành sơ đồ dưới đây:

18

19

2.1.3.1. Mơ hình use case tồn hệ thống

20

Ảnh 2.3: Sơ đồ use case tổng quát (Admin)

2.1.3.2. Danh sách các Actors và use case tương ứng

STT Tên actor Tên use case

1 Guest 1. Đăng kí tài khoản (adsbygoogle = window.adsbygoogle || []).push({});

2 User 1. Quản lý tài khoản

● Đăng nhập

● Đăng xuất

● Quên mật khẩu

● Xem thông tin tài khoản

● Cập nhật thông tin tài khoản/lĩnh vực

21

● Quản lý theo dõi

2. Quản lý học

● Đăng bài, câu hỏi

● Đánh giá bài đăng

● Xem, xóa, sửa bài đăng

● Tìm kiếm, lọc bài đăng

● Quản lý danh sách bài đăng

● Báo cáo vi phạm

3. Quản lý hướng dẫn

● Trả lời bài đăng

● Đánh giá trả lời

● Xem, xóa, sửa trả lời

● Báo cáo vi phạm 4. Quản lý liên lạc ● Nhắn tin ● Gọi video ● Người dùng ở gần 5. Quản lý newsfeed

● Hiển thị bài đăng trên newsfeed

● Lọc bài đăng

6. Quản lý xếp hạng

3 Admin 1. Quản lý người dùng

2. Quản lý bài đăng 3. Quản lý trả lời 4. Thống kê

5. Quản lý lĩnh vực 6. Quản lý cấp độ

22

Bảng 2.1: Danh sách các actors và use case tương ứng

2.1.3.3. Đặc tả một số use case 2.1.3.3.1. Use case đăng kí 2.1.3.3.1. Use case đăng kí

Ảnh 2.4: Use case đăng kí (adsbygoogle = window.adsbygoogle || []).push({});

Tên Use-case Đăng kí

Mơ tả Use-case được tạo ra để người truy cập ứng dụng có thể đăng kí tài khoản truy cập ứng dụng.

Actor Tất cả actor

Tiền điều kiện Thiết bị có kết nối internet

Hậu điều kiện Người dùng đăng kí thành cơng, có thể truy cập vào ứng dụng, có thể sử dụng các chức năng của ứng dụng

Luồng sự kiện chính 1. Hệ thống hiển thị form đăng ký.

2. Người dùng nhập đầy đủ thơng tin đăng kí mà hệ thống yêu cầu và nhấn “Đăng kí”.

3. Hệ thống kiểm tra và xác thực thơng tin đăng kí 4. Hệ thống hiển thị giao diện xác thực (mã xác thực được gửi đến email đăng kí).

5. Người dùng nhập mã xác thực.

6. Hệ thống xác thực thành công và hiển thị giao diện trang chủ.

Luồng sự kiện phụ 1. Thơng tin đăng kí không hợp lệ

23

Bảng 2.2: Đặc tả use case đăng kí

2.1.3.3.2. Use case quản lý tài khoản

Ảnh 2.5: Use case quản lý tài khoản

- Use case đăng nhập:

Tên Use-case Đăng nhập

Mô tả Use-case được tạo ra để người dùng có thể truy cập tài khoản cá nhân. Chỉ khi có tài khoản người dùng mới có truy cập vào ứng dụng

Actor User

Tiền điều kiện Ứng dụng có kết nối internet

Hậu điều kiện Người dùng đăng nhập thành cơng vào ứng dụng, có thể sử dụng các quyền mà hệ thống cho phép

Luồng sự kiện chính 1. Ứng dụng hiển thị form đăng nhập.

24

đều bắt buộc nhập) và nhấn “Đăng nhập”; hoặc đăng nhập với tài khoản Google.

3. Hệ thống kiểm tra thông tin đăng nhập (Dịng sự kiện khác: Thơng tin đăng nhập sai). 4. Ứng dụng hiển thị trang chủ

Luồng sự kiện phụ Hệ thống hiển thị thông báo tài khoản đăng nhập không hợp lệ nếu thông tin đăng nhập sai

Bảng 2.3: Đặc tả use case đăng nhập

- Use case cập nhật thông tin tài khoản người dùng:

Tên Use-case Cập nhật thông tin tài khoản người dùng

Mô tả Use-case được tạo ra để người dùng cập nhật lại thông tin tài khoản như họ tên, lĩnh vực, liên lạc…. (adsbygoogle = window.adsbygoogle || []).push({});

Actor User

Tiền điều kiện Ứng dụng có kết nối internet

Hậu điều kiện Hệ thống sẵn sàng cho lần cập nhật tiếp theo

Luồng sự kiện chính 1. Người dùng chọn chức năng xem tài khoản và nhấn vào nút chỉnh sửa

2. Người dùng chỉnh sửa các thông tin cho phép chỉnh sửa như hình ảnh, họ tên, lĩnh vực…. 3. Người dùng nhấn cập nhật sau khi đã nhập

thông tin mới xong.

4. Ứng dụng thông báo cập nhật thông tin tài khoản thành công

25

Bảng 2.4: Đặc tả use case cập nhật thông tin tài khoản người dùng

- Use case quản lý thông báo:

Tên Use-case Quản lý thông báo

Mô tả Use-case được tạo ra để hệ thống thông báo cho người dùng các hoạt động trong ứng dụng

Actor User

Tiền điều kiện Ứng dụng có kết nối internet

Hậu điều kiện Hệ thống sẵn sàng cho các chức năng tiếp theo

Luồng sự kiện chính 1. Người dùng chọn phần thông báo

2. Ứng dụng hiển thị thông báo theo thứ tự mới đến cũ.

3. Người dùng có thể chạm vào thông báo để đánh dấu đã xem

Luồng sự kiện phụ Ứng dụng tự động thông báo trong các trường hợp:

- Tương tác bài đăng

- Tương tác trả lời

- Tin nhắn mới

- Thông báo hệ thống …

Bảng 2.5: Đặc tả use case quản lý thông báo - Use case quản lý theo dõi: - Use case quản lý theo dõi:

Tên Use-case Quản lý theo dõi

Mô tả Usecase được tạo ra để người dùng có thể theo dõi những người mà họ quan tâm hoặc xem những ai đang theo dõi mình.

26

Tiền điều kiện Ứng dụng có kết nối internet

Hậu điều kiện Hệ thống sẵn sàng cho lần truy cập tiếp theo.

Luồng sự kiện chính 1. Người dùng chọn chức năng quản lý theo dõi 2. Danh sách người theo dõi hiện ra. (adsbygoogle = window.adsbygoogle || []).push({});

3. Người dùng có thể nhấn chọn tài khoản để xem

trang cá nhân và hủy theo dõi/theo dõi.

4. Ngoài ra người dùng có thể tìm kiếm người khác để theo dõi.

Luồng sự kiện phụ Khơng có

Bảng 2.6: Đặc tả use case quản lý theo dõi

2.1.3.3.3. Use case quản lý học

27

- Use case đăng bài, câu hỏi:

Tên Use-case Đăng bài, câu hỏi

Mô tả Usecase được tạo ra để người dùng có thể đăng các câu hỏi, hướng dẫn, … lên ứng dụng để được giải đáp, học hỏi, …

Actor User

Tiền điều kiện Ứng dụng có kết nối internet

Hậu điều kiện Hệ thống sẵn sàng cho bài đăng tiếp theo

Luồng sự kiện chính 1. Người dùng chọn chức năng đăng bài 2. Màn hình đăng bài xuất hiện

3. Người dùng thực hiện đăng bài với các hình thức: - Văn bản - Hình ảnh (camera) - Video - Lĩnh vực, cấp độ 4. Người dùng nhấn đăng

5. Ứng dụng thông báo bài đăng thành công

Luồng sự kiện phụ Đăng bài không thành công. Bảng 2.7: Đặc tả use case đăng bài - Use case sửa bài đăng:

Tên Use-case Sửa bài đăng

Mô tả Usecase được tạo ra để người dùng có thể chỉnh sửa bài đăng sau khi đã đăng.

28

Tiền điều kiện Ứng dụng có kết nối internet

Hậu điều kiện Hệ thống sẵn sàng cho lần chỉnh sửa tiếp theo

Luồng sự kiện chính 1. Người dùng chọn bài đăng muốn sửa

2. Ứng dụng hiển thị màn hình chỉnh sửa bài đăng

3. Người dùng thực hiện chỉnh sửa bài đăng

4. Sau khi chỉnh sửa xong, chọn nút chỉnh sửa 5. Ứng dụng hiển thị thông báo chỉnh sửa thành

công

Luồng sự kiện phụ Chỉnh sửa không thành công. Bảng 2.8: Đặc tả use case sửa bài đăng - Use case tìm kiếm, lọc bài đăng:

Tên Use-case Tìm kiếm lọc bài đăng

Mơ tả Usecase được tạo ra để người dùng có thể tìm kiếm bài đăng kết hợp với lọc để tìm ra bài đăng phù hợp. (adsbygoogle = window.adsbygoogle || []).push({});

Actor User

Tiền điều kiện Ứng dụng có kết nối internet

Hậu điều kiện Hệ thống sẵn sàng cho lần tìm kiếm tiếp theo

Luồng sự kiện chính 1. Người dùng chọn ơ tìm kiếm và gõ từ khóa cần tìm 2. Có thể chọn thêm bộ lọc để tăng độ chính xác: - Lĩnh vực - Ngày đăng - Trả lời - …

29

Luồng sự kiện phụ Khơng có

Bảng 2.9: Đặc tả use case tìm kiếm, lọc bài đăng - Use case đánh giá bài đăng: - Use case đánh giá bài đăng:

Tên Use-case Đánh giá bài đăng

Mô tả Usecase được tạo ra để người dùng có thể tìm kiếm bài đăng kết hợp với lọc để tìm ra bài đăng phù hợp.

Actor User

Tiền điều kiện Ứng dụng có kết nối internet

Hậu điều kiện Hệ thống sẵn sàng cho lần đánh giá tiếp theo

Luồng sự kiện chính 1. Người dùng chọn bài đăng để xem

2. Người dùng chọn biểu tượng downvote hoặc upvote để đánh giá cho bài đăng

3. Hệ thống thông báo downvote/upvote thành

cơng.

Luồng sự kiện phụ Khơng có

Bảng 2.10: Đặc tả use case đánh giá bài đăng - Use case quản lý danh sách câu hỏi: - Use case quản lý danh sách câu hỏi:

Tên Use-case Quản lý danh sách câu hỏi

Mô tả Usecase được tạo ra để người dùng có thể quản lý, xem lại danh sách các bài đăng đã đăng, quan tâm, …

Actor User

Tiền điều kiện Ứng dụng có kết nối internet

30

Luồng sự kiện chính 1. Người dùng xem bài đăng có thể nhấn quan tâm bài đăng đó.

2. Người dùng chọn chức năng xem danh sách bài

đăng

- Thông tin người dùng: xem bài đăng đã đăng.

- Bài đăng quan tâm: xem bài đăng quan tâm

3. Ứng dụng hiển thị danh sách bài đăng

Luồng sự kiện phụ Khơng có (adsbygoogle = window.adsbygoogle || []).push({});

Bảng 2.11: Đặc tả use case quản lý danh sách bài đăng - Use case báo cáo bài đăng vi phạm: - Use case báo cáo bài đăng vi phạm:

Tên Use-case Báo cáo bài đăng vi phạm

Mô tả Usecase được tạo ra để người dùng có thể báo cáo các bài đăng có nội dung khơng phù hợp, phản cảm.

Actor User

Tiền điều kiện Ứng dụng có kết nối internet

Hậu điều kiện Hệ thống sẵn sàng cho các chức năng tiếp theo

Luồng sự kiện chính 1. Người dùng chọn bài đăng cần báo cáo

2. Người dùng nhấn vào biểu tượng báo cáo

3. Ứng dụng hiển thị màn hình nhập lí do báo cáo

và u cầu người dùng nhập 4. Sau khi nhập, nhấn gửi

5. Ứng dụng hiển thị thông báo gửi báo cáo thành

cơng

Luồng sự kiện phụ Khơng có

31

2.1.3.3.4. Use case quản lý hướng dẫn

Ảnh 2.5: Use case quản lý hướng dẫn - Use case trả lời (bình luận): - Use case trả lời (bình luận):

Tên Use-case Trả lời, bình luận

Mơ tả Usecase được tạo ra để người dùng có thể trả lời các câu hỏi, bình luận về bài đăng, giúp người dùng hỗ trợ nhau học tập

Actor User

Tiền điều kiện Ứng dụng có kết nối internet

Hậu điều kiện Hệ thống sẵn sàng cho lần trả lời tiếp theo

Luồng sự kiện chính 1. Người dùng chọn bài đăng hoặc câu trả lời có sẵn và nhấn trả lời

2. Màn hình trả lời xuất hiện

3. Người dùng nhập trả lời với các hình thức:

- Văn bản

- Hình ảnh

32

5. Ứng dụng cập nhật trả lời trong bài đăng

Luồng sự kiện phụ Khơng có

Bảng 2.13: Đặc tả use case trả lời (bình luận) - Use case sửa trả lời: (adsbygoogle = window.adsbygoogle || []).push({});

Tên Use-case Sửa trả lời

Mô tả Usecase được tạo ra để người dùng có thể sửa các trả lời đã đăng

Actor User

Tiền điều kiện Ứng dụng có kết nối internet

Hậu điều kiện Hệ thống sẵn sàng cho lần sửa trả lời tiếp theo

Luồng sự kiện chính 1. Người dùng chọn câu trả lời cần sửa và nhấn sửa

2. Ứng dụng hiển thị giao diện sửa trả lời

3. Người dùng thực hiện sửa trả lời và nhấn chỉnh sửa

4. Ứng dụng thông báo sửa thành công

Luồng sự kiện phụ Khơng có

Bảng 2.14: Đặc tả use case sửa trả lời

- Use case đánh giá trả lời: Tương tự Use case đánh giá bài đăng. - Use case báo cáo trả lời vi phạm

Tên Use-case Báo cáo trả lời vi phạm

Mô tả Usecase được tạo ra để người dùng có thể báo cáo các trả lời có nội dung khơng phù hợp, phản cảm.

33

Tiền điều kiện Ứng dụng có kết nối internet

Hậu điều kiện Hệ thống sẵn sàng cho các chức năng tiếp theo

Luồng sự kiện chính 1. Người dùng chọn trả lời cần báo cáo

2. Người dùng nhấn vào biểu tượng báo cáo

3. Ứng dụng hiển thị màn hình nhập lí do báo cáo và yêu cầu người dùng nhập

4. Sau khi nhập, nhấn gửi

5. Ứng dụng hiển thị thông báo gửi báo cáo thành cơng

Luồng sự kiện phụ Khơng có

Bảng 2.15: Đặc tả use case báo cáo trả lời vi phạm

2.1.3.3.5. Use case quản lý liên lạc

34

Tên Use-case Quản lý liên lạc

Mô tả Usecase được tạo ra để người dùng có thể liên lạc với nhau bằng cách nhắn tin, gọi điện, tìm người ở gần

Actor User

Tiền điều kiện Ứng dụng có kết nối internet (adsbygoogle = window.adsbygoogle || []).push({});

Hậu điều kiện Hệ thống sẵn sàng cho lần thực hiện tiếp theo

Luồng sự kiện chính 1. Người dùng chọn chức năng nhắn tin

2. Ứng dụng hiển thị giao diện phần trò chuyện

3. Người dùng chọn tạo cuộc trò chuyện mới hoặc

chọn cuộc trị chuyện đã có sẵn để nhắn tin

4. Ứng dụng hiển thị màn hình trị chuyện

5. Người dùng soạn tin nhắn bằng văn bản, hình ảnh, ….và nhấn gửi để nhắn tin.

6. Người dùng có thể gọi điện bằng cách chọn tùy

chọn gọi video.

Luồng sự kiện phụ Khơng có

Bảng 2.16: Đặc tả use case quản lý liên lạc

2.1.3.3.6. Use case quản lý newsfeed

35

Tên Use-case Quản lý newsfeed

Mô tả Usecase được tạo ra để người dùng có thể xem các bài đăng được đề xuất tự động dựa trên lĩnh vực đã chọn

Actor User

Tiền điều kiện Ứng dụng có kết nối internet

Hậu điều kiện Hệ thống sẵn sàng cho newsfeed tiếp theo

Luồng sự kiện chính 1. Người dùng chọn chức năng xem newsfeed

2. Ứng dụng hiển thị giao diện newsfeed với các

bài đăng tương ứng

Một phần của tài liệu Xây dựng ứng dụng hỗ trợ kết nối và hỗ trợ trong học tập (Trang 29)