1. Trang chủ
  2. » Tất cả

Báo cáo đồ án nhập môn ứng dụng di động Đề tài mạng xã hội nấu ăn

47 263 1
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Ứng dụng mạng xã hội nấu ăn
Tác giả Trần Ngọc Tiến, Trần Trọng Hoàng, Bùi Lê Hoài An
Người hướng dẫn Thầy Huỳnh Tuấn Anh
Trường học Trường Đại học Công nghệ Thông tin
Chuyên ngành Ứng dụng di động
Thể loại Báo cáo đồ án môn học
Năm xuất bản 2022
Thành phố TPHCM
Định dạng
Số trang 47
Dung lượng 9,33 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN KHOA CÔNG NGHỆ PHẦN MỀM

Trang 1

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN

KHOA CÔNG NGHỆ PHẦN MỀM

-🙚🙚🙚🙚🙚 -BÁO CÁO ĐỒ ÁN MÔN HỌC

NHẬP MÔN ỨNG DỤNG DI ĐỘNG

Đề tài: Ứng dụng mạng xã hội nấu ăn

Giảng viên hướng dẫn:

Thầy Huỳnh Tuấn Anh

Nhóm thực hiện:

20520808 Trần Ngọc Tiến

20520521 Trần Trọng Hoàng

20520985 Bùi Lê Hoài An

TPHCM, tháng 6 năm 2022

Trang 2

Chương 1: Thông tin chung

1.1 Tên đề tài: Ứng dụng mạng xã hội nấu ăn

1.2 Môi trường phát triển ứng dụng:

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

- Cơ sở dữ liệu đám mây: Firebase

- Công cụ phân tích thiết kế: figma.com

- Công cụ phân chia nhiệm vụ: notion.so + Messenger

- Công cụ xây dựng ứng dụng: Android Studio

- Ngôn ngữ sử dụng: Kotlin

- Công cụ quản lý source code: Github

1.3 Thông tin nhóm:

STT MSSV Họ và tên Email

1 20520808 Trần Ngọc Tiến 20520808@gm.uit.edu.vn

2 20520521 Trần Trọng Hoàng 20520521@gm.uit.edu.vn

3 20520985 Bùi Lê Hoài An 20520985@gm.uit.edu.vn

Trang 3

Chương 2: Phát biểu bài toán

2.1 Trình bày khảo sát hiện tại: Nhu cầu thực tế của đề tài

Hiện tại đã có rất nhiều mạng xã hội dành cho giới trẻ ra đời, họ bị cuốn vàonhững mạng xã hội Facebook, Instagram, Tiktok, … hàng giờ đồng hồ mỗingày Nên phải có một mạng xã hội lành mạnh để mọi người có thể sử dụng.Sau nhiều giờ mệt mỏi làm việc ở văn phòng cũng như nhiều giờ làm việc mỗingày thì chiều, tối về họ lại quay về căn nhà của mình và bắt đầu vào căn bếpcủa gia đình và nấu những bữa ăn ngon cho gia đình và bản thân Nhưng họnhớ ra đã lâu rồi mình chưa vào bếp và từ rất lâu mình chỉ vùi đầu vào côngviệc và những mạng xã hội khác, những món mình biết nấu thì rất ít thế nên họcần sự giúp đỡ của mọi người Và những người có sở thích nấu ăn, họ có rấtnhiều công thức nấu ăn mà họ muốn chia sẻ với mọi người Từ đó mạng xã hộicủa chúng em ra đời Ứng dụng sẽ giúp mọi người chia sẻ những công thức nấu

ăn cũng như giúp mọi người biết nhiều món ăn hơn từ những người khác

2.2 Xác định các yêu cầu hệ thống:

1 Quản lý lưu trữ tất cả thông tin cần thiết cho hệ thống (thông tin cơ bản về người dùng, công thức, hình ảnh món ăn)

2 Tìm kiếm, truy xuất các thông tin cần để xử lý một cách tức thời

3 Chức năng đăng nhập, xem thông tin cá nhân, đổi thông tin cá nhân

4 Đáp ứng được lưu lượng truy xuất lớn

5 Giao diện trực quan, thân thiện với người dùng

Trang 4

Chương 3: Mô hình Use Case

3.1 Sơ đồ Use-case

3.2 Danh sách các Actor

STT Tên Actor Ý nghĩa/Ghi chu

1 Người dùng Người trực tiếp sử dụng phần mềm để đăng bài viết và

xem bài viết

3.3 Danh sách các use-case

3.4 Đặc tả use-case

STT Tên Use-case Ý nghĩa/Ghi chu

Trang 5

1 Đăng nhập

2 Đăng xuất

3 Đăng bài viết Đăng công thức và cách làm của 1 món ăn

lên mạng xã hội

4 Xem bài viết

5 Quản lý thông tin cá nhân Xem thông tin cá nhân, xem người theo dõi,

bài viết đã đăng, đã thích

6 Tương tác bài viết Thích, bình luận, chia sẻ

7 Xem thông báo

8 Tìm kiếm Tìm kiếm người dùng, bài viết

9 Báo cáo lỗi

10 Thay đổi ngôn ngữ

3.4.1 Đặc tả usecase “Đăng nhập”

Tên chức năng Đăng nhập

Tóm tắt Chức năng đăng nhập vào hệ thống

Dòng sự kiện chính 1 Hệ thống hiển thị form đăng nhập của Google

2 Chọn tài khoản Google để đăng nhập

3 Nếu đã đăng nhập trước đó thì vào màn hình chính

Nếu là lần đầu thì sẽ tạo các thông tin người dùng và

thêm tài khoản vào FirebaseDòng sự kiện khác Không có

Các yêu cầu đặc biệt Không có

Trạng thái hệ thống

trước khi thực thiện use

case

Actor: tất cả các actorĐiều kiện: không có

Trạng thái hệ thống sau

khi thực hiện use case

Người dùng đăng nhập thành công vào hệ thống, có thể

sử dụng các quyền mà hệ thống cho phépĐiểm mở rộng Không có

3.4.2 Đặc tả usecase “Đăng xuất”

Trang 6

Tên chức năng Đăng xuất

Tóm tắt Chức năng đăng xuất ra hệ thống

Dòng sự kiện chính 1 Người dùng nhấn vào Đăng xuất

2 Hệ thống đăng xuất và trở về bắt đầu (intro)Dòng sự kiện khác Không có

Các yêu cầu đặc biệt Không có

Trạng thái hệ thống

trước khi thực hiện use

case

Actor: tất cả các actorĐiều kiện: người dùng đã đăng nhập hệ thống

Trạng thái hệ thống sau

khi thực hiện use case

Người dùng đăng xuất khỏi hệ thống

Điểm mở rộng Không có

3.4.3 Đặc tả usecase “Đăng bài viết”

Tên chức năng Đăng bài viết

Tóm tắt Chức năng đăng bài lên mạng xã hội

Dòng sự kiện chính 1 Người dùng nhấn vào nút có hình dấu “+” trong màn

hình chính

2 Đưa người dùng đến màn hình đăng bài

3 Người dùng nhập các thông tin của bài viết vào trang

4 Người dùng nhấn đăng

5 Bài viết sẽ được đăng lên mạng xã hộiDòng sự kiện khác Không có

Các yêu cầu đặc biệt Không có

Trạng thái hệ thống

trước khi thực hiện use

Actor: tất cả các actorĐiều kiện: người dùng đã đăng nhập hệ thống

Trang 7

Trạng thái hệ thống sau

khi thực hiện use case

Bài viết sẽ được đăng lên mạng xã hội

Điểm mở rộng Không có

3.4.4 Đặc tả usecase “Xem bài viết”

Tên chức năng Xem bài viết

Tóm tắt Chức năng xem các bài đăng trên mạng xã hội

Dòng sự kiện chính 1 Người dùng nhấn vào bài viết

2 Đưa người dùng đến màn hình xem bài viết

3 Hiển thị bài viếtDòng sự kiện khác Không có

Các yêu cầu đặc biệt Không có

Trạng thái hệ thống

trước khi thực hiện use

case

Actor: tất cả các actorĐiều kiện: người dùng đã đăng nhập hệ thống

Trạng thái hệ thống sau

khi thực hiện use case

Bài viết sẽ hiện lên để người dùng xem

Điểm mở rộng Không có

3.4.5 Đặc tả usecase “Quản lý thông tin cá nhân”

3.4.5.1 Đặc tả usercase “Xem thông tin cá nhân”

Tên chức năng Xem thông tin cá nhân

Tóm tắt Xem thông tin cá nhân của người dùng

Dòng sự kiện chính 1 Khách hàng chọn nút “Thông tin tài khoản”

2 Hệ thống lấy thông tin cá nhân khách hàng và hiển thịlên màn hình

Trang 8

Dòng sự kiện khác Không có

Các yêu cầu đặc biệt Không có

Trạng thái hệ thống

trước khi thực hiện use

case

Actor: Tất cả actorĐiều kiện: Không có

Trạng thái hệ thống sau

khi thực thiện use case

Hệ thống không thay đổi

Điểm mở rộng Không có

3.4.5.2 Đặc tả usecase “Thay đổi thông tin cá nhân”

Tên chức năng Thay đổi thông tin cá nhân

Tóm tắt Sửa thông tin cá nhân của người dùng

Dòng sự kiện chính 1 Người dùng có thể vào trang cá nhân của mình và

nhấn vào nút sửa thông tin cá nhân hoặc vào cài đặt chọnthông tin cá nhân để chỉnh sửa

2 Hệ thống lấy thông tin cá nhân người dùng và hiển thịlên màn hình

3 Khách hàng thay đổi những thông tin mong muốn vàbấm “Lưu”

4 Hệ thống kiểm tra lưu dữ liệuDòng sự kiện khác Không có

Các yêu cầu đặc biệt Không có

Trạng thái hệ thống

trước khi thực hiện use

case

Actor: Tất cả actorĐiều kiện: Khách hàng đã đăng nhập vào hệ thống

Trạng thái hệ thống sau

khi thực thiện use case

Người dùng cập nhật thông tin người dùng thành côngvào hệ thống

Trang 9

Điểm mở rộng Không có

3.4.5.3 Đặc tả usecase “Xem những người bạn đang theo dõi”

Tên chức năng Xem những người người dùng đang theo dõi

Tóm tắt Xem tất cả những người mà người dùng theo dõi

Dòng sự kiện chính 1 Người dùng vào trang cá nhân và nhấn vào đang theo

dõi

2 Hệ thống lấy thông tin các người dùng mà người dùngđang theo dõi và hiển thị lên màn hình

Dòng sự kiện khác Không có

Các yêu cầu đặc biệt Không có

Trạng thái hệ thống

trước khi thực hiện use

case

Actor: Tất cả actorĐiều kiện: Khách hàng đã đăng nhập vào hệ thống

Trạng thái hệ thống sau

khi thực thiện use case

Hiển thị danh sách các người dùng mà người dùng đangtheo dõi

Điểm mở rộng Không có

3.4.5.4 Đặc tả usecase “Xem những người theo dõi bạn”

Tên chức năng Xem những người đang theo dõi người dùng

Tóm tắt Xem tất cả những người đang theo dõi người dùng Dòng sự kiện chính 1 Người dùng vào trang cá nhân và nhấn vào người theo

dõi

2 Hệ thống lấy thông tin các người dùng đang theo dõingười dùng và hiển thị lên màn hình

Dòng sự kiện khác Không có

Các yêu cầu đặc biệt Không có

Trạng thái hệ thống Actor: Tất cả actor

Trang 10

trước khi thực hiện use

case

Điều kiện: Khách hàng đã đăng nhập vào hệ thốngTrạng thái hệ thống sau

khi thực thiện use case

Hiển thị danh sách các người dùng đang theo dõi ngườidùng

Điểm mở rộng Không có

3.4.5.5 Đặc tả usecase “Xem danh sách bài viết đã đăng”

Tên chức năng Xem những bài viết đã đăng

Tóm tắt Xem tất cả những bài viết đã đăng

Dòng sự kiện chính 1 Người dùng vào trang cá nhân và chọn tab đầu tiên

2 Hệ thống lấy thông tin các bài viết mà người dùng đãđăng

Dòng sự kiện khác Không có

Các yêu cầu đặc biệt Không có

Trạng thái hệ thống

trước khi thực hiện use

case

Actor: Tất cả actorĐiều kiện: Khách hàng đã đăng nhập vào hệ thống

Trạng thái hệ thống sau

khi thực thiện use case

Hiển thị danh sách các bài viết mà người dùng đã đăng

Điểm mở rộng Không có

3.4.5.6 Đặc tả use case “Xem danh sách bài viết đã thích”

Tên chức năng Xem những bài viết đã thích

Tóm tắt Xem tất cả những bài viết đã thích

Dòng sự kiện chính 1 Người dùng vào trang cá nhân và chọn tab có hình trái

tim

2 Hệ thống lấy thông tin các bài viết mà người dùng đã

Trang 11

thíchDòng sự kiện khác Không có

Các yêu cầu đặc biệt Không có

Trạng thái hệ thống

trước khi thực hiện use

case

Actor: Tất cả actorĐiều kiện: Khách hàng đã đăng nhập vào hệ thống

Trạng thái hệ thống sau

khi thực thiện use case

Hiển thị danh sách các bài viết mà người dùng đã thích

Điểm mở rộng Không có

3.4.6 Đặc tả use case “Tương tác bài viết”

3.4.6.1 Đặc tả usecase “Thích bài viết”

Tên chức năng Thích bài viết

Tóm tắt Thích bài viết

Dòng sự kiện chính 1 Người dùng chọn bài viết

2 Hệ thống lấy thông tin bài viết và hiển thị

3 Người dùng nhấn vào hình trái tim để thíchDòng sự kiện khác Không có

Các yêu cầu đặc biệt Không có

Trạng thái hệ thống

trước khi thực hiện use

case

Actor: Tất cả actorĐiều kiện: Khách hàng đã đăng nhập vào hệ thống

Trạng thái hệ thống sau

khi thực thiện use case

Lưu bài viết người dùng đã thích vào hệ thống và hiểnthị là bài viết đã được thích

Điểm mở rộng Không có

3.4.6.2 Đặc tả usecase “Bình luận bài viết”

Tên chức năng Bình luận bài viết

Trang 12

Tóm tắt Bình luận bài viết

Dòng sự kiện chính 1 Người dùng chọn bài viết

2 Hệ thống lấy thông tin bài viết và hiển thị

3 Người dùng nhấn vào biểu tượng bình luận để bìnhluận

Dòng sự kiện khác Không có

Các yêu cầu đặc biệt Không có

Trạng thái hệ thống

trước khi thực hiện use

case

Actor: Tất cả actorĐiều kiện: Khách hàng đã đăng nhập vào hệ thống

Trạng thái hệ thống sau

khi thực thiện use case

Lưu bình luận người dùng đã bình luận vào bài viết vàhiển thị bình luận

Điểm mở rộng Không có

3.4.6.3 Đặc tả usecase “Chia sẻ bài viết”

Tên chức năng Chia sẻ bài viết

Tóm tắt Chia sẻ bài viết

Dòng sự kiện chính 1 Người dùng chọn bài viết

2 Hệ thống lấy thông tin bài viết và hiển thị

3 Người dùng nhấn vào biểu tượng chia sẻ để chia sẻ

4 Chọn mạng xã hội mà người dùng muốn chia sẽ đếnDòng sự kiện khác Không có

Các yêu cầu đặc biệt Không có

Trạng thái hệ thống

trước khi thực hiện use

Trang 13

khi thực thiện use case

Điểm mở rộng Không có

3.4.7 Đặc tả usecase “Xem thông báo”

Tên chức năng Xem thông báo

Tóm tắt Xem thông báo về các bài viết, người theo dõi

Dòng sự kiện chính 1 Người dùng vào màn hình trang thông báo

2 Hệ thống hiển thị các thông báoDòng sự kiện khác Không có

Các yêu cầu đặc biệt Không có

Trạng thái hệ thống

trước khi thực hiện use

case

Actor: Tất cả actorĐiều kiện: người dùng đã đăng nhập hệ thống

Trạng thái hệ thống sau

khi thực thiện use case

Hệ thống hiển thị các thông báo

Điểm mở rộng Không có

3.4.8 Đặc tả usecase “Tìm kiếm”

3.4.8.1 Đặc tả usecase “Tìm kiếm bài viết”

Tên chức năng Tìm kiếm bài viết

Tóm tắt Tìm kiếm các bài viết phù hợp với nội dung tìm kiếmDòng sự kiện chính 1 Người dùng vào màn hình trang tìm kiếm

2 Người dùng nhập nội dung tìm kiếm vào thanh tìmkiếm và bấm Enter

3 Hệ thống tìm kiếm bài viết phù hợp với nội dung đãnhập và hiển thị lên màn hình

Dòng sự kiện khác Không có

Các yêu cầu đặc biệt Không có

Trang 14

Trạng thái hệ thống

trước khi thực hiện use

case

Actor: Tất cả actorĐiều kiện: người dùng đã đăng nhập hệ thống

Trạng thái hệ thống sau

khi thực thiện use case

Hệ thống hiển thị danh sách bài viết tìm thấy

Điểm mở rộng Không có

3.4.8.2 Đặc tả usecase “Tìm kiếm người dùng”

Tên chức năng Tìm kiếm người dùng

Tóm tắt Tìm kiếm các người dùng phù hợp với nội dung tìm

kiếmDòng sự kiện chính 1 Người dùng vào màn hình trang tìm kiếm

2 Người dùng nhập nội dung tìm kiếm vào thanh tìmkiếm và bấm Enter

3 Hệ thống tìm kiếm người dùng phù hợp với nội dungđã nhập và hiển thị lên màn hình

Dòng sự kiện khác Không có

Các yêu cầu đặc biệt Không có

Trạng thái hệ thống

trước khi thực hiện use

case

Actor: Tất cả actorĐiều kiện: người dùng đã đăng nhập hệ thống

Trạng thái hệ thống sau

khi thực thiện use case

Hệ thống hiển thị danh sách người dùng tìm thấy

Điểm mở rộng Không có

3.4.9 Đặc tả usecase “Báo cáo lỗi”

Tên chức năng Báo cáo lỗi

Trang 15

Tóm tắt Báo cáo các lỗi của hệ thống

Dòng sự kiện chính 1 Người dùng vào trang cài đặt và tìm đến chức năng

báo cáo lỗi

2 Người dùng chọn đúng lỗi mình muốn báo

3 Hệ thống lưu lại và để cho nhà phát triển xem và khắcphục

Dòng sự kiện khác Không có

Các yêu cầu đặc biệt Không có

Trạng thái hệ thống

trước khi thực hiện use

case

Actor: Tất cả actorĐiều kiện: người dùng đã đăng nhập hệ thống

Trạng thái hệ thống sau

khi thực thiện use case

Lưu lại báo cáo của người dùng

Điểm mở rộng Không có

3.4.10Đặc tả usecase “Thay đổi ngôn ngữ”

Tên chức năng Thay đổi ngôn ngữ

Tóm tắt Thay đổi ngôn ngữ của ứng dụng

Dòng sự kiện chính 1 Người dùng vào trang cài đặt và tìm đến chức năng

thay đổi ngôn ngữ

2 Người dùng chọn ngôn ngữ mình muốn

3 Hệ thống sẽ khởi động lại và thay đổi ngôn ngữ hệthống

Dòng sự kiện khác Không có

Các yêu cầu đặc biệt Không có

Trang 16

Trạng thái hệ thống

trước khi thực hiện use

case

Actor: Tất cả actorĐiều kiện: người dùng đã đăng nhập hệ thống

Trạng thái hệ thống sau

khi thực thiện use case

Thay đổi ngôn ngữ theo ý của người dùng

Điểm mở rộng Không có

Trang 17

Chương 4: Phân tích

4.1 Danh sách các lớp (Lưu trữ dữ liệu)

STT Tên lớp Loại Ý nghĩa/Ghi chu

1 User Lớp Lớp chứa thông tin cá nhân

người dùng

2 Post Lớp Lớp chứa thông tin bài viết

3 Notify Lớp Lớp chứ thông tin thông báo

4 Time Lớp Lớp chứa thông tin thời gian

4.2 Mô tả chi tiết từng lớp đối tượng

4.2.1 Lớp User

a) Danh sách thuộc tính

STT Tên thuộc tính Loại Ràng buộc Ý nghĩa/ghi chu

1 name String Public Tên người dùng

2 avatar String Public Link avatar

người dùng

3 username String Public Gmail người

dùng

4 gender String Public Giới tính

5 birthday String Public Ngày sinh

6 description String Public Mô tả của người

dùng

7 followers MutableList<String> Public Những người

theo dõi

8 following MutableList<String> Public Những người

đang theo dõi

9 favourites MutableList<String> Public Những bài viết

đã thích

10 post MutableList<String> Public Các bài viết đã

đăngb) Danh sách phương thức

STT Tên phương thức Loại Ràng buộc Ý nghĩa/ghi chu

1 getData void Public Lấy dữ liệu từ

Firebase về

Trang 18

4.2.2 Lớp Post

a) Danh sách thuộc tính

STT Tên thuộc tính Loại Ràng

buộc

Ý nghĩa/ghi chu

1 comments MutableList<Map<String,

Any>> Public Các comment

của người dùng

2 cookingTime String Public Thời gian

nấu món ăn

3 description String Public Mô tả của

món ăn

4 favourites MutableList<String> Public Danh sách

các người dùng đã thích

5 favouritesCount Long Public Số lượt

thích

6 id String Public Id bài viết

7 images MutableList<String> Public Danh sách

link ảnh bài viết

8 ingredients MutableList<Ingredient> Public Danh sách

nguyên liệu của món ăn

9 level String Public Độ khó để

làm món ăn

10 methods MutableList<StepFireBase > Public Danh các

bước làm món ăn

11 nameFood String Public Tên món ăn

12 owner String Public Gmail của

chủ nhân bài viết

13 servers String Public Số người có

thể ăn với lượng nguyên liệu trên

14 share Long Public Số lượt chia

sẻ

15 timePost Time Public Thời gian

đăng

Trang 19

16 timestamp Timestamp Public Thời gian

đăng bài theo timestampb) Danh sách phương thức

ST

T Tên phương thức Loạ i Ràng buộc Ý nghĩa/ghi chu

1 getData void Publi

Đưa list hashmap từ

firebase sang đúng dạng MutableList<Ingredient>

class

3 convertToMethodList void Publi

c Đưa list hashmap từ firebase sang đúng dạng

MutableList<StepFirebase

> class

4.2.3 Lớp Notify

a) Danh sách thuộc tính

STT Tên thuộc tính Loại Ràng buộc Ý nghĩa/ghi chu

1 name String Public Gmail của người đã gửi

thông báo

2 id String Public Id bài viết đã được tương

tác

3 type String Public Loại thông báo

4 status Long Public Trạng thái thông báo

5 time Time Public Thời gian thông báo được

gửib) Danh sách phương thức

STT Tên phương thức Loại Ràng buộc Ý nghĩa/ghi chu

1 getData Void Public Lấy dữ liệu từ

Trang 20

STT Tên thuộc tính Loại Ràng buộc Ý nghĩa/ghi chu

1 day Long Public Ngày

2 month Long Public Tháng

3 year Long Public Năm

4 hour Long Public Giờ

5 minute Long Public Phút

6 second Long Public Giây

7 dataTime String Public Thời gian đến hiện tại là

bao lâub) Danh sách phương thức

STT Tên phương thức Loại Ràng buộc Ý nghĩa/ghi chu

1 getTime Void Public Lấy dữ liệu từ Map

2 showTime String Public Tính toán và đưa ra thời

gian

Trang 21

Chương 5: Thiết kế dữ liệu

5.1 Sơ đồ logic

STT Tên bảng dữ liệu Diễn giải

1 User Thông tin tài khoản người dùng

Ngày đăng: 27/11/2022, 17:06

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w