Đặc tả Use case di chuyển mơ hình sản phẩm

Một phần của tài liệu Tìm hiểu AR và xây dựng ứng dụng minh họa (báo cáo cuối kì đồ án 1) (Trang 46)

Chương 3 GIỚI THIỆU, PHÂN TÍCH, THIẾT KẾ ỨNG DỤNG

3.2. Sơ đồ Use case

3.2.4.14. Đặc tả Use case di chuyển mơ hình sản phẩm

Tên yêu cầu Di chuyển mơ hình sản phẩm

Mơ tả Di chuyển vị trí hiển thị cho mơ hình AR sản phẩm Tác nhân Người dùng

Điều kiện trước Người dùng đã đăng nhập thành cơng Điều kiện sau Khơng có

Ngoại lệ Khơng có

Luồng xử lý chính I. Di chuyển mơ hình sản phẩm

4. Hệ thống đặt mơ hình AR sản phẩm tại vị trí mới Luồng xử lý phụ Khơng có

3.2.4.15. Đặc tả Use case xoay mơ hình sản phẩm

Tên u cầu Xoay mơ hình sản phẩm

Mơ tả Xoay mơ hình AR sản phẩm Tác nhân Người dùng

Điều kiện trước Người dùng đã đăng nhập thành công Điều kiện sau Khơng có

Ngoại lệ Khơng có

Luồng xử lý chính I. Xoay mơ hình sản phẩm

1. Người dùng nhấn vào mơ hình AR muốn xoay trên máy ảnh 2. Hệ thống chọn và hiển thị mơ hình AR sản phẩm được nhấn 3. Người dùng thực hiện xoay mơ hình trên màn hình

4. Hệ thống đặt mơ hình AR sản phẩm với góc xoay mới Luồng xử lý phụ Khơng có

3.2.4.16. Đặc tả Use case xóa mơ hình sản phẩm

Tên u cầu Xóa mơ hình sản phẩm

Mơ tả Xoay mơ hình AR sản phẩm Tác nhân Người dùng

Điều kiện trước Người dùng đã đăng nhập thành công Điều kiện sau Khơng có

Ngoại lệ Khơng có

Luồng xử lý chính I. Xóa mơ hình sản phẩm

1. Người dùng nhấn nút xóa tất cả mơ hình AR sản phẩm 2. Hệ thống xóa hiển thị tất cả các mơ hình AR sản phẩm Luồng xử lý phụ Khơng có

3.2.4.17. Đặc tả Use case đánh giá sản phẩm

Tên yêu cầu Đánh giá sản phẩm

Mô tả Đánh giá số sao cho sản phẩm Tác nhân Người dùng

Điều kiện trước Người dùng đã đăng nhập thành công Điều kiện sau Khơng có

Ngoại lệ Khơng có

Luồng xử lý chính I. Đánh giá sản phẩm

1. Người dùng nhấn nút đánh giá sản phẩm 2. Hệ thống hiển thị hộp thoại đánh giá sản phẩm 3. Người dùng chọn số sao cho sản phẩm

4. Người dùng nhấn nút thực hiện đánh giá

5. Hệ thống lưu kết quả đánh giá của tài khoản cho sản phẩm 6. Hệ thống thông báo thực hiện đánh giá thành cơng

Luồng xử lý phụ Khơng có

3.2.4.18. Đặc tả Use case gửi tin nhắn văn bản

Tên yêu cầu Gửi tin nhắn văn bản

Mô tả Gửi tin nhắn văn bản Tác nhân Người dùng

Điều kiện trước Người dùng đã đăng nhập thành cơng Điều kiện sau Khơng có

Ngoại lệ Khơng có

Luồng xử lý chính I. Gửi tin nhắn văn bản 1. Người dùng nhập tin nhắn 2. Người dùng nhấn nút gửi

3. Hệ thống thực hiện gửi tin nhắn văn bản 4. Hệ thống hiển thị tin nhắn đã được gửi Luồng xử lý phụ I. Nội dung tin nhắn trống

1. Hệ thống thông báo nội dung tin nhắn trống, khơng có gì để gửi

Điều kiện trước Người dùng đã đăng nhập thành công Điều kiện sau Khơng có

Ngoại lệ Khơng có

Luồng xử lý chính I. Gửi tin nhắn nhãn dán

1. Người dùng nhấn nút nhãn dán

2. Người dùng nhấn chọn nhãn dán muốn gửi 3. Hệ thống thực hiện gửi tin nhắn nhãn dán

4. Hệ thống hiển thị tin nhắn nhãn dán đã được gửi Luồng xử lý phụ Khơng có

3.2.4.20. Đặc tả Use case gửi hình ảnh

Tên yêu cầu Gửi hình ảnh

Mơ tả Gửi tin nhắn hình ảnh Tác nhân Người dùng

Điều kiện trước Người dùng đã đăng nhập thành cơng Điều kiện sau Khơng có

Ngoại lệ Khơng có

Luồng xử lý chính I. Gửi tin nhắn văn bản 1. Người dùng nhập tin nhắn 2. Người dùng nhấn nút gửi

3. Hệ thống thực hiện gửi tin nhắn văn bản 4. Hệ thống hiển thị tin nhắn đã được gửi Luồng xử lý phụ I. Nội dung tin nhắn trống

2. Hệ thống thơng báo nội dung tin nhắn trống, khơng có gì để gửi

3.2.4.21. Đặc tả Use case liên hệ qua gmail

Tên yêu cầu Liên hệ qua gmail

Mô tả Nhập và gửi mail đến địa chỉ mail của cửa hàng Tác nhân Người dùng

Điều kiện trước Người dùng đã đăng nhập thành cơng Điều kiện sau Khơng có

Ngoại lệ Khơng có

Luồng xử lý chính II. Liên hệ qua mail

5. Người dùng nhấn nút liên hệ 6. Hệ thống hiển thị trang liên hệ 7. Người dùng nhập chủ đề mail 8. Người dùng nhập nội dung mail 9. Người dùng nhấn nút gửi

10. Hệ thống thực hiện gửi mail

11. Hệ thống thông báo gửi mail thành công Luồng xử lý phụ I. Chủ đề hoặc nội dung mail trống

3. Hệ thống thông báo chủ đề hoặc nội dung trống và yêu cầu người dùng nhập lại

3.3. Sơ đồ hoạt động

3.3.1. Sơ đồ hoạt động đăng nhập bằng tài khoản Google

3.3.2. Sơ đồ hoạt động tìm kiếm sản phẩm

3.3.4. Sơ đồ hoạt động xem chi tiết sản phẩm

3.3.5. Sơ đồ hoạt động hiển thị sản phẩm dưới dạng AR

3.3.6. Sơ đồ hoạt động nhắn tin tư vấn

3.3.7. Sơ đồ hoạt động liên hệ qua gmail

3.4. Thiết kế cơ sở dữ liệu 3.4.1. Sơ đồ cơ sở dữ liệu 3.4.1. Sơ đồ cơ sở dữ liệu

Hình 3.3.1.1: Sơ đồ cơ sở dữ liệu

3.4.2. Danh sách các bộ sưu tập

STT Tên bộ sưu tập Mô tả

1 users Danh sách tài khoản người dùng 2 voted Danh sách kết quả đánh giá sản phẩm 3 products Danh sách các sản phẩm

4 categories Danh sách các kiểu phân loại sản phẩm 5 chats Danh sách các cuộc trò chuyện

6 messages Danh sách các tin nhắn

3.4.3. Chi tiết các bộ sưu tập 3.4.3.1. Chi tiết bộ sưu tập users 3.4.3.1. Chi tiết bộ sưu tập users

STT Tên trường Kiểu dữ liệu Ràng buộc Mô tả

1 id string Bắt buộc,

duy nhất

Mã người dùng

2 favoriteList string[] Danh sách mã sản phẩm yêu thích của người dùng

3 voted document[] Danh sách các tài liệu voted của tài khoản user

3.4.3.2. Chi tiết bộ sưu tập voted

STT Tên trường Kiểu dữ liệu Ràng buộc Mô tả

1 id string Bắt buộc,

duy nhất

Mã đánh giá

2 idProduct string Bắt buộc Mã sản phẩm được đánh giá 3 star number Bắt buộc Số sao đánh giá

3.4.3.3. Chi tiết bộ sưu tập products

STT Tên trường Kiểu dữ liệu Ràng buộc Mô tả

1 id string Bắt buộc,

duy nhất

Mã sản phẩm

2 cost string Bắt buộc Giá tiền sản phẩm 3 description string Bắt buộc Mô tả sản phẩm

4 idCategory string Mã kiểu phân loại của sản phẩm

5 idImage number Bắt buộc Mã ảnh sản phẩm

6 linkAR string Bắt buộc Đường dẫn đến tệp dữ liệu mơ hình AR

7 linkImage string Bắt buộc Đường dẫn đến ảnh sản phẩm

8 name string Bắt buộc Tên sản phẩm

9 nameCategory string Tên kiểu phân loại của sản phẩm

10 numVote string Bắt buộc Số lượt đánh giá của sản phẩm

11 rating string Bắt buộc Số sao trung bình của sản phẩm

2 name string Bắt buộc Tên kiểu phân loại

3 idProducts string[] Bắt buộc Danh sách mã sản phẩm thuộc kiểu phân loại

3.4.3.5. Chi tiết bộ sưu tập chats

STT Tên trường Kiểu dữ liệu Ràng buộc Mô tả

1 id string Bắt buộc,

duy nhất

Mã cuộc trò chuyện

2 name string Bắt buộc Tên tài khoản người dùng 3 email string Bắt buộc Email tài khoản người dùng 4 photoUrl string Bắt buộc Đường dẫn đến ảnh đại diện

tài khoản người dùng

5 messages document[] Danh sách các tin nhắn của cuộc trò chuyện

3.4.3.6. Chi tiết bộ sưu tập messages

STT Tên trường Kiểu dữ liệu Ràng buộc Mô tả

1 idFrom string Bắt buộc Mã người dùng người gửi tin nhắn

2 idTo string Bắt buộc Mã người dùng người nhận tin nhắn

3 content string Bắt buộc Nội dung tin nhắn 4 type number Bắt buộc Kiểu tin nhắn

3.5. Thiết kế kiến trúc

Hình 3.4.1: Mơ hình kiến trúc ứng dụng

Ứng dụng được xây dựng và phát triển theo mơ hình Model - View -Controller (MVC). Mẫu MVC đề xuất chia mã của ứng dụng thành 3 thành phần. Trong khi tạo class hoặc tệp tin của ứng dụng, nhà phát triển phải phân nó vào một trong ba lớp sau:

Model: Thành phần này lưu trữ dữ liệu ứng dụng. Nó khơng có kiến thức về giao diện. Model chịu trách nhiệm xử lý logic (các quy tắc nghiệp vụ trong thế giới thực) và giao tiếp với cơ sở dữ liệu và các lớp mạng.

View: Là lớp UI (Giao diện người dùng) chứa các thành phần hiển thị trên màn hình. Hơn nữa, nó cung cấp hình ảnh trực quan của dữ liệu được lưu trữ trong Model và cung cấp sự tương tác cho người dùng.

Controller: Thành phần này thiết lập mối quan hệ giữa View và Model. Nó chứa logic ứng dụng cốt lõi và được thông báo về hành vi của người dùng và cập nhật Model theo nhu cầu.

3.6. Thiết kế giao diện

3.6.1. Sơ đồ liên kết màn hình

3.6.2. Danh sách các màn hình

STT Tên màn hình Mơ tả

1 Giới thiệu Màn hình giới thiệu ứng dụng 2 Đăng nhập Màn hình đăng nhập tài khoản 3 Trang chính Màn hình chính của ứng dụng 4 Danh sách sản phẩm Màn hình danh sách sản phẩm 5 Chi tiết sản phẩm Màn hình chi tiết sản phẩm

6 Hiển thị dưới dạng AR Màn hình hiển thị sản phẩm dưới dạng AR 7 Danh sách u thích Màn hình danh sách sản phẩm đã yêu thích 8 Nhắn tin tư vấn Màn hình nhắn tin tư vấn người dùng 9 Thơng tin tài khoản Màn hình thơng tin tài khoản người dùng 10 Danh sách đã đánh giá Màn hình danh sách sản phẩm đã đánh giá 11 Liên hệ qua gmail Màn hình gửi gmail cho nhà phát triển 12 Hướng dẫn sử dụng Màn hình hướng dẫn sử dụng

3.6.3. Chi tiết các màn hình

3.6.3.1. Chi tiết màn hình giới thiệu

3.6.3.2. Chi tiết màn hình đăng nhập

3.6.3.3. Chi tiết màn hình trang chính

3.6.3.4. Chi tiết màn hình danh sách sản phẩm

3.6.3.5. Chi tiết màn hình chi tiết sản phẩm

3.6.3.6. Chi tiết màn hình hiển thị sản phẩm dưới dạng AR

3.6.3.7. Chi tiết màn hình danh sách u thích

3.6.3.8. Chi tiết màn hình nhắn tin tư vấn

3.6.3.9. Chi tiết màn hình thơng tin tài khoản

3.6.3.10. Chi tiết màn hình danh sách đã đánh giá

3.6.3.11. Chi tiết màn hình liên hệ qua gmail

3.6.3.12. Chi tiết màn hình hướng dẫn sử dụng

3.6.3.13. Chi tiết màn hình thơng tin ứng dụng

Chương 4. TỔNG KẾT4.1. Cài đặt và thử nghiệm 4.1. Cài đặt và thử nghiệm 4.1.1. Mức độ hồn thành

STT Tên cơng việc Mức độ

hồn thành Ghi chú

1 Tìm hiểu về AR 100%

2 Xây dựng ứng dụng thiết kế nội thất 100%

4.1.2. Môi trường phát triển

- Hệ điều hành: Microsoft Windows 11

- Công cụ phát triển ứng dụng: Android Studio, Visual Studio Code, Firebase, Unity, Android virtual devices

- Ngôn ngữ phát triển: Dart (Flutter)

- Hệ quản trị cơ sở dữ liệu: Firebase

- Công cụ hỗ trợ: GitHub

4.1.3. Môi trường triển khai

- Hệ điều hành: Android

- Yêu cầu phần mềm:

⚫ Android API 21 trở lên

- Yêu cầu phần cứng ⚫ RAM 2GB trở lên ⚫ Có máy ảnh hoạt động 4.1.4. Đường dẫn Github Đường dẫn GitHub đồ án: - Ứng dụng thiết kế nội thất: https://github.com/troqphuc147/interior_design_and_ar

4.2. Kết quả đạt được

Kết thúc giai đoạn phát triển, đồ án đã đạt được kết quả mong đợi, theo đúng kế hoạch, mục tiêu ban đầu.

❖ Ưu điểm

- Tích hợp thành cơng cơng nghệ AR

- Giao diện thân thiện, dễ sử dụng

- Tốc độ, hiệu suất khá tốt

- Hệ thống có khả năng phát triển và mở rộng cao

❖ Vấn đề tồn đọng

- Chưa xây dựng tính năng cho người quản lý

- Chưa kiểm thử đầy đủ và chi tiết

❖ Qua thời gian thực hiện đồ án, nhóm đã hồn thành và đạt được một số kết quả như sau:

- Hiểu và áp dụng thành công công nghệ AR

- Hiểu và nắm rõ hơn về ngơn ngữ lập trình Dart, framework Flutter, Firebase

- Phát triển kỹ năng làm việc nhóm cũng như kỹ năng của mỗi cá nhân

4.3. Hướng phát triển

Ứng dụng thiết kế nội thất tích hợp cơng nghệ AR đã hồn thành các chức năng đã đề ra tuy nhiên vẫn còn chưa hồn thiện, cịn nhiều khả năng mở rộng:

- Xây dựng hệ thống quản lý cho người quản lý

- Xây dựng hệ thống thương mại cho sản phẩm

- Xây dựng hệ thống đề xuất dựa trên dữ liệu người dùng

- Tối ưu hóa code để tăng tốc độ xử lý

- Sưu tầm, thiết kế thêm các mơ hình sản phẩm nội thất

Ứng dụng thiết kế nội thất tích hợp AR khá hữu ích và có khả năng ứng dụng vào thực tiễn cao. Tuy nhiên, do hạn chế về thời gian nghiên cứu và kinh nghiệm, nhóm chưa phát huy được hết tiềm năng của đề tài. Trong thời gian tới, nhóm sẽ cố gắng tìm hiểu sâu hơn về cơng nghệ AR, cách áp dụng vào thực tế, xây dựng các tính năng nêu trên nhằm phát triển và mở rộng quy mô đồ án.

4.4. Bảng phân công công việc

STT Tên công việc Thành viên

Trọng Phục Dận Quang

1 Chuẩn bị, lên kế hoạch x x

2 Tìm hiểu cơng nghệ x x

3 Khảo sát, đặc tả yêu cầu x x

4 Thiết kế kiến trúc x x

5 Thiết kế dữ liệu x x

6 Thiết kế giao diện x x

7 Xây dựng tính năng quản lý tài khoản x x

8 Xây dựng tính năng tìm kiếm x x

9 Xây dựng tính năng xem danh sách sản phẩm x x 10 Xây dựng tính năng xem chi tiết sản phẩm x x 11 Xây dựng tính năng hiển thị dưới dạng AR x x

12 Xây dựng tính năng nhắn tin tư vấn x x

13 Xây dựng tính năng liên hệ qua gmail x x

14 Kiểm tra và sửa lỗi x x

15 Viết và tổng hợp báo cáo x x

Tỷ lệ công việc phân công 50% 50%

Tài liệu tham khảo

1. Flutter:

https://flutter.dev/ 2. Firebase

https://firebase.google.com/

3. Diễn đàn cơng nghệ của lập trình viên https://stackoverflow.com/

4. Bách khoa toàn thư mở Wikipedia https://www.wikipedia.org/ 5. Flutter GetX https://chornthorn.github.io/getx-docs/ 6. AR Technology https://en.wikipedia.org/wiki/Augmented_reality 7. AR Document https://www.slideshare.net/mamatavenu/venu-final-doc-with-abstract 8. Augmented reality technologies, systems and applications

https://www.researchgate.net/publication/216813812_Augmented_reality_te chnologies_systems_and_applications

Một phần của tài liệu Tìm hiểu AR và xây dựng ứng dụng minh họa (báo cáo cuối kì đồ án 1) (Trang 46)