Đặt vấn đề Ở bất kỳ thời điểm nào thì vấn đề học tập tại Đại học Bách Khoa Hà Nội vẫn luôn là vấn đề được quan tâm và đặt lên hàng đầu. Với chương trình học và thi khá nặng thì việc sinh viên đặc biệt là những sinh viên năm nhất gặp khó khăn trong quá trình học tập là thường xuyên xảy ra. Trong thời kì bùng nổ công nghệ thông tin và Internet như hiện nay công nghệ góp phần quan trọng dẫn đến sự thành công trên tất cả các lĩnh vực và học tập cũng không phải ngoại lệ. Nhu cầu học tập trực tuyến và tìm kiếm tài liệu trên mạng của sinh viên ngày càng tăng.
Tuy nhiên việc tìm kiếm một địa chỉ học tập hiệu quả và nguồn tài liệu phù hợp vẫn là một thách thức với nhiều sinh viên. Theo như khảo sát thì 10 sinh viên sẽ có đến 7 sinh viện tìm kiếm tài liệu trên mạng thay vì những cách truyền thống như xin các khóa trước hay mua tại các cửa hàng quanh trường. Hiện nay có rất nhiều những trang facebook và trang web học tập, tìm kiếm tài liệu nổi tiếng để sinh viên tham khảo. Nhưng các trang web này thường sẽ có nhiều hạn chế như đề thi đã cũ, tài liệu chung chung không giành riêng cho một trường đại hoc cụ thể nào dẫn đến sinh viên của Đại học Bách Khoa Hà Nội sẽ mất nhiều thời gian để tìm kiếm, chắt lọc và cũng rất khó để tiếp cận.
Hơn thế nữa, việc tương tác giữa các sinh viên trong trường với nhau là rất quan trọng, những chia sẻ cũng như kinh nghiệm giữa các sinh viên cùng khóa hay của những sinh viên khóa trên là rất cần thiết để nâng cao hiệu quả học tập. Giải quyết được các vấn đề đặt ra trên sẽ giúp tạo ra môi trường học tập trở nên thuận tiện và hiệu quả hơn, tiết kiệm được thời gian cũng như tiền bạc của mỗi sinh viên Đại học Bách Khoa Hà Nội.2 Mục tiêu của đề tài Như em đã đề cập ở trên, vì môi trường học tập trên giảng đường đại học rất khác so với khi còn học cấp 3, việc nghe giảng và tìm kiếm tài liệu sẽ khó khăn và mất thời gian Nắm bắt được vấn đề trên, nên em đã cân nhắc và chọn thực hiện một trang web hỗ trợ cho những sinh viên Bách Khoa có nhu cầu tìm kiếm một nơi để học tập. Mục tiêu của đồ án là xây dựng một website hỗ trợ học tập dành riêng cho sinh viên của Đại học Bách Khoa Hà Nội, cung cấp những khóa học và tài liệu bao gồm đầy đủ các môn 1 từ đại cương đến chuyên ngành, từ ngoại ngữ cho đến những khóa học lập trình; tạo cầu nối giữa các sinh viên với nhau. Người truy cập vào trang web có thể sử dụng các chức năng tiêu biểu của website như mua khóa học cho những môn mà mình muốn ôn tập với giá rẻ, tìm kiếm những tài liệu, đề thi của những kì trước một cách nhanh chóng và thuận tiện cũng như góp ý, tương tác, bình luận, chia sẻ kinh nghiệm về khóa học cũng như môn học mà mình đang hoặc đã học.
Ngoài mục tiêu chính là giải quyết các vấn đề đã nêu, việc thực hiện đề tài này còn mang lại cho em những kinh nghiệm quý báu và đạt được một số mục tiêu cá nhân quan trọng. Đầu tiên, em học được cách triển khai một dự án, từ quy trình xây dựng ứng dụng web cho đến việc áp dụng các giai đoạn khảo sát, phân tích, thiết kế, cài đặt và kiểm thử trong thực tế. Đặc biệt, em đã có thêm kinh nghiệm trong việc phân tích yêu cầu của người dùng. Thứ hai, em đã phát triển tất cả các thành phần của một ứng dụng web.
Cuối cùng, em đã biết cách xây dựng được các module cơ bản và đặc trưng nhất của một hệ thống.3 Định hướng giải pháp Với những mục tiêu mà em đã đặt ra ở trên, em sẽ đưa ra những định hướng và giải pháp của mình. Hiện nay, có hai xu hướng phát triển ứng dụng chủ yếu là phát triển trên nền tảng web và ứng dụng di động. Em sẽ chọn xây dựng một trang web kế thừa lại những tính năng tiêu biểu của những web học tập khác trên internet và phát triển thêm những tính năng mới để phục vụ riêng cho sinh viên Đại học Bách Khoa Hà Nội. Em xây dựng hệ thống theo mô hình client-server, bao gồm hai phân hệ.
Dưới đây, em sẽ trình bày khái quát chức năng của từng phân hệ. Đầu tiên là website công khai, đối tượng sử dụng chính là sinh viên(user). Website này sẽ bao gồm các chức năng cơ bản như: tìm kiếm và mua khóa học, xem tài liệu học tập, tham gia các khóa học trực tuyến, và đánh giá khóa học. Phân hệ thứ hai là website quản trị dành cho quản trị viên(admin).
Website này sẽ giúp quản trị viên quản lý các thông tin chung của toàn bộ website công khai. Các chức năng bao gồm: thêm mới và quản lý khóa học, quản lý người dùng, và xử lý các phản hồi báo cáo từ người học. Em cũng đặc biệt quan tâm đến việc bảo mật người dùng. Hệ thống sẽ triển khai các biện pháp như quản lý quyền truy cập và xác thực người dùng, đảm bảo rằng chỉ những người được ủy quyền mới có thể truy cập và xem tài liệu hay thông tin người dùng.
Điều này không chỉ bảo vệ thông tin quan trọng mà còn đảm bảo quyền riêng tư cho người dùng. Về phần công nghệ thì em sử dụng Spring Framework với ngôn ngữ Java là Back- end. Còn Front-End thì em dung các ngôn ngữ cơ bản như Html, Css, Js kết hợp với các 2 thư viện hỗ trợ như Boostrap, W2School. Cuối cùng là về quản trị cơ sở dữ liệu thì em sử dụng MySQL.
Chi tiết em sẽ trình bày rõ ràng trong những chương tiếp theo.4 Bố cục đồ án Phần còn lại của báo cáo đồ án tốt nghiệp này được tổ chức như sau. Khảo sát và phân tích yêu cầu: Chương này trình bày về một số các khảo sát phía người dùng và hiện trạng của một số các nền tảng tương tự. Đưa ra các chức năng cần phát triển, các đối tượng sử dụng ứng dụng. Từ đó em sẽ đưa ra các ca sử dụng (use case) phù hợp và đặc tả các use case này.
Công nghệ sử dụng: Trình bày về các công nghệ, cơ sở lý thuyết của các công nghệ, ưu nhược điểm của nó và cách áp dụng nó vào đồ án này như thế nào. Thông qua đây trình bày rõ hơn về cấu trúc hệ thống website tìm trọ. Thực nghiệm và đánh giá: Trong chương này, em sẽ trình bày về quá trình phát triển, kiểm thử và triển khai hệ thống. Trong phần phát triển sẽ nêu rõ thiết kế kiến trúc, thiết kế chi tiết (thiết kế gói, giao diện, lớp, cơ sở dữ liệu) của hệ thống.
Trong phần kiểm thử sẽ nêu rõ các kỹ thuật và kịch bản kiểm thử áp dụng đối với hệ thống. Sau cùng là báo cáo về triển khai ứng dụng trong môi trường thực tế Chương 5. Giải pháp đóng góp: Trong Chương 5 em xin đưa ra các đóng góp nổi bật của em trong hệ thống phần mềm, làm rõ được các phương pháp đã đưa ra để xử lý từng mục tiêu cụ thể và đem lại hiểu quả như thế nào, đã xây dựng những chức năng gì, đem đến cho người dùng những trải nghiệm và tiện ích gì 1.5 Kết luận Tóm lại, ở chương 1, em đã trình bày các thông tin về đề tài và những vấn đề và mục tiêu mà đề tài cần đạt được. Em cũng đã trình bày tóm tắt bố cục của báo cáo đồ án tốt nghiệp 3 CHƯƠNG 2.
KHẢO SÁT VÀ PHÂN TÍCH YÊU CẦU Trong Chương 1, em đã giới thiệu tổng quan về đồ án, nêu rõ các vấn đề cần giải quyết và định hướng giải pháp. Dựa trên những cơ sở này, chương 2 sẽ trình bày về quá trình khảo sát và trải nghiệm thực tế qua việc tìm hiểu và sử dụng các website quản lý tài liệu hiện nay. Em sẽ phân tích hiện trạng để xây dựng tổng quan các chức năng của hệ thống. Tiếp đó, em sẽ trình bày biểu đồ use case tổng quát, các use case phân rã chức năng, và thực hiện đặc tả các biểu đồ use case phân rã chức năng.1 Khảo sát hiện trạng Hiện nay, với sự phát triển của công nghệ, nhu cầu học tập và tìm kiếm tài liệu trên mạng ngày càng tăng, đặc biệt từ đợi dịch Covid 19 thì phương pháp học online lại càng trở nên phổ biến.
Để đáp ứng nhu cầu này, nhiều website hỗ trợ học tập đã ra đời, cung cấp các dịch vụ như mua khóa học, truy cập tài liệu, và tham gia các diễn đàn trao đổi kiến thức. Để làm rõ nhu cầu của sinh viên Đại học Bách Khoa Hà Nội, em đã tiến hành khảo sát trên facebook cũng như trực tiếp đánh giá của sinh viên Bách Khoa về những web học tập nổi tiếng như hocmai.com,… Tuy nhiên, các website này đều có những ưu và nhược điểm riêng. Ưu điểm Nhược điểm Đây là những website uy tín được Tuy nhiên những trang web này đều có nhiều thế hệ học sinh, sinh viên tin nhược điểm mà hầu hết sinh viên đều dùng. Nó đa dạng về mặt tài liệu và đồng ý đó là không đa dạng khóa học khóa học cho phép sinh viên tiếp cận về những môn cơ sở ngành hay chuyên dễ dàng ngành, tài liệu đôi khi còn cũ, không update và thiếu chức năng tương tác giữa các sinh viên với nhau Bảng 2.1: Ưu nhược điểm của các web học tập 4 2.2 Tổng quan chức năng Biểu đồ Use-case tổng quát Hình 2.1: Sơ đồ use case tổng quát Hệ thống có ba tác nhân chính là: • Khách (Guest): là người dùng chưa đăng nhập vào hệ thống.
Khách được coi là tác nhân vô định danh có thể họ chưa đăng nhập hoặc họ chưa có tài khoản. Khi đó, họ phải đăng ký tài khoản hoặc đăng nhập vào hệ thống để có thể sử dụng những chức năng chính của hệ thống. • Người dùng (User): là người dùng đã đăng nhập, kế thừa các chức năng và quyền của Khách 5 • Quản trị viên (Admin): là người quản trị của hệ thống, có vai trò quản lý các thông tin của toàn bộ website như người dung, khóa học, bài đăng Một số use case chính: • Tìm kiếm tài liệu : khách có thể tìm kiếm khóa học theo bảng chữ cái. • Tìm kiếm và đăng kí khóa học : người dùng cần đăng nhập để tìm kiếm và đăng kí những khóa học mà mình muốn.