Bối cảnh và vấn đề nghiên cứu
Sự phát triển của khoa học kỹ thuật và lĩnh vực công nghệ thông tin (CNTT) đặt ra yêu cầu liên tục nâng cao trình độ, kỹ năng đối với nguồn nhân lực. Tuy nhiên, hình thức đào tạo trực tiếp truyền thống bộc lộ những rào cản nhất định về chi phí di chuyển, giới hạn địa lý và sự thiếu linh hoạt trong sắp xếp thời gian biểu cá nhân. Trong bối cảnh đại dịch Covid-19 thúc đẩy sự dịch chuyển sang môi trường học tập số hóa, việc tiếp thu kiến thức CNTT qua Internet và các thiết bị điện tử trở nên khả thi và cần thiết. Xuất phát từ thực tiễn đó, đề tài khóa luận tốt nghiệp kỹ sư ngành Công nghệ phần mềm tại Trường Đại học Sư phạm Kỹ thuật Thành phố Hồ Chí Minh với tên gọi: "Xây dựng website E-learning cung cấp khóa học CNTT dùng React.js và Node.js" đã được thực hiện bởi nhóm sinh viên Đặng Quang Trường và Lê Thành Vinh, dưới sự hướng dẫn của TS. Lê Vĩnh Thịnh.
Nhiệm vụ nghiên cứu của đề tài được tác giả xác định và đánh số cụ thể qua 5 nội dung chính:
- Tìm hiểu và phân tích yêu cầu của hệ thống: Nghiên cứu nhu cầu học trực tuyến trong giai đoạn hậu Covid-19; tiến hành khảo sát các nền tảng E-learning thực tế gồm Udemy và Coursera để xác định hệ thống yêu cầu chức năng và yêu cầu phi chức năng.
- Thiết kế cơ sở dữ liệu: Xây dựng kiến trúc lưu trữ kết hợp giữa cơ sở dữ liệu quan hệ (MySQL) và cơ sở dữ liệu phi quan hệ (MongoDB); thiết lập lưu trữ các tệp đa phương tiện (media files) của khóa học và người dùng trên dịch vụ đám mây Google Cloud Storage.
- Phát triển website: Xây dựng ứng dụng web theo kiến trúc MERN Stack (ReactJS cho tầng giao diện, Node.js kết hợp Express Framework cho tầng backend); tích hợp các mô hình trí tuệ nhân tạo (AI) gồm hệ thống gợi ý khóa học, Chatbot AI theo kiến trúc RAG, và tự động hóa tác vụ bằng nền tảng N8N.
- Bảo mật thông tin: Triển khai tiêu chuẩn JSON Web Token (JWT) nhằm xác thực và phân quyền người dùng khi truy cập các giao diện lập trình ứng dụng (API); đồng thời nhận định việc tăng cường bảo mật dữ liệu là hướng nghiên cứu cần tiếp tục hoàn thiện.
- Kiểm thử và đánh giá: Tiến hành xây dựng và thực thi 34 ca kiểm thử (test cases) để đánh giá toàn diện tính ổn định và các chức năng của hệ thống.
Về đối tượng và phạm vi nghiên cứu:
- Đối tượng nghiên cứu: Nhu cầu học tập, quản lý khóa học CNTT; các công nghệ phát triển web hiện đại (RESTful API, Node.js, Express.js, ReactJS, WebSocket); các giải pháp trí tuệ nhân tạo và tự động hóa ứng dụng (kiến trúc RAG, N8N, Content-Based Filtering, face-api.js, Voiceflow).
- Phạm vi nghiên cứu: Đề tài tập trung vào kỹ thuật xây dựng ứng dụng web fullstack, thiết kế kiến trúc kết hợp giữa dữ liệu có quan hệ và phi quan hệ, tích hợp mô hình ngôn ngữ lớn (LLM) và các dịch vụ AI vệ tinh vào quy trình nghiệp vụ học tập.
- Thời gian và không gian thực hiện: Đồ án được triển khai trong khoảng thời gian từ ngày 10/02/2025 đến ngày 18/06/2025, thuộc khóa học 2021 – 2025 tại Khoa Công nghệ Thông tin, Trường Đại học Sư phạm Kỹ thuật TP. Hồ Chí Minh.
Cơ sở lý thuyết và phương pháp
Khung lý thuyết và mô hình công nghệ
Tác giả dựa trên nền tảng kiến trúc phần mềm phân tầng để xây dựng giải pháp công nghệ:
- MERN Stack: Mô hình kiến trúc gồm ReactJS (Frontend), Node.js và Express.js (Backend), kết hợp hệ thống lưu trữ dữ liệu.
- Node.js và Express.js: Hoạt động dựa trên V8 Engine của Google Chrome, vận hành theo cơ chế bất đồng bộ (asynchronous) với mô hình điều khiển sự kiện (event-driven) thông qua Event Queue và Event Loop. Các tác vụ I/O nặng được ủy quyền xử lý tại Thread Pool nhằm tối ưu hiệu năng phục vụ nhiều yêu cầu đồng thời. Express đóng vai trò cung cấp khung định tuyến và hệ thống middleware để xây dựng RESTful API.
- Cơ sở dữ liệu lai (Hybrid Database): Kết hợp MongoDB và MySQL. MySQL (RDBMS, InnoDB engine) chịu trách nhiệm duy trì tính toàn vẹn dữ liệu và các giao dịch chuẩn ACID (quản lý thông tin tài khoản, đơn hàng, thanh toán). MongoDB (NoSQL Document-oriented) đảm nhiệm việc lưu trữ dữ liệu phi cấu trúc, schema động với định dạng JSON/BSON (nội dung khóa học, bài đánh giá, phản hồi).
- Giao thức WebSocket: Giao thức truyền thông hai chiều, toàn song công (full-duplex) qua cổng 80 và 443, khởi tạo thông qua cơ chế bắt tay (handshake) nâng cấp từ HTTP, duy trì kênh kết nối thời gian thực giữa máy khách và máy chủ.
- Mô hình Trí tuệ Nhân tạo và Tự động hóa:
- Kỹ thuật RAG (Retrieval-Augmented Generation): Kết hợp truy xuất tài liệu nội bộ khóa học và mô hình ngôn ngữ lớn để trả lời câu hỏi của người học.
- Thuật toán Content-Based Filtering: Xây dựng hệ thống gợi ý khóa học dựa trên ma trận đặc trưng TF-IDF.
- Nền tảng N8N: Xây dựng các quy trình (workflow) tự động hóa cho tác vụ tóm tắt bài giảng, đồng bộ embedding nội dung và cập nhật ma trận gợi ý.
- Thư viện face-api.js: Nhận diện khuôn mặt học viên qua webcam nhằm giám sát độ tập trung.
- Nền tảng Voiceflow: Thiết lập chatbot hỗ trợ khách hàng và hướng dẫn thao tác trên hệ thống.
Phương pháp nghiên cứu
Tác giả áp dụng phương pháp khảo sát thực nghiệm và mô hình hóa hệ thống phần mềm:
- Khảo sát hiện trạng nền tảng thực tế: Phân tích chức năng và tiện ích của 02 hệ thống E-learning quy mô lớn là Udemy và Coursera để rút ra bài học kinh nghiệm về cấu trúc khóa học, công cụ hỗ trợ và tích hợp AI.
| Tiêu chí phân tích | Nền tảng Udemy | Nền tảng Coursera |
|---|---|---|
| Quy mô & Định hướng | Khoảng 200.000 khóa học đa lĩnh vực; định hướng thương mại linh hoạt. | Hợp tác với các trường đại học lớn (Stanford, Harvard, MIT...) và tập đoàn công nghệ; định hướng học thuật chuyên sâu. |
| Mô hình chi phí | Đa dạng khóa học miễn phí và trả phí; thường xuyên có chương trình giảm giá. | Đăng ký theo khóa học hoặc lộ trình chứng chỉ chuyên nghiệp; có chương trình hỗ trợ nghề nghiệp. |
| Tiện ích học tập | Quản lý tiến độ, Q&A, tải tài nguyên PDF, trình biên dịch mã online, video đa tốc độ. | Phân cấp độ bài học, dự án thực hành, kiểm tra dự án có đánh giá, học đa nền tảng. |
| Ứng dụng AI | Bản thử nghiệm (beta) Chat AI Assistant giải đáp nội dung khóa học. | Tập trung vào hệ thống đề xuất khóa học và theo dõi tiến độ đào tạo. |
- Mô hình hóa phần mềm: Sử dụng ngôn ngữ mô hình hóa thống nhất (UML) để thiết kế Use Case tổng quan, bảng đặc tả chi tiết, Sequence Diagram cho các luồng xử lý chính và Class Diagram mô tả cấu trúc dữ liệu.
- Nguồn dữ liệu: Dữ liệu thông tin khóa học CNTT được thu thập từ Internet và nạp mẫu (seed data) vào cơ sở dữ liệu MySQL và MongoDB. Các tệp tin media (video bài giảng, hình ảnh, tài liệu) được lưu trữ trên Google Cloud Storage.
Thiết kế và triển khai
Hệ thống được thiết kế theo kiến trúc 3 tầng với các luồng trao đổi dữ liệu qua giao thức HTTP/HTTPS (RESTful API) và WebSocket:
- Tầng giao diện (Front-end): Phát triển bằng ReactJS kết hợp thư viện giao diện MUI (Material-UI). Hệ thống phân quyền rõ rệt thành 3 giao diện người dùng:
- Giao diện Học viên: Trang chủ, tìm kiếm khóa học, trang khóa học cá nhân (My Learning), giao diện xem bài giảng video, làm bài kiểm tra (Quiz/Assignment), tab Q&A, tab Review và khung Chatbot AI.
- Giao diện Giảng viên: Bảng điều khiển quản lý khóa học (Manage Courses), công cụ thiết kế khóa học trực quan (Design Course), hỗ trợ tải nội dung qua tập tin Excel.
- Giao diện Quản trị viên (Admin): Bảng thông số hệ thống (Dashboard), quản lý tài khoản người dùng, thống kê báo cáo chi tiết và quản lý doanh thu.
- Tầng xử lý nghiệp vụ (Back-end): Được xây dựng trên môi trường Node.js và Express.js. Tầng này cung cấp các endpoint API phục vụ việc xác thực tài khoản qua chuỗi JWT, xử lý logic thanh toán điện tử thông qua cổng PayOS, kích hoạt gửi thông báo tự động bằng dịch vụ Gmail thông qua thư viện Nodemailer, và xử lý luồng kết nối WebSocket thời gian thực giữa các thành viên.
- Tích hợp quy trình tự động hóa AI (N8N Workflows):
- Workflow Chat AI: Tiếp nhận câu hỏi, thực hiện truy xuất thông tin liên quan (Retrieval) từ kho bài giảng đã được tạo vector embedding, sau đó gửi ngữ cảnh vào mô hình ngôn ngữ để tạo phản hồi (Generation).
- Workflow Tóm tắt bài giảng: Tự động trích xuất nội dung bài học và xử lý tóm lược ý chính phục vụ việc ôn tập.
- Workflow Gợi ý khóa học: Lên lịch định kỳ cập nhật ma trận đặc trưng TF-IDF để phân tích mức độ liên quan giữa thông tin khóa học và sở thích của người học.
- Môi trường triển khai:
- Môi trường Local: Sử dụng Visual Studio Code kết hợp tính năng chuyển tiếp cổng (port forwarding) thông qua tài khoản GitHub, cấu hình public URL phục vụ kiểm thử nhận dữ liệu Webhook từ cổng PayOS.
- Môi trường Production: Mã nguồn ứng dụng và hệ quản trị cơ sở dữ liệu được cài đặt, vận hành trên máy chủ ảo VPS (Virtual Private Server), cấu hình tên miền (domain) chính thức để phát hành ra môi trường mạng diện rộng.
- Kiểm thử hệ thống: Quá trình kiểm thử chức năng được thực hiện với 34 ca kiểm thử (test cases) độc lập, bao quát các nghiệp vụ xác thực, mua khóa học, học tập tương tác, chấm điểm bài tập, tích hợp AI và quản trị dữ liệu. Toàn bộ 34 ca kiểm thử đều đạt kết quả Pass (tỷ lệ thành công 100%), xác nhận tính tương thích và vận hành ổn định trên các trình duyệt web.
Nội dung chính theo từng chương
Chương 1: Mở đầu
Chương này làm rõ bối cảnh phát triển của giáo dục trực tuyến sau đại dịch Covid-19, phân tích những điểm nghẽn của hình thức học truyền thống và khẳng định sự phù hợp của phương thức E-learning đối với đào tạo nhân lực CNTT. Tác giả xác định đối tượng nghiên cứu là các công nghệ web fullstack và mô hình AI; phạm vi đề tài giới hạn trong việc tích hợp MERN Stack, cơ sở dữ liệu kết hợp và các dịch vụ AI vệ tinh; đồng thời công bố mục tiêu xây dựng một nền tảng học trực tuyến hoàn chỉnh có khả năng mở rộng.
Chương 2: Cơ sở lý thuyết
Nội dung chương trình bày chi tiết về kiến trúc MERN Stack và phân tích sâu cơ chế hoạt động của từng công nghệ thành phần:
- Trình bày kiến trúc Event-driven và Non-blocking I/O của Node.js, chỉ ra ưu điểm xử lý đa kết nối nhanh và nhược điểm khi gặp các tác vụ xử lý tính toán nặng trên CPU.
- Giới thiệu Express Framework với cấu trúc quản lý API và middleware.
- Phân tích cơ chế Document-based của MongoDB và cấu trúc quan hệ chuẩn hóa của MySQL; luận giải mô hình phối hợp giữa MySQL và MongoDB nhằm tối ưu việc lưu trữ giữa tính toàn vẹn giao dịch và tính linh hoạt dữ liệu, đồng thời chỉ ra độ phức tạp trong việc duy trì đồng bộ dữ liệu giữa hai hệ CSDL này.
- Trình bày nguyên lý Virtual DOM, kiến trúc thành phần (Component-Based) và cơ chế React Hooks của ReactJS.
- Trình bày giao thức WebSocket, quy trình bắt tay HTTP Upgrade và cơ chế trao đổi dữ liệu toàn song công với độ trễ thấp.
Chương 3: Khảo sát hiện trạng và mô hình hóa yêu cầu
Chương này phân tích khảo sát chi tiết 02 nền tảng học trực tuyến quy mô lớn:
- Phân tích các phân hệ chức năng trên Udemy (hệ thống 200.000 khóa học, ứng dụng di động, chứng nhận khóa học, trình biên dịch mã trực tuyến, trợ lý Chat AI Assistant bản beta).
- Phân tích các đặc trưng trên Coursera (mô hình liên kết viện - trường, chứng chỉ nghề nghiệp, hệ thống bài tập thực hành theo dự án). Từ kết quả khảo sát, tác giả tổng hợp hệ thống yêu cầu chức năng (xác thực tài khoản, lưu trữ dữ liệu đa phương tiện, tra cứu khóa học, đánh giá Q&A, thanh toán trực tuyến) và yêu cầu phi chức năng (tốc độ xử lý, tính mở rộng, khả năng tương thích trình duyệt). Phần sau của chương mô hình hóa các yêu cầu thông qua hệ thống lược đồ Use Case và bảng đặc tả chi tiết cho 3 tác nhân: Admin, Giảng viên và Học viên.
Chương 4: Thiết kế phần mềm
Chương này tập trung vào thiết kế kỹ thuật của hệ thống:
- Xây dựng các lược đồ tuần tự (Sequence Diagram) và sơ đồ hoạt động (Activity Diagram) cho các nghiệp vụ trọng điểm: Đăng nhập/Đăng ký tài khoản; Tham gia nội dung khóa học; Thực hiện bài tập Assignment; Tìm kiếm khóa học; Tạo khóa học (bao gồm tạo thủ công và tạo qua tệp tin Excel); Đánh giá khóa học; Tóm tắt nội dung bài giảng bằng AI; Mua khóa học; Gợi ý khóa học; Trao đổi Q&A và tương tác Chat AI.
- Xây dựng lược đồ lớp (Class Diagram) thể hiện cấu trúc thuộc tính và quan hệ giữa các thực thể dữ liệu.
- Thiết kế chi tiết giao diện người dùng (UI mockup và giao diện thực tế) cho 4 phân hệ: Giao diện hệ thống, Giao diện học viên, Giao diện giảng viên và Giao diện quản trị viên.
Chương 5: Cài đặt và kiểm thử
Chương này tổng kết danh mục công cụ, thư viện và công nghệ triển khai:
- Trình bày quy trình cài đặt môi trường vận hành: Hướng dẫn cấu hình môi trường Local (chuyển tiếp cổng qua VSCode/GitHub để nhận Webhook thanh toán PayOS) và cấu hình môi trường Production trên hệ thống VPS gắn tên miền.
- Trình bày chi tiết bảng kiểm thử chức năng (Bảng 48) và bảng thống kê kiểm thử (Bảng 49) với 34 test cases được thực thi, phản ánh tỷ lệ vượt qua đạt 100%.
Chương 6: Kết luận
Chương cuối tóm tắt lại khối lượng kiến thức lý thuyết đã tích lũy (kiến trúc phân tầng, quản trị CSDL lai, tích hợp AI, tối ưu hóa giao thức truyền thông); liệt kê các kết quả đã cài đặt thực tế vào sản phẩm website; thẳng thắn chỉ ra các hạn chế kỹ thuật hiện hữu và đề xuất phương hướng phát triển hệ thống trong tương lai.
Kết quả và đóng góp
Kết quả chính
Dự án đã hoàn thành việc xây dựng một hệ thống website E-learning phục vụ đào tạo các khóa học CNTT với các kết quả cụ thể được ghi nhận trong văn bản:
- Xây dựng hoàn chỉnh kiến trúc ứng dụng MERN Stack kết hợp cơ sở dữ liệu kép MySQL và MongoDB, lưu trữ tệp tin media trên Google Cloud Storage.
- Xây dựng đầy đủ các giao diện trực quan cho 3 nhóm đối tượng: Học viên, Giảng viên và Quản trị viên, tương thích trên mọi trình duyệt web tiêu chuẩn.
- Tích hợp thành công các phân hệ Trí tuệ Nhân tạo và Tự động hóa:
- Trợ lý Chatbot AI ứng dụng kiến trúc RAG hỗ trợ giải đáp thắc mắc dựa trên tập dữ liệu bài học.
- Tự động hóa quy trình tóm tắt nội dung bài giảng thông qua nền tảng N8N.
- Thuật toán gợi ý khóa học Content-Based Filtering ứng dụng kỹ thuật biểu diễn văn bản TF-IDF.
- Giám sát độ tập trung của người học thông qua thư viện thị giác máy tính face-api.js.
- Trợ lý ảo tương tác hỗ trợ khách hàng được xây dựng qua nền tảng Voiceflow.
- Tích hợp cổng thanh toán trực tuyến PayOS và dịch vụ gửi thư tự động qua Gmail với thư viện Nodemailer.
- Hoàn thành kiểm thử hệ thống với 34/34 ca kiểm thử đạt kết quả Pass.
| Hạng mục chức năng được kiểm thử | Số lượng test cases | Kết quả ghi nhận |
|---|---|---|
| Nghiệp vụ tài khoản (Đăng ký, Đăng nhập, Quản lý thông tin) | 6 | 6/6 Pass |
| Nghiệp vụ khóa học (Tìm kiếm, Xem chi tiết, Thiết kế, Tải file Excel) | 8 | 8/8 Pass |
| Nghiệp vụ thanh toán & Khuyến mãi (Thanh toán PayOS, Voucher) | 4 | 4/4 Pass |
| Nghiệp vụ học tập & Tương tác (Video, Quiz, Assignment, Q&A, Review) | 8 | 8/8 Pass |
| Tính năng AI (Chatbot RAG, Tóm tắt bài giảng, Nhận diện độ tập trung) | 5 | 5/5 Pass |
| Nghiệp vụ Quản trị hệ thống (Thống kê, Quản lý người dùng, Doanh thu) | 3 | 3/3 Pass |
| Tổng cộng | 34 | 34/34 Pass (100%) |
Đóng góp của đề tài
- Khóa luận đã hiện thực hóa mô hình kết hợp cơ sở dữ liệu quan hệ (MySQL) và phi quan hệ (MongoDB) trong một hệ thống giáo dục trực tuyến, phân định rõ ràng giữa việc đảm bảo tính toàn vẹn giao dịch tài chính và tính linh hoạt trong lưu trữ nội dung bài học.
- Đồ án minh chứng cho khả năng kết hợp các mô hình AI mới (RAG, AI Automation N8N, Content-Based Filtering) vào một hệ thống web thực tế để tự động hóa các tác vụ quản lý và hỗ trợ học viên, vượt ra khỏi các khuôn mẫu website quản lý nội dung thông thường.
Hạn chế và hướng nghiên cứu tiếp
Dựa trên những đánh giá tự thân được tác giả trình bày trong văn bản:
- Hạn chế về bảo mật: Mặc dù hệ thống đã sử dụng JSON Web Token (JWT) để xác thực và phân quyền cho các yêu cầu API, văn bản nhận định rằng mức độ an toàn thông tin của website và việc bảo vệ dữ liệu người dùng chuyên sâu vẫn là một hạn chế còn tồn tại cần được hoàn thiện.
- Hạn chế trong quản trị cơ sở dữ liệu kép: Việc duy trì đồng thời hai hệ CSDL MySQL và MongoDB làm gia tăng độ phức tạp trong bảo trì, vận hành và tiềm ẩn nguy cơ lệch pha hoặc độ trễ trong quá trình đồng bộ dữ liệu khi quy mô người dùng tăng cao.
- Hướng phát triển trong tương lai:
- Tăng cường các biện pháp an ninh mạng, mã hóa dữ liệu người dùng và kiểm soát chặt chẽ các lỗ hổng trên giao thức truyền thông WebSocket cũng như các API endpoints.
- Tối ưu hóa hiệu năng truy vấn dữ liệu lớn và hoàn thiện cơ chế đồng bộ tự động giữa hai hệ CSDL.
- Nâng cấp và mở rộng năng lực xử lý của các mô hình AI (RAG, tự động hóa với N8N) nhằm nâng cao độ chính xác của phản hồi và tối ưu hệ thống gợi ý bài học.
Giá trị tham khảo
Tài liệu khóa luận có giá trị tham khảo thiết thực đối với:
- Sinh viên ngành Công nghệ phần mềm và Công nghệ thông tin: Có thể sử dụng đồ án làm tài liệu tham khảo mẫu về quy trình phát triển ứng dụng Fullstack từ khâu khảo sát hiện trạng, mô hình hóa UML (Use Case, Sequence, Class Diagram) đến khâu cài đặt và kiểm thử.
- Người nghiên cứu kiến trúc cơ sở dữ liệu hỗn hợp (Hybrid Architecture): Đồ án cung cấp góc nhìn thực tế về cách tổ chức và phân chia trách nhiệm dữ liệu giữa MySQL và MongoDB trong cùng một hệ thống nghiệp vụ web.
- Người phát triển ứng dụng tích hợp AI vào Web: Các workflow N8N, kỹ thuật Chatbot RAG, và thuật toán gợi ý khóa học TF-IDF được trình bày trong đồ án là những trường hợp nghiên cứu cụ thể cho việc nhúng dịch vụ AI vào sản phẩm phần mềm.
Câu hỏi thường gặp
1. Khóa luận sử dụng kiến trúc và công nghệ nền tảng nào để phát triển website?
Website được phát triển dựa trên kiến trúc MERN Stack, trong đó giao diện người dùng sử dụng thư viện ReactJS kết hợp MUI, tầng backend xây dựng bằng Node.js và Express Framework, giao tiếp qua lại bằng RESTful API và giao thức WebSocket. Hệ thống kết hợp hai cơ sở dữ liệu là MySQL và MongoDB, lưu trữ tệp đa phương tiện trên Google Cloud Storage.
2. Tại sao hệ thống lại kết hợp cả cơ sở dữ liệu MySQL và MongoDB?
Theo tác giả, việc kết hợp nhằm tận dụng thế mạnh của từng loại CSDL: MySQL (hệ quản trị quan hệ, hỗ trợ ACID) được sử dụng để quản lý các thông tin đòi hỏi tính toàn vẹn và nhất quán cao như tài khoản, giao dịch và thanh toán; trong khi MongoDB (NoSQL) được dùng để lưu trữ dữ liệu có cấu trúc linh hoạt, schema động như đánh giá, phản hồi và nội dung bài học.
3. Tính năng gợi ý khóa học cho học viên được xây dựng bằng phương pháp nào?
Tính năng gợi ý khóa học trong đồ án được xây dựng dựa trên giải thuật lọc theo nội dung (Content-Based Filtering), sử dụng nền tảng N8N để lên lịch định kỳ cập nhật ma trận đặc trưng TF-IDF phân tích nội dung khóa học.
4. Chức năng Chatbot AI hỗ trợ học viên hoạt động như thế nào?
Chatbot AI của hệ thống được xây dựng theo kiến trúc RAG (Retrieval-Augmented Generation). Khi người dùng đặt câu hỏi, hệ thống sẽ truy xuất nội dung liên quan từ bộ dữ liệu khóa học thông qua embedding, sau đó cung cấp ngữ cảnh cho mô hình ngôn ngữ lớn (LLM) để sinh câu trả lời chính xác theo bài giảng.
5. Kết quả kiểm thử chức năng của hệ thống đạt được như thế nào?
Hệ thống đã trải qua quá trình kiểm thử chức năng với tổng cộng 34 ca kiểm thử (test cases). Tất cả 34 test cases đều đạt kết quả Pass (tỷ lệ 100%), chứng minh tính ổn định và mức độ hoàn thiện các yêu cầu đề ra.
Kết luận
Khóa luận tốt nghiệp của nhóm tác giả Đặng Quang Trường và Lê Thành Vinh đã xây dựng thành công nền tảng website E-learning phục vụ đào tạo CNTT dựa trên công nghệ MERN Stack kết hợp CSDL lai MySQL và MongoDB. Đề tài tích hợp hiệu quả các giải pháp công nghệ hiện đại như giao tiếp thời gian thực WebSocket, trợ lý Chatbot RAG, gợi ý khóa học TF-IDF, giám sát tập trung qua face-api.js và tự động hóa tác vụ với N8N. Kết quả kiểm thử với 34/34 ca kiểm thử đạt yêu cầu khẳng định tính khả thi của hệ thống, đồng thời mở ra định hướng nghiên cứu tiếp theo về nâng cao bảo mật và tối ưu hóa hạ tầng dữ liệu lớn.