Đặc tả use case chat

Một phần của tài liệu Xây dựng ứng dụng hỗ trợ các dịch vụ liên quan ở trọ (Trang 33 - 46)

2.2. Phân tích thiết kế hệ thống 2.2.1. Thiết kế xử lý 2.2.1. Thiết kế xử lý

Đề tài sử dụng lược đồ tuần tự (Sequence Diagram) để mô tả phương thức xử lý vấn đề của hệ thống. Sau đây là một số lược đồ tuần tự cho các chức năng của hệ

22 thống.

2.2.1.1. Lược đồ tuần tự thao tác đăng nhập

Nhằm giúp cho việc đăng nhập dễ dàng hơn, ứng dụng hỗ trợ cho người dùng đăng nhập bằng số điện thoại hoặc Facebook.

a. Đăng nhập bằng số điện thoại

Hình 2.8: Lược đồ tuần tự thao tác đăng nhập bằng số điện thoại Mơ tả: Người dùng có thể đăng nhập bằng số điện thoại. Mô tả: Người dùng có thể đăng nhập bằng số điện thoại.

- Người dùng nhập số điện thoại để thực hiện login (1). - Số điện thoại được gửi xuống phần xử lý để (2).

- Phần xử lý gửi yêu cầu đăng nhập bằng số điện thoại lên firebase authentication (3).

23 dùng (4).

- Thông tin xác thực sẽ được gửi về lại ứng dụng (5).

- Hiển thị màn hình xác thực để người dùng nhập mã xác thực (6). - Người dùng nhập mã xác thực nhận được từ tin nhắn (7).

- Mã xác thực được gửi xuống tầng xử lý để tiến hành kiểm tra (8). - Tầng xử lý tiến hành kiểm tra mã xác thực (9).

- Hiển thị lỗi xác thực nếu có (10).

- Chuyển tới màn hình nhập thơng tin cá nhân nếu người dùng là người dùng mới của ứng dụng (11.1).

- Chuyển tới màn hình chính nếu người dùng đã nhập thơng tin cá nhân vào hệ thống (11.2).

24

b. Đăng nhập bằng Facebook.

Hình 2.9: Lược đồ tuần tự thao tác đăng nhập bằng Facebook Mô tả: Cho phép người dùng đăng nhập bằng tài khoản Facebook. Mô tả: Cho phép người dùng đăng nhập bằng tài khoản Facebook. - Người dùng chọn đăng nhập bằng Facebook (1).

- Yêu cầu được xử lý xuống phần xử lý (2).

- Phần xử lý gửi yêu cầu đến Facebook login manager để thực hiện đăng nhập bằng tài khoản Facebook (3).

- Facebook login Manager hiển thị giao diện cho phép người dùng đăng nhập bằng Facebook (4).

- Người dùng tiến hành đăng nhập bằng tài khoản Facebook của mình (5). - Facebook login manager trả lại thông tin đăng nhập cho ứng dụng (6).

- Phần xử lý sử dụng thông tin đã nhận để gửi yêu cầu đăng nhập đến Firebase Authentication (7).

25

- Phần xử lý điều hướng đến màn hình nhập thơng tin cá nhân nếu người dùng là người dùng mới của ứng dụng (9.1).

- Phần xử lý điều hướng đến màn hình chính nếu người dùng là người dùng cũ của ứng dụng (9.2).

2.2.1.2. Lược đồ tuần tự thao tác tìm trọ

Hình 2.10: Lược đồ tuần tự thao tác tìm trọ Mô tả: Người dùng thực hiện các thao tác cần thiết để tìm trọ. Mơ tả: Người dùng thực hiện các thao tác cần thiết để tìm trọ. - Hiển thị màn hình tìm trọ cho người dùng (1).

- Người dùng có thể nhập một đoạn văn bản bất kỳ để tìm kiếm (2).

- Người dùng có thể lọc kết quả tìm bằng cách chọn mở bộ lọc (3), sau khi bộ lọc được hiển thị (4), người dùng đặt giá trị cho các bộ lọc (5) để giới hạn kết quả tìm kiếm.

26 hợp.

- Yêu cầu tìm kiếm được truyền từ giao diện xuống thành phần xử lý (7). - Thành phần xử lý tổng hợp, phân tích yêu cầu (8), sau đó gửi yêu cầu lấy dữ

liệu đến tầng dịch vụ (9).

- Dựa trên yêu cầu nhận được, tầng dịch vụ sẽ lấy dữ liệu phù hợp từ Firebase hoặc Algolia (10).

- Kết quả danh sách trọ sẽ được trả về lại cho tầng dịch vụ (11), sau đó chuyển tiếp về cho thành phần xử lý (12).

- Thành phần xử lý xử lý danh sách trọ, lưu danh sách trọ vào bộ nhớ tạm thời của ứng dụng (13).

- Danh sách trọ được đưa về giao diện (14), tầng giao diện sẻ hiển thị lên cho người dùng xem (15).

27

2.2.1.3. Lược đồ tuần tự thao tác tìm kiếm dịch vụ vận chuyển

Hình 2.11: Lược đồ tuần tự thao tác tìm kiếm dịch vụ vận chuyển Mơ tả: Cho phép người dùng tìm kiếm dịch vụ vận chuyển. Mơ tả: Cho phép người dùng tìm kiếm dịch vụ vận chuyển.

- Màn hình dịch vụ vận chuyển được hiển thị cho người dùng (1). - Người dùng có thể mở bộ lọc để giới hạn tìm kiếm (2).

- Nếu người dùng nhấn chọn bộ lọc, bộ lọc sẽ được hiển thị (3) và người dùng có thể đặt các giá trị cho bộ lọc (4).

- Người dùng nhấn chọn tìm kiếm (5).

- Yêu cầu tìm kiếm được gửi xuống tầng xử lý (6).

- Tầng xử lý xử lý yêu cầu của người dùng (7) rồi gửi yêu cầu lấy dữ liệu đến tầng dịch vụ (8).

28 sách dịch vụ vận chuyển (10).

- Danh sách dịch vụ vận chuyển được chuyển tiếp về tầng xử lý (11).

- Tầng xử lý xử lý danh sách dịch vụ vận chuyển để lưu vào trong bộ nhớ tạm thời của ứng dụng (12).

- Danh sách dịch vụ vận chuyển thay đổi sẽ thông báo cho tầng giao diện cập nhật nội dung.

- Danh sách dịch vụ vận chuyển được hiển thị lên cho người dùng xem (14).

2.2.1.4. Lược đồ tuần tự thao tác tạo bài đăng tìm người ở ghép

Hình 2.12: Lược đồ tuần tự thao tác tạo bài đăng tìm người ở ghép

Mơ tả: Cho phép người dùng tạo mới một bài đăng tìm người ở ghép trên ứng dụng.

29

- Người dùng chọn tạo bài đăng tìm người ở ghép trên màn hình tìm người ở ghép(1).

- Ứng dụng hiển thị màn hình tạo bài đăng tìm người ở ghép (2).

- Người dùng nhập nội dung bài đăng tìm người ở ghép (3). Sau đó, bấm chọn nút tạo để chuyển thơng tin bài đăng tìm người ở ghép đến tầng xử lý (4). - Tầng xử lý kiểm tra nội dung bài đăng tìm người ở ghép (5), nếu nội dung đã

phù hợp với yêu cầu của ứng dụng thì gửi yêu cầu tạo đến tầng dịch vụ (6). - Dựa vào yêu cầu của tầng xử lý, tầng dịch vụ thực hiện tạo bài đăng tìm

người ở ghép đến Firestore (7).

- Kết quả tạo bài đăng được trả về tầng dịch vụ (8). Sau đó, tầng dịch vụ chuyển tiếp dữ liệu về tầng xử lý (9).

- Tầng xử lý xử lý kết quả tạo (10), nếu thành cơng thì lưu bài đăng tìm người ở ghép vào bộ nhớ tạm thời của ứng dụng, cịn khơng thì u cầu tầng giao diện hiển thị lỗi.

- Kết quả tạo bài đăng tìm người ở ghép được hiển thị lên giao diện (11) để cho người dùng biết (12).

30

2.2.1.5. Lược đồ tuần tự thao tác tạo bài đăng bán đồ dùng cũ

Hình 2.13: Lược đồ tuần tự thao tác tạo bài đăng bán đồ dùng cũ Mô tả: Cho phép người dùng tạo mới một bài đăng bán đồ dùng cũ trên ứng Mô tả: Cho phép người dùng tạo mới một bài đăng bán đồ dùng cũ trên ứng dụng.

- Người dùng chọn tạo bài đăng trên màn hình đồ dùng cũ (1). - Ứng dụng hiển thị màn hình tạo bài đăng bán đồ dùng cũ (2).

- Người dùng nhập nội dung bài đăng bán đồ dùng cũ (3). Sau đó, bấm chọn nút tạo để chuyển thông tin bài đăng bán đồ dùng cũ đến tầng xử lý (4).

31

đã phù hợp với yêu cầu của ứng dụng thì gửi yêu cầu tạo đến tầng dịch vụ (6).

- Dựa vào yêu cầu của tầng xử lý, tầng dịch vụ thực hiện tạo bài đăng bán đồ dùng cũ đến Firestore (7).

- Kết quả tạo bài đăng được trả về tầng dịch vụ (8). Sau đó, tầng dịch vụ chuyển tiếp dữ liệu về tầng xử lý (9).

- Tầng xử lý xử lý kết quả tạo (10), nếu thành cơng thì lưu bài đăng bán đồ dùng cũ vào bộ nhớ tạm thời của ứng dụng, cịn khơng thì u cầu tầng giao diện hiển thị lỗi.

- Kết quả tạo bài đăng tìm người ở ghép được hiển thị lên giao diện (11) để cho người dùng biết (12).

2.2.1.6. Lược đồ tuần tự thao tác chat

32

Mô tả: Cho phép người dùng chat với một người dùng khác. - Ứng dụng hiển thị màn hình chat (1).

- Người dùng chọn người chat (2).

- Ứng dụng hiển thị màn hình chat chi tiết (3).

- Người dùng nhập tin nhắn cần gửi (4), sau đó nhấn gửi (5). - Nội dung tin nhắn được gửi đến tầng xử lý (6).

- Tầng xử lý yêu cầu gửi tin nhắn đến tầng dịch vụ (7).

- Tin nhắn được lưu vào cơ sở dữ liệu (8), rồi gửi kết quả lưu về lại tầng dịch vụ (9).

- Tầng dịch vụ chuyển tiếp kết quả lưu trữ về tầng xử lý (10).

- Kết quả được tầng xử lý xử lý (11), nếu có lỗi thì thơng báo cho người dùng, cịn khơng thì lưu nội dung tin nhắn vào bộ nhớ tạm thời của ứng dụng, rồi yêu cầu cập nhật lại tin nhắn (12).

33

2.2.2. Thiết kế cơ sở dữ liệu 2.2.2.1. Lược đồ cơ sở dữ liệu 2.2.2.1. Lược đồ cơ sở dữ liệu

34

2.2.2.2. Mô tả các bảng dữ liệu

Bảng dữ liệu User: Lưu thông tin về tài khoản người dùng.

STT Tên thuộc tính Kiểu dữ liệu Ràng buộc Ý nghĩa

1 UserId

UUID Là duy nhất Khóa chính để phân biệt các tài khoản với nhau

2 Name String Tên hiển thị

3 PhoneNumber String Số điện thoại của

người sử dụng

4 Hometown String Quê quán của người

dùng

5 Job Number Nghề nghiệp của người

dùng

6 Gender Number Giới tính của người

dùng

7 Birthday Datetime Ngày sinh của người

dùng

8 Avatar String Hình đại diện của

người dùng

9 Role Number Vai trò của người dùng

Một phần của tài liệu Xây dựng ứng dụng hỗ trợ các dịch vụ liên quan ở trọ (Trang 33 - 46)

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

(78 trang)