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

Đồ án xây dựng app nghe nhạc kết hợp các tiện ích ai

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.92 MB, 91 trang )

<span class="text_page_counter">Trang 1</span><div class="page_container" data-page="1">

<b><small>NGUYỄN HUY HỒNG ANHKHĨA 17</small></b>

<b><small>HỆ ĐÀO TẠO KỸ SƯ DÂN SỰ</small></b>

<b>ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC</b>

<b><small> CHUYÊN NGÀNH CÔNG NGHỆ DỮ LIỆU</small></b>

<b>XÂY DỰNG APP NGHE NHẠC KẾT HỢP CÁC TIỆN ÍCH AI</b>

<b><small>NĂM 2023</small></b>

</div><span class="text_page_counter">Trang 3</span><div class="page_container" data-page="3">

<b><small>NGUYỄN HUY HOÀNG ANH</small></b>

<b>XÂY DỰNG APP NGHE NHẠC KẾT HỢP CÁC TIỆN ÍCH AI</b>

<i><b>Cán bộ hướng dẫn: Thượng tá, GVC. TS Chu Thị Hường</b></i>

<b><small>NĂM 2023.</small></b>

</div><span class="text_page_counter">Trang 5</span><div class="page_container" data-page="5">

<b>NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP</b>

Họ và tên: Nguyễn Huy Hoàng Anh Lớp: CNDL Khóa: 17 Ngành: Cơng nghệ thơng tin Chuyên ngành: Công nghệ dữ liệu 1.Tên đề tài: Xây dựng app nghe nhạc kết hợp các tiện ích AI

2. Các số liệu ban đầu:

- Quyết định giao khoá luận tốt nghiệp đại học - Học viện Kỹ thuật Quân sự - Tài liệu tham khảo

3. Nội dung bản thuyết minh:

- Tài liệu tham khảo

4. Số lượng, nội dung các bản vẽ (ghi rõ loại, kích thước và cách thực hiện các

</div><span class="text_page_counter">Trang 6</span><div class="page_container" data-page="6">

Ngày giao:<small> 06/02/2023 </small>Ngày hoàn thành: 08/05/2023

<i>Hà Nội, ngày 08 tháng 05 năm 2023</i>

<b>Chủ nhiệm bộ môn Cán bộ hướng dẫn</b>

(Ký, ghi rõ họ tên, học hàm, học vị)

<b>Học viên thực hiện</b>

Đã hoàn thành và nộp đồ án ngày … tháng …. năm 2023

</div><span class="text_page_counter">Trang 7</span><div class="page_container" data-page="7">

2.1. Phân tích chức năng nghiệp vụ...15

2.1.1. Mơ hình hóa chức năng nghiệp vụ...15

2.1.2. Mơ hình hóa tiến trình nghiệp vụ...17

2.1.3. Đặc tả tiến trình nghiệp vụ:...21

2.2. Phân tích dữ liệu nghiệp vụ...25

2.2.1. Mơ hình hóa dữ liệu ban đầu...25

2.2.2. Chuẩn hóa dữ liệu...27

</div><span class="text_page_counter">Trang 8</span><div class="page_container" data-page="8">

4.1.4. CONTENT BASE FILTERING:...62

4.2.5. Trang tìm kiếm bài hát bằng âm thanh:...70

4.2.6. Trang tạo playlist theo sở thích:...71

4.2.7. Trang đăng nhập, đăng kí:...71

4.2.8. Trang thơng tin người dùng:...72

4.2.9. Trang bình luận bài hát:...73

4.2.10. Trang tìm kiếm bài hát, album, nghệ sĩ:...74

</div><span class="text_page_counter">Trang 9</span><div class="page_container" data-page="9">

B ng 1.2. B ng quy trình x lý v quy t c qu n lýảng 1.1. Bảng cơ cấu tổ chức ảng 1.1. Bảng cơ cấu tổ chức ử lý và quy tắc quản lý à quy tắc quản lý ắc quản lý ảng 1.1. Bảng cơ cấu tổ chức ...4

B ng 2.1. B ng gom nhóm ch c n ngảng 1.1. Bảng cơ cấu tổ chức ảng 1.1. Bảng cơ cấu tổ chức ức ăng ...15

B ng 2.2. B ng xác ảng 1.1. Bảng cơ cấu tổ chức ảng 1.1. Bảng cơ cấu tổ chức định kiểu liên kết thực thểnh ki u liên k t th c thểu liên kết thực thể ết thực thể ực thể ểu liên kết thực thể...26

B ng 2.3. B ng khóa chính cho th c thảng 1.1. Bảng cơ cấu tổ chức ảng 1.1. Bảng cơ cấu tổ chức ực thể ểu liên kết thực thể...29

B ng 2.4. B ng thu c tính k t n i gi a th c thảng 1.1. Bảng cơ cấu tổ chức ảng 1.1. Bảng cơ cấu tổ chức ộc tính kết nối giữa thực thể ết thực thể ối giữa thực thể ữa thực thể ực thể ểu liên kết thực thể...35

B ng 2.5. B ng t ng h p khóa chính, khóa ngo iảng 1.1. Bảng cơ cấu tổ chức ảng 1.1. Bảng cơ cấu tổ chức ổ chức ợp khóa chính, khóa ngoại ại ...36

B ng 2.6. B ng chuy n th c th th nh quan hảng 1.1. Bảng cơ cấu tổ chức ảng 1.1. Bảng cơ cấu tổ chức ểu liên kết thực thể ực thể ểu liên kết thực thể à quy tắc quản lý ệ...38

B ng 2.8. B ng ảng 1.1. Bảng cơ cấu tổ chức ảng 1.1. Bảng cơ cấu tổ chức đặc tả dữ liệu bài hát ảng 1.1. Bảng cơ cấu tổ chức ữa thực thể ệc t d li u b i hátà quy tắc quản lý ...41

B ng 2.9. B ng ảng 1.1. Bảng cơ cấu tổ chức ảng 1.1. Bảng cơ cấu tổ chức đặc tả dữ liệu bài hát ảng 1.1. Bảng cơ cấu tổ chức ữa thực thể ệc t d li u ngh sệ ĩ...41

B ng 2.10. B ng ảng 1.1. Bảng cơ cấu tổ chức ảng 1.1. Bảng cơ cấu tổ chức đặc tả dữ liệu bài hát ảng 1.1. Bảng cơ cấu tổ chức ữa thực thể ệc t d li u nh sáng tácà quy tắc quản lý ...42

B ng 2.11. B ng ảng 1.1. Bảng cơ cấu tổ chức ảng 1.1. Bảng cơ cấu tổ chức đặc tả dữ liệu bài hát ảng 1.1. Bảng cơ cấu tổ chức ữa thực thể ệc t d li u ch c vức ụ...42

B ng 2.12. B ng ảng 1.1. Bảng cơ cấu tổ chức ảng 1.1. Bảng cơ cấu tổ chức đặc tả dữ liệu bài hát ảng 1.1. Bảng cơ cấu tổ chức ữa thực thể ệc t d li u playlist...42

B ng 2.13. B ng ảng 1.1. Bảng cơ cấu tổ chức ảng 1.1. Bảng cơ cấu tổ chức đặc tả dữ liệu bài hát ảng 1.1. Bảng cơ cấu tổ chức ữa thực thể ệc t d li u th tìm ki mẻ tìm kiếm ết thực thể ...43

B ng 2.14. B ng ảng 1.1. Bảng cơ cấu tổ chức ảng 1.1. Bảng cơ cấu tổ chức đặc tả dữ liệu bài hát ảng 1.1. Bảng cơ cấu tổ chức ữa thực thể ệc t d li u th lo iểu liên kết thực thể ại ...43

B ng 2.15. B ng ảng 1.1. Bảng cơ cấu tổ chức ảng 1.1. Bảng cơ cấu tổ chức đặc tả dữ liệu bài hát ảng 1.1. Bảng cơ cấu tổ chức ữa thực thể ệc t d li u album...43

B ng 2.16. B ng ảng 1.1. Bảng cơ cấu tổ chức ảng 1.1. Bảng cơ cấu tổ chức đặc tả dữ liệu bài hát ảng 1.1. Bảng cơ cấu tổ chức ữa thực thể ệc t d li u bình lu nận ...44

B ng 2.17. B ng ảng 1.1. Bảng cơ cấu tổ chức ảng 1.1. Bảng cơ cấu tổ chức đặc tả dữ liệu bài hát ảng 1.1. Bảng cơ cấu tổ chức ữa thực thể ệc t d li u người dùngi dùng...44

B ng 2.18. B ng ảng 1.1. Bảng cơ cấu tổ chức ảng 1.1. Bảng cơ cấu tổ chức đặc tả dữ liệu bài hát ảng 1.1. Bảng cơ cấu tổ chức ữa thực thể ệc t d li u ngh s ngệ ĩ ười dùngi dùng...44

B ng 2.19. B ng ảng 1.1. Bảng cơ cấu tổ chức ảng 1.1. Bảng cơ cấu tổ chức đặc tả dữ liệu bài hát ảng 1.1. Bảng cơ cấu tổ chức ữa thực thể ệc t d li u thích bình lu nận ...45

B ng 2.20. B ng ảng 1.1. Bảng cơ cấu tổ chức ảng 1.1. Bảng cơ cấu tổ chức đặc tả dữ liệu bài hát ảng 1.1. Bảng cơ cấu tổ chức ữa thực thể ệc t d li u b i yêu thíchà quy tắc quản lý ...45

B ng 2.21. B ng ảng 1.1. Bảng cơ cấu tổ chức ảng 1.1. Bảng cơ cấu tổ chức đặc tả dữ liệu bài hát ảng 1.1. Bảng cơ cấu tổ chức ữa thực thể ệc t d li u chi ti t playlistết thực thể ...45

B ng 2.22. B ng ảng 1.1. Bảng cơ cấu tổ chức ảng 1.1. Bảng cơ cấu tổ chức đặc tả dữ liệu bài hát ảng 1.1. Bảng cơ cấu tổ chức ữa thực thể ệc t d li u ngh s tham giaệ ĩ ...45

B ng 2.23. B ng ảng 1.1. Bảng cơ cấu tổ chức ảng 1.1. Bảng cơ cấu tổ chức đặc tả dữ liệu bài hát ảng 1.1. Bảng cơ cấu tổ chức ữa thực thể ệc t d li u chi ti t th tìm ki mết thực thể ẻ tìm kiếm ết thực thể ...46

B ng 2.24. B ng ảng 1.1. Bảng cơ cấu tổ chức ảng 1.1. Bảng cơ cấu tổ chức đặc tả dữ liệu bài hát ảng 1.1. Bảng cơ cấu tổ chức ữa thực thể ệc t d li u chi ti t album ngh sết thực thể ệ ĩ...46

B ng 2.25. B ng ảng 1.1. Bảng cơ cấu tổ chức ảng 1.1. Bảng cơ cấu tổ chức đặc tả dữ liệu bài hát ảng 1.1. Bảng cơ cấu tổ chức ữa thực thể ệc t d li u b i hát, albumà quy tắc quản lý ...46

B ng 3.1. Ti n trình h th ngảng 1.1. Bảng cơ cấu tổ chức ết thực thể ệ ối giữa thực thể ...47

B ng 3.2. B ng t ng h p kho d li u h th ngảng 1.1. Bảng cơ cấu tổ chức ảng 1.1. Bảng cơ cấu tổ chức ổ chức ợp khóa chính, khóa ngoại ữa thực thể ệ ệ ối giữa thực thể ...48

B ng 3.3. B ng quy n h n d li uảng 1.1. Bảng cơ cấu tổ chức ảng 1.1. Bảng cơ cấu tổ chức ền hạn dữ liệu ại ữa thực thể ệ ...51

B ng 3.4. B ng quy n h n ti n trìnhảng 1.1. Bảng cơ cấu tổ chức ảng 1.1. Bảng cơ cấu tổ chức ền hạn dữ liệu ại ết thực thể ...52

<b>DANH MỤC HÌNH ẢNH</b> Hình 1.1. Mơ hình ti n trình nghi p vết thực thể ệ ụ...8

Hình 1.2. Quy trình đăngng ký người dùngi dùng...10

Hình 1.3. Quy trình t o playlist cá nhânại ...11

</div><span class="text_page_counter">Trang 10</span><div class="page_container" data-page="10">

Hình 1.4. Quy trình b sung nh cổ chức ại ...12

Hình 1.5. Quy trình ki m duy t bình lu nểu liên kết thực thể ệ ận ...13

Hình 1.6. Quy trình phát nh cại ...14

Hình 2.1. Bi u ểu liên kết thực thể đồ phân cấp chức năng phân c p ch c n ngấu tổ chức ức ăng ...17

Hình 2.2. S ơng 1: đồ phân cấp chức năng DFD m c khung c nhức ảng 1.1. Bảng cơ cấu tổ chức ...19

Hình 2.3. S ơng 1: đồ phân cấp chức năng DFD m c nhức đỉnh ...20

Hình 2.4. S ơng 1: đồ phân cấp chức năng DFD m c dức ưới đỉnh chức năng quản lý nhạc đỉnhi nh ch c n ng qu n lý nh cức ăng ảng 1.1. Bảng cơ cấu tổ chức ại ...21

Hình 2.5. S ơng 1: đồ phân cấp chức năng DFD m c dức ưới đỉnh chức năng quản lý nhạc đỉnhi nh ch c n ng qu n lý ngức ăng ảng 1.1. Bảng cơ cấu tổ chức ười dùngi dùng...21

Hình 2.6. Mơ hình th c th liên k tực thể ểu liên kết thực thể ết thực thể ...28

Hình 2.7. Mơ hình ERD kinh i nđ ểu liên kết thực thể ...30

Hình 2.8. Mơ hình ERD h n chại ết thực thể...38

Hình 2.9. Mơ hình quan hệ...40

Hình 4.1. Giao di n trang chệ ủ...69

Hình 4.2. Giao di n trang cá nhânệ ...70

Hình 4.3. Hình nh giao di n b ng x p h ngảng 1.1. Bảng cơ cấu tổ chức ệ ảng 1.1. Bảng cơ cấu tổ chức ết thực thể ại ...71

Hình 4.4. Giao di n trang ngh s v nh sáng tácệ ệ ĩ à quy tắc quản lý à quy tắc quản lý ...71

Hình 4.4. Giao di n chi ti t trang ngh sệ ết thực thể ệ ĩ...71

Hình 4.5. Giao di n tìm ki m nh c b ng AIệ ết thực thể ại ằng AI ...72

Hình 4.6. Giao di n trang t o playlist b ng AIệ ại ằng AI ...73

Hình 4.7. Giao di n trang ệ đăngng nh pận ...74

Hình 4.8. Giao di n trang ệ đăngng kí...74

Hình 4.9. Giao di n trang thơng tin ngệ ười dùngi dùng...74

Hình 4.10. Giao di n chi ti t b i hátệ ết thực thể à quy tắc quản lý ...75

Hình 4.11. Giao di n trang k t qu tìm ki mệ ết thực thể ảng 1.1. Bảng cơ cấu tổ chức ết thực thể ...76

Hình 4.12. Giao di n trang qu n trệ ảng 1.1. Bảng cơ cấu tổ chức ịnh kiểu liên kết thực thể...77

Hình 4.13. Giao di n trang qu n lý ngệ ảng 1.1. Bảng cơ cấu tổ chức ười dùngi dùng...77

Hình 4.14. Giao di n trang qu n lý b i hátệ ảng 1.1. Bảng cơ cấu tổ chức à quy tắc quản lý ...78

Hình 4.15. Giao di n trang thêm b i hátệ à quy tắc quản lý ...78

Hình 4.16. Giao di n trang qu n lý ngh sệ ảng 1.1. Bảng cơ cấu tổ chức ệ ĩ...79

Hình 4.17. Giao di n trang thêm ngh s m iệ ệ ĩ ới đỉnh chức năng quản lý nhạc ...79

Hình 4.18. Giao di n trang qu n lý albumệ ảng 1.1. Bảng cơ cấu tổ chức ...80

Hình 4.19. Giao di n trang thêm albumệ ...80

Hình 4.20. Giao di n trang qu n lý nh sáng tácệ ảng 1.1. Bảng cơ cấu tổ chức à quy tắc quản lý ...81

Hình 4.21. Giao di n trang thêm nh sáng tácệ à quy tắc quản lý ...81

Hình 4.22. Giao di n qu n lý th lo i nh cệ ảng 1.1. Bảng cơ cấu tổ chức ểu liên kết thực thể ại ại ...82

Hình 4.23. Giao di n thêm th lo i nh cệ ểu liên kết thực thể ại ại ...82

</div><span class="text_page_counter">Trang 11</span><div class="page_container" data-page="11">

AI Artificial Intelligence Trí tuệ nhân tạo

ERD Entity-Relationship Diagram Mơ hình quan hệ thực thể QT Quá trình

DFD Data Flow Diagram Sơ đồ luồng dữ liệu CT Chi tiết

PK Primary Key Khóa chính của bảng FK Foreign Key Khóa ngoại của bảng API <sup>Application Programming </sup>

Interface <sup>Giao diện lập trình ứng dụng</sup> JDBC Java Database Connectivity <sup>Là một API truy cập dữ liệu tới </sup><sub>hệ quản trị cơ sở dữ liệu</sub> HTTP Hypertext Transfer Protocol Giao thức truyền tải siêu văn bản HTML Hypertext Markup Language Ngôn ngữ đánh dấu siêu văn bản CSS Cascading Style Sheets <sup>Bảng kiểu được áp dụng theo cấp </sup>

JSX JavaScript XML <sup>Thư viện cho phép tích hợp </sup> javascript và html

XML eXtensible Markup Language Ngôn ngữ đánh dấu mở rộng UI User Interface Giao diện người dùng

</div><span class="text_page_counter">Trang 12</span><div class="page_container" data-page="12">

<b>MỞ ĐẦU1. Lý do chọn đề tài</b>

Trong thời đại số hóa và cơng nghệ thơng tin ngày nay, người dùng có thể dễ dàng truy cập đến hàng triệu bản nhạc từ khắp nơi trên thế giới chỉ bằng một cú click chuột. Tuy nhiên, việc tìm kiếm và phân loại các bản nhạc để tìm ra những bản u thích có thể trở nên phức tạp và tốn thời gian. Với sự phát triển của trí tuệ nhân tạo (AI), ứng dụng nghe nhạc trực tuyến kết hợp tiện ích AI đã được tạo ra để cải thiện trải nghiệm nghe nhạc của người dùng.

Ứng dụng hướng tới việc đáp ứng nhu cầu giải trí và chia sẻ về lĩnh vực âm nhạc, cung cấp nhiều thể loại nhạc với số lượng bài hát phong phú. Người dùng có thể nghe nhạc hồn tồn miễn phí, tìm kiếm bất kỳ một nghệ sĩ nào, hoặc thể loại nhạc nào yêu thích phù hợp với tâm trạng của bản thân để đem đến trải nghiệm tốt hơn trong từng phút giây thư giãn. Ở mỗi bài hát, người dùng được phép chia sẻ cảm nhận, đánh giá của bản thân về bài hát yêu thích của họ. Ứng dụng liên tục cập nhật thông tin về các bài hát mới, từng ngày đều có xếp hạng các bài hát được nghe nhiều nhất, và đề xuất cho người nghe. Cùng với một số tiện ích AI được tích hợp như tìm kiếm bằng giọng nói, tạo playlist nhạc theo sở thích, tìm kiếm tên bài hát mà chưa biết tên, giao diện ứng dụng có bố cục rõ ràng, dễ tương tác và sử dụng. Ứng dụng cung cấp cho người dùng trải nghiệm đa dạng về các thể loại và nghe nhạc.

<b>2. Mục tiêu đề tài</b>

Đáp ứng nhu cầu nghe nhạc, đem đến trải nghiệm nghe nhạc tốt nhất và phù hợp nhất với sở thích nghe nhạc của người dùng.

Giúp người dùng tương tác và đánh giá bài hát mà họ yêu thích.

Hỗ trợ quản trị quản lý hệ thống nghe nhạc một cách tiện lợi, dễ dàng sử dụng.

Cung cấp tiện ích tìm kiếm nhạc sử dụng trí tuệ nhân tạo theo đoạn nhạc

</div><span class="text_page_counter">Trang 13</span><div class="page_container" data-page="13">

hát mong muốn chưa biết tên nhanh chóng.

Cung cấp tiện ích hệ thống gợi ý để tạo một danh sách nhạc phù hợp với sở thích nghe nhạc của người dùng.

<b>3. Đối tượng và phạm vi nghiên cứu</b>

Đối tượng là những người sử dụng internet có nhu cầu nghe nhạc trực tuyến miễn phí.

Phạm vi nghiên cứu bao gồm phát triển và triển khai một ứng dụng nghe nhạc trực tuyến có thêm một số tính năng hỗ trợ từ trí tuệ nhân tạo. Nghiên cứu này chủ yếu tập trung vào các tính năng của ứng dụng bao gồm:

 Nghiên cứu về cách sử dụng ứng dụng quản lý nhạc trực tuyến của người dùng, bao gồm các hành vi tìm kiếm, phát, tải và bình luận về bài hát, ...

 Nghiên cứu về nhu cầu và sở thích âm nhạc của người dùng, bao gồm các thể loại, nghệ sĩ.

 Nghiên cứu về các công nghệ và ứng dụng của trí tuệ nhân tạo được sử dụng trong quản lý nhạc trực tuyến.

<b>4. Ý nghĩa khoa học, thực tiến và kết quả mong muốn của đề tài</b>

 Ý nghĩa khoa học thực tiễn:

 Trong lĩnh vực công nghệ thông tin, đề tài này đem lại cơ hội để phát triển các ứng dụng quản lý nhạc trực tuyến mới, đáp ứng được nhu cầu của người dùng và cải thiện được trải nghiệm nghe nhạc của họ. Điều này có thể giúp tăng cường sức cạnh tranh cho các doanh nghiệp âm nhạc và thúc đẩy sự phát triển của ngành công nghiệp âm nhạc trực tuyến.

 Trong lĩnh vực khoa học máy tính, đề tài này cung cấp cơ hội để phát triển các mô hình học máy và các mơ hình xử lý ngơn ngữ tự

</div><span class="text_page_counter">Trang 14</span><div class="page_container" data-page="14">

nhiên và xử lý hình ảnh mới nhằm cải thiện hiệu suất và độ chính xác của ứng dụng quản lý nhạc trực tuyến kết hợp tiện ích AI. Điều này có thể mở ra những tiềm năng mới cho việc ứng dụng các công nghệ AI vào các lĩnh vực khác, giúp cho công nghệ tiến bộ và phát triển hơn.

 Trong lĩnh vực khoa học dữ liệu, đề tài này đem lại cơ hội để thu thập và phân tích các dữ liệu về sở thích và nhu cầu nghe nhạc của người dùng, qua đó giúp tìm ra các xu hướng và thị hiếu của người dùng để cung cấp các bài nhạc mới và tối ưu hóa trải nghiệm người dùng. Điều này có thể giúp các doanh nghiệp âm nhạc hiểu rõ hơn về nhu cầu của khách hàng và đưa ra các bài hát phù hợp nhất.

<b>Chương 1</b>

<b>KHẢO SÁT HỆ THỐNG</b>

</div><span class="text_page_counter">Trang 15</span><div class="page_container" data-page="15">

<b>1.1.1. Chức năng của hệ thống</b>

- Cập nhật và bổ sung thông tin bài hát, nghệ sĩ, album cho người dùng - Cung cấp nền tảng tìm kiếm và nghe nhạc miễn phí cho người dùng - Thống kê và báo cáo số lượng người nghe nhạc.

- Xếp hạng bài hát theo lượt nghe và đề xuất cho người dùng - Đề xuất bài hát theo sở thích của người dùng

<b>1.1.2. Cơ cấu tổ chức</b>

<i>Bảng 1.1. Bảng cơ cấu tổ chức</i>

1 Bộ phận quản lý nhạc

- Lập danh sách bài hát mới - Thêm, sửa, xóa bài hát mới - Thêm, sửa, xóa playlist

- Thêm, sửa, xóa nghệ sĩ, album - Phân loại bài hát theo thể loại - Tạo playlist theo sở thích - Thống kê lượt nghe

- Thống kê lượt truy cập

<b>1.1.3. Quy trình xử lý và quy tắc quản lý </b>

<i>Bảng 1.2. Bảng quy trình xử lý và quy tắc quản lý</i>

1 QT1 Quy trình đăng ký người dùng

</div><span class="text_page_counter">Trang 16</span><div class="page_container" data-page="16">

<b>● Quy trình đăng ký người dùng (QT1):</b>

○ Người dùng có nhu cầu sử dụng các dịch vụ của ứng dụng và muốn bình luận hoặc có playlist cá nhân cần phải đăng ký tài khoản

○ Hệ thống sẽ cung cấp mẫu biểu đăng ký cho người dùng

○ Người dùng điền đầy đủ thông tin và bộ phận quản lý người dùng sẽ xác thực thông tin người dùng hợp lệ và phân loại người dùng

○ Sau đó bộ phận quản lý người dùng thêm mới người dùng vào hệ thống và thông báo cho người dùng

○ Người dùng có thể đăng nhập để tiếp tục sử dụng dịch vụ nghe nhạc

<b>● Quy trình tạo playlist cá nhân (QT2):</b>

○ Người dùng có nhu cầu tạo cho mình 1 playlist nhạc theo sở thích sẽ đăng

○ Người dùng cũng có thể xóa playlist

○ Bộ phận quản lý nhạc sẽ thêm, sửa, xóa playlist trong hệ thống theo nhu cầu người dùng

<b>● Quy trình bổ sung nhạc (QT3):</b>

</div><span class="text_page_counter">Trang 17</span><div class="page_container" data-page="17">

bài hát vào hệ thống

○ Bộ phận quản lý nhạc tiến hành lập danh sách các bài hát mới

○ Dựa trên danh sách bài hát cần bổ sung, người quản trị sẽ thêm các bài hát mới vào hệ thống

○ Nếu bài hát mới nằm trong 1 album mới hoặc của nghệ sĩ mới thì bộ phận quản lý nhạc sẽ thêm thông tin của album và nghệ sĩ mới vào hệ thống

○ Sau khi có đầy đủ thơng tin bài hát thì bộ phận quản lý nhạc sẽ tiến hành phân loại bài hát theo thể loại nhạc

<b>● Quy trình kiểm duyệt bình luận (QT4):</b>

○ Người dùng có nhu cầu bình luận về một bài hát, nghệ sỹ hoặc tương tác người dùng khác mà có thể bình luận trên hệ thống

○ Bộ phận quản lý nhạc sẽ kiểm duyệt nội dung bình luận của người dùng ○ Nếu tìm thấy vi phạm nội dung bình luận khơng phù hợp, bộ phận quản lý

nhạc sẽ gửi nội dung kiểm duyệt đến bộ phận quản lý người dùng

○ Bộ phận quản lý người dùng sẽ quyết định xử phạt người dùng có nội dung bình luận vi phạm tiêu chuẩn cộng đồng

 <b>Quy trình phát nhạc (QT5):</b>

o Người dùng muốn nghe nhạc có thể tìm kiếm bài hát muốn nghe trên thanh tìm kiếm

o Thơng tin tìm kiếm là tên bài hát hoặc tên của nghệ sĩ

o Hệ thống dựa vào đó sẽ đưa ra các bài hát phù hợp nhất với người dùng o Người dùng chọn bài hát muốn nghe và hệ thống sẽ cung cấp bài hát vào

danh sách phát cho người dùng

o Khi nghe xong hệ thống sẽ thống kê lượt nghe của bài hát đó và thu thập sở thích của người dùng.

</div><span class="text_page_counter">Trang 18</span><div class="page_container" data-page="18">

<b>1.2. Mơ hình hóa hệ thống</b>

<b>1.2.1. Mơ hình tiến trình nghiệp vụ</b>

a) Giải thích ký hiệu

Dùng ký hiệu hình chữ nhật để mơ tả bộ phận của hệ thống, tên của chức năng ghi bên trong.

Ví dụ: Bộ phận quản lý người dùng

Dùng mũi tên chỉ hướng của luồng dữ liệu, tên luồng dữ liệu ghi trên mũi tên

Dùng ký hiệu hình elip để miêu tả tác nhân bên ngồi của hệ thống, tên tác nhân Ví dụ: Người dùng

b) Vẽ mơ hình tiến trình nghiệp vụ

</div><span class="text_page_counter">Trang 19</span><div class="page_container" data-page="19">

<i>Hình 1.1. Mơ hình tiến trình nghiệp vụ</i>

</div><span class="text_page_counter">Trang 20</span><div class="page_container" data-page="20">

Dùng hình trịn có chấm đen ở giữa cùng mũi tên chỉ từ trên xuống hình trịn để mơ tả điểm kết thúc

Dùng hình chữ nhật để mơ tả Cơng việc nghiệp vụ

Dùng hình thoi để mơ tả Điều kiện lựa chọn

Dùng hình thoi để mơ tả Kho dữ liệu

Dùng hình document để miêu tả Mẫu biểu

Dùng mũi tên liền để miêu tả Luồng công việc

Dùng mũi tên đứt đoạn để miêu tả Luồng dữ liệu

b) Vẽ sơ đồ hoạt động

 <b>Quy trình đăng ký người dùng (QT1)</b>

</div><span class="text_page_counter">Trang 21</span><div class="page_container" data-page="21">

<i>Hình 1.2. Quy trình đăng ký người dùng</i>

 <b>Quy trình tạo playlist cá nhân (QT2):</b>

</div><span class="text_page_counter">Trang 22</span><div class="page_container" data-page="22">

<i>Hình 1.3. Quy trình tạo playlist cá nhân</i>

 <b>Quy trình bổ sung nhạc (QT3):</b>

</div><span class="text_page_counter">Trang 23</span><div class="page_container" data-page="23">

<i>Hình 1.4. Quy trình bổ sung nhạc</i>

 <b>Quy trình kiểm duyệt bình luận (QT4)</b>

</div><span class="text_page_counter">Trang 24</span><div class="page_container" data-page="24">

<i>Hình 1.5. Quy trình kiểm duyệt bình luận</i>

 <b>Quy trình phát nhạc (QT5):</b>

</div><span class="text_page_counter">Trang 25</span><div class="page_container" data-page="25">

<i>Hình 1.6. Quy trình phát nhạc</i>

<b>Chương 2</b>

</div><span class="text_page_counter">Trang 26</span><div class="page_container" data-page="26">

<b>PHÂN TÍCH HỆ THỐNG2.1. Phân tích chức năng nghiệp vụ</b>

<b>2.1.1. Mơ hình hóa chức năng nghiệp vụ</b>

 <b>Xác đinh chức năng chi tiết- Tìm kiếm bài hát</b>

<b>- Đăng ký</b>

<b>- Cung cấp mẫu biểu đăng kí- Xác thực thơng tin đăng kí- Phân loại người dùng- Thống kê lượt nghe</b>

<b>- Taọ playlist cá nhân theo sở thích</b>

3.Cung cấp mẫu biểu đăng kí 4.Xác thực thơng tin đăng kí 5.Phân loại người dùng

</div><span class="text_page_counter">Trang 27</span><div class="page_container" data-page="27">

14.Tạo playlist cá nhân theo sở thích

 <b>Sơ đồ phân rã chức năng:</b>

o Giải thích ký hiệu

 Chức năng ( cơng việc tổ chức cần làm )

 Phân cấp ( mỗi chức năng phân ra nhiều chức năng con )

 Sơ đồ phân rã chức năng:

</div><span class="text_page_counter">Trang 28</span><div class="page_container" data-page="28">

<i>Hình 2.1. Biểu đồ phân cấp chức năng</i>

<b>2.1.2. Mơ hình hóa tiến trình nghiệp vụ</b>

 <b>Kí hiệu sử dụng:</b>

<b>- Tiến trình: Là một hoạt động có liên quan đến sự biến đổi hoặc tác động</b>

của thơng tin được biểu diễn bằng hình oval, bên trong có tên của chức năng đó

</div><span class="text_page_counter">Trang 29</span><div class="page_container" data-page="29">

<b>- Luồng dữ liệu: Luồng thông tin vào hoặc ra khỏi tiến trình, được biểu</b>

diễn bằng mũi tên có ghi thông tin di chuyển

<b>- Kho dữ liệu: Biểu diễn thông tin cần cất giữ, tên kho chỉ dữ liệu trong kho</b>

<b>- Tác nhân ngồi: là nhóm hoặc người nằm ngồi hệ thống nhưng có tác</b>

động lên hệ thống. Biểu diễn là hình chữ nhật

</div><span class="text_page_counter">Trang 30</span><div class="page_container" data-page="30">

<b>- Tác nhân trong: là 1 tiến trình của hệ thống đang xét nhưng được trình</b>

bày ở một trang khác của biểu đồ.

 <b>Sơ đồ luồng dữ liệu (DFD) mức khung cảnh</b>

<i>Hình 2.2. Sơ đồ DFD mức khung cảnh</i>

</div><span class="text_page_counter">Trang 32</span><div class="page_container" data-page="32">

 <b>DFD mức 2 tiến trình “Quản lý người dùng”</b>

<i>Hình 2.5. Sơ đồ DFD mức dưới đỉnh chức năng quản lý người dùng</i>

<b>2.1.3. Đặc tả tiến trình nghiệp vụ:</b>

 Tìm kiếm bài hát

<b>- Đầu vào: có thể là giọng nói hoặc văn bản- Đầu ra: danh sách bài hát phù hợp</b>

<b>- Nội dung xử lý:</b>

+, Lặp:

Kiểm tra xem nội dung tìm kiếm bao gồm bài hát và nghệ sĩ nào  Đến khi có bài hát hoặc nghệ sĩ phù hợp nhất

 Đưa bài hát và nghệ sĩ đó vào danh sách và hiện thị cho người dùng  Đăng ký

<b>- Đầu vào: thông tin người dùng- Đầu ra: tài khoản đăng nhập</b>

</div><span class="text_page_counter">Trang 33</span><div class="page_container" data-page="33">

+, Lặp:

Lấy thông tin khách hàng  Đến khi đầy đủ thông tin

 Kiểm tra tài khoản có thể đã tồn tại chưa

 Xác thực thông tin đăng ký, lưu thông tin và thông báo cho người dùng  Cung cấp mẫu biểu đăng ký

<b>- Đầu vào: thông tin người dùng- Đầu ra: mẫu biểu đăng ký- Nội dung xử lý:</b>

+, Lặp:

Cung cấp mẫu biểu mỗi khi người dùng tiến hành đăng ký  Phân loại người dùng

<b>- Đầu vào: tài khoản đăng ký- Đầu ra: chức vụ người dùng</b>

<b>- Nội dung xử lý: Người quản trị sẽ là người quyết định phân quyền. Người</b>

quản trị nếu cần thêm nhân lực để quản lý hệ thống có thể thêm các tài khoản là ADMIN, cịn lại đều là người dùng bình thường

 Đăng nhập

<b>- Đầu vào: tên tài khoản và mật khẩu- Đầu ra: đăng nhập thành công- Nội dung xử lý:</b>

+, Lặp:

Kiểm tra tên tài khoản trong database:

 Đến khi: có tài khoản khớp thì kiểm tra mật khẩu đã chính xác chưa  Thống kê lượt truy cập

<b>- Đầu vào: mã tài khoản</b>

<b>- Đầu ra: lượt truy cập vào hệ thống- Nội dung xử lý:</b>

</div><span class="text_page_counter">Trang 34</span><div class="page_container" data-page="34">

+, Lặp:

Người dùng truy cập vào hệ thống để nghe nhạc thì tăng lượt truy cập  Đến khi: người dùng tắt ứng dụng thì giảm lượt truy cập

 Thu thập sở thích nghe nhạc

<b>- Đầu vào: tìm kiếm bài hát, bài hát yêu thích- Đầu ra: thể loại nhạc, nghệ sĩ yêu thích</b>

<b>- Nội dung xử lý: Người dùng tìm kiếm bài hát, nghe và u thích bài hát</b>

nào đó thì các thể loại bài hát, nghệ sĩ yêu thích sẽ được thu thập  Xử phạt người dùng

<b>- Đầu vào: người dung vi phạm</b>

<b>- Đầu ra: quyết định khóa tài khoản và thơng báo</b>

<b>- Nội dung xử lý: Khi người dùng có những bình luận vi phạm tiêu chuẩn</b>

cộng đồng sẽ bị cảnh cáo khóa tài khoản. Nếu người dùng vẫn tiếp tục sẽ được gửi thơng tin đó về quản trị viên. Quản trị sẽ là ngời quyết định khóa tài khoản.

 Kiểm duyệt bình luận

<b>- Đầu vào: bình luận của người dùng</b>

<b>- Đầu ra: bình luận đã được loại bỏ các từ phản cảm- Nội dung xử lý:</b>

+, Lặp:

Người dùng bình luận thì hệ thống sẽ lọc qua nội dung:

 Đến khi: phát hiện các từ ngữ phản cảm thì sẽ ẩn đi từ đấy  Thông báo đến người dùng về vi phạm

 Cập nhật bài hát, nghệ sĩ mới

<b>- Đầu vào: thông tin bài hát mới- Đầu ra: bài hát mới</b>

<b>- Nội dung xử lý:</b>

+, Lặp:

Lấy thông tin bài hát mới vừa mới cập nhật

</div><span class="text_page_counter">Trang 35</span><div class="page_container" data-page="35">

 Tìm nghệ sĩ của bài hát đã tồn tại chưa, nếu chưa thì thêm mới nghệ sĩ vào hệ thống

 Cung cấp và phát bài hát

<b>- Đầu vào: mã bài hát- Đầu ra: bài hát- Nội dung xử lý:</b>

+, Lặp:

Tìm kiếm bài hát có mã tương ứng

 Đến khi có bài hát khớp với mã trên  Phát bài hát cho người dùng

 Thống kê lượt nghe

<b>- Đầu vào: mã bài hát- Đầu ra: lượt nghe bài hát- Nội dung xử lý:</b>

+, Lặp: thống kê lượt nghe của bài hát

 Đến khi: bài hát được phát 80% thì sẽ tăng lượt nghe bài hát lên  Tạo playlist cá nhân theo sở thích

<b>- Đầu vào: mã người dùng- Đầu ra: playlist cá nhân</b>

</div><span class="text_page_counter">Trang 36</span><div class="page_container" data-page="36">

<b>2.2. Phân tích dữ liệu nghiệp vụ</b>

<b>2.2.1. Mơ hình hóa dữ liệu ban đầu</b>

<b>- Bài hát(Mã bài hát, Tiêu đề, Độ dài, Trạng thái, Ảnh nền, Đường dẫn,</b>

Thẻ tìm kiếm, Số lượt nghe, Số lượt thích, Thể loại)

<b>- Bình luận(Mã bình luận, Nội dung, Người tạo, Thời gian tạo)</b>

<b>- Nghệ sĩ(Mã nghệ sĩ, Tên nghệ sĩ, Tuổi, Giới tính, Ảnh nền, Lượt theo dõi)- Nhà sáng tác(Mã nhà sáng tác, Tên nhà sáng tác, tuổi, ảnh nền, Lượt theo</b>

<b>- Album(Mã album, Miêu tả, Ảnh nền)</b>

<b>- Người dùng(Mã người dùng, Tên người dùng, Mật khẩu, Email, Ảnh</b>

nền, Giới tính, Chức vụ, Bài hát yêu thích)

<b>- Playlist(Mã playlist, Tên, Trạng thái)</b>

</div><span class="text_page_counter">Trang 37</span><div class="page_container" data-page="37">

NGƯỜI DÙNG n-n Có CHỨC VỤ

</div><span class="text_page_counter">Trang 38</span><div class="page_container" data-page="38">

<b>2.2.2. Chuẩn hóa dữ liệu</b>

a) Chuyển từ ERD mở rộng về ERD kinh điển

 Khử đa trị:

</div><span class="text_page_counter">Trang 39</span><div class="page_container" data-page="39">

 Xác định khóa chính cho kiểu thực thể:

11 BÀI HÁT U THÍCH Mã bài hát u thích  Mơ hình ERD kinh điển:

</div><span class="text_page_counter">Trang 40</span><div class="page_container" data-page="40">

<i>Hình 2.7. Mơ hình ERD kinh điển</i>

b) Chuyển đổi ERD kinh điển về ERD hạn chế

Các bước chuyển từ ERD kinh điển về ERD hạn chế:  Xử lý kiểu liên kết 1-1: không có

 Xử lý liên kết 2 ngơi nhiều-nhiều:

</div>

×