Xây dựng ứng dụng Web để chia sẻ tài liệu học tập cho sinh viên ngành công nghệ thông tin - Học viện Nông nghiệp Việt Nam
Nghiên cứu này nhằm xây dựng hệ thống ứng dụng quản lý và chia sẻ tài liệu cho sinh viên chuyên ngành công
nghệ thông tin. Xuất phát từ nhu cầu tìm kiếm tài liệu học tập và nghiên cứu đảm bảo nguồn tài liệu chuẩn, tiết kiệm
thời gian và chi phí của sinh viên, chúng tôi đã tiến hành thu thập tài liệu giảng dạy của các giảng viên Khoa Công
nghệ thông tin, sau đó chuẩn hóa và tổ chức lưu trữ và quản lý dữ liệu thống nhất trên môt hệ thống phần mềm trực
tuyến để thuận tiện cho việc tìm kiếm và chia sẻ tài liệu. Hệ thống được xây dựng theo các bước trong quy trình phát
triển phần mềm với chức năng chia sẻ nguồn tài liệu học tập rất phong phú và đa dạng, chúng được phân loại thành
các danh mục khác nhau nên rất thuận tiện cho việc tìm kiếm hoặc tra cứu. Hệ thống xây dựng được không những
là một kênh chia sẻ tài liệu tập trung, thống nhất mà còn bám sát vào chương trình học dành riêng cho các em sinh
viên chuyên ngành công nghệ thông tin - Học viện Nông nghiệp Việt Nam. Chương trình tạo sự kết nối giữa giảng
viên và sinh viên, đem lại lợi ích thiết thực và bước đầu tạo nên niềm tin, động lực cho các em sinh viên trong quá
trình học tập và ng
Trang 1
Trang 2
Trang 3
Trang 4
Trang 5
Trang 6
Trang 7
Trang 8
Trang 9
Trang 10
Tải về để xem bản đầy đủ
Tóm tắt nội dung tài liệu: Xây dựng ứng dụng Web để chia sẻ tài liệu học tập cho sinh viên ngành công nghệ thông tin - Học viện Nông nghiệp Việt Nam
còn gõi là tấn công giả mạo). Ngoài ra, nò cñn cò cć chế bảo vệ chøng lại tấn công SQL injection và có thể tạo, đõc, và xóa cookies mût cách đćn giản, tất cả cookie đāợc tĆ đûng đăng ký và mã hòa để ngăn giả mạo. Vĉi Laravel bắt buûc dùng HTTPS bảo vệ dą liệu session, thông tin„ trong cùng mût mạng (Mccool, 2012). 2.5.3. Các công nghệ hỗ trợ khác Trong quá trình phát triển hệ thøng, nhóm nghiên cău sĄ dĀng thêm các kỹ thuật hú trợ khác nhā: Git: là hệ thøng quản lý phiên bản phân tán (distributed version control system). Nó là mût công cĀ düng để quản lý mã ngu÷n giúp cho việc quản lý mã ngu÷n cþa nhóm nghiên cău trĊ nên đćn giản và thuận tiện hćn. Docker: Chāćng trình đòng gòi và xây dĆng möi trāĈng phát triển ăng dĀng. Docker là mût nền tảng mĊ cung cấp cho ngāĈi sĄ dĀng nhąng công cĀ và dðch vĀ để ngāĈi sĄ dĀng có thể đòng gói và chạy chāćng trình cþa mình trên các môi trāĈng khác nhau mût cách nhanh nhất (Turnbull, 2014). 3. XÂY DỰNG VÀ PHÁT TRIỂN HỆ THỐNG 3.1. Xây dựng hệ thống Hệ thøng mĉi đāợc thiết kế trên nền Web sẽ giúp việc chia sẻ các khóa hõc online, tài liệu hõc tập. Giáo viên sẽ cập nhật các khóa hõc kèm theo các bài đánh giá kiểm tra về bài hõc đò, tài liệu hõc tập bao g÷m bài giảng, sách, đề kiểm tra thĄ, đề cāćng ön tập, bài tập lĉn„ NgāĈi dùng sẽ vào hệ thøng hõc theo các bài hõc trong khóa hõc, tĆ mình kiểm tra đánh giá, tham khảo các tài liệu bài giảng cþa giảng viên tải lên„ tìm kiếm các tài liệu theo mong muøn qua chăc năng tìm kiếm tài liệu linh hoạt cþa hệ thøng. TĂ việc thu thập dą liệu tù chăc thành các bảng dą liệu, nhóm nghiên cău sĄ dĀng các phāćng pháp nghiên cău và nền tảng công nghệ nêu trên để xây dĆng hệ thøng. Các chăc năng cþa hệ thøng đāợc thể hiện qua hình 2. 3.1.1. Tác nhân của hệ thống Các tác nhân tāćng tác vĉi hệ thøng đāợc thể hiện qua hình 3. a. Đối với Admin quản trị hệ thống Có quyền thêm, sĄa, xóa, phân quyền vĉi các tài khoản ngāĈi dùng trên hệ thøng Kiểm duyệt và cho phép đăng tải nhąng thông tin dą liệu đāợc chia sẻ tĂ ngāĈi dùng (tài liệu, các khóa hõc„) Thêm, chînh sĄa, xóa các môn hõc. b. Đối với người dùng là Giáo viên Cập nhật thông tin tài khoản cþa mình: Cập nhật tên đăng nhập, đùi mật khẩu Đăng nhập, đăng xuất hệ thøng. Quản lý các khóa hõc: Thêm, sĄa, xóa các khóa hõc, tải video các khóa hõc, bài kiểm tra sau múi khóa hõc, xem đāợc kết quả cþa các hõc sinh Ċ khóa hõc mình tù chăc sau khi sinh viên làm bài kiểm tra. Xây dựng ứng dụng web để chia sẻ tài liệu học tập cho sinh viên ngành công nghệ thông tin - Học viện Nông nghiệp Việt Nam 512 Hình 2. Biểu đồ chức năng của hệ thống Hình 3. Biểu đồ luồng dữ liệu của hệ thống Hệ thống chia sẻ tài liệu và khóa học e-learning Hệ thống quản trị người dùng Quản lý danh mục Quản lý tài liệu Tìm kiếm - Thống kê Đăng ký Đăng nhập Đăng xuất Cập nhật tài khoản Quản lý môn học Quản lý khóa học online Thêm tài liệu Sửa tài liệu Xóa tài liệu Duyệt tài liệu Yêu cầu tài liệu Tải tài liệu Đánh giá, bình luận Tìm kiếm khóa học Tìm kiếm tài liệu theo các tiêu chí Thống kê khóa học Thống kê tài liệu Yêu cầu tìm kiếm, thống kê Sinh viên HỆ THỐNG CHIA SẺ TÀI LIỆU VÀ CÁC KHÓA HỌC E-LEARNING Giảng viên Yêu cầu tìm kiếm Thông tin phản hồi Yêu cầu chia sẻ Yêu cầu tài liệu, khóa học Yêu cầu downdoad Yêu cầu đánh giá Yêu cầu quản trị tài liệu Thông tin phản hồi Yêu cầu quản trị khóa học Yêu cầu quản trị GV, SV Yêu cầu quản trị danh mục Yêu cầu quản trị khóa học Thông tin phản hồi Admin Vũ Thị Lưu, Nguyễn Thị Huyền, Trần Thị Thu Huyền 513 Quản lý tài liệu: Cập nhật các loại tài liệu cþa môn hõc mình giảng dạy bao g÷m bài giảng, sách điện tĄ, đề cāćng ön tập, đề kiểm tra thĄ, các bài tập„. Tiếp nhận các tāćng tác, trả lĈi phản h÷i cþa sinh viên. c. Đối với người dùng là sinh viên Đăng ký tài khoản sĄ dĀng hệ thøng phần mềm, đăng nhập, đăng xuất hệ thøng. Cập nhật thông tin tài khoản và mật khẩu. Tìm kiếm các khóa hõc và tài liệu tham khảo theo danh mĀc, tìm kiếm cć bản, tìm kiếm theo nûi dung trong tệp dą liệu đāợc tải lên trong hệ thøng. Làm bài kiểm tra sau múi bài hõc cþa khóa hõc mình đang theo dôi. Xem trāĉc tài liệu và có thể tải về máy tính đ÷ng thĈi đāa ra nhąng nhận xét, đánh giá, gĄi phản h÷i, hoặc gĄi yêu cầu tài liệu mong muøn qua hệ thøng. Đánh dấu và quản lý các tài liệu āa thích. 3.1.2. Các chức năng của hệ thống Quản trð ngāĈi dùng: Cập nhật ngāĈi dùng, mật khẩu, phân quyền. Quản lý danh mĀc: Cập nhật, thêm, sþa, xóa các danh mĀc môn hõc, khóa hõc online. Quản lý tài liệu: Cập nhật, sĄa, xóa, phân loại tài liệu, đánh giá, phản h÷i, gĄi yêu cầu tài liệu, hiển thð các lāợt xem, tải tài liệu. Tìm kiếm, thøng kê: Tìm kiếm các khóa hõc và tài liệu theo nhiều tiêu chí khác nhau, thøng kê sø lāợng hõc viên cþa múi khóa hõc. 3.2. Thiết kế cơ sở dữ liệu DĆa vào biểu đ÷ phân cấp chăc năng và biểu đ÷ lu÷ng dą liệu cþa hệ thøng đāợc thiết kế Ċ phần trên, chýng töi đã thiết kế các bảng cć sĊ dą liệu để sø hóa các thông tin cần phải quản lý và lāu trą trong hệ thøng. Chúng tôi sĄ dĀng mô hình quan hệ dą liệu để thể hiện sĆ liên kết giąa các bảng cć sĊ dą liệu, chýng đāợc thể hiện qua hình 4. Cć sĊ dą liệu đāợc quản trð trên hệ quản trð MySQL đã đāợc trình bày Ċ mĀc phāćng pháp nghiên cău. 3.3. Kỹ thuật xử lý trong quá trình xây dựng hệ thống a. Tìm kiếm theo nội dung của tệp tin Vĉi các chăc năng cþa hệ thøng đã xây dĆng, chăc năng tìm kiếm là mût trong nhąng chăc năng mà ngāĈi dùng khai thác và sĄ dĀng nhiều nhất. NgāĈi dùng không nhąng tìm kiếm theo nhąng tĂ khòa thöng thāĈng xuất hiện trong bảng cć sĊ dą liệu mà còn có thể tìm kiếm theo nûi dung có trong tệp tin đāợc tải lên trong hệ thøng. Kỹ thuật tìm kiếm theo nûi dung đò đāợc xĄ lý nhĈ vào hàm array_chunk() trong PHP để mĊ và thiết lập đõc múi lần 10 tệp, múi tệp sẽ đõc 10 dòng mût lần để giảm thiểu rþi ro đøi vĉi nhiều tệp và múi tệp có nhiều dòng. Sau khi đõc hết các dòng trong mût tệp thì sẽ đem tĂ khóa mà ngāĈi dùng gõ vào so sánh vĉi các nûi dung đõc đāợc trong tệp và cuøi cùng là trả về kết quả tìm kiếm mong muøn. Tuy nhiên, vĉi cách giải quyết này vẫn chāa thĆc sĆ tøi āu khi sø lāợng tệp tin lĉn, và múi tệp tin lại có sø lāợng lĉn các trang chính, vì thế kỹ thuật tìm kiếm theo nûi dung vẫn đang đāợc nhóm tác giả tiếp tĀc nghiên cău và phát triển. b. Các kỹ thuật tìm kiếm hiệu quả Để tăng tøc đû tìm kiếm, nhóm nghiên cău đã xĄ lý nhā sau: Khi ngāĈi dùng nhập tĂ khóa tìm kiếm, hệ thøng sẽ gõi api lên server để tìm kiếm theo tĂ khòa đò. Sau khi nhập tĂ khóa thì server sẽ lāu lðch sĄ tĂ khóa tìm kiếm vào bû nhĉ đệm (cache) và cć sĊ dą liệu (database) theo mã Id cþa ngāĈi düng đò. Múi khi ngāĈi dùng tìm kiếm hệ thøng sẽ truy vấn tĂ bû cache và database ra lðch sĄ tìm kiếm cþa ngāĈi düng để quá trình tìm kiếm đāợc nhanh hćn. Mặt khác, để kết quả tìm kiếm đāợc tøi āu thì hệ thøng có thiết lập chế đû tìm kiếm toàn văn FTS (full-text-search) qua các câu lệnh SQL mà hệ quản trð cć sĊ dą liệu MySQL hú trợ. Vĉi thiết lập này sẽ khắc phĀc đāợc các nhāợc điểm cþa phāćng pháp tìm kiếm thông thāĈng có sĄ dĀng toán tĄ so sánh “like” hoặc dấu bằng. Phāćng pháp FTS sẽ cho kết quả linh hoạt, tøc đû truy vấn nhanh hćn nhĈ sĄ dĀng kỹ năng đánh chî mĀc Index, tìm kiếm đāợc cả tiếng Việt có dấu và không dấu và hú trợ tìm kiếm gần đýng. Xây dựng ứng dụng web để chia sẻ tài liệu học tập cho sinh viên ngành công nghệ thông tin - Học viện Nông nghiệp Việt Nam 514 Hình 4. Sơ đồ thực thể liên kiết Vũ Thị Lưu, Nguyễn Thị Huyền, Trần Thị Thu Huyền 515 Hình 5. Ví dụ mô tả việc đánh chî mục cho việc tìm kiếm FTS Giả sĄ các file tài liệu đāợc mô phóng nhā các “document” Ċ hình 5, vĉi phāćng pháp này sẽ có 1 file riêng biệt đāợc lāu trą Ċ máy chþ và chî chăa nhąng trāĈng (field) đã tạo chî mĀc (index), MySQL sẽ dễ dàng tìm ra đāợc mã sø 1 cách nhanh chóng khi tìm kiếm. Chúng ta có thể hình dung giøng nhā việc tiềm kiếm thông tin nào đò trong quyển sách, chýng ta thāĈng tìm kiếm dĆa trên “MĀc lĀc” cþa cuøn sách đề tìm thöng tin đò nhanh hćn. c. Xử lý tốc độ tải (upload) video của các bài học trực tuyến giảm dung lượng nhưng không giảm bớt chất lượng Khi ngāĈi dùng upload video lên server thì sẽ upload lên server amazon s3 (Amazon Simple Storage Service) - là dðch vĀ lāu trą đám mây lāu trą sau đò sẽ nén tệp về dạng “.mp4” để giảm dung lāợng nhāng vẫn đảm bảo về mặt chất lāợng cþa video. Khi cần sĄ dĀng video thì sẽ tải về tĂ server amazon s3 theo tên video mà mình lāu trong cć sĊ dą liệu. Tuy nhiên, phāćng pháp này lại mất chi phí thuê cloud và tøn khöng gian lāu trą, tøc đû tải video lên server chậm. Ngoài cách lāu video nhā trên thì hệ thøng có kết hợp sĄ dĀng dðch vĀ lāu trą miễn phí qua các kênh hõc tĆ tạo trên trang Youtube để tiết kiệm về mặt chi phí và đảm bảo tøc đû tải video cho ngāĈi hõc. 4. KẾT QUẢ XÂY DỰNG HỆ THỐNG Hệ thøng chia sẻ tài liệu và các khóa hõc trĆc tuyến đāợc xây dĆng theo các phāćng pháp nghiên cău và phần phân tích thiết kế nêu Ċ trên, vĉi giao diện thân thiện, có thể đáp ăng cho cả máy tính cá nhân và trên cả thiết bð di đûng, thao tác thĆc hiện hệ thøng đćn giản. NgāĈi quản trð hệ thøng có thể dễ dàng thĆc hiện các chăc năng quản lý nhā: Quản lý tài khoản, quản lý khóa hõc, tài liệu (bao g÷m việc cập nhật, sĄa, xóa vào các bảng dą liệu) và các Xây dựng ứng dụng web để chia sẻ tài liệu học tập cho sinh viên ngành công nghệ thông tin - Học viện Nông nghiệp Việt Nam 516 chăc năng gĄi phản h÷i, đánh giá, tìm kiếm thøng kê theo nhiều tiêu chí. NgāĈi dùng là giáo viên có thể cập nhật các khóa hõc, bài ôn thi trắc nghiệm, tài liệu phong phý. NgāĈi dùng là sinh viên có thể tìm kiếm các khóa hõc và tài liệu theo nhiều tiêu chí khác nhau, mềm dẻo và linh hoạt nhĈ kỹ thuật tìm kiếm toàn văn FTS (full-text-search). Hệ thøng chia sẻ tài liệu đāợc xây dĆng đảm bảo đāợc các yêu cầu về bảo mật. NgāĈi quản trð hệ thøng sẽ có toàn quyền gią bảo mật cho website bằng mật khẩu đāợc mã hóa riêng trong cć sĊ dą liệu, ngāĈi quản trð sẽ có quyền phân quyền cho các thành viên khác trong hệ thøng. Múi thành viên khi muøn gĄi bài hoặc đòng gòp thöng tin cho hệ thøng sẽ đāợc quản trð viên cþa hệ thøng kiểm duyệt trāĉc khi tải lên. Ngoài ra còn có chăc năng sao lāu phĀc h÷i dą liệu nhanh chóng, chế đû sao lāu đāợc thiết lập đðnh kỳ theo tháng. Dą liệu cþa hệ thøng có thể kết xuất ra các thiết bð lāu trą bên ngoài và phĀc h÷i khi cần thiết. Hình 6. Giao diện quản trị của hệ thống - Danh mục các môn học Hình 7. Giao diện quản trị của hệ thống - Danh mục giảng viên Vũ Thị Lưu, Nguyễn Thị Huyền, Trần Thị Thu Huyền 517 Hiện tại, website hệ thøng đã cập nhật khoảng hćn 40 mön hõc, 40 cán bû giảng dạy thuûc các bû môn trĆc thuûc Khoa Công nghệ thöng tin. Trong đò hầu nhā hệ thøng đã upload các loại tài liệu bài giảng, sách tham khảo, giáo trình, đề cāćng ön tập, mût sø đề thi mẫu„ cþa mût sø môn hõc cho các em sinh viên tham khảo trong quá trình hõc tập và nghiên cău. Các tài liệu đāợc đāa lên hệ thøng đều đāợc để nguyên bản gøc bao g÷m thông tin cþa tác giả và đều đāa ra cảnh báo về vấn đề bản quyền khi ngāĈi dùng sĄ dĀng. Do website đang trong quá trình hoàn thiện và bāĉc đầu đāa vào áp dĀng thĆc tế nên sø lāợng ngāĈi düng đã đăng ký sĄ dĀng và tham gia vào khóa hõc online có trên hệ thøng hiện tại đạt khoảng gần 300, trong đò hầu nhā ngāĈi düng đều có phản h÷i tích cĆc về lợi ích cþa hệ thøng mang lại. Theo dĆ kiến thì sø lāợng ngāĈi dùng sẽ tăng lên nąa khi các thầy cô tích cĆc hāĉng dẫn các em ôn tập môn hõc cþa mình thông qua bài ôn thi theo hình thăc trắc nghiệm đāợc thiết kế trên hệ thøng. Đða chî link truy cập vào website Hình 6 - hình 10 là mût sø hình ảnh giao diện cþa hệ thøng: Hình 8. Giao diện trang tìm kiếm và phân loại tài liệu phía người dùng Xây dựng ứng dụng web để chia sẻ tài liệu học tập cho sinh viên ngành công nghệ thông tin - Học viện Nông nghiệp Việt Nam 518 Hình 9. Giao diện mô tả chi tiết nội dung khóa học Hình 10. Giao diện bài thi trắc nghiệm của sinh viên khi tham gia khóa học trực tuyến Vũ Thị Lưu, Nguyễn Thị Huyền, Trần Thị Thu Huyền 519 5. KẾT LUẬN Trong nghiên cău này, chýng töi đã xây dĆng thành công website chia sẻ tài liệu hõc tập cho sinh viên, website không chî là nći lāu trą thông tin các ngu÷n tài liệu nhā sách, giáo trình, bài giảng, bài tập lĉn, đề cāćng ön tập, đề kiểm tra thĄ, đề thi tham khảo mà còn là đða chî cung cấp các khóa hõc online để ngāĈi hõc có thể tĆ hõc và tĆ đánh giá kết quả hõc tập cþa mình qua các bài kiểm tra trắc nghiệm. Hệ thøng đāợc xây dĆng vĉi đầy đþ chăc năng tĂ măc cć bản nhất là xem thông tin, truy vấn thông tin dành cho tất cả nhąng ngāĈi dùng mà không cần đăng ký tài khoản hay đăng nhập đến măc cao hćn là quyền truy cập vào cć sĊ dą liệu nhā bù sung, sĄa đùi,„ do nhòm quản trð viên đāợc cấp quyền thĆc hiện. Kết hợp vĉi đò, hệ thøng sĄ dĀng các nền tảng công nghệ framework laravel đāợc viết trên ngôn ngą PHP, các thā viện hú trợ cþa PHP kết hợp vĉi hệ quản trð MySQL để xây dĆng và cài đặt thành hệ thøng chia sẻ tài liệu. Cùng vĉi giao diện đćn giản, dễ sĄ dĀng, tài liệu phong phú, tính an toàn và bảo mật cao, website chia sẻ tài liệu đã trĊ thành công cĀ hąu ích cho các em sinh viên tham khảo chính trong quá trình hõc tập. Nò cÿng là mût công cĀ tiếp cận đầu tiên cho các em sinh viên khóa mĉi có thêm niềm tin và đûng lĆc hõc tập, nghiên cău. Hiện tại hệ thøng đāợc xây dĆng và ăng dĀng riêng cho khoa Công nghệ thông tin, và nó có thể triển khai mĊ rûng cho các khoa khác trong Hõc viện Nông nghiệp Việt Nam. TÀI LIỆU THAM KHẢO Alfat L., Triwiyatno A. & Isnanto R.R. (2015). Implementation of Laravel Framework in Web Based Temperature and Humidity Monitoring System. Conference on Information Technology, Computer and Electrical Engineering (ICITACEE), Indonesia. Bagwan M.K.I. & Ghule P.S.D. (2019). A Modern Review on Laravel- PHP Framework IRE. 2 (12). Basich & Zoran (2015). The Daily Startup. The Wall Street Journal. He R.Y. (2015). Design and implementation of web based on laravel framework. Proceedings of the 2014 International Conference on Computer Science and Electronic Technology. Mccool S. (2012). Laravel Starter. Packt Publishing. Stroe I.S. (2011). MySQL databases as part of the Online Business, using a platform based on Linux. Database Systems Journal. 2(3). Turnbull J. (2014). The Docker Book: Containerization is the new virtualization. James Turnbull; 18092 edition. p. 311.
File đính kèm:
- xay_dung_ung_dung_web_de_chia_se_tai_lieu_hoc_tap_cho_sinh_v.pdf