1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Mạng xã hội chia sẻ sách book net

155 4 0

Đ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

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN KHOA CÔNG NGHỆ PHẦN MỀM -🙚🙘🕮🙚🙘 BÁO CÁO TỔNG HỢP ĐỒ ÁN MÔN HỌC Đồ án Đồ án: Mạng xã hội chia sẻ Sách - Book Net Giảng viên hướng dẫn: ThS Thái Thụy Hàn Uyển Sinh viên thực hiện: 19521515 - Võ Đức Trung Hiếu 19520205 - Nguyễn Yến Nhi Tp.HCM, tháng 01 năm 2022 LỜI CẢM ƠN Lời em xin chân thành cảm ơn hướng dẫn tận tình Thái Thị Hàn Uyển - giảng viên hướng dẫn Đồ án hỗ trợ thông tin cần thiết giải đáp thắc mắc cho nhóm suốt q trình thực đề tài Đồng thời nhóm em muốn gửi lời cảm ơn đến anh chị khóa trên, đặc biệt anh chị khoa chia sẻ kinh nghiệm quý báu môn học kiến thức liên quan Vì kiến thức chúng em cịn hạn hẹp nên khơng thể tránh khỏi thiếu sót quá trình thực đồ án Vì nhóm chúng em ln mong đợi nhận ý kiến đóng góp quý báu từ phía giảng viên để qua đó có thể rút kinh nghiệm, tự sửa chữa, hồn thiện thân tinh thần nghiêm túc, tự giác học hỏi Một lần nhóm chúng em xin chân thành cảm ơn Nhóm nghiên cứu NHẬN XÉT ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………………… ……………………………………………………………………………………… Lịch sử thay đổi Phiên Người thực Thời gian Nội dung 0.0.1 Võ Đức Trung Hiếu 20/1/2022 - Tạo tài liệu 11:00 0.0.2 Nguyễn Yến Nhi 22/1/2022 15:30 - Cập nhật mục 1, 2, Use case, cập nhật hoàn thiện Báo cáo Danh mục từ viết tắt # Từ viết tắt Từ đầy đủ Ý nghĩa Use case Sơ đồ Use - Case Là đặc tả chức mà người dùng tương tác với phần mềm CSDL Cơ sở liệu Actor Người sử dụng hệ thống KH Khách hàng MỤC LỤC Lịch sử thay đổi Danh mục từ viết tắt Giới thiệu dự án Mô tả dự án Tôn dự án Bản tuyên bố dự án Mục đích dự án Các yêu cầu phải hoàn thành Yêu cầu Mục tiêu Kế hoạch phát hành Release 1.0 Release 2.0 Thời gian dự án 1 2 2 3 Phát biểu toán Khảo sát trạng Hiện trạng nghiệp vụ Hiện trạng tin học Khảo sát số ứng dụng có Đối tượng hướng đến Xác định yêu cầu hệ thống Danh sách yêu cầu nghiệp vụ Các yêu cầu chất lượng Các yêu cầu hệ thống Các yêu cầu công nghệ SƠ ĐỒ LUỒNG DỮ LIỆU CHO TỪNG YÊU CẦU Tạo viết Tạo bình luận Tương tác Danh hiệu Phát nhạc Câu lạc 5 5 7 8 10 11 12 12 16 22 24 26 28 Theo dõi người dùng Tìm kiếm Quản lí tài khoản Phân tích Tác nhân Use case Mô tả tác nhân Sơ đồ Use-Case Danh sách use case Yêu cầu chức Các Use-case chi tiết Đặc tả usecase Đặc tả Use-case “Đăng nhập” Đặc tả Use-case “Đăng ký” Đặc tả Use-case “Đăng xuất” Đặc tả Use-case “Quên mật khẩu” Đặc tả Use-case “Tải đọc sách” Đặc tả Use-case “Review sách” Đặc tả Use-case “Thích/Bỏ thích viết” Đặc tả Use-case “Xem danh sách người thích viết” Đặc tả Use-case “Bình luận viết” Đặc tả Use-case “Theo dõi” Đặc tả Use-case “Phát nhạc” Đặc tả Use-case “Chọn danh hiệu” Đặc tả Use-case “Cửa hàng” Đặc tả Use-case “Chỉnh sửa thông tin” Đặc tả Use-case “Tham gia Câu lạc bộ” Đặc tả Use-case “Tạo viết” Đặc tả Use-case “Tìm kiếm” Sơ đồ hoạt động Đăng nhập Đăng ký Quên mật Cập nhật thông tin Review sách Phát nhạc 30 32 38 44 44 44 45 46 48 48 48 48 49 50 52 53 54 55 56 57 59 60 61 63 64 65 67 68 70 70 71 72 73 74 75 Chọn danh hiệu Đổi điểm thưởng Bình luận Trả lời bình luận Đăng Theo dõi người dùng Tham gia câu lạc Rời câu lạc 76 77 78 79 80 81 82 83 Thiết kế liệu Sơ đồ ERD Thuộc tính chi tiết Bảng User Bảng Guild Bảng News Bảng NewsType Bảng PostNews Bảng GuildNews Bảng ReviewNews Bảng Review Bảng Status Bảng UseBook Bảng BookShelf Bảng AchievementTittle Bảng AchievementSound Bảng Book 84 84 84 84 85 85 86 86 86 87 87 87 87 88 88 88 88 Thiết kế kiến trúc Mơ hình Client-Server Mơ hình MVVM Ngun lý hoạt động 90 90 90 90 Thiết kế giao diện Danh sách hình Chi tiết hình Màn hình Splash Giao diện 91 91 94 94 94 Mô tả Màn hình Welcome Giao diện Mơ tả Màn hình đăng ký Giao diện Mô tả Danh sách biến cố xử lý tương ứng hình Màn hình đăng nhập Màn hình Authentication Code Mơ tả Danh sách biến cố xử lý tương ứng hình Màn hình Choose Book Type Giao diện Mơ tả Danh sách biến cố xử lý tương ứng hình Màn hình đăng nhập Giao diện Mơ tả Danh sách biến cố xử lý tương ứng hình Màn hình Chúc mừng Giao diện Mơ tả Màn hình đăng nhập Giao diện Mơ tả Màn hình Create Post Giao diện Mô tả Danh sách biến cố xử lý tương ứng hình Màn hình Guild Giao diện Mơ tả Màn hình Guild Detail Giao diện Mơ tả 95 96 96 97 98 98 99 100 101 101 102 102 104 104 104 105 106 106 107 107 108 108 108 110 110 110 113 113 113 114 114 114 116 116 117 117 Màn hình Guild Detail Joined Giao diện Mơ tả Màn hình Book Giao diện Mơ tả Màn hình Achievement Giao diện Mơ tả Màn hình Personal Achievement Giao diện Mơ tả Màn hình Shop Giao diện Mô tả Danh sách biến cố xử lý tương ứng hình Màn hình đăng nhập Giao diện Mơ tả Màn hình EditProfile Giao diện Mô tả Danh sách biến cố xử lý tương ứng hình Màn hình đổi mật Giao diện Mô tả Danh sách biến cố xử lý tương ứng hình Quy trình phát triển Cơng cụ phát triển Cơng cụ lập trình Giới thiệu Visual Studio Code CI/CD CI gì? CD gì? Design 119 119 119 120 121 121 123 123 124 125 125 125 127 127 127 128 128 128 129 131 131 132 133 134 134 135 135 136 136 136 136 137 137 137 140 STT Tên Kiểu Chức Điều kiện gọi tagReadi ng ReadButton Button Chuyển Nhấn vào Button sang tag Read BooDetail Button Chuyển sang hình BookDet ail Nhấn vào Button 6.2.17 Màn hình EditProfile 6.2.17.1 Giao diện 6.2.17.2 STT Tên Mô tả Kiểu Chức Điều kiện gọi EmailInput TextField Ghi nhận Nhập vào Input email người dùng AliasInput TextField Ghi nhận Nhập vào Input bí danh người dùng NameInput TextField Ghi nhận Nhập vào Input Tên người dùng DateOfBirdInput TextField Ghi nhận Nhập vào Input ngày sinh người dùng GenderInput TextField Ghi nhận Nhập vào Input giới tính người dùng STT Tên Kiểu Chức Điều kiện gọi EditBookType Button Chuyển Nhấn vào Button sang hình chỉnh sửa Book Type 6.2.17.3 Danh sách biến cố xử lý tương ứng hình STT Biến cố Xử lý Một vùng nhập Thông báo lỗi yêu cầu nhập lại bị trống 6.2.18 Màn hình đổi mật 6.2.18.1 Giao diện 6.2.18.2 STT Tên Mô tả Kiểu Chức Điều kiện gọi CurrentPasswordI TextField Ghi nhận Nhập vào Input nput mật người dùng PasswordInput TextField Ghi nhận Nhập vào Input mật người dùng ConfirmPassword TextField Ghi nhận Nhập vào Input Input xác nhận mật người dùng ChangePassword Button Gửi yêu Nhấn vào Button Button cầu đăng ký 6.2.18.3 Danh sách biến cố xử lý tương ứng hình STT Biến cố Xử lý Một vùng nhập Thông báo lỗi yêu cầu nhập lại bị trống CurrentPasswordInput Thông báo mật sai yêu cầu không xác nhập lại PasswordInput khơng đủ Thơng báo mật khơng hợp lệ u kí tự, chứa kí tự đặc biệt cầu nhập lại ConfirmPasswordInput Thơng báo mật xác nhận không khớp nhập không khớp với yêu cầu nhập lại PasswordInput Quy trình phát triển 7.1 Cơng cụ phát triển 7.1.1 Cơng cụ lập trình 7.1.1.1 Giới thiệu Visual Studio Code Visual Studio Code (VS Code hay VSC) trình soạn thảo mã nguồn phổ biến sử dụng lập trình viên Nhanh, nhẹ, hỗ trợ đa tảng, nhiều tính mã nguồn mở ưu điểm vượt trội khiến VS Code ngày ứng dụng rộng rãi Là trình biên tập lập trình code miễn phí dành cho Windows, Linux macOS, Visual Studio Code phát triển Microsoft Nó xem kết hợp hoàn hảo IDE Code Editor Visual Studio Code hỗ trợ chức debug, kèm với Git, có syntax highlighting, tự hồn thành mã thơng minh, snippets, cải tiến mã nguồn Nhờ tính tùy chỉnh, Visual Studio Code cho phép người dùng thay đổi theme, phím tắt, tùy chọn khác Đối với dự án, VSCode cơng cụ tiện lợi hỗ trợ tốt framework NodeJS Flutter Điều giúp cho lập trình viên dự án không tốn nhiều công sức để học cách sử dụng nhiều IDE khác Gây lãng phí tài nguyên 7.1.2 CI/CD 7.1.2.1 CI gì? Continuous Integration hay CI phương pháp phát triển phần mềm Phương pháp đòi hỏi thành viên đội cần phải tích hợp cơng việc với cách thường xun, ngày cần lần tích hợp Mỗi lần tích hợp xây dựng cách tự động nhằm mục đích phát lỗi phát sinh cách nhanh Khi sử dụng CI giúp làm giảm vấn đề tích hợp cho phép developer phát triển phần mềm nhanh tiến độ hơn.Quy trình làm việc CI diễn sau: Các developer commit code (mã cam kết) lên repo (repository - kho) Tiếp theo, CI server thực giám sát repo kiểm tra xem có thay đổi repo hay không Khi xảy thay đổi, CI server phải code từ repo sau build, chạy unit test integration test Tiếp sau đó, CI server tạo phản hồi gửi đến cho thành viên dự án Và CI server lại tiếp tục chờ đợi thay đổi từ repo Mỗi lần mà Dev làm xong task mình, họ chạy local trước để kiểm tra trước commit code lên repo Đây công đoạn thường xuyên diễn thời điểm ngày Việc xây dựng tích hợp không xảy chúng không ảnh hưởng đến repo 7.1.2.2 CD gì? Nếu CI đảm nhận nhiệm vụ xây dựng kiểm tra cách tự động CD lại có nhiệm vụ cao chút CD viết tắt Continuous Delivery - chuyển giao liên tục Đây trình nâng cao chút kiểm tra tất thay đổi code build code môi trường kiểm thử CD cho phép lập trình viên tự động hóa phần mềm testing, kiểm tra phần mềm qua nhiều thước đo trước triển khai Những test bao gồm UI testing, integration testing, API testing, CD sử dụng Deployment Pipeline giúp chia quy trình chuyển giao thành giai đoạn Mỗi giai đoạn có mục tiêu riêng để xác minh chất lượng tính từ góc độ vơ khác để kiểm định chức tránh lỗi phát sinh ảnh hưởng đến người dùng 7.1.2.3 Kết luận Từ hai khái niệm ta hiểu cách đơn giản CI/CD trình làm việc liên tục tự động hóa phần mềm Để q trình kiểm thử diễn liên tục CI CD phải tích hợp vào vòng đời phát triển phần mềm Trong năm gần đây, CI CD trở thành thông lệ trình phát triển phần mềm, chìa khóa kết hợp khâu kiểm thử phát triển phần mềm lại với nhau.Ngoài ra, CI/CD trở thành thông lệ tốt ngành công nghệ thông tin để giữ cho ứng dụng triển khai lúc đẩy mã triển khai vào kho sản xuất có mã 7.1.2.3.1 Lợi ích ● Giảm thiểu rủi ro khơng đáng có Đây lợi ích vơ hữu ích CI/CD, cho phép làm giảm thiểu rủi ro nhờ việc phát sửa lỗi sớm, giúp tăng chất lượng sản phẩm nhờ khả tự động kiểm tra quan sát Không vậy, quy trình thủ cơng lặp lặp lại ngày giảm tải, thay vào xây dựng kiểm thử tự động mà không cần đến giúp đỡ người Một đặc điểm CI CD deploy, triển khai phần mềm địa điểm thời gian ● Thay đổi code nhỏ Một lợi ích vơ lớn CI/CD cho phép tích hợp nhiều loại mã nhỏ lúc Những thay đổi mã thực cách đơn giản xử lý nhanh so với đoạn mã khổng lồ, từ làm giảm khả sinh vấn đề liên quan đến việc thay đổi sau Những thay đổi mã nhỏ thực kiểm tra sau chúng tích hợp vào kho mã Các nhà phát triển dễ dàng nhận vấn đề trước lượng lớn cơng việc tăng lên cách chóng mặt Đây thực lợi nhóm phát triển lớn người làm việc từ xa giao tiếp hiệu ● Hạn chế ảnh hưởng lỗi hiệu CI/CD thiết kế với hệ thống cho có lỗi xảy kết tiêu cực bị giới hạn phạm vi ảnh hưởng định Việc hạn chế vấn đề giúp làm giảm khả hư hỏng từ làm cho hệ thống bảo trì xử lý cách dễ dàng hơn.Với hệ thống CI CD, đảm bảo cho việc cách ly lỗi phát cách nhanh chóng dễ dàng thực Chính vậy, hậu lỗi ứng dụng giới hạn phạm vi ảnh hưởng ● CI/CD DevOps mối quan hệ với Agile Agile, DevOps CI/CD có mối liên quan mật thiết với xây dựng phát triển phần mềm thực tế Các đội kỹ thuật bắt đầu công việc với CI DevOps giúp thành viên hiểu cấu hình phối hợp để xác định phần mềm nhằm tạo CD có giá trị Việc thực hành CI/CD DevOps vào Agile thúc đẩy toàn trình phát triển Nhìn chung, cách phân biệt Agile, DevOps CI/CD là: Agile tập trung vào quy trình, làm nổ bật thay đổi đẩy nhanh trình CD CI/CD tập trung vào cơng cụ làm bật vòng đời, nhấn mạnh đến tự động hóa DevOps tập trung vào việc bổ sung liên tục tài nguyên nhấn mạnh khả đáp ứng CI/CD trình làm việc liên tục tự động hóa Để q trình kiểm thử diễn liên tục cần tích hợp CI/CD vịng đời phát triển phần mềm CI/CD có mối quan hệ mật thiết với DevOps Agile nhằm tạo quy trình hồn chỉnh phát triển sản xuất phần mềm 7.1.3 Design 7.1.3.1 Giới thiệu Figma Figma công cụ thiết kế vector thử nghiệm sản phẩm website app Công cụ dựa tảng đám mây để người dùng cộng tác dự án làm việc đâu Mặc dù Figma có chức giống công cụ thiết kế khác, điểm khác biệt khả làm việc với nhóm dự án Đến nay, Figma có lẽ lựa chọn phù hợp có Những lợi ích Figma đem lại: ● Figma công cụ miễn phí ● Sử dụng tảng Windows MacOS (thay sketch dùng MacOS) ● Thiết kế thời gian thực: Mọi người team vẽ dự án lúc thấy thay đổi thiết kế cách nhanh ● Data lưu hệ thống máy chủ: Các file thiết kế figma tự động lưu lúc hệ thống máy chủ (khơng sợ qn lưu file) tải xuống để lưu lại local ● Có chế comment trực tiếp file thiết kế: Việc giúp nhận phản hồi ghi làm việc đội nhóm Nhược điểm lớn Figma: ● Phải có internet Figma hoạt động 7.1.4 Lưu trữ source code Github chọn làm công cụ lưu trữ source code cho Project 7.1.4.1 Github gì? GitHub dịch vụ lưu trữ web dành cho dự án có sử dụng hệ thống kiểm sốt Git revision Github có đầy đủ tính Git, ngồi cịn bổ sung tính social để developer tương tác với Vài thông tin GIT: ● Là công cụ giúp quản lý source code tổ chức theo dạng liệu phân tán ● Giúp đồng source code team lên server ● Hỗ trợ thao tác kiểm tra source code trình làm việc (diff, check modifications, show history, merge source, …) 7.1.5 Quản lý dự án 7.1.5.1 Ứng dụng notion 7.1.5.1.1 Định nghĩa Notion ứng dụng ghi chép giúp người dùng dễ dàng lên kế hoạch, ghi chú, lập thời gian biểu, Tất liệu lưu trữ vào không gian để bạn dễ dàng tìm kiếm lại cần 7.1.5.1.2 Cấu trúc Notion Cấu trúc xếp file ghi Notion đặc biệt Tương tự lưu trữ máy tính laptop, Notion cho phép bạn lưu trữ file thành nhiều tầng khác Trong thư mục lớn, bạn tạo nhiều thư mục nhỏ khác, thư mục bạn tạo thêm thư mục khác Với cấu trúc Notion, bạn dễ dàng quản lý ghi chép thuận tiện cho việc tìm kiếm 7.1.5.2 Lý sử dụng Notion để lập kế hoạch theo dõi công việc cho Project 7.1.5.2.1 Ưu điểm ● Miễn phí: Ưu điểm Notion hồn tồn miễn phí cho người dùng cá nhân Với tính vượt trội cộng với việc miễn phí việc sử dụng Notion hồn tồn hợp lý ● Giao diện đẹp mắt: Giao diện Notion đơn giản với tông màu đen trắng tổng thể ứng dụng đẹp mang lại cảm giác thoải mái cho người dùng ● Đồng nhanh chóng: Tính đồng điểm quan trọng để định sử dụng Notion Bất kể bạn sử dụng ứng dụng tảng Android, iOS Windows cần tài khoản tất liệu đồng bạn ghi chép xong Tổng kết đánh giá 8.1 Ưu điểm 8.1.1 Kết ● Nhóm thực 2/3 chức đặt kỳ đề tài ● Giao diện đơn giản, thân thiện, dễ sử dụng ● Github: https://github.com/TrungHieu-HCMUIT/book_net 8.1.2 Điểm đặc sắc đề tài ● Tạo điều kiện dễ dàng cho việc bảo trì, mở rộng tương lai 8.2 Khuyết điểm Bên cạnh kết đạt làm bài, đồ án mạng xã hội chia sẻ sách - Book net nhóm số hạn chế sau: ● Còn nhiều lỗi phía backend ● Chưa có phần tạo nhóm để người dùng tự chủ động việc sử dụng 8.3 Hướng phát triển Mạng xã hội chia sẻ sách có tính ứng dụng cao tương lai cịn có nhiều chức để đáp ứng nhu cầu quản lý Mạng xã hội Tuy nhiên hạn chế thời gian nghiên cứu kinh nghiệm, nhóm phát triển mức độ hồn thành yêu cầu đặt đề tài kỳ Trong tương lai, hướng phát triển dự án sau: ● Thêm chức gợi ý sách ● Thêm chức review trang sách ● Thêm tính tạo lịch trình, nhắc nhở đọc sách theo lộ trình ● Thêm tính ChatBot phục vụ việc tương tác gợi ý sách ● Cải thiện tốc độ xử lý lượng liệu lớn ... - - - Các chức sách (B) - Đọc tải sách - Review sách - Tương tác với sách - Tủ sách cá nhân - Điểm cá nhân - Danh hiệu Các chức mạng xã hội (SN) - Tương tác với đăng - Kết bạn - Nhắn tin - Trang... sách trở nên thuận lợi hơn, chúng em định tìm hiểu thực đồ án mạng xã hội chia sẻ đọc sách với nội dung sau: - Các chức xác thực tài khoản (A) - Đăng nhập - Đăng ký - Đăng xuất - Quên mật - -. .. Tên dự án: Mạng xã hội chia sẻ Sách - Book Net Thơng tin kinh phí: Cách tiếp cận: - Tìm hiểu, khảo sát quy trình đọc sách online người dùng - Tìm hiểu thể loại sách hành vi người dùng - Tìm hiểu

Ngày đăng: 17/08/2022, 21:29

Xem thêm:

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

TÀI LIỆU LIÊN QUAN

w