Tải bản đầy đủ (.docx) (65 trang)

Đồ án tốt nghiệp công nghệ thông tin xây dựng ứng dụng chia sẻ trích dẫn hay mỗi ngày trên nền tảng android

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.6 MB, 65 trang )

DATN-ĐH

BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC MỎ - ĐỊA CHẤT

-------------



-------------

NGUYỄN ANH TÚ
XÂY DỰNG ỨNG DỤNG CHIA SẺ TRÍCH DẪN HAY MỖI NGÀY TRÊN NỀN TẢNG ANDROID HÀ NỘI - 2021

ĐỒ ÁN TỐT NGHIỆP
NGÀNH CÔNG NGHỆ THÔNG TIN
MÃ SỐ: 7480201

HÀ NỘI - 2021


TRƯỜNG ĐẠI HỌC MỎ - ĐỊA CHẤT
KHOA CÔNG NGHỆ THÔNG TIN

 

------------- ⁂ -------------

ĐỒ ÁN TỐT NGHIỆP
CHUYÊN NGÀNH KHOA HỌC MÁY TÍNH
ĐỀ TÀI


Xây dựng ứng dụng chia sẻ trích dẫn hay mỗi ngày
trên nền tảng Android

HÀ NỘI - 2021


Đồ án tốt nghiệp chuyên ngành Khoa học máy tính

MỤC LỤC

MỤC LỤC..................................................................................................................... 1
DANH MỤC HÌNH ẢNH............................................................................................. 4
DANH MỤC BẢNG BIỂU........................................................................................... 6
LỜI CẢM ƠN............................................................................................................... 7
LỜI NÓI ĐẦU............................................................................................................... 8
CHƯƠNG 1: TỔNG QUAN VỀ ĐỀ TÀI..................................................................... 9
1.1 Giới thiệu chung................................................................................................... 9
1.2 Đặt vấn đề............................................................................................................ 9
1.3 Lý do chọn đề tài................................................................................................ 10
1.4 Mục tiêu của đề tài............................................................................................. 11
1.5 Nội dung nghiên cứu.......................................................................................... 11
1.6 Phạm vi của đề tài.............................................................................................. 11
CHƯƠNG 2: PHÂN TÍCH – THIẾT KẾ HỆ THỐNG............................................... 12
2.1 Mô tả hệ thống chia sẻ trích dẫn hay.................................................................. 12
2.2 Xác định đối tượng (tác nhân) tương tác với hệ thống....................................... 13
2.3 Xác định yêu cầu chức năng............................................................................... 14
2.3.1 Xác định các chức năng chi tiết và gom nhóm các chức năng.....................14
2.3.2 Xây dựng biểu đồ phân rã chức năng........................................................... 16
2.4 Xây dựng các mơ hình luồng dữ liệu.................................................................. 17
2.4.1 Ký hiệu sử dụng........................................................................................... 17

2.4.2 Lập sơ đồ luồng dữ liệu............................................................................... 17
2.5 Thiết kế các Bảng dữ liệu của hệ thống.............................................................. 21
2.6 Xây dựng biểu đồ quan hệ thực thể.................................................................... 24
Sinh viên: Nguyễn Anh Tú – Khoa học máy tính K61A

1


Đồ án tốt nghiệp chuyên ngành Khoa học máy tính

2.6.1Ký hiệu sử dụng ....................
2.6.2Lập biểu đồ quan hệ thực thể

2.6.3Mối liên kết trong biểu đồ qu

2.7Xác định các yêu cầu phi chức năng ....................................
CHƯƠNG 3 CƠ SỞ LÝ THUYẾT ...............................................................................

3.1Hệ điều hành Android ..........................................................

3.1.1Giới thiệu ..............................

3.1.2Kiến trúc của hệ điều hành An

3.1.3Ưu nhược điểm của hệ điều h

3.2Ngôn ngữ lập trình Java .......................................................

3.2.1Lịch sử ..................................


3.2.2Đặc điểm ...............................

3.3Firebase ................................................................................

3.3.1Firebase là gì? .......................

3.3.2Lịch sử phát triển ..................

3.3.3Cách thức hoạt động của Fire
3.3.4Ưu nhược điểm của Firebase

3.4Android Studio .....................................................................

3.4.1Giới thiệu chung ...................

3.4.2Những tính năng chính .........
CHƯƠNG 4: XÂY DỰNG VÀ PHÁT TRIỂN ỨNG DỤNG ......................................

4.1Thiết kế giao diện ................................................................

4.2Firebase Realtime Database .................................................

4.3Thiết kế giao diện ứng dụng.................................................

4.3.1Giao diện đăng ký, đăng nhập
Sinh viên: Nguyễn Anh Tú – Khoa học máy tính K61A


Đồ án tốt nghiệp chuyên ngành Khoa học máy tính
4.3.2 Giao diện trang chủ...................................................................................... 49

4.3.3 Giao diện trang cá nhân............................................................................... 50
4.3.4 Giao diện các người dùng............................................................................ 51
4.3.5 Giao diện nhắn tin........................................................................................ 52
4.3.6 Giao diện đăng bài viết................................................................................ 53
4.3.7 Giao diện sửa thông tin cá nhân................................................................... 54
4.4 Kiểm thử và đánh giá hệ thống........................................................................... 55
4.4.1 Kiểm thử chức năng đăng ký, đăng nhập..................................................... 55
4.4.2 Kiểm thử chức năng đăng bài viết................................................................ 56
4.4.3 Kiểm thử chức năng sửa thông tin cá nhân.................................................. 56
4.4.4 Kiểm thử chức năng tạo nhóm chat.............................................................. 57
4.4.5 Kiểm thử chức năng thích, bình luận, chia sẻ.............................................. 57
ĐÁNH GIÁ – KẾT LUẬN.......................................................................................... 58
TÀI LIỆU THAM KHẢO........................................................................................... 60

Sinh viên: Nguyễn Anh Tú – Khoa học máy tính K61A

3


Đồ án tốt nghiệp chuyên ngành Khoa học máy tính

DANH MỤC HÌNH ẢNH

Hình 2 - 1 Sơ đồ phân rã chức năng. .............................................................................
Hình 2 - 2 Ký hiệu sử dụng. ..........................................................................................
Hình 2 - 3 Cách truy xuất dữ liệu. .................................................................................
Hình 2 - 4 Biểu đồ luồng dữ liệu mức ngữ cảnh (mức 0). ............................................
Hình 2 - 5 Biểu đồ luồng dữ liệu mức đỉnh (mức 1). ....................................................
Hình 2 - 6


Mức dưới đỉnh (mức 2

Hình 2 - 7

Mức dưới đỉnh (mức 2

Hình 2 - 8

Mức dưới đỉnh (mức 2

Hình 2 - 9

Mức dưới đỉnh (mức 2

Hình 2

- 10

Mức dưới đỉn

Hình 2

- 11

Mức dưới đỉn

Hình 2

- 12


Ký hiệu sử dụ

Hình 2

- 13 Lược đồ quan hệ thực thể ...........................

Hình 3 - 1 Biểu tượng của hệ điều hành Android........................................................ 27
Hình 3 - 2 Kiến trúc của hệ điều hành Android........................................................... 29
Hình 3 - 3 Quá trình biên dịch qua máy ảo JVM......................................................... 31
Hình 3 - 4 Biểu tượng của Firebase............................................................................. 33
Hình 3 - 5 Minh họa sự kết hợp của Firebase và Google Cloud Platform...................35
Hình 3 - 6 Biểu tượng API Cloud Vision của Google.................................................. 37

Hình 4 - 1 Cơ sở dữ liệu dạng JSON........................................................................... 40
Hình 4 - 2 Các model ánh xạ tương ứng...................................................................... 40
Sinh viên: Nguyễn Anh Tú – Khoa học máy tính K61A

4


Đồ án tốt nghiệp chun ngành Khoa học máy tính
Hình 4 - 3 Dữ liệu của Các tin nhắn trong cơ sở dữ liệu.............................................. 41
Hình 4 - 4 Dữ liệu của Danh sách nhóm tin nhắn trong cơ sở dữ liệu.........................41
Hình 4 - 5 Dữ liệu của Các bài viết trong cơ sở dữ liệu............................................... 42
Hình 4 - 6 Dữ liệu của Các người dùng trong cơ sở dữ liệu........................................ 42
Hình 4 - 7 Quản lý người dùng với Firebase Authentication.......................................43
Hình 4 - 8 Quản lý tài nguyên với Firebase Storage.................................................... 43
Hình 4 - 9 Lấy dữ liệu tất cả người dùng..................................................................... 44
Hình 4 - 10 Cập nhật bài viết khơng ảnh..................................................................... 44
Hình 4 - 11 Cấp quyền truy cập vào máy ảnh và kho lưu trữ......................................45

Hình 4 - 12 Xóa ảnh trong bài viết.............................................................................. 45
Hình 4 - 13 Giao diện đăng ký, đăng nhập.................................................................. 46
Hình 4 - 14 Giao diện chức năng đăng ký................................................................... 47
Hình 4 - 15 Giao diện chức năng đăng nhập................................................................ 48
Hình 4 - 16 Giao diện trang chủ.................................................................................. 49
Hình 4 - 17 Giao diện trang cá nhân............................................................................ 50
Hình 4 - 18 Giao diện Các người dùng........................................................................ 51
Hình 4 - 19 Giao diện nhắn tin.................................................................................... 52
Hình 4 - 20 Giao diện đăng bài viết............................................................................. 53
Hình 4 - 21 Giao diện sửa thông tin cá nhân............................................................... 54

Sinh viên: Nguyễn Anh Tú – Khoa học máy tính K61A

5


Đồ án tốt nghiệp chuyên ngành Khoa học máy tính

DANH MỤC BẢNG BIỂU

Bảng 2 - 1 Thiết kế cấu trúc bảng người dùng............................................................. 21
Bảng 2 - 2 Thiết kế cấu trúc bảng bài viết................................................................... 22
Bảng 2 - 3 Thiết kế cấu trúc bảng tin nhắn.................................................................. 22
Bảng 2 - 4 Thiết kế cấu trúc bảng danh sách nhắn tin................................................. 22
Bảng 2 - 5 Thiết kế cấu trúc bảng bình luận................................................................ 23
Bảng 2 - 6 Thiết kế cấu trúc các nhóm nhắn tin........................................................... 23
Bảng 2 - 7 Thiết kế cấu trúc bảng tin nhắn nhóm........................................................ 23

Bảng 4 - 1 Kiểm thử chức năng đăng ký, đăng nhập................................................... 55
Bảng 4 - 2 Kiểm thử chức năng đăng bài viết.............................................................. 56

Bảng 4 - 3 Kiểm thử chức năng Sửa thông tin cá nhân................................................ 56
Bảng 4 - 4 Kiểm thử chức năng tạo nhóm nhắn tin..................................................... 57
Bảng 4 - 5 Kiểm thử chức năng thích, bình luận, chia sẻ............................................ 57

Sinh viên: Nguyễn Anh Tú – Khoa học máy tính K61A

6


Đồ án tốt nghiệp chuyên ngành Khoa học máy tính

LỜI CẢM ƠN

Em xin chân thành cảm ơn trường Đại học Mỏ - Địa chất, khoa Công nghệ
thông tin và bộ mơn Khoa học máy tính đã tạo điều kiện cho em hoàn thành đồ án tốt
nghiệp. Nhờ đồ án tốt nghiệp này em đã có thêm rất nhiều kinh nghiệm quý báu.
Những kinh nghiệm đó sẽ giúp em nhiều trong công việc sau này.
Em cũng xin cảm ơn các thầy, cô trong Bộ môn, trong Khoa và trong Trường đã
tận tình giảng dạy và trang bị cho em những kiến thức cần thiết. Những kiến thức này
đã hỗ trợ cho em rất nhiều trong việc hoàn thành đồ án tốt nghiệp.
Hơn cả, em xin cảm ơn thầy giáo - Ths. Đặng Văn Nam đã hướng dẫn, cung cấp
một số tài liệu giúp em hoàn thành đồ án tốt nghiệp. Những điều thầy chỉ dẫn giúp em
có được hướng đi trong cơng việc sắp tới.
Vì thời gian có hạn và kinh nghiệm cịn thiếu nên đồ án của em khó tránh khỏi
những thiếu sót. Em mong nhận được sự chỉ bảo, đóng góp ý kiến của thầy, cơ để em
có thêm kinh nghiệm giúp hồn thành tốt đề tài của mình hơn.
Một lần nữa em xin chân thành cảm ơn.

Sinh viên thực hiện
NGUYỄN ANH TÚ


Sinh viên: Nguyễn Anh Tú – Khoa học máy tính K61A

7


Đồ án tốt nghiệp chuyên ngành Khoa học máy tính

LỜI NÓI ĐẦU

Trong thời đại hiện nay, mạng xã hội là một nơi gần như không thể tách rời đối
với hầu hết mọi người và chúng phục vụ nhiều mục đích, nhu cầu khác nhau của mỗi
người. Chính vì mạng xã hội quá mở khiến cho nhiều người thường xuyên bị xao lãng
vào những thứ không mang lại nhiều giá trị thiết thực cho cuộc sống của chính họ.
Với mong muốn hưởng ứng sự kêu gọi, tuyên truyền, xây dựng thói quen đọc
sách cho đại bộ phận người dân Việt Nam để đưa đất nước ta trở thành quốc gia khởi
nghiệp trong những thập kỷ tiếp theo, bắt kịp với sự phát triển ngày càng nhanh của
khoa học công nghệ và mức sống, mức thu nhập ngày càng tăng cao của xã hội.
Khác với mạng xã hội tin tức hay mạng xã hội hình ảnh thì mạng xã hội sách là
nơi tập trung giao lưu về chủ đề sách, những trải nghiệm thú vị học được khi đọc một
cuốn sách nào đó hay một hành động cụ thể, kinh nghiệm thực tế từng trải qua để kể
lại, chia sẻ lại cho mọi người để học hỏi và cùng nhau phát triển đi lên.
Ngồi ra, mạng xã hội sách cịn là nơi để mọi người review những cuốn hay,
phân tích, bàn luận hay phản biện với nhau về những giá trị hiện tại mà cuốn sách
mang lại cho người đọc, tập trung vào một hoặc một số thứ tích cực nhất định thật sự
có ích lợi lớn cho những người sử dụng.
Và ứng dụng chia sẻ trích dẫn nhỏ này là một phần trong những mong muốn
xây dựng một cộng đồng mạng xã hội sách cho người Việt Nam.
Nhờ vào những trích dẫn ngắn, nhỏ, tinh túy, tâm đắc cũng có thể khơi dậy sự
hiếu kỳ, sự tò mò, ham muốn thèm đọc, mở lối cho những bế tắc, những bài toán mà

cuộc sống đặt ra cần phải giải quyết của cá nhân mỗi người.

Sinh viên: Nguyễn Anh Tú – Khoa học máy tính K61A

8


Đồ án tốt nghiệp chuyên ngành Khoa học máy tính

CHƯƠNG 1: TỔNG QUAN VỀ ĐỀ TÀI
1.1 Giới thiệu chung



Tên đề tài bằng tiếng việt: Xây dựng ứng dụng chia sẻ trích dẫn hay mỗi ngày
trên nền tảng Android.
Tên đề tài bằng tiếng anh: Build apps to share good quotes every day on Android.



Thời gian thực hiện: 2 tháng (26/04/2021 – 27/06/2021).



Môi trường phát triển: Android Studio phiên bản 4.4.1.



Ngôn ngữ lập trình: Java.




Lưu trữ Cơ sở dữ liệu: Firebase.



Nền tảng phát triển: Hệ điều hành Android 5.0 (Lollipop) API 21 trở lên.



Thiết bị điện tử được cài đặt: Điện thoại di động thông minh.



Đối tượng sử dụng: Bất kỳ ai.



1.2 Đặt vấn đề
Với sự phát triển như vũ bão của nền công nghiệp hiện đại, đặc biệt là ngành
công nghệ thơng tin, truyền thơng, giải trí, các phương tiện nghe, nhìn (điện thoại, máy
tính bảng, laptop, …) tỏ ra vượt trội và tính năng tiện dụng, có sức hấp dẫn, lôi cuốn
mạnh mẽ hơn so với các trang sách báo truyền thống.
Nhiều người trẻ hiện nay thường khơng có thói quen đọc sách với rất nhiều lí do
khác nhau nhưng lại ln mất thời gian của mình vào những thói quen vô bổ như lướt
mạng xã hội Facebook hay xem các video tiktok được sáng tạo nội dung để thu hút người
dùng dành sự quan tâm vào đó mà quên đi những mục tiêu và ước muốn cá nhân.

Trong thời đại tiêu dùng nhanh như hiện nay thì người trẻ thường xuyên bị sao
lãng bởi các phương tiện truyền thông và tâm lý thích sự giản đơn, nhanh chóng và

tiện lợi muốn nhanh chóng đạt được khiến việc đọc sách bị xem nhẹ.
Cá nhân em nói riêng cũng thường cảm thấy ngại đọc nhiều chữ hay lấy lí do
bận rộn với các vấn đề của tuổi trưởng thành (như tình u, cơng việc làm thêm, bài
tập lớn, …) mà ít khi dành thời gian cho việc đọc sách.

Sinh viên: Nguyễn Anh Tú – Khoa học máy tính K61A

9


Đồ án tốt nghiệp chuyên ngành Khoa học máy tính
Những người luôn muốn thay đổi bản thân tiến bộ hơn thường dành thời gian
đọc sách, cảm thấy được truyền cảm hứng, truyền lửa bởi những câu viết trong sách,
những câu từ cá nhân họ tâm đắc có ý nghĩa với họ và khiến họ thay đổi.
Thông thường mọi người sẽ đánh dấu vào sách những câu viết mà họ tâm đắc hoặc
viết ra một cuốn sổ tay để đọc lại những khi cảm thấy thiếu sức mạnh ý chí. Nhưng nhiều
khi những ghi chú đó ít khi được đọc lại thường xun bởi vì những bộn bề của cơng việc
và cuộc sống hối hả, tấp nập khiến ta quên mất đi những giá trị tinh túy của những cuốn
sách ta đã đọc, những thức tỉnh của bản thân mỗi khi đọc được chúng.

Ít khi đọc lại, lười ngại việc đọc lại nên không nhớ những bài học, lời khuyên
nhỏ, châm ngơn sống, dịng tâm trạng, triết lý về cuộc sống để có thể ghi nhớ và vận
dụng trong các tình huống, trường hợp cụ thể.
Các ứng dụng trích dẫn đa phần là ứng dụng chỉnh sửa và đi kèm với ghép ảnh.
1.3 Lý do chọn đề tài
Với ý muốn tận dụng sự phát triển, sự thuận tiện của khoa học cơng nghệ, kỹ thuật
điện tử như hiện nay để có thể:


Tạo thói quen văn hóa đọc trong người trẻ nói riêng và mọi người dân nói chung.




Giúp tập trung sự chú ý vào những thứ tích cực hữu ích thay vì bị xao lãng một



Dung nạp những suy nghĩ, ý niệm tích cực, lạc quan hàng ngày hàng giờ, cả
trước khi đi vào giấc ngủ hay ngay sau khi thức dậy.




Và cịn là nơi để tìm đến khi bế tắc cần động viên, khích lệ, an ủi, định hướng,
trấn an tinh thần, cổ vũ ý chí, sức mạnh, sự tự tin, niềm hy vọng, sự dũng cảm.
Nhắc nhở bản thân sống tích cực, lạc quan, tự tin, mạnh mẽ hơn trong cuộc sống.



Tự đọc lên những câu chữ như đang tự mình nhắn nhủ chính mình.



Tạo sự tương tác với mọi người khác để thi đua với nhau, xếp hạng thành tích
và thử thách giúp người dùng vượt lên chính mình, thay đổi để trở thành một
con người tốt hơn.

Chính vì những lý do trên mà em quyết định lựa chọn đề tài “Xây dựng ứng dụng
chia sẻ trích dẫn hay mỗi ngày trên nền tảng Android” để làm đồ án tốt nghiệp.


Sinh viên: Nguyễn Anh Tú – Khoa học máy tính K61A

10


Đồ án tốt nghiệp chuyên ngành Khoa học máy tính
1.4 Mục tiêu của đề tài
Xây dựng được ứng dụng trên nền tảng Android cho phép kết nối mọi người
cùng sở thích vào một cộng đồng chung để chia sẻ nhưng câu nói, quyển sách, bài học
ý nghĩa trong cuộc sống.
Cụ thể, ứng dụng “Chia sẻ trích dẫn hay” này cung cấp cho người dùng những
tính năng như:


Ghi lại các câu trích dẫn tâm đắc.



Ghi lại các câu từ hay trong các cuốn sách đã đọc hay tóm tắt lại ý chính và viết
lại để kích thích sự tị mị về cuốn sách đó để tìm đọc lại.



Được thơng báo hàng ngày các câu trích dẫn ngắn ưa thích của cá nhân để cổ vũ
tinh thần, tiếp thêm sức mạnh, động lực, sự tự tin, sức sống cho một ngày mới
tràn đầy năng lượng.
Chia sẻ được những câu trích dẫn hay cho bạn bè, mọi người.





Ngồi ra cịn có thơng báo những câu trích dẫn mới mỗi ngày về những chủ đề,
những tác giả, những cuốn sách, những trạng thái cảm xúc mà bạn quan tâm.



Và không chỉ là một ứng dụng đọc khơng mà cịn là một ứng dụng để giải trí,
duy trì thói quen đọc.

1.5 Nội dung nghiên cứu
Để đạt được những mục tiêu ở trên em cần nghiên cứu, tìm hiểu những nội dung sau:
▪ Tìm hiểu về công cụ phát triển ứng dụng Android Studio.


Nghiên cứu về nền tảng Firebase.



Khảo sát, phân tích yêu cầu hệ thống.



Thiết kế, xây dựng cấu trúc dữ liệu.



Tìm kiếm các thư viện hỗ trợ

1.6 Phạm vi của đề tài
Phạm vi của đề tài này là tập trung xây dựng lên một ứng dụng với những chức

năng cơ bản của một mạng xã hội nhỏ cho phép người dùng đăng bài viết, bình luận,
bày tỏ cảm xúc và nhắn tin lẫn nhau trên các thiết bị di động thông minh hệ điều hành
Android.
Sinh viên: Nguyễn Anh Tú – Khoa học máy tính K61A

11


Đồ án tốt nghiệp chuyên ngành Khoa học máy tính

CHƯƠNG 2: PHÂN TÍCH – THIẾT KẾ HỆ THỐNG

2.1 Mơ tả hệ thống chia sẻ trích dẫn hay
Một nhóm người dùng muốn xây dựng một ứng dụng để phục vụ và giúp quản
lý các trích dẫn mà họ yêu thích và tâm đắc. Người dùng thường xuyên ghi lại các
trích dẫn và lời khun hữu ích để có thể đọc lại khi cần.
Do vậy hệ thống cần phải cho phép ghi và lưu nhận các trích dẫn và thơng báo
lại các câu nói hay đó với người dùng.
Hệ thống chia sẻ trích dẫn là chương trình phần mềm được sử dụng để ghi lại
các phiên viết trích dẫn, lưu giữ và thông báo lại thường xuyên với người dùng, chủ
yếu phục vụ những người dùng cá nhân.
Hệ thống chia sẻ trích dẫn có một kho lưu trữ đám mây Firebase để lưu dữ liệu
chung của mọi người dùng.
Hệ thống của ứng dụng cho phép tất cả các trao đổi được thực hiện bởi một
người dùng đã đăng ký tài khoản với tên đăng nhập là hòm thư điện tử (email) của họ
với ứng dụng.
Một người dùng được yêu cầu đăng ký tài khoản với email cá nhân và mật khẩu
đăng nhập ứng dụng, email và mật khẩu mã hóa sẽ được gửi đến hệ thống lưu trữ
thông tin (Firebase) để xác nhận.
Hệ thống tự động gửi thư xác nhận đăng ký của người dùng. Sau khi đã đăng ký

thành công người dùng sẽ có thể sử dụng và thực hiện một hoặc nhiều sự trao đổi. Sau
khi đăng nhập thành công, tài khoản sẽ được duy trì đăng nhập tự động trên máy cho
đến khi người dùng đăng xuất.
Người dùng chỉ có thể sử dụng ứng dụng trên thiết bị điện thoại di động thông
minh hệ điều hành Android.
Một người dùng phải có khả năng xem lại các câu trích dẫn cá nhân của mình
Người dùng được thơng báo về các bài viết mới cũng như tin nhắn đến.
Người dùng phải có khả năng chia sẻ bài viết của mình cho mọi người, bạn bè.
Sinh viên: Nguyễn Anh Tú – Khoa học máy tính K61A

12


Đồ án tốt nghiệp chuyên ngành Khoa học máy tính
Người dùng phải có khả năng bày tỏ cảm xúc với bài viết của người dùng khác.
Người dùng phải có thể bình luận với bài viết của người dùng khác.
Người dùng phải có khả năng tìm kiếm các trích dẫn, các tác giả, các bạn bè.
Người dùng có thể hủy bỏ bài viết bằng cách chạm ‘Hủy’.
Nếu hệ thống Firebase xác định rằng mật khẩu của người dùng là không hợp lệ,
người dùng sẽ được yêu cầu nhập lại mật khẩu. Nếu người dùng nhập qn mật khẩu
thì có thể khơi phục thì hệ thống sẽ gửi thư xác nhận lại mật khẩu vào hòm thư email
đã đăng ký tài khoản của người dùng.
Hệ thống phải cung cấp cho người dùng danh sách các bài đã viết của cá nhân
sau khi lưu thành công, gồm các thông tin ngày tháng, thời gian, chủ đề, lượt thích.
Thơng tin của mỗi người dùng được lưu trữ trong hệ thống gồm Mã người
dùng, địa chỉ Email, một người dùng có chỉ có thể có một tài khoản cho một email,
một tài khoản chỉ thuộc một người dùng.
Hệ thống hiển thị tất cả các trích dẫn của mọi người về các lĩnh vực chủ đề.
Hệ thống sẽ có thể hiển thị 2 ngơn ngữ chính là tiếng việt và tiếng anh.
Người dùng có thể sửa đổi tên, mật khẩu, ảnh đại diện của mình.

2.2 Xác định đối tượng (tác nhân) tương tác với hệ thống
Ứng dụng được phát triển hướng tới tất cả các đối tượng là cá nhân có nhu cầu
phát triển hồn thiện bản thân nhờ vào việc đọc các trích dẫn ngắn tâm đắc được thông
báo nhắc nhớ, khơi dậy sự nhận thức, tỉnh ngộ về những giá trị sống quanh mình.
Dựa vào bản mô tả hệ thống trên, ta xác định được đối tượng sau:


Firebase: Là hệ thống quản lý thơng tin lưu giữ trên Firebase.



Người dùng (hay người đọc): Là những người sử dụng hệ thống để ghi chú và
được thơng báo nhắc về những gì đã ghi hoặc những trích dẫn hay khác do
người khác đăng tải.

Sinh viên: Nguyễn Anh Tú – Khoa học máy tính K61A

13


Đồ án tốt nghiệp chuyên ngành Khoa học máy tính
2.3 Xác định yêu cầu chức năng
2.3.1 Xác định các chức năng chi tiết và gom nhóm các chức năng
Trên cơ sở khảo sát các bài toán thực tế, ứng dụng sẽ có các chức năng chính sau:
Nhóm chức năng Quản lý tài khoản:


Đăng ký: Người dùng mới có thể tạo một tài khoản cho riêng mình để quản lý,
theo dõi, cá nhân hóa nhu cầu sử dụng ứng dụng của mình.




Đăng nhập: Nếu người dùng đã có tài khoản thì có thể đăng nhập vào để sử
dụng các chức năng khác nhau của ứng dụng.



Đăng xuất: Khi người dùng muốn đổi tài khoản đăng nhập khác hay đăng ký tài
khoản mới hoặc chỉ là khơng muốn duy trì đăng nhập trên ứng dụng để bảo mật
dữ liệu cá nhân.



Xem danh sách người dùng: Người dùng có thể xem danh sách những người
đăng ký khác đang sử dụng ứng dụng và có thể nhắn tin trị chuyện, kết nối với
nhau và tạo ra những nhóm chat nhỏ riêng.



Tìm kiếm chung: Cho phép người dùng tìm kiếm các người dùng, bài viết khác
bằng tên hoặc email cá nhân.



Đổi mật khẩu: Cho phép người dùng thay đổi mật khẩu đăng nhập vào hệ thống.

Nhóm chức năng Quản lý bài viết chung:


Xem bài viết chung: Người dùng có thể xem được tất cả các bài viết của những

người dùng khác.



Bày tỏ cảm xúc: Người dùng có thể chạm vào nút thích để thêm số lượt thích
cho bài viết mà mình ấn tượng.



Xem những người thích: Cho phép người dùng xem thơng tin về những người
đã thích bài viết.



Bình luận bài viết: Cho phép người dùng viết nhận xét, bày tỏ quan điểm, cảm
nhận của mình về bài viết.



Xem bình luận: Cho phép người dùng xem, đọc các dòng viết nhận xét của
người khác về bài viết đó.

Sinh viên: Nguyễn Anh Tú – Khoa học máy tính K61A

14


Đồ án tốt nghiệp chun ngành Khoa học máy tính



Chia sẻ bài viết: Cho phép người dùng chia sẻ bài viết sang các ứng dụng hay
nền tảng khác như email, tin nhắn, …

Nhóm chức năng Quản lý bài viết cá nhân:


Xem bài viết cá nhân: Cho phép người dùng xem các bài mình đã viết



Tạo bài viết: Cho phép người dùng viết bài và đăng tải cho mọi người dùng khác

đọc bài viết đó.


Xóa bài viết: Cho phép người dùng xóa những bài mình đã viết.



Sửa bài viết: Cho phép người dùng chỉnh sửa, thêm bớt chữ, hình ảnh đăng tải.

Nhóm chức năng Quản lý hồ sơ cá nhân:


Đổi biệt danh hiển thị: Cho phép người dùng chỉnh sửa, thay đổi tên hiển thị
của mình với những người dùng khác.



Đổi ảnh đại diện: Cho phép người dùng thay đổi hình ảnh nhận diện của cá nhân.




Đổi ảnh bìa: Cho phép người dùng chỉnh sửa ảnh nền cá nhân mình bắt mắt hơn.



Đổi số điện thoại: Cho phép người dùng thay đổi thơng tin liên hệ trực tiếp.



Xem thơng tin cá nhân: Cho phép người dùng xem lại những bài viết của mình,
số lượt thích, lượt người bình luận về bài viết.

Nhóm chức năng Quản lý tin nhắn (hay Quản lý chat):


Viết tin nhắn: Cho phép người viết tin nhắn riêng cho mỗi người hoặc nhắn
chung cho tất cả mọi người trong nhóm.



Xem tin nhắn: Người dùng đọc được các tin nhắn gửi đến và đã gửi đi.



Xem danh sách nhắn tin: Người dùng có thể xem danh sách những người mình
đã nhắn tin.




Xóa tin nhắn: Cho phép người dùng xóa đi tin mình đã gửi.



Khóa người dùng khác: Cho phép người dùng chặn tin nhắn từ những người
dùng khác.

Nhóm chức năng Quản lý nhóm tin nhắn:
Sinh viên: Nguyễn Anh Tú – Khoa học máy tính K61A

15


Đồ án tốt nghiệp chun ngành Khoa học máy tính


Tạo nhóm chat: Người dùng có thể tạo một nhóm nhắn tin để trị chuyện chung
với những thành viên trong nhóm.



Xem danh sách nhóm: Xem danh sách các nhóm người dùng đã lập ra hay được
mời tham gia vào.



Xem danh sách thành viên: Cho phép người dùng xem được những người có
mặt trong nhóm chat.




Thêm thành viên: Cho phép người dùng thêm các thành viên vào nhóm tin nhắn



Sửa nhóm: Cho phép người dùng sửa mơ tả nhóm và tên nhóm.



Xóa nhóm: Cho phép người dùng xóa nhóm.



Rời nhóm: Người dùng có thể thốt khỏi nhóm và khơng nhận tin nhắn của nhóm.

2.3.2 Xây dựng biểu đồ phân rã chức năng
Trên cơ sở các chức năng chi tiết đã xác định được bên trên em tiến hành xây
dựng biểu đồ phân rã chức năng của hệ thống như hình sau đây:

Hình 2 - 1 Sơ đồ phân rã chức năng.
Sinh viên: Nguyễn Anh Tú – Khoa học máy tính K61A

16


Đồ án tốt nghiệp chuyên ngành Khoa học máy tính

2.4 Xây dựng các mơ hình luồng dữ liệu
2.4.1 Ký hiệu sử dụng


Hình 2 - 2 Ký hiệu sử dụng.

Hình 2 - 3 Cách truy xuất dữ liệu.
2.4.2 Lập sơ đồ luồng dữ liệu

Hình 2 - 4 Biểu đồ luồng dữ liệu mức ngữ cảnh (mức 0).

Sinh viên: Nguyễn Anh Tú – Khoa học máy tính K61A


Đồ án tốt nghiệp chun ngành Khoa học máy tính

Hình 2 - 5 Biểu đồ luồng dữ liệu mức đỉnh (mức 1).

Hình 2 - 6 Mức dưới đỉnh (mức 2) của chức năng Quản lý tài khoản.
Sinh viên: Nguyễn Anh Tú – Khoa học máy tính K61A


Đồ án tốt nghiệp chun ngành Khoa học máy tính

Hình 2 - 7 Mức dưới đỉnh (mức 2) của chức năng Quản lý bài viết chung.

Hình 2 - 8 Mức dưới đỉnh (mức 2) của chức năng Quản lý bài viết cá nhân.

Sinh viên: Nguyễn Anh Tú – Khoa học máy tính K61A


Đồ án tốt nghiệp chun ngành Khoa học máy tính


Hình 2 - 9 Mức dưới đỉnh (mức 2) của chức năng Quản lý hồ sơ cá nhân.

Hình 2 - 10 Mức dưới đỉnh (mức 2) của chức năng Quản lý tin nhắn.

Sinh viên: Nguyễn Anh Tú – Khoa học máy tính K61A


Đồ án tốt nghiệp chun ngành Khoa học máy tính

Hình 2 - 11 Mức dưới đỉnh (mức 2) của chức năng Quản lý tin nhắn nhóm.
2.5 Thiết kế các Bảng dữ liệu của hệ thống
❖ Bảng người dùng: Lưu trữ thông tin của các người dùng trong hệ

thống. Bảng 2 - 1 Thiết kế cấu trúc bảng người dùng.
STT
1
2
3
4
5
6
7
8
9
10

Sinh viên: Nguyễn Anh Tú – Khoa học máy tính K61A

21



Đồ án tốt nghiệp chuyên ngành Khoa học máy tính
❖ Bảng bài viết: Lưu trữ thông tin của các bài viết trong hệ thống.

Bảng 2 - 2 Thiết kế cấu trúc bảng bài viết.
STT
1
2
3
4
5
6
7
8
9
10
11

❖ Bảng tin nhắn: Lưu trữ thông tin các tin nhắn trong hệ thống.

Bảng 2 - 3 Thiết kế cấu trúc bảng tin nhắn
STT
1
2
3
4
5
6
❖ Bảng danh sách nhắn tin: Lưu trữ mã người dùng trên hệ thống Firebase.


Bảng 2 - 4 Thiết kế cấu trúc bảng danh sách nhắn tin.
STT
1
Sinh viên: Nguyễn Anh Tú – Khoa học máy tính K61A

22


Đồ án tốt nghiệp chuyên ngành Khoa học máy tính
❖ Bảng bình luận: Lưu trữ thơng tin các bình buận trong hệ thống.

Bảng 2 - 5 Thiết kế cấu trúc bảng bình luận.
STT
1
2
3
4
5
6
7
❖ Bảng nhóm tin nhắn: Lưu trữ thơng tin các nhóm nhắn tin trong hệ thống.

Bảng 2 - 6 Thiết kế cấu trúc các nhóm nhắn tin.
STT
1
2
3
4
5
6

7
8
❖ Bảng tin nhắn nhóm: Lưu trữ thơng tin các tin nhắn trong nhóm trong hệ

thống. Bảng 2 - 7 Thiết kế cấu trúc bảng tin nhắn nhóm.
STT
1
2
3
4
Sinh viên: Nguyễn Anh Tú – Khoa học máy tính K61A

23


×