1. Trang chủ
  2. » Luận Văn - Báo Cáo

5951071106_Nguyễn Hữu Tin.pdf

59 2 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

Thông tin cơ bản

Định dạng
Số trang 59
Dung lượng 3,72 MB

Nội dung

TRƯỜNG ĐẠI HỌC GIAO THÔNG VẬN TẢI PHÂN HIỆU TẠI TP HỒ CHÍ MINH BỘ MÔN CÔNG NGHỆ THÔNG TIN BÁO CÁO ĐỒ ÁN TỐT NGHIỆP ĐỀ TÀI XÂY DỰNG HỆ THỐNG QUẢN LÝ CÁC KHÓA HỌC Giáo viên hướng dẫn ThS TRẦN PHONG NHÃ[.]

TRƯỜNG ĐẠI HỌC GIAO THÔNG VẬN TẢI PHÂN HIỆU TẠI TP HỒ CHÍ MINH BỘ MƠN CƠNG NGHỆ THƠNG TIN BÁO CÁO ĐỒ ÁN TỐT NGHIỆP ĐỀ TÀI: XÂY DỰNG HỆ THỐNG QUẢN LÝ CÁC KHÓA HỌC Giáo viên hướng dẫn: ThS TRẦN PHONG NHÃ Sinh viên thực hiện: NGUYỄN HỮU TIN Lớp: CƠNG NGHỆ THƠNG TIN Khóa: K59 TP Hồ Chí Minh, năm 2022 TRƯỜNG ĐẠI HỌC GIAO THƠNG VẬN TẢI PHÂN HIỆU TẠI TP HỒ CHÍ MINH BỘ MÔN CÔNG NGHỆ THÔNG TIN BÁO CÁO ĐỒ ÁN TỐT NGHIỆP ĐỀ TÀI: XÂY DỰNG HỆ THỐNG QUẢN LÝ CÁC KHÓA HỌC Giáo viên hướng dẫn: ThS TRẦN PHONG NHÃ Sinh viên thực hiện: NGUYỄN HỮU TIN Lớp: CÔNG NGHỆ THƠNG TIN Khóa: K59 TP Hồ Chí Minh, năm 2022 TRƯỜNG ĐẠI HỌC GIAO THÔNG VẬN TẢI PHÂN HIỆU TẠI THÀNH PHỐ HỒ CHÍ MINH CỘNG HỊA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập – Tự – Hạnh phúc NHIỆM VỤ THIẾT KẾ TỐT NGHIỆP BỘ MÔN: CÔNG NGHỆ THÔNG TIN -*** Mã sinh viên: 5951071106 Họ Tên: Nguyễn Hữu Tin Khóa: K59 Lớp: Công nghệ thông tin Tên đề tài: Xây dựng hệ thống quản lý khóa học Mục đích yêu cầu a) Mục đích Xây dựng hệ thống quản lý khóa học nhằm phục vụ cho việc học tập trực tuyến b) Yêu cầu ❖ Yêu cầu chức năng: Hệ thống gồm ba nhóm chính: admin, instructor, student - Admin: • Quản lý thống kê khóa học, instructor student • Phân quyền user • Quản lý tốn cho instructor - Instructor: • Tạo khóa học • Tạo test • Quản lý thống kê khóa học tạo • Quản lý đánh giá • Quản lý comment • Theo dõi mức độ hồn thành khóa học student - Student: • Xem thơng tin khóa học • Đăng ký, mua khóa học • Xem video, nội dung giảng làm test khóa học mua • Đánh giá, bình luận khóa học Nguyễn Hữu Tin – K59 i ❖ Yêu cầu phi chức • Tốc độ: Nhận truy cập nhanh, truy xuất liệu nhanh • Giao diện: Thân thiện với người sử dụng Nội dung đề tài - Tổng quan tốn - Khảo sát tốn - Phân tích thiết kế hệ thống - Lập trình xây dựng hệ thống quản lý khóa học lập trình trực tuyến - Kiểm thử chạy thực nghiệm Công nghệ, cơng cụ ngơn ngữ lập trình: API, C#, Angular/ Reactjs, NET Core, Entity Frame work, Microsoft SQL Server, Visual studio Các kết dự kiến đạt ứng dụng Xây dựng hệ thống quản lý khóa học với chức để phục vụ cho việc tự học lập trình Kế hoạch thực - Tuần 1-2: Thiết kế xây dựng sở liệu - Tuần 2-3-4: Xây dựng cấu trúc hệ thống API - Tuần 5-6-7: Thiết kế xây dựng giao diện người dùng - Các tuần cuối: Hoàn thiện chức năng, kiểm thử hệ thống Giáo viên cán hướng dẫn Họ tên: ThS TRẦN PHONG NHÃ Đơn vị công tác: Trường Đại học Giao thơng Vận tải Phân hiệu TP Hồ Chí Minh Điện thoại: 0906 761 014 Email: tpnha@utc2.edu.vn Ngày tháng năm 2021 Trưởng BM Công nghệ Thông tin Đã giao nhiệm vụ TKTN Giảng viên hướng dẫn Trần Phong Nhã Nguyễn Hữu Tin – K59 ii LỜI CẢM ƠN Lời nói đầu tiên, em xin kính gửi lời cảm ơn chân thành tới Quý thầy cô Bộ môn Công Nghệ Thông Tin, Ban Giám Hiệu Trường Đại học Giao thông Vận tải phân hiệu Thành phố Hồ Chí Minh, cho phép em thực đề tài tốt nghiệp: XÂY DỰNG HỆ THỐNG QUẢN LÝ CÁC KHĨA HỌC Trong q trình thực đề tài, em học hỏi tích lũy nhiều kiến thức kinh nghiệm q báu Bên cạnh đó, để hồn thành nhiệm vụ giao ngồi nỗ lực khơng ngừng thân cịn có hướng dẫn nhiệt tình từ thầy Trần Phong Nhã, em xin đặc biệt gửi lời cám ơn chân thành tới thầy giúp đỡ em trình thực đề tài Mặc dù cố gắng để hoàn thành đề tài, chắn khó tránh khỏi thiếu sót Em mong nhận đánh giá, góp ý Q thầy để em rút cho học, kinh nghiệm q báu Sau cùng, em khơng biết nói ngồi kính chúc Q thầy Bộ môn Công Nghệ Thông Tin thật dồi sức khỏe ngày gặt hái nhiều thành công sống nghiệp giảng dạy Em xin chân thành cảm ơn ! TP Hồ Chí Minh, ngày … tháng … năm 2022 Sinh viên thực Nguyễn Hữu Tin Nguyễn Hữu Tin – K59 iii NHẬN XÉT CỦA GIẢNG VIÊN HƯỚNG DẪN Tp Hồ Chí Minh, ngày ….… tháng ….… năm 2022 Giảng viên hướng dẫn Trần Phong Nhã Nguyễn Hữu Tin – K59 iv MỤC LỤC NHIỆM VỤ THIẾT KẾ TỐT NGHIỆP _ i LỜI CẢM ƠN iii NHẬN XÉT CỦA GIẢNG VIÊN HƯỚNG DẪN _ iv MỤC LỤC v BẢNG BIỂU, SƠ ĐỒ, HÌNH VẼ _ vii MỞ ĐẦU _ 1 Tổng quan đề tài _ Mô tả chi tiết đề tài Công cụ sử dụng Cấu trúc báo cáo đồ án tốt nghiệp 4.1 Mở đầu 4.2 Chương 1: Cơ sở lý thuyết _ 4.3 Chương 2: Phân tích thiết kế 4.4 Chương 3: Triển khai chương trình 4.5 Kết - Kiến nghị 2 2 2 CHƯƠNG CƠ SỞ LÝ THUYẾT _ 1.1 Tổng quan ngơn ngữ lập trình C# _ 1.2 Tổng quan SQL _ 1.3 Tìm hiểu Entity Framework 1.4 Tìm hiểu ASP.NET Core 1.5 Tìm hiểu Web API _ 1.6 Tìm hiểu Design pattern. 1.6.1 Repository _ 1.6.2 Unit of work _ 10 1.6.3 Dependency injection _ 10 1.7 Tìm hiểu HTML 12 1.7.1 Giới thiệu _ 12 1.7.2 Vai trò HTML _ 12 1.8 Tìm hiểu CSS 13 1.8.1 Giới thiệu CSS 13 1.8.2 Ưu điểm CSS 14 Nguyễn Hữu Tin – K59 v 1.9 Tìm hiểu Reactjs 14 CHƯƠNG PHÂN TÍCH VÀ THIẾT KẾ 16 2.1 Đặt vấn đề _ 16 2.2 Yêu cầu hệ thống 16 2.2.1 Yêu cầu chức 16 2.2.2 Mô tả hệ thống _ 17 2.3 Thiết kế hệ thống 2.3.1 Mơ hình thực thể kết hợp ERD 2.3.2 Sơ đồ phân rã chức _ 2.3.3 Sơ đồ UseCase tổng quát _ 2.3.4 Sơ đồ hoạt động 2.3.5 Database Diagram 19 19 20 20 21 25 CHƯƠNG TRIỂN KHAI CHƯƠNG TRÌNH 26 3.1 Vận hành hệ thống _ 26 3.2 Xây dựng giao diện 3.2.1 Logic giao diện đăng nhập 3.2.2 Logic phần Admin 3.2.3 Logic phần Instructor 3.2.4 Logic phần Student _ 26 26 27 36 43 KẾT QUẢ - KIẾN NGHỊ _ 48 Kết đạt 48 Hạn chế _ 48 Hướng phát triển 48 TÀI LIỆU THAM KHẢO _ 49 Nguyễn Hữu Tin – K59 vi BẢNG BIỂU, SƠ ĐỒ, HÌNH VẼ Hình Hình Hình Hình Hình Hình Hình Hình Hình Hình Hình Hình Hình Hình Hình Hình Hình Hình Hình Hình Hình Hình Hình Hình Hình Hình Hình Hình Hình Hình Hình Hình Hình Hình Hình Hình Hình Hình 1.1 Cấu trúc Entity Framework 1.2 Hoạt động Resful API 2.1 Mơ hình thực thể ERD - 19 2.2 Mơ hình phân rã chức 20 2.3 Mơ hình usecase tổng qt 20 2.4 Mơ hình hoạt động mua khóa học - 21 2.5 Mơ hình hoạt động thêm khóa học - 22 2.6 Mơ hình hoạt động đăng kí tài khoản giảng viên 23 2.7 Mô hình hoạt động phê duyệt khóa học - 24 2.8 Sơ đồ class - 25 3.1 Trang đăng nhập - 26 3.2 Trang đăng nhập thất bại 27 3.3 Giao diện admin - 27 3.4 Thống kê doanh thu 28 3.5 Thống kê khóa học 28 3.6 Giao diện thêm người dùng 29 3.7 Giao diện sửa thông tin user 29 3.8 Giao diện thêm language - 30 3.9 Giao diện sửa language - 30 3.10 Giao diện Category 31 3.11 Giao diện SubCategory - 31 3.12 Giao diện Student 32 3.13 Giao diện Block thành công - 32 3.14 Giao diện Instructor - 33 3.15 Giao diện thông tin chi tiết Instructor 33 3.16 Giao diện Payout - 34 3.17 Các lựa chọn khóa học - 34 3.18 Giao diện khóa học 35 3.19 Giao diện thơng tin chi tiết khóa học - 35 3.20 Giao diện trang Dashboard Instructor - 36 3.21 Các khóa học gửi - 36 3.22 Giao diện danh sách khóa học Instructor - 37 3.23 Giao diện tạo khóa học 37 3.24 Giao diện thêm background cho khóa học 38 3.25 Giao diện tạo nội dung khóa học 38 3.26 Upload video giảng lưu học - 39 3.27 Giao diện upload thành công 39 3.28 Giao diện trang Earning 41 Nguyễn Hữu Tin – K59 vii Hình Hình Hình Hình Hình Hình Hình Hình Hình 3.29 Giao diện trang Payout Instructor 41 3.30 Giao diện trang chủ 43 3.31 Giao diện trang thơng tin khóa học 43 3.32 Giao diện trang toán online 44 3.33 Các khóa học mua. 45 3.34 Video giảng - 45 3.35 Giao diện bình luận 46 3.36 Danh sách giảng viên - 47 3.37 Thông tin chi tiết cảu giảng viên 47 Nguyễn Hữu Tin – K59 viii Trong phần Waiting for Approve khóa học chờ phê duyệt Hình 3.18 Giao diện khóa học Admin xem thơng tin chi tiết khóa học để đưa định có phê duyệt cho khóa học hay khơng Hình 3.19 Giao diện thơng tin chi tiết khóa học Nguyễn Hữu Tin – K59 35 3.2.3 Logic phần Instructor Khi người dùng đăng nhập tài khoản giảng viên hệ thống hiển thị trang dành cho giảng viên Hình 3.20 Giao diện trang Dashboard Instructor Ở trang Dashboard có thơng số thống kê doanh thu, tổng khóa học, số lượng học viên đăng ký mua khóa học khóa học chờ dc phê duyệt từ admin Hình 3.21 Các khóa học gửi Nguyễn Hữu Tin – K59 36 Khi người dùng chọn nút Courses hệ thống hiển thị danh sách khóa học giảng viên Giảng viên Block Un-Block khóa học, xóa khóa học nháp khóa học chưa phê duyệt Hình 3.22 Giao diện danh sách khóa học Instructor Khi người dùng nhấn vào nút Create Course hệ thống hiển thị trang thêm khóa học, người dùng phải nhập thông tin cần thiết Title, SubTitle, Description, Language, SubCategory price hình ảnh bìa cho khóa học Hình 3.23 Giao diện tạo khóa học Nguyễn Hữu Tin – K59 37 Sau nhập đầy đủ thông tin cần thiết cho việc tạo khóa học bấm next chuyển quan hình tạo nội dung khóa học Hình 3.24 Giao diện thêm nội dung cho khóa học Tiếp theo người dùng tiến hành nhập tiêu đề cho chapter sau bấm vào nút create tiến hành tạo học cho chapter Hình 3.25 Giao diện tạo học cho chapter Nguyễn Hữu Tin – K59 38 Sau nhập đầy đủ thông tin người dùng nhấp vào nút Add để thêm học Sau upload học thành cơng có thơng báo thành cơng Hình 3.26 Upload video giảng lưu học Sau upload thành công nhận thông báo, sau bấm next để hồn tất q trình tạo khóa học Hình 3.27 Giao diện upload thành cơng Nguyễn Hữu Tin – K59 39 Ở chapter người giảng viên tạo test để cố lại kiến thức quan trong chương học viên muốn xem tiếp nội dung phần sau phải vượt qua test trả lời 80% câu hỏi Hình 3.28 Giao diện thêm test Người dùng chỉnh sửa nội dung học nội dung test xóa muốn loại bỏ học test khỏi khóa học Nếu q trình tạo khóa học lý hay cố làm gián đoạn trình tạo khóa học thơng tin nhập khóa học lưu lại vào nháp (Draft) giảng viên quay lại sửa vào hồn thành khóa học lúc khác Sau tiến hành thêm chỉnh sửa xong giảng viên nhấn nút Finish để hồn tất q trình này, lúc khóa học có trạng thái Waiting for approve chờ phê duyệt từ admin Nguyễn Hữu Tin – K59 40 Khi người dùng nhấn vào mục Earning hệ thống hiển thị giao diện thống kê doanh thu, số khóa học bán theo tháng khóa học hàng đầu Hình 3.29 Giao diện trang Earning Khi người dùng chọn vào mục Payout hệ thống hiển thị trang Payout để giảng viên gửi u cầu thnah tốn đến admin Hình 3.30 Giao diện trang Payout Instructor Nguyễn Hữu Tin – K59 41 Khi người dùng chọn vào mục comment giảng viên xem comment mà student comment khóa học giảng viên trả lời comment nhắm hỗ trợ câu hỏi, thắc mắc học viên nội dung khóa học Hình 3.31 Giao diện trang quản lý comment Khi người dùng chọn vào mục Students cem có student đăng kí vào khóa khóa học giảng viên mức độ hồn thành khóa học student Hình 3.32 Giao diện quản lý tiến độ học Nguyễn Hữu Tin – K59 42 3.2.4 Logic phần Student Khi không đăng nhập đăng nhập với tài khoản thường người dùng vơ trang dành cho student Hình 3.33 Giao diện trang chủ Ở hiển thị tất khóa học với giá tiền khóa học Học viên bấm chọn vào khóa học để xem chi tiết khóa học Hình 3.34 Giao diện trang thơng tin khóa học Nguyễn Hữu Tin – K59 43 Nếu muốn mua khóa học người dùng cần đăng nhập sau bấm vào nút Buy Course Hệ thống chuyển sang trang tốn online Hình 3.35 Giao diện trang toán online Nguyễn Hữu Tin – K59 44 Sau thah tốn thành cơng, học viên vào mục My Course để xem khóa học mua Hình 3.36 Các khóa học mua Học viên chọn khóa học mua để bắt đầu học với video giảng làm test sau chương Hình 3.37 Video giảng Nguyễn Hữu Tin – K59 45 Học viên chọn vào làm test phải hồn thành xong test chuyển qua xem video giảng khác Học viên phải hồn thành xác 80% test trở lên để vượt qua test chuyển qua học Hình 3.38 Giao diện làm test Học viên commnet để trao đổi giảng hỏi giảng viên phần chưa rõ nội dung học Hình 3.39 Giao diện bình luận Nguyễn Hữu Tin – K59 46 Khi học viên chọn vào mục Instructor hệ thống hiển thị danh sách giảng viên Hình 3.40 Danh sách giảng viên Học viên chọn giảng viên để xem thơng tin giảng viên khóa học giảng viên Hình 3.41 Thông tin chi tiết cảu giảng viên Nguyễn Hữu Tin – K59 47 KẾT QUẢ - KIẾN NGHỊ Kết đạt Trong trình làm đồ án, em học nhiều kiến thức củng cố kiến thức cũ Kết em đạt : - Biết cách thiết kế sở liệu sử dụng công cụ Microsoft SQL Server để tạo sở liệu, tạo ràng buộc liệu khai thác liệu phù hợp với chương trình - Biết cách sử dụng Visual Studio Code xây dựng chức website , tạo giao diện phù hợp với web, dễ dàng sử dụng HTML , CSS , JS - Biết cách sử dụng Visual studio công nghệ ASP.NET core để xử lý BackEnd website Hạn chế Ngoài kết đạt được, hệ thống vấp phải nhiều hạn chế cần phải giải quyết: - Giao diện hệ thống thiết kế theo cảm tính cá nhân, chưa đẹp hoàn hảo - Cơ sở liệu chưa hoàn hảo logic, dễ mắc số lỗi trường hợp phức tạp thực tế - Cịn thiếu số tính nâng cao để ứng dụng sử dụng tiện lợi Hướng phát triển Trong tương lai, chương trình khắc phục hạn chế Song song với việc đó, chương trình bổ sung thêm nhiều tính nâng cao chất lượng nhiều nhu cầu khác người học, nhằm giúp hệ thống quản lý xác Ngồi ra, có thể, chương trình tích hợp vào chương trình, hệ thống khác sử dụng rộng rãi, phù hợp với doanh nghiệp có quy mơ lớn phục vụ cho thương mại Nguyễn Hữu Tin – K59 48 TÀI LIỆU THAM KHẢO [1] Nguyễn Hoàng Hà, Giáo trình C# ứng dụng, 2010 [2] [C Sharp Là Gì] - Tìm hiểu ngơn ngữ lập trình C# | Vietnix –“ C#” [truy cập 23/4/2022] [3] SQL – Wikipedia tiếng Việt - “SQL” [truy cập 15/3/2022] [4] Entity Framework documentation | Microsoft Docs -“Entity Framework”[truy cập /3/2022] [5] Tutorial: Create a web API with ASP.NET Core | Microsoft Docs - ‘ASP.NET core’[ truy cập 15/3/2022] [6] Tutorial: Create a web API with ASP.NET Core | Microsoft Docs - ‘API’ [truy cập 18/3/2022] [7] Implementing the Repository and Unit of Work Patterns in an ASP.NET MVC Application (9 of 10) | Microsoft Docs - ‘Repository unit of work’ [truy cập 22/3/2022] [8] Dependency Injection in C# with Examples - Dot Net Tutorials - ‘Dependency injection’ [truy cập 28/3/2022] [9] HTML, CSS, JavaScript gì? Xây dựng website với HTML, CSS JavaScript (tino.org) – ‘HTML, CSS, JS’ [truy cập 4/4/2022] [10] Getting Started – React (reactjs.org) –‘Reactjs’ [truy cập 1/5/2022] [11] (269) F8 Official - YouTube [Accessed 15/5/2022] [12] Getting Started – React (reactjs.org) [Accessed 1/6/2022] Nguyễn Hữu Tin – K59 49

Ngày đăng: 01/08/2023, 14:13

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

TÀI LIỆU LIÊN QUAN

w