luận văn hay đại học sư phạm mô hình hệ thống E Learning, các hệ thống tổ chức thi, kiểm tra và đánh giá kiến thức; phân tích ưu nhược điểm của các hệ thống và đề xuất một hệ thống tối ưu 1.1 Thực trạng và những vấn đề đặt ra Hiện nay, việc đưa các ứng dụng công nghệ thông tin vào trong quá trình dạy học nói riêng và quá trình giáo dục nói chung đã và đang trở thành một nhu cầu tất yếu của xã hội hiện đại. Ứng dụng công nghệ thông tin giúp việc dạy và học diễn ra dễ dàng, trực quan và mang lại nhiều hiệu quả tích cực. E Learning là một phương tiện cũng là một giải pháp hữu hiệu giải quyết nhu cầu học tập và giao tiếp chung của cả cộng đồng và nhu cầu cụ thể của từng cá nhân. Những lợi ích mà E Learning mang lại cho con người là rất lớn như: giúp người dạy và người học rút ngắn được khoảng cách về địa lý, tiết kiệm thời gian và chi phí đi lại phục vụ cho việc tham gia lớp học thực tế, hơn nữa còn giải quyết được các khó khăn liên quan đến việc tổ chức lớp học (thời gian, địa điểm diễn tổ chức lớp học, giáo viên…). Nói tóm lại, E Learning mang lại cơ hội học tập và tiếp cận tri thức lớn hơn cho học sinh. Hiện nay, trên thế giới nói chung và Việt Nam nói riêng các công cụ E Learning rất phổ biến, tuy nhiên chưa thực sự hoàn thiện. Liên quan đến nội dung nghiên cứu của đề tài, đã có công trình và hệ thống ứng dụng như sau: Xét một số hệ thống E Learning phổ biến trên thế giới như: eLecta Live, IntoWeb, Virtual Blackboard, Moodle, và trang học trực tuyến Hocmai.vn của Việt Nam với khóa luận (E Learning FIT) với các tiêu chí cụ thể gồm: chia sẻ tài liệu học tập sống, bảng tương tác thông minh giữa giáo viên với học sinh, hệ thống kiểm tra đánh giá, hệ thống xây dựng dựa trên nền tảng Web, quá trình giảng dạy tương tác theo phương pháp conference giữa học sinh với giáo viên và với các bạn khác trong lớp học ta thu được kết quả ở bảng 1.1: Bảng 1.1: So sánh một số hệ thống E Learning phổ biến ở Việt Nam và trên thế giới Sản phẩm Chia sẻ tài liệu giảng sống Bảng tương tác theo thời gian thực Hệ thống kiểm tra đánh giá Dựa trên nền tảng Web Giảng dạy tương tác theo phương pháp conference eLecta Live v v IntoWeb v v Virtual Blackboard v v v Moodle v v v Hocmai.vn v v v v Khóa luận ( E – Learning FIT ) v v v v v Từ kết quả khảo sát cho thấy hầu hết các hệ thống E Learning hiện nay vẫn chưa hoàn thiện và thiếu xót ở một mặt nào đó, kiến cho người dùng chưa thực sự hài lòng khi sử dụng và làm cho quá trình dạy và học chưa có được kết quả tốt nhất. 1.2 Phương hướng giải quyết Với ý tưởng xây dựng một hệ thống E Learning kế thừa các tính năng hữu ích từ các hệ thống trước đó và tích hợp thêm nhiều chức năng mới nhằm đem lại sự tiện lợi và thỏa mãn thu cầu của người dùng. Khóa luận đặt ra những mục tiêu hướng tới xây dựng E Learning FIT như một lớp học thông minh có thể thực hiện: Quá trình dạy và học giữa giáo viên và học sinh được diễn ra trong thời gian thực. Giáo viên upload trước các tài liệu liên quan đến nội dung bài học đề học sinh download về tìm hiểu và tham khảo trước. Học sinh theo dõi giáo viên giảng bài thông qua bảng tương tác diễn ra trong thời gian thực. Học sinh xem trước các slide của bài giảng. Ghi lại và lưu trữ quá trình giảng dạy của giáo viên dưới dạng video. Học sinh và giáo viên có thể trao đổi với nhau thông qua các thiết bị hỗ trợ như voice, Webcam, camera… Giữa các học sinh trong lớp có thể tiến hành thảo luận, trao đổi nhóm. Hệ thống đánh giá kết quả học tập của học sinh thông qua các bài kiểm tra. Quá trình làm bài kiểm tra của học sinh diễn ra dưới sự giám sát của giáo viên. Mặc dù là giảng dạy thông qua các kênh giao tiếp từ xa nhưng hệ thống mới sẽ đem lại môi trường giảng dạy và học tập tốt nhất cho người dùng như một lớp học thực tế : Ngôn ngữ giao tiếp tự nhiên: vì quá trình giảng dạy diễn ra trong thời gian thực nên giáo viên vẫn sử dụng các phương tiện là ngôn ngữ nói và viết kết hợp với các giáo cụ trực quan như slide bài giảng, video, các công cụ học tập thí nghiệm khác đối với ngành học khoa học tự nhiên…để thể hiện nội dung bài giảng. Nội dung bài giảng sẽ được truyền tải đến người học một các trân thực nhờ sự hỗ trợ của các thiết bị như loa, video, voice, camera… Kết hợp giảng dạy với quản lý lớp học. Đảm bảo chất lượng dạy học: dù là học trực tuyến nhưng giáo viên vẫn có thể biết được chất lượng giảng dạy bằng cách đưa ra các câu hỏi tương tác trực tiếp cho học sinh trong quá trình học. Bên cạnh đó, học sinh cũng có thể gửi những thắc mắc, phản hồi về nội dung bài học cho giáo viên để giáo viên giải thích lại. CHƯƠNG 2 MÔ TẢ TỔNG THỂ HỆ THỐNG Chương 2 mô tả toàn cảnh hệ thống, các yêu cầu về công nghệ ứng dụng, kỹ thuật lập trình trong quá trình phát triển và cài đặt hệ thống. Sự phát triển như vũ bão của Internet đã biến cả thế giới rộng lớn thành một ngôi làng nhỏ bé, khoảng cách địa lý không còn là trở ngại để cho mọi người trên khắp thế giới có thể nhìn thấy nhau, giao tiếp, truyền đạt thông tin cho nhau. Trong những năm gần đây khái niệm về mạng xã hội và số lượng người dùng tham gia mạng xã hội như Facebook, Twitter hay Google + … ra tăng chóng mặt và có tác động sâu vào đời sống con người. Ban đầu tưởng chừng như khái niệm mạng xã hội không liên quan đến Elearing. Nhưng nếu biết cách ứng dụng và phát triển mô hình mạng xã hội theo hướng giáo dục ta sẽ xây dựng được một hệ thống đào tạo trực tuyến thu hút được số lượng lớn người quan tâm đặc biệt là đối với lứa tuổi học sinh, sinh viên. Ngoài ra một ý tưởng nữa là tổ chức E Learning trong thời gian thực. Tức là tổ chức đào tạo theo mô hình lớp học thông minh. Lớp học thông minh, diễn ra trong môi trường ảo, học sinh và giáo viên giao tiếp với nhau thông qua các thiết bị truyền thông được kết nối mạng. Lớp học thông minh khác với lớp học thực tế là người dạy và người học không cần phải ở cùng một địa điểm mà quá trình dạy và học vẫn diễn ra bình thường như lớp học thực tế. Bên cạnh đó, với sự hỗ trợ của công nghệ quá trình giảng bài của giáo viên có thể được ghi lại và lưu trữ, giúp cho học sinh xem lại để hiểu bài tốt hơn. Để tham gia vào lớp học thông minh như vậy đòi hỏi, học sinh và giáo viên phải tự trang bị các phương tiện hỗ trợ như: máy tính cá nhân, camera, voice … nhằm đem lại chất lượng hình ảnh và âm thanh tốt nhất. Hiện trạng, các hệ thống đào tạo trực tuyến thường bị đánh giá thấp trong việc kiểm tra chất lượng học và tiếp thu bài của học sinh. Nhưng đối với mô hình lớp học thông minh diễn ra trong thời gian thực có tính chất tương tác cao giữa người dạy và người học, giáo viên có thể trực tiếp đưa ra các câu hỏi phản ứng nhanh yêu cầu học sinh trả lời ngay trong quá trình giảng dạy. Đồng thời, sau mỗi bài học hoặc trong quá trình học, giáo viên có thể thiết kế các bài kiểm tra dưới hình thức trắc nghiệm. Học sinh sẽ làm bài kiểm tra dưới sự giám sát của giáo viên (thông qua hỗ trợ hình ảnh từ camera) để đảm bảo tính khách quan và trung thực. Đối với mô hình lớp học thông minh, lớp học có thể được mở rộng với số lượng học sinh lớn hơn chứ không phải là tương tác theo hình thức 1 thầy, 1 trò. Quá trình giảng dạy sẽ diễn ra dưới dạng “conference” giữa học sinh với giáo viên và giữa học sinh với nhau, trong đó giáo viên đóng vai trò chủ đạo dẫn dắt toàn bộ hoạt động của lớp học. 2.1 Mô tả hệ thống Hệ thống đào tạo và đánh giá tương tác theo thời gian thực (E – Learning FIT) hướng tới hai đối tượng chính tham gia vào các lớp học thông minh gồm giáo viên và học sinh. Để tham gia vào hệ thống người dùng phải đăng ký một tài khoản (account). Người dùng sử dụng tài khoản đó để đăng nhập vào hệ thống. Hệ thống sẽ quản lý người dùng thông qua các thông tin cá nhân được khai báo khi đăng ký account. Đồng thời, người dùng cũng có thể cập nhật hoặc chỉnh sửa các thông tin cá nhân của mình. Hệ thống bao gồm nhiều lớp học thuộc nhiều lĩnh vực khoa học khác nhau. Mỗi lớp học có thể được tạo ra bởi bất cứ người dùng nào, và mặc định người tạo ra lớp học đóng vai trò là giáo viên của chính lớp học đó. Khi tạo lớp học người dùng chú ý đến tên gọi cho lớp học đó, bởi tên gọi của lớp học sẽ trở thành từ khóa để các User khác trong hệ thống có thể tìm kiếm một các dễ dàng. Đối với đối tượng người dùng muốn tham gia vào một lớp học bất kỳ có thể tìm kiếm lớp học đó thông từ khóa liên quan đến tên lớp học. Sau đó, người dùng phải gửi yêu cầu tham gia lớp học đến giáo viên quản lý lớp học đó. Giáo viên khi nhận được yêu cầu muốn tham gia lớp học từ người dùng khác có thể chấp nhận hoặc từ chối yêu cầu. Ngoài ra giáo viên còn có thể gửi yêu cầu mời tham gia lớp học đến các User khác và đợi phản hồi từ các User đó. Người dùng khi được chấp nhận hoặc chấp nhận tham gia lớp học do một người khác tạo ra, sẽ đóng vai trò là học sinh trong lớp học đó. Giáo viên đóng vai trò chính trong lớp học, giáo viên là người quyết định đến nội dung bài học, thời khóa biểu, lịch kiểm tra. Tất cả thông tin về lớp học sẽ được giáo viên mô tả đầy đủ, học sinh có thể theo dõi các thông tin đó bằng cách truy cập vào lớp học. Theo thời khóa biểu giáo viên sắp xếp, đến giờ học học sinh phải chuẩn bị các đồ dùng, thiết bị học tập cần thiết sau đó ngồi trước máy tính có kết nối Internet và trang bị voice, Webcam để sẵn sàng tham gia vào lớp học. Để tạo điều kiện cho học sinh có thể chuẩn bị tốt cho nội dung bài học, giáo viên có thể upload các tài liệu liên quan lên hệ thống. Học sinh có thể vào lớp học và download về tham khảo trước. Quá trình dạy và học diễn ra tương tác trong thời gian thực, mặc dù có khoảng cách về địa lý nhưng học sinh và giáo viên có thể nhìn thấy nhau, giao tiếp với nhau như ở trong lớp học thực tế. Giáo viên tiến hành hoạt động giảng dạy, học sinh tiếp thu kiến thức từ nhiều kênh thông tin gồm: bài giảng trực tiếp từ giáo viên, các video, slide bài giảng …Trong quá trình học, nếu có thắc mắc học sinh có thể hỏi trực tiếp giáo viên và ngược lại giáo viên có thể kiểm tra mức độ hiểu bài của học sinh bằng những câu hỏi phản ứng nhanh, yêu cầu học sinh trả lời ngay. Nội dung bài giảng còn có thể được giáo viên biểu diễn thông qua bảng tương tác thông minh. Giáo viên sẽ trình bày một số kiến thức trên bảng đó và chia sẻ nội dung bảng cho học sinh. Trong lớp học, không chỉ có hoạt động giao tiếp giữa giáo viên với học sinh, mà còn có cả hoạt động trao đổi bài và tranh luận giữa học sinh với nhau. Người dùng đóng vai trò là học sinh trong lớp học có thể quan sát được những người cùng tham gia lớp học với mình. Hình thức tổ chức lớp học giống như một cuộc hội thảo trực tuyến “conference” mà giáo viên đóng vai trò chính. Về kiểm tra, đánh giá: trong quá trình học, giáo viên thiết kế các bài kiểm tra, sắp xếp lịch kiểm tra và thông báo cho học sinh. Học sinh làm bài kiểm tra dưới sự giám sát của giáo viên thông qua hình ảnh từ camera phía client của học sinh truyền tải đến giáo viên để đảm bảo tính trung thực Người dùng tham gia hệ thống có thể tạo các chủ đề thảo luận, người tạo chủ đề sẽ đóng vai trò là tác giả có quyền quản lý về mặt nội dung chủ đề và thêm hoặc block người dùng tham gia chủ đề. Các User khác khi được tham gia chủ đề cũng có quyền thêm User cùng theo dõi chủ đề, từ chối theo dõi chủ đề. Người dùng cũng có thể tạo các blog viết về một vấn đề nào đó, tác giả của blog có quyền cho phép ai sẽ được xem và bình luận về blog của mình. Trong giáo dục hình thức học nhóm là một phương pháp tích cực phát huy hiệu quả tốt trong thực tế. Người dùng bất kỳ có thể tạo các nhóm, để cùng nhau bài luận, chia sẻ về các bài học và các vấn đề liên quan. Nhóm trưởng là người tạo nhóm có thể chỉnh sửa, xóa nhóm được tạo, gửi yêu cầu người dùng khác tham gia nhóm hoặc chấp nhận yêu cầu tham gia nhóm. Kế thừa tư tưởng của mô hình mạng xã hội, người dùng tham gia hệ thống này có thể theo dõi và giao tiếp với người dùng khác bằng kết bạn. Để kết bạn với một người dùng bất kỳ, đầu tiên phải tìm kiếm người dùng đó trong hệ thống, sau đó gửi yêu cầu kết bạn đến người dùng đó và đợi phản hồi. Người dùng bất kỳ, nhận được yêu cầu kết bạn từ một người khác có thể xem thông tin cá nhân của người đó và quyết định đồng ý hoặc từ chối kết bạn. Sau khi kết bạn, vì bất kỳ một lý do gì, người dùng cũng có thể hủy kết bạn. Người dùng có thể trông thấy trạng thái của tất cả các User trong danh sách bạn bè và có thể chat với bất kỳ bạn bè nào đang online. Hệ thống sẽ được vận hành và quản lý bởi người quản trị, admin hệ thống sẽ tác động vào cơ sở dữ liệu để quản lý người dùng, quản lý trạng thái (block unblock) của các chủ đề, bài kiểm tra, nhóm, blog. 2.2 Kỹ thuật công nghệ 2.2.1 Hệ điều hành và trình duyệt Web Hệ thống được xây dựng chạy trên hệ điều hành Window, Ubuntu hoặc Linux. Hệ thống đào tạo và đánh giá tương tác trong thời gian thực có thể chạy được trên các trình duyệt Web: Google Chrome, Mozilla FireFox 1.0 trở lên và Internet Explorer 5.0 trở lên. Lưu ý: Vì hệ thống được phát triển trên cơ sở các công cụ đều là mã nguồn mở (Xampp, ngôn ngữ PHP, MySQL, Red5 Server, Java server Tomcat ) nên cài trên hệ điều hành mã nguồn mở như Ubuntu sẽ dễ dàng, thuận tiện, và tính đồng nhất cao hơn. 2.2.2 Các phần mềm hỗ trợ phát triển hệ thống a. Xampp Xampp là một bộ công cụ mã nguồn mở dùng để tạo Server ảo hỗ trợ trong lập trình PHP. Xampp là một gói phần mềm tích hợp sẵn server Apache, MySQL server, FTP Server, Mail server, PHP, Tomcat server (từ bản 1.8.1). Bên cạnh đó Xampp còn hỗ trợ công cụ quản trị cơ sở dữ liệu MySQL bằng PhpMyAdmin và nhiều tiện ích khác. Hình 2.1: Bảng điểu khiển của Xampp b. NetBeans IDE NetBeans IDE là một công cụ hỗ trợ lập trình đa ngôn ngữ. Đây cũng là một phần mềm mã nguồn mở dễ dàng sử dụng. Trong quá trình phát triển hệ thống đào tạo và đánh giá tương tác theo thời gian thực chủ yếu bằng ngôn ngữ PHP, chúng ta có thể cài đặt NetBeans IDE for PHP development nhỏ gọn hơn bản đa ngôn ngữ. Hình 2.2: Giao diện lập trình ngôn ngữ PHP bằng NetBeans IDE 7.2.1 Ngoài NetBeans IDE ra còn có một số phần mềm hỗ trợ lập trình PHP như PHP Designer, Notepad++, Adobe Dreamweaver … c. Red5 Server Để hiện thực hóa tính tương tác giữa các thành viên trong lớp học (giữa giáo viên với học sinh, giữa các học sinh với nhau) giải pháp đưa ra sử dụng một Server Media như một thư viện các ứng dụng Flash hỗ trợ các chức năng đa phương tiện diễn ra trong thời gian thực. Hầu hết các hệ thống hiện nay đều sử dụng server media là Adobe Flash Server, tuy nhiên server Adobe Flash là một phần mềm độc quyền, sẽ làm phát sinh nhiều chi phí khi vận hành hệ thống. Vì vậy nên chọn Red5 Server là một máy chủ Flash RTMP mã nguồn mở được viết bằng ngôn ngữ Java hỗ trợ các dịch vụ hoàn toàn miễn phí như: Streaming audiovideo (FLVMP3) là dịch vụ truyền tải trực tiếp dữ liệu dạng âm thanh, hình ảnh thu được từ các thiết bị như Voice chat, camera có định dạng file .mp3 và .flv giữa các client được kết nối Internet thông qua sự điều phối của một Server media mà trong trường hợp này chính là Red5 Server. Recording client streaming (FLV) tức là ghi nhớ và lưu trữ lại các dữ liệu dạng âm thanh, hình ảnh… đã từng được truyền tải giữa các client chỉ hỗ trợ file có định dạng .flv . Live streaming publishing – đây là dịch vụ xuất dữ liệu dạng âm thanh, hình ảnh, video trực tiếp. Shared Objects – là dịch vụ chia sẻ dữ liệu giữa các client. Remoting – điều khiển và kết nối từ xa. Red5 server khi hoạt động có thể chiếm dụng một số Port mặc định là 5080, 8088, 1935, 9035. Server Red5 có thể cài đặt và hoạt động tốt trên các hệ điều hành mã nguồn mở như Ubuntu, Linux hoặc trên hệ điều hành Window. Khi cài đặt trên Window thông thường mặc định port cho Red5 là cổng 5080. Do Red5 được viết bằng ngôn ngữ Java nên cần có trước khi cài đặt server Red5 cần cài đặt trước đó một máy chủ chạy Java chính là Tomcat Server. Tomcat sẽ đóng vai trò triển khai các ứng dụng của Red5. Vì hệ thống phát triển bằng ngôn ngữ PHP trên Xampp nên ta có thể cài phiên bản Xampp hỗ trợ cả Tomcat server. Hình 2.3: Server Tomcat d. Eclipse Eclipse là phần mềm được sử dụng phổ biến để viết các chương trình bằng ngôn ngữ lập trình Java. Sở dĩ, cần dùng Eclipse trong quá trình xây dựng hệ thống này là vì hệ thống có phần kết nối với các ứng dụng Red5 application được viết bằng ngôn ngữ Java để thực hiện các chức năng đa phương tiện tương tác trong thời gian thực. Hình 2.4 : Eclipse dùng để phát triển ứng dụng Java 2.2.3 Yêu cầu phần cứng Để có thể tiến hành cài đặt và truy cập sử dụng hệ thống với vai trò như là học sinh và giáo viên thì cần có sự hỗ trợ phần cứng cần thiết bao gồm các thiết bị sau: Máy tính được kết nối Internet. Các thiết bị âm thanh : Mircophone, headphone . Các thiết bị hỗ trợ hình ảnh : Camera, Webcam.
Trang 1Trang 1
MỞ ĐẦU1 Lý do chọn đề tài
Ngày nay, nền kinh tế thế giới đang bước vào giai đoạn kinh tế tri thức, đòi hỏi độingũ lao động có trình độ cao Do vậy, việc nâng cao hiệu quả chất lượng giáo dục là yếutố sống còn của mỗi quốc gia, công ty, gia đình và cá nhân Việc học không chỉ bó gọntrong việc học phổ thông, học nghề, học đại học mà học suốt đời, học mọi lúc, mọi nơi.
Sự phát triển mạnh mẽ của công nghệ thông tin đã tác động vào môi trường học tập,nghiên cứu một cách rõ nét, đó là xu hướng tìm kiếm một phương pháp sáng tạo để thựchiện các nghiên cứu và một môi trường học tập thuận tiện hơn dựa trên công nghệ thôngtin và truyền thông Hầu hết học sinh, sinh viên ngày nay đều được hoặc tự trang bịinternet, máy tính xách tay, Webcam, headphone và các phát minh tiên tiến khác nhờcông nghệ Nền giáo dục thế giới vì vậy đang gắng liền với sự bùng nổ của các khái niệm:phòng học ảo, E - Learning, mạng giáo dục và các hệ thống tổ chức thi an toàn Tuynhiên, hầu hết các hệ thống nói trên đều chưa được áp dụng triệt để và còn tồn tại nhữngnhược điểm nhất định.
Những nhược điểm trên đặt ra thách thức xây dựng một hệ thống tích hợp tất cả cáctính năng tiên tiến của giáo dục hiện đại Hệ thống sẽ truyền cảm hứng cho cả học sinhlẫn giáo viên về một nhận thức mới của một nền văn hóa học tập tiên tiến mà không phảiđối mặt với những khó khăn về chi phí đi lại, thời gian và chi phí tham gia các khóa họctrong khi vẫn đáp ứng được các yêu cầu về chất lượng giáo dục Hệ thống giảng dạy vàthi trực tuyến theo thời gian thực sẽ là đích đến của đề tài để đáp ứng các nhu cầu học tậpkhông ngừng cho mọi đối tượng, ở mọi lúc, mọi nơi, tạo ra một kỷ nguyên mới của nềnvăn hóa học tập thoải mái.
Đặc điểm nổi bật của hệ thống này so với các Website học trực tuyến và các hệthống E - Learning hiện nay là sự tương tác giữa các thành phần tham gia vào lớp học Hệthống vừa có thể quản lý tốt các khóa học, quản lý lớp từ xa mà vẫn đảm bảo tính tựnhiên, sự tương tác giữa thầy và trò, sự lĩnh hội tri thức như một lớp học thực tại; vừa còncó khả năng tổ chức thi, kiểm tra và đánh giá một các trung thực dưới sự kiểm soát củagiáo viên.
Trang 2Trang 2Cụ thể hóa một số ưu điểm sau đây :
- Lớp học được tổ chức và quản lý bởi giáo viên, các học sinh tham gia lớp học sẽđược tiếp cận với môi trường học tương tác gần giống như trong thực tế Chỉ cầnmột chiếc máy tính kết nối mạng Internet và sự hỗ trợ của các thiết bị ngoại vicần thiết học sinh có thể sẵn sàng tham gia vào hệ thống đào tạo và đánh giátương tác theo thời gian thực.
- Ưu điểm nổi trội của hệ thống này so với các hệ thống học thi trực tuyến hiện naylà yếu tố thời gian thực Khi tham gia vào các lớp học trong hệ thống, học sinh cóthể thấy và trao đổi với các học sinh khác trong lớp và giáo viên quản lí lớp học.Việc học và thi được tiến hành dưới sự theo dõi và giám sát của giáo viên nênđảm bảo tính công bằng và minh bạch.
- Các hệ thống học và thi trực tuyến với tính tương tác cao diễn ra trong thời gianthực sẽ giúp giáo viên và học sinh có thể dạy và học ở các địa điểm cách xa nhau,giúp hạn chế tối đa các khó khăn về mặt địa lý cũng như địa điểm tổ chức lớphọc, giảm thiểu tối đa chi phí phải trả cho khóa học.
- Hệ thống các bài giảng được thiết kế thông minh được truyền tải bằng ngôn ngữtự nhiên và sự hỗ trợ của các phương tiện khác như video, slide…nên không khôcứng, dễ hiểu Mỗi khóa học đều có các kho dữ liệu chia sẻ cho phép học sinh cóthể tham khảo trước Sau các khóa học là hệ thống kiểm tra kiến thức được tổchức như các kì thi thực tế với khối lượng đề thi đa dạng.
Hệ thống giảng dạy và đánh giá theo thời gian thực được đưa vào ứng dụng thực tếsẽ là một bước tiến trong việc giảng dạy tạo những thuận lợi tối đa cho cả thầy và trò Hệthống này có thể được mở rộng ứng dụng trong nhiều chương trình đào tạo và nhiều cấphọc khác nhau.
2 Mục đích nghiên cứu
Việc sử dụng máy tính cá nhân được kết nối mạng Internet đã và đang trở nên quenthuộc và hầu hết học sinh, sinh viên ai cũng được tiếp cận Dựa trên cơ sở này, việc đưacác khóa học trực tuyến vào công tác giảng dạy và kiểm tra kiến thức là hoàn toàn khả thi.Trong khuôn khổ khóa luận này, trên cơ sở nghiên cứu nhu cầu thực tế và các vấnđề ứng dụng liên quan tới phòng học ảo, E - Learning, mạng giáo dục, hệ thống đánh
Trang 3Trang 3
giá và tổ chức thi … đề tài sẽ xây dựng một hệ thống tích hợp đảm bảo được tính tựnhiên, sự lĩnh hội tri thức trong việc giảng dạy và đánh giá từ xa theo thời gian thực; tiếntới việc có thể áp dụng hệ thống vào môi trường giảng dạy tại khoa CNTT – Đại học Sưphạm Hà Nội.
Hệ thống giảng dạy và đánh giá từ xa theo thời gian thực sẽ được xây dựng với cácchức năng cơ bản như sau:
- Tiến hành hoạt động giảng dạy và học tập theo thời gian thực.- Tải các tài liệu hỗ trợ kiến thức liên quan đến bài giảng.
- Theo dõi bảng tương tác thong minh – White broad (Bảng trình bày bài giảng của
giáo viên đối với các kiến thức mà học sinh còn thắc mắc) thời gian thực.
- Xem trước cái slide bài giảng.
- Ghi hình, ghi âm và lưu trữ lại các video bài giảng.
- Theo dõi quá trình học của học sinh và quá trình dạy của giáo viên.- Giáo viên và học sinh tương tác.
- Tiến hành kiểm tra trực tuyến dưới sự giám sát theo thời gian thực.3 Nhiệm vụ nghiên cứu
Phần lý thuyết: tìm hiểu các mô hình hệ thống E - Learning, các hệ thống tổ chức thi,kiểm tra và đánh giá kiến thức; phân tích ưu - nhược điểm của các hệ thống và đề xuấtmột hệ thống tối ưu.
Phần thực nghiệm: phát triển hệ thống trên môi trường lập trình thích hợp dựa nềnWeb.
4 Phạm vi nghiên cứu
Khóa luận sẽ tập trung vào nghiên cứu và phát triển hệ thống, bước đầu sẽ đánhgiáthử nghiệm tại Trung tâm tin học ứng dụng, Khoa CNTT, Đại học Sư phạm Hà Nội.
5 Phương pháp nghiên cứu
Các phương pháp nghiên cứu khoa học được sử dụng thực hiện khóa luận chủ yếubao gồm:
- Phương pháp đọc tài liệu, phân tích, tổng hợp lý thuyết.
Trang 4Trang 4
- Phương pháp thực nghiệm: tìm hiểu mô hình E - Learning để thiết kế và phát
triển một hệ thống mới.
6 Bố cục nội dung khóa luận
Ngoài các phần Mở đầu, Kết thúc, Phụ Lục, Tài liệu tham khảo, nội dung chính củakhóa luận sẽ được chia thành 4 chương với sắp xếp như sau:
Chương 1: Tổng quan về hệ thốngChương 2: Mô tả tổng thể hệ thống
Chương 3: Phân tích và thiết kế hệ thống đào tạo và đánh giá từ xa theo thời gian
Chương 4: Triển khai và đánh giá
Trang 5Trang 5
LỜI CẢM ƠN
Lời đầu tiên, em xin trân thành cảm ơn đến toàn thể các thầy cô Khoa Công nghệthông tin - trường Đại học Sư Phạm Hà Nội đã tạo điều kiện cho chúng em học tập trongsuốt 4 năm qua và trong quá trình thực tập cũng như thực hiện đề tài tốt nghiệp.
Em xin gửi lời biết ơn đến thầy Kiều Tuấn Dũng và toàn bộ các thầy cô tổ bộ mônKỹ thuật Mạng và Máy tính đã luôn tận tình, quan tâm hướng dẫn em trong suốt quá trìnhtìm hiểu và thực hiện đề tài này.
Em gửi lời cám ơn trân thành đến tất cả quý thầy cô khoa Công nghệ thông tin đãluôn tận tình giảng dạy, trang bị cho em nhiều kiến thức, kỹ năng quý báu trong suốt quátrình học tập tại khoa Công nghệ thông tin Em xin gửi lòng biết ơn đến thầy cô và bạn bètrong lớp K59BC đã luôn động viên, giúp đỡ em trong quá trình thực hiện đề tài này.
Bên cạnh đó, em ghi nhớ mãi công ơn gia đình đã chăm sóc và tạo điều kiện thuậnlợi cho em có thể hoàn thành khóa luận này.
Mặc dù, đã cố gắng học tập và hoàn thành luận văn trong khả năng có thể nhưngchắc chắn vẫn còn tồn tại nhiều sai xót vì vậy em rất mong được sự chỉ dạy thêm từ cácquý Thầy cô và sự đóng góp ý kiến từ phía các bạn bè.
Một lần nữa, em xin cảm ơn sự giúp đỡ của tất cả thầy cô, gia đình và bạn bè đãgiành nhiều sự quan tâm, giúp đỡ cho em và mong luôn nhận được những tình cảm trânthành của tất cả mọi người.
Em xin chân thành cảm ơn!
Trang 6Trang 8
3.1.1 Yêu cầu chức năng 17
3.1.2 Yêu cầu phi chức năng 20
3.2 Xây dựng sơ đồ Usecase hệ thống 21
3.3 Mô tả tiến trình của các chức năng trong hệ thống 22
3.3.1 Đặc tả các chức năng cơ bản của hệ thống 22
3.3.2 Các chức năng lớp học thông minh 26
3.4 Các giao diện chức năng của hệ thống 32
3.5 Các lớp đối tượng trong hệ thống 40
3.6 Một số ràng buộc 42
CHƯƠNG 4: TRIỂN KHAI VÀ ĐÁNH GIÁ HỆ THỐNG 43
4.1Kế hoạch triển khai hệ thống 43
4.2Đánh giá hệ thống 43
KẾT LUẬN 45
TÀI LIỆU THAM KHẢO 46
Trang 9Trang x
DANH MỤC BẢNG
Bảng 1.1: So sánh một số hệ thống E - Learning phổ biến ở Việt Nam và trên thế giới 2
Bảng 3.1: Đặc tả chức năng đăng nhập 22
Bảng 3.2: Đặc tả chức năng đăng ký người dùng mới 22
Bảng 3.3: Đặc tả chức năng update thông tin cá nhân 23
Bảng 3.4: Đặc tả chức năng tạo chủ đề mới 23
Bảng 3.5: Đặc tả chức năng thêm/xóa người dùng tham gia chủ đề 24
Bảng 3.6: Đặc tả chức năng post bài lên chủ đề 24
Bảng 3.7: Đặc tả chức năng theo dõi bạn bè 25
Bảng 3.8: Đặc tả chức năng gửi yêu cầu kết bạn 25
Bảng 3.9: Đặc tả chức năng đồng ý kết bạn 26
Bảng 3.10: Đặc tả chức năng hủy kết bạn 26
Bảng 3.11: Đặc tả chức năng tạo lớp học mới 27
Bảng 3.12: Đặc tả chức năng gửi yêu cầu tham gia lớp học 27
Bảng 3.13: Đặc tả chức năng giảng dạy trong lớp học thông minh 28
Bảng 3.14: Đặc tả chức năng quản lý bảng tương tác thông minh 28
Bảng 3.15: Đặc tả chức năng gửi lời mời tham gia lớp học 29
Bảng 3.16: Đặc tả chức năng xử lý yêu cầu tham gia lớp học 29
Bảng 3.17: Đặc tả chức năng tham gia lớp học 30
Bảng 3.18: Đặc tả chức năng quản lý nội dung khóa học của học sinh 30
Bảng 3.19: Đặc tả chức năng tạo bài kiểm tra 31
Bảng 3.20: Đặc tả chức năng tham gia làm bài kiểm tra 31
Bảng 3.21: Đặc tả chức năng download tài liệu 32
Trang 10Trang xi
DANH SÁCH HÌNH VÀ BIỂU ĐỒ
Hình 2.1: Bảng điểu khiển của Xampp 8
Hình 2.2: Giao diện lập trình ngôn ngữ PHP bằng NetBeans IDE 7.2.1 8
Hình 2.3: Server Tomcat 10
Hình 2.4: Eclipse dùng để phát triển ứng dụng Java 10
Hình 2.5: Các thiết bị phần cứng cần thiết khi sử dụng hệ thống 11
Hình 2.6: Kiến trúc của hệ thống đào tạo và đánh giá từ xa theo thời gian thực 13
Hình 2.7: Sơ đồ kiến trúc của lớp học thông minh 15
Hình 2.8: Kiến trúc kết nối giữa các client trong hệ thống 16
Hình 3.1: Biểu đồ phân rã chức năng cơ bản của hệ thống 20
Hình 3.2: Biểu dồ phân rã chức năng nhóm chức năng lớp học 20
Hình 3.3: Sơ đồ Usecase các chức năng cơ bản của hệ thống 21
Hình 3.4: Usecase chức năng quản lý lớp học 21
Hình 3.5: Giao diện đăng nhập vào hệ thống 33
Hình 3.6: Giao diện chức năng đăng ký tài khoản mới 34
Hình 3.7: Giao diện chính của hệ thống 34
Hình 3 8: Giao diện chức năng up date thông tin cá nhân 35
Hình 3.9: Giao diện chức năng của một chủ đề thảo luận 35
Hình 3.10: Giao diện thêm/xóa bạn bè tham gia thảo luận chủ đề 36
Hình 3.11: Giao diện chức năng quản lý bạn bè 36
Hình 3.12: Giao diện hiển thị danh sách lớp học hiện có trong hệ thống 36
Hình 3.13: Giao diện chức năng quản lý lớp học a 37
Hình 3.14: Giao diện chức năng quản lý lớp học b 37
Hình 3.15: Giao diện lớp học dành cho giáo viên 38
Hình 3.16: Giao diện chức năng quản lý nội dung khóa học 38
Hình 3.17: Giao diện chức năng tạo bài kiểm tra trong lớp học 39
Hình 3.18: Giao diện lớp học dành cho học sinh 39
Hình 3.19: Giao diện chức năng học sinh làm bài kiểm tra 40
Hình 3.20: Giao diện chat box giữa các User 40
Hình 3.21: Các Class đối tượng của hệ thống 41
Hình 4.1: Quá trình triển khai hệ thống 43
Trang 11Trang xii
DANH MỤC CÁC THUẬT NGỮ, TỪ VIẾT TẮT- E – Learning : là các công cụ, Website hỗ trợ học trực tuyến.
- eLecta Live, IntoWeb, Virtual Blackboard, Moodle : các hệ thống hỗ trợ tạo lớp
học trực tuyến phổ biến trên thế giới.
- HTTP : viết tắt của cụm từ Hyper Text Transfer Protocol – giao thức truyền tải siêu
văn bản là một giao thức mạng client/server dùng cho World Wide Web.
- RTMP : viết tắt của cụm từ Real Time Masseging Protocol là một giao thức truyền
nhận dữ liệu, âm thanh, hình ảnh diễn ra trong thời gian thực.
- JDK : viết tắt của cụm từ Java Development Kit Java JDK là bộ công cụ mã nguồn
mở do hãng SUN phát triển, java JDK sử dụng trong phát triển các ứng dụng bằngngôn ngữ Java bao gồm các tiện ích trình biên dịch, trình gỡ rối, đóng gói dữ liệu…
- FLV : hay còn gọi là Flash video là một định dạng file video, sử dụng Flash Player
để xem file có đuôi.flv
- HTML: viết tắt của cụm từ HyperText Markup Language – Ngôn ngữ đánh dấu
siêu văn bản là công cụ được sử dụng để trình bày một Website trên hệ thống WorldWide Web.
- CSS : viết tắt của Cascading Style Sheets là ngôn ngữ được sử dụng để định dạng
hình thức cho các nội dung trang Web HTML.
- Conference: là hình thức hội nghị, nói chuyện trao đổi giữa nhiều người.
- IP : viết tắt của Internet Protocol là một giao thức liên mạng, thông qua IP để xác
định đường truyền dữ liệu giữa các máy chủ và máy đích trong mạng.
- XML : viết tắt của cụm từ eXtensible Markup Language – Ngôn ngữ đánh dấu mở
rộng, được sử dụng để truyền và lưu trữ dữ liệu.
- XMLHttpRequest : là một đối tượng được sử dụng để trao đổi dữ liệu với máy
chủ XML cho phép cập nhật nội dung trang Web mà không cần tải lại toàn bộtrang, có thể yêu cầu hoặc nhận dữ liệu từ Server sau khi đã load trang trang.
- Ajax : viết tắt từ cụm từ Asynchronous JavaScript and XML là một kỹ thuật lập
trình Web động cho phép cập nhật dữ liệu người dùng yêu cầu mà không cần tải lạitoàn bộ trang Web (giữ nguyên background và định dạng khung trang, chỉ cập nhậtdữ liệu trả ra tương ứng với chức năng người dùng thao tác thông qua giao diệnHTML).
Trang 121.1 Thực trạng và những vấn đề đặt ra
Hiện nay, việc đưa các ứng dụng công nghệ thông tin vào trong quá trình dạy họcnói riêng và quá trình giáo dục nói chung đã và đang trở thành một nhu cầu tất yếu của xãhội hiện đại Ứng dụng công nghệ thông tin giúp việc dạy và học diễn ra dễ dàng, trựcquan và mang lại nhiều hiệu quả tích cực E - Learning là một phương tiện cũng là mộtgiải pháp hữu hiệu giải quyết nhu cầu học tập và giao tiếp chung của cả cộng đồng và nhucầu cụ thể của từng cá nhân
Những lợi ích mà E - Learning mang lại cho con người là rất lớn như: giúpngười dạy và người học rút ngắn được khoảng cách về địa lý, tiết kiệm thời gian vàchi phí đi lại phục vụ cho việc tham gia lớp học thực tế, hơn nữa còn giải quyếtđược các khó khăn liên quan đến việc tổ chức lớp học (thời gian, địa điểm diễn tổchức lớp học, giáo viên…) Nói tóm lại, E - Learning mang lại cơ hội học tập vàtiếp cận tri thức lớn hơn cho học sinh.
Hiện nay, trên thế giới nói chung và Việt Nam nói riêng các công cụ E Learning rất phổ biến, tuy nhiên chưa thực sự hoàn thiện Liên quan đến nội dungnghiên cứu của đề tài, đã có công trình và hệ thống ứng dụng[1] như sau:
-Xét một số hệ thống E - Learning phổ biến trên thế giới như: eLecta Live,IntoWeb, Virtual Blackboard, Moodle, và trang học trực tuyến Hocmai.vn của ViệtNam với khóa luận (E - Learning - FIT) với các tiêu chí cụ thể gồm: chia sẻ tài liệuhọc tập sống, bảng tương tác thông minh giữa giáo viên với học sinh, hệ thốngkiểm tra đánh giá, hệ thống xây dựng dựa trên nền tảng Web, quá trình giảng dạytương tác theo phương pháp conference giữa học sinh với giáo viên và với các bạnkhác trong lớp học ta thu được kết quả ở bảng 1.1:
1 Trích nguồn luận văn của Sri Lanka Institute of Information Technology – Sorfware Requirement for Distributed Lecturing and Examination systerm
Trang 13Trang xiv
Bảng 1.1: So sánh một số hệ thống E - Learning phổ biến ở Việt Nam và trên thế giới
Sản phẩm
Chia sẻtài liệu
Bảngtương tác
theo thờigian thực
Hệ thốngkiểm trađánh giá
Dựa trênnền tảng
Giảng dạytương tác
FIT )
Từ kết quả khảo sát cho thấy hầu hết các hệ thống E - Learning hiện nay vẫn chưahoàn thiện và thiếu xót ở một mặt nào đó, kiến cho người dùng chưa thực sự hài lòng khisử dụng và làm cho quá trình dạy và học chưa có được kết quả tốt nhất.
1.2 Phương hướng giải quyết
Với ý tưởng xây dựng một hệ thống E - Learning kế thừa các tính năng hữu ích từcác hệ thống trước đó và tích hợp thêm nhiều chức năng mới nhằm đem lại sự tiện lợi vàthỏa mãn thu cầu của người dùng Khóa luận đặt ra những mục tiêu hướng tới xây dựngE - Learning - FIT như một lớp học thông minh có thể thực hiện:
- Quá trình dạy và học giữa giáo viên và học sinh được diễn ra trong thời gian thực.
- Giáo viên upload trước các tài liệu liên quan đến nội dung bài học đề học sinhdownload về tìm hiểu và tham khảo trước.
- Học sinh theo dõi giáo viên giảng bài thông qua bảng tương tác diễn ra trong thờigian thực.
- Học sinh xem trước các slide của bài giảng.
Trang 14Trang xv
- Ghi lại và lưu trữ quá trình giảng dạy của giáo viên dưới dạng video.
- Học sinh và giáo viên có thể trao đổi với nhau thông qua các thiết bị hỗ trợ nhưvoice, Webcam, camera…
- Giữa các học sinh trong lớp có thể tiến hành thảo luận, trao đổi nhóm.
- Hệ thống đánh giá kết quả học tập của học sinh thông qua các bài kiểm tra Quátrình làm bài kiểm tra của học sinh diễn ra dưới sự giám sát của giáo viên.
Mặc dù là giảng dạy thông qua các kênh giao tiếp từ xa nhưng hệ thống mới sẽ đemlại môi trường giảng dạy và học tập tốt nhất cho người dùng như một lớp học thực tế :
- Ngôn ngữ giao tiếp tự nhiên: vì quá trình giảng dạy diễn ra trong thời gian thực
nên giáo viên vẫn sử dụng các phương tiện là ngôn ngữ nói và viết kết hợp vớicác giáo cụ trực quan như slide bài giảng, video, các công cụ học tập thí nghiệmkhác đối với ngành học khoa học tự nhiên…để thể hiện nội dung bài giảng Nộidung bài giảng sẽ được truyền tải đến người học một các trân thực nhờ sự hỗ trợcủa các thiết bị như loa, video, voice, camera…
-Kết hợp giảng dạy với quản lý lớp học.
- Đảm bảo chất lượng dạy học: dù là học trực tuyến nhưng giáo viên vẫn có thể
biết được chất lượng giảng dạy bằng cách đưa ra các câu hỏi tương tác trực tiếpcho học sinh trong quá trình học Bên cạnh đó, học sinh cũng có thể gửi nhữngthắc mắc, phản hồi về nội dung bài học cho giáo viên để giáo viên giải thích lại.
Trang 15Ban đầu tưởng chừng như khái niệm mạng xã hội không liên quan đến learing Nhưng nếu biết cách ứng dụng và phát triển mô hình mạng xã hội theohướng giáo dục ta sẽ xây dựng được một hệ thống đào tạo trực tuyến thu hút đượcsố lượng lớn người quan tâm đặc biệt là đối với lứa tuổi học sinh, sinh viên
E-Ngoài ra một ý tưởng nữa là tổ chức E - Learning trong thời gian thực Tức làtổ chức đào tạo theo mô hình lớp học thông minh Lớp học thông minh, diễn ratrong môi trường ảo, học sinh và giáo viên giao tiếp với nhau thông qua các thiết bịtruyền thông được kết nối mạng Lớp học thông minh khác với lớp học thực tế làngười dạy và người học không cần phải ở cùng một địa điểm mà quá trình dạy vàhọc vẫn diễn ra bình thường như lớp học thực tế Bên cạnh đó, với sự hỗ trợ củacông nghệ quá trình giảng bài của giáo viên có thể được ghi lại và lưu trữ, giúp chohọc sinh xem lại để hiểu bài tốt hơn Để tham gia vào lớp học thông minh như vậyđòi hỏi, học sinh và giáo viên phải tự trang bị các phương tiện hỗ trợ như: máy tínhcá nhân, camera, voice … nhằm đem lại chất lượng hình ảnh và âm thanh tốt nhất
Hiện trạng, các hệ thống đào tạo trực tuyến thường bị đánh giá thấp trongviệc kiểm tra chất lượng học và tiếp thu bài của học sinh Nhưng đối với mô hìnhlớp học thông minh diễn ra trong thời gian thực có tính chất tương tác cao giữangười dạy và người học, giáo viên có thể trực tiếp đưa ra các câu hỏi phản ứngnhanh yêu cầu học sinh trả lời ngay trong quá trình giảng dạy Đồng thời, sau mỗibài học hoặc trong quá trình học, giáo viên có thể thiết kế các bài kiểm tra dưới
Trang 162.1 Mô tả hệ thống
Hệ thống đào tạo và đánh giá tương tác theo thời gian thực (E – Learning FIT) hướng tới hai đối tượng chính tham gia vào các lớp học thông minh gồmgiáo viên và học sinh.
Để tham gia vào hệ thống người dùng phải đăng ký một tài khoản (account).Người dùng sử dụng tài khoản đó để đăng nhập vào hệ thống Hệ thống sẽ quảnlý người dùng thông qua các thông tin cá nhân được khai báo khi đăng kýaccount Đồng thời, người dùng cũng có thể cập nhật hoặc chỉnh sửa các thông tincá nhân của mình.
- Hệ thống bao gồm nhiều lớp học thuộc nhiều lĩnh vực khoa học khác nhau Mỗilớp học có thể được tạo ra bởi bất cứ người dùng nào, và mặc định người tạo ralớp học đóng vai trò là giáo viên của chính lớp học đó Khi tạo lớp học ngườidùng chú ý đến tên gọi cho lớp học đó, bởi tên gọi của lớp học sẽ trở thành từkhóa để các User khác trong hệ thống có thể tìm kiếm một các dễ dàng.
- Đối với đối tượng người dùng muốn tham gia vào một lớp học bất kỳ có thể tìmkiếm lớp học đó thông từ khóa liên quan đến tên lớp học Sau đó, người dùngphải gửi yêu cầu tham gia lớp học đến giáo viên quản lý lớp học đó.
- Giáo viên khi nhận được yêu cầu muốn tham gia lớp học từ người dùng khác cóthể chấp nhận hoặc từ chối yêu cầu Ngoài ra giáo viên còn có thể gửi yêu cầumời tham gia lớp học đến các User khác và đợi phản hồi từ các User đó.
- Người dùng khi được chấp nhận hoặc chấp nhận tham gia lớp học do một ngườikhác tạo ra, sẽ đóng vai trò là học sinh trong lớp học đó.
- Giáo viên đóng vai trò chính trong lớp học, giáo viên là người quyết định đến nộidung bài học, thời khóa biểu, lịch kiểm tra Tất cả thông tin về lớp học sẽ đượcgiáo viên mô tả đầy đủ, học sinh có thể theo dõi các thông tin đó bằng cách truycập vào lớp học Theo thời khóa biểu giáo viên sắp xếp, đến giờ học học sinh phải
Trang 17- Quá trình dạy và học diễn ra tương tác trong thời gian thực, mặc dù có khoảngcách về địa lý nhưng học sinh và giáo viên có thể nhìn thấy nhau, giao tiếp vớinhau như ở trong lớp học thực tế Giáo viên tiến hành hoạt động giảng dạy, họcsinh tiếp thu kiến thức từ nhiều kênh thông tin gồm: bài giảng trực tiếp từ giáoviên, các video, slide bài giảng …Trong quá trình học, nếu có thắc mắc học sinhcó thể hỏi trực tiếp giáo viên và ngược lại giáo viên có thể kiểm tra mức độ hiểubài của học sinh bằng những câu hỏi phản ứng nhanh, yêu cầu học sinh trả lờingay.
- Nội dung bài giảng còn có thể được giáo viên biểu diễn thông qua bảng tương tácthông minh Giáo viên sẽ trình bày một số kiến thức trên bảng đó và chia sẻ nộidung bảng cho học sinh.
- Trong lớp học, không chỉ có hoạt động giao tiếp giữa giáo viên với học sinh, màcòn có cả hoạt động trao đổi bài và tranh luận giữa học sinh với nhau Ngườidùng đóng vai trò là học sinh trong lớp học có thể quan sát được những ngườicùng tham gia lớp học với mình.
- Hình thức tổ chức lớp học giống như một cuộc hội thảo trực tuyến “conference”mà giáo viên đóng vai trò chính.
- Về kiểm tra, đánh giá: trong quá trình học, giáo viên thiết kế các bài kiểm tra, sắpxếp lịch kiểm tra và thông báo cho học sinh Học sinh làm bài kiểm tra dưới sựgiám sát của giáo viên thông qua hình ảnh từ camera phía client của học sinhtruyền tải đến giáo viên để đảm bảo tính trung thực
- Người dùng tham gia hệ thống có thể tạo các chủ đề thảo luận, người tạo chủ đềsẽ đóng vai trò là tác giả có quyền quản lý về mặt nội dung chủ đề và thêm hoặcblock người dùng tham gia chủ đề Các User khác khi được tham gia chủ đề cũngcó quyền thêm User cùng theo dõi chủ đề, từ chối theo dõi chủ đề.
- Người dùng cũng có thể tạo các blog viết về một vấn đề nào đó, tác giả của blogcó quyền cho phép ai sẽ được xem và bình luận về blog của mình.
- Trong giáo dục hình thức học nhóm là một phương pháp tích cực phát huy hiệuquả tốt trong thực tế Người dùng bất kỳ có thể tạo các nhóm, để cùng nhau bài
Trang 18Trang xix
luận, chia sẻ về các bài học và các vấn đề liên quan Nhóm trưởng là người tạonhóm có thể chỉnh sửa, xóa nhóm được tạo, gửi yêu cầu người dùng khác thamgia nhóm hoặc chấp nhận yêu cầu tham gia nhóm
- Kế thừa tư tưởng của mô hình mạng xã hội, người dùng tham gia hệ thống này cóthể theo dõi và giao tiếp với người dùng khác bằng kết bạn Để kết bạn với mộtngười dùng bất kỳ, đầu tiên phải tìm kiếm người dùng đó trong hệ thống, sau đógửi yêu cầu kết bạn đến người dùng đó và đợi phản hồi Người dùng bất kỳ, nhậnđược yêu cầu kết bạn từ một người khác có thể xem thông tin cá nhân của ngườiđó và quyết định đồng ý hoặc từ chối kết bạn Sau khi kết bạn, vì bất kỳ một lý dogì, người dùng cũng có thể hủy kết bạn.
- Người dùng có thể trông thấy trạng thái của tất cả các User trong danh sách bạnbè và có thể chat với bất kỳ bạn bè nào đang online.
- Hệ thống sẽ được vận hành và quản lý bởi người quản trị, admin hệ thống sẽ tácđộng vào cơ sở dữ liệu để quản lý người dùng, quản lý trạng thái (block/ unblock)của các chủ đề, bài kiểm tra, nhóm, blog.
2.2 Kỹ thuật công nghệ
2.2.1Hệ điều hành và trình duyệt Web
Hệ thống được xây dựng chạy trên hệ điều hành Window, Ubuntu hoặc Linux.Hệ thống đào tạo và đánh giá tương tác trong thời gian thực có thể chạy được trên cáctrình duyệt Web: Google Chrome, Mozilla FireFox 1.0 trở lên và Internet Explorer 5.0trở lên.
Lưu ý: Vì hệ thống được phát triển trên cơ sở các công cụ đều là mã nguồn mở
(Xampp, ngôn ngữ PHP, MySQL, Red5 Server, Java server Tomcat ) nên cài trên hệ điềuhành mã nguồn mở như Ubuntu sẽ dễ dàng, thuận tiện, và tính đồng nhất cao hơn.
2.2.2Các phần mềm hỗ trợ phát triển hệ thốnga.Xampp
Xampp là một bộ công cụ mã nguồn mở dùng để tạo Server ảo hỗ trợ tronglập trình PHP Xampp là một gói phần mềm tích hợp sẵn server Apache, MySQLserver, FTP Server, Mail server, PHP, Tomcat server (từ bản 1.8.1) Bên cạnh đóXampp còn hỗ trợ công cụ quản trị cơ sở dữ liệu MySQL bằng PhpMyAdmin vànhiều tiện ích khác.
Trang 19Hình 2.2: Giao diện lập trình ngôn ngữ PHP bằng NetBeans IDE 7.2.1
Ngoài NetBeans IDE ra còn có một số phần mềm hỗ trợ lập trình PHP nhưPHP Designer, Notepad++, Adobe Dreamweaver …
Trang 20Trang xxi
c.Red5 Server
Để hiện thực hóa tính tương tác giữa các thành viên trong lớp học (giữa giáoviên với học sinh, giữa các học sinh với nhau) giải pháp đưa ra sử dụng một ServerMedia như một thư viện các ứng dụng Flash hỗ trợ các chức năng đa phương tiệndiễn ra trong thời gian thực Hầu hết các hệ thống hiện nay đều sử dụng servermedia là Adobe Flash Server, tuy nhiên server Adobe Flash là một phần mềm độcquyền, sẽ làm phát sinh nhiều chi phí khi vận hành hệ thống Vì vậy nên chọn
Red5 Server là một máy chủ Flash RTMP[2] mã nguồn mở được viết bằng ngônngữ Java hỗ trợ các dịch vụ hoàn toàn miễn phí như:
- Streaming audio/video (FLV/MP3) là dịch vụ truyền tải trực tiếp dữ liệu dạng âmthanh, hình ảnh thu được từ các thiết bị như Voice chat, camera có định dạngfile mp3 và flv giữa các client được kết nối Internet thông qua sự điều phối củamột Server media mà trong trường hợp này chính là Red5 Server.
- Recording client streaming (FLV) tức là ghi nhớ và lưu trữ lại các dữ liệu dạngâm thanh, hình ảnh… đã từng được truyền tải giữa các client chỉ hỗ trợ file cóđịnh dạng flv
- Live streaming publishing – đây là dịch vụ xuất dữ liệu dạng âm thanh, hình ảnh,video trực tiếp.
- Shared Objects – là dịch vụ chia sẻ dữ liệu giữa các client.[3]
- Remoting – điều khiển và kết nối từ xa.
Red5 server khi hoạt động có thể chiếm dụng một số Port mặc định là 5080, 8088,1935, 9035 Server Red5 có thể cài đặt và hoạt động tốt trên các hệ điều hành mã nguồnmở như Ubuntu, Linux hoặc trên hệ điều hành Window Khi cài đặt trên Window thôngthường mặc định port cho Red5 là cổng 5080.
Do Red5 được viết bằng ngôn ngữ Java nên cần có trước khi cài đặt server Red5 cầncài đặt trước đó một máy chủ chạy Java chính là Tomcat Server Tomcat sẽ đóng vai tròtriển khai các ứng dụng của Red5 Vì hệ thống phát triển bằng ngôn ngữ PHP trên Xamppnên ta có thể cài phiên bản Xampp hỗ trợ cả Tomcat server.
2RMPT là viết tắt của Real Time Messaging Protocol là một giao thức truyền dữ liệu trên mạng Internet theo thời gian thực.
3 Trích nguồn từ http://namtranchan.wordpress.com/2011/04/09/hello-world/ và red5-reference-1.0
Trang 21Hình 2.4 : Eclipse dùng để phát triển ứng dụng Java
2.2.3Yêu cầu phần cứng
Để có thể tiến hành cài đặt và truy cập sử dụng hệ thống với vai trò như là học sinhvà giáo viên thì cần có sự hỗ trợ phần cứng cần thiết bao gồm các
thiết bị sau:
- Máy tính được kết nối Internet.
- Các thiết bị âm thanh : Mircophone, headphone - Các thiết bị hỗ trợ hình ảnh : Camera, Webcam.
Trang 22Trang xxiii
Máy tính kết nối Internet
Hình 2.5: Các thiết bị phần cứng cần thiết khi sử dụng hệ thống
2.3 Kỹ thuật lập trình Ajax trong PHP
Ajax là một kỹ thuật lập trình được sử dụng nhiều trong phát triển Web động, đặcbiệt là các Website có tính tương tác cao giữa người dùng với Web server Ajax giúp tạora các ứng dụng nhỏ gọn, nhanh và thân thiện hơn với con người
Ajax không phải là một kỹ thuật hoàn toàn mới mới mà nó được phát triển dựa trêncác nền tảng công nghệ sẵn có trong phát triển Web như: Javascript, CSS, XML vàHTML (hoặc XHTML) Ajax là công nghệ được hỗ trợ bởi trình duyệt và không phụthuộc với Web server Hiện nay hầu hết các trình duyệt như Google Chorme, MozillaFireFox (từ version 1.0 trở lên) và Internet Explorer (5.0 trở lên) … đều hỗ trợ Ajax.
Đối với lập trình thủ công theo kiểu truyền thống, thông thường sau khi người dùngthực hiện bất cứ một chức năng nào tương tác với Web (ví dụ như thao tác Post hoặc Getdữ liệu lên server thông qua giao diện form HTML) sẽ phải đợt một khoảng thời gian choserver xử lý yêu cầu, trả lời và load ra trang mới Nếu thao tác chức năng của người dùnglặp lại nhiều lần và sau mỗi lần thực hiện trình duyệt phải load lại toàn bộ nội dung trangWeb sẽ mất nhiều thời gian và thiếu thân thiện với người dùng Thay vì, phải load lại toànbộ trang Web sau khi thực hiện một thao tác bất kỳ, với kỹ thuật Ajax trình duyệt chỉ phảiload một phần nội dung trang
Sở dĩ Ajax có thể cho phép trình duyệt làm như vậy là do Javascript sẽ sử dụng đốitượng XMLHttpRequest để giao tiếp trực tiếp với server Với mỗi thao tác chức năng của
Trang 23Trang xxiv
người dùng tương ứng với một yêu cầu HTTP (HTTP Request) từ Website sẽ được gửilên server xử lý và trả ra kết quả cần thiết mà mà không cần load lại toàn bộ nội dungtrang Web (hay nói các khác là cập nhật các dữ liệu mà người dùng yêu cầu còn các chứcnăng và khung trang của trang Web sẽ được giữ nguyên)
Ưu điểm của Ajax : tiết kiệm băng thông và thời gian do không phải load lại toàn bộnội dung trang Web sau mỗi thao tác của người dùng, làm cho Website trở lên thân thiệnhơn.
Nhược điểm : không sử dụng được nút “back” (quay lui) trên trình duyệt để trở vềtrạng thái trước đó do các trang Web được load tự động nên sẽ không được ghi và lưu lạitrong lịch sử của trình duyệt.[4]
2.4 Kiến trúc của hệ thống
Hệ thống được phát triển trên nền tảng Web PHP và cơ sở dữ liệu MySQL nên cầncó các server Apache và MySQL hỗ trợ, cùng với đó là công cụ quản trị cơ sở dữ liệuPhpMyAdmin
Ngoài ra, tính chất quan trọng của hệ thống đó là tính tương tác giữa ngườidùng diễn ra trong thời gian thực Tính tương tác thể hiện ở các flash cho phép cácUser trong hệ thống có thể chat, nhìn thấy nhau, tiến hành Conference, giáo viêncó thể chia sẻ hình ảnh về bài giảng qua bảng tương tác thông minh, trình chiếuslide, ghi hình bài giảng…Để hiện thực hóa điều này, hệ thống phải được kết nốivới Red5 server.
Kiến trúc kết nối của hệ thống được khái quát qua hình 2.6 bên dưới:
4 Tham khảo : http://vi.wikipedia.org/wiki/Ajax_(l%E1%BA%ADp_tr%C3%ACnh)và tài liệu hướng dẫn lập trình Ajax của www.w3schools.com dịch giả Huỳnh Diệp Tân
Trang 24Trang xxv
Database server (MySQL)PHP server
(Apache)
Java server (Tomcat)Flash
HTML /javascript
Máy tính được kết nối Internet
1.Realtime streaming server2 Media streaming server3 Whiteboard server4 ect
Hình 2.6: Kiến trúc của hệ thống đào tạo và đánh giá từ xa theo thời gian thực
Giải thích thành phần trong kiến trúc hệ thống: E – Learning - FIT xây dựngtrên nền tảng Web cần hỗ trợ bởi 3 server cụ thể gồm : Web server, Databaseserver, Java Server
- Apache Server hỗ trợ chạy Web PHP : máy chủ Apache HTTP cùng với PHPđóng vai trò là Web server trong hệ thống có nhiệm vụ hiển thị nội dung WebHTML, xử lý các truy vấn đến cơ sở dữ liệu của người dùng, xử lý hiển thị nộidung dữ liệu dạng âm thanh, hình ảnh do thực thi các flash ứng dụng đa phươngtiện của Red5 truyền tải tương tác trực tiếp giữa các User trong hệ thống Nội
Trang 25- Server triển khai các ứng dụng đa phương tiện Red5 viết bằng Java là Tomcat,phục vụ cho mục đích truyền thông tương tác giữa các client sử dụng hệ thống
- Máy tính của người dùng truy cập vào Website hệ thống phải được kết nốiInternet, trình duyệt Web có hỗ trợ Adobe Flash player, chạy HTML/Javascript.Phía client của người dùng cần trang bị chat voice, Webcam, loa … để hỗ trợtrong quá trình dạy và học.
Cấu trúc này có thể được mở rộng tùy thuộc vào cơ sở vật chất và số lượng ngườidùng.
Server Apache, database server (MySQL), Java server (Tomcat) được hỗ trợtrong gói phần mềm Xampp (version 1.8.1) hoặc có thể cài tách riêng serverTomcat với server chạy ứng dụng Web PHP và hệ quản trị cơ sở dữ liệu MySQL
RTMP được viết tắt từ Real Time Messaging Protocol đây là một giao thứcmạng hỗ trợ truyền dữ liệu dạng âm thanh, hình ảnh, video trên Internet theo thờigian thực giữa các Flash Player với Server media RTMP cho phép kết nối liên tụcvà truyền thông ở độ trễ thấp Các ứng dụng đa phương tiện của Red5 sử dụng giaothức này để truyền tải dữ liệu tương tác giữa người dùng trong hệ thống theo thờigian thực.
Chú ý: Trước khi cài đặt Tomcat và Red5 chú ý đến môi trường máy tính
phải hỗ trợ Java JDK từ 1.6 trở lên và Apache Ant.
Các chức năng đa phương tiện trong hệ thống đào tạo và đánh giá từ xatheo thời gian thực :
-Video/audio streaming theo thời gian thực: giáo viên cho phép học sinh trong
lớp theo dõi quá trình giảng bài đang diễn ra trong thời gian thực, giáo viên theodõi hành động của học sinh trong giờ kiểm tra thông qua camera Để thực hiệnchức năng này phía client của người dùng thực thi các flash video streaming, cáchình ảnh, âm thanh,video thu được từ thu từ các thiết bị Webcam, voice chat phíangười dùng sẽ được truyền tải liên tục lên Red5, sau đó server sẽ xác định vàtruyền dữ liệu đến theo địa chỉ IP của người dùng yêu cầu.
Trang 26Trang xxvii
-Ghi lại và lưu trữ nội dung bài giảng : Người dùng tham gia lớp học có thể ghi
lại nội dung bài giảng của giáo viên Nội dung được ghi lại sẽ được lưu trữ trênRed5, và cho phép người dùng xem lại bất cứ lúc nào.
Giáo viên
Học sinh
CSDL MySQL
Login/Đăng kýUserID
Quản lý lớp học
Tạo lớp học
Giảng bàiUpload tài liệu
Tiến hành kiểm tra
Red5 server
Tham gia lớp học
Làm bài kiểm tra
Download tài liệuTheo dõi bài
Hình 2.7: Sơ đồ kiến trúc của lớp học thông minh
-Chat giữa các người dùng: các User là bạn bè của nhau có thể chat với nhau.
Nội dung của đoạn hội thoại sẽ Red5 cập nhật định kỳ khi có yêu cầu từ ngườidùng và truyền tải đến client có địa chỉ IP yêu cầu sau mỗi lần cập nhật
- Chia sẻ nội dung bảng thông minh : Phía client của giáo viên tạo nội dung bài
giảng trên bảng thông minh và truyền tải nội dung đó đến client của học sinh Banđầu sau khi giáo viên chọn chia sẻ nội dung bài giảng trên bảng thông minh, nộidung đó sẽ được truyền lên Red5 server Red5 sẽ điều phối và truyền tải nội dungđến các client học sinh ngay trong thời gian thực Chức năng này gần giống vớivideo streaming nhưng tỷ lệ khung hình (số lượng hình/s) thấp hơn nhiều.
Trang 27Trang xxviii
Máy tính của giáo viên
Máy tính của học sinhserver
Flash whiteboard viewerFlash
Hình 2.8: Kiến trúc kết nối giữa các client trong hệ thống
Tóm lại, để tiến hành lớp học tương tác thông minh theo thời gian thực, cácthành
viên trong hệ thống cùng truy cập vào Web Server tại cùng một thời điểm Những hìnhảnh, âm thanh, dữ liệu từ phía các client trong hệ thống sẽ được truyền đến địa chỉ yêucầu thông qua Server.
Trang 283.1 Phân tích chức năng hệ thống 3.1.1Yêu cầu chức năng
Dựa vào mô tả hệ thống ở phần 2.1, các chức năng chính của hệ thống được tóm tắtnhư sau :
Chức năng 1: Quản lý thông tin cá nhân : Người dùng phải đăng ký một account để
có thể đăng nhập vào hệ thống Khi đăng ký, người dùng phải khai đầy đủ các thông tincá nhân cần thiết mà hệ thống yêu cầu Hệ thống sẽ cấp cho người dùng một tài khoản baogồm Username và Password, người dùng sử dụng tài khoản này để đăng nhập vào hệthống Sau khi đăng nhập, người dùng có thể quản lý và thay đổi thông tin cá nhân củamình, hệ thống sẽ tự động update các thay đổi đó.
Chức năng 2: Nhóm chức năng bạn bè: chức năng này dựa trên ý tưởng của mô hình
mạng xã hội để kết nối người dùng lại với nhau, chức năng này bao gồm các chức năngcon như:
- Quản lý danh sách bạn bè: Xem danh sách bạn bè, xem thông tin cá nhân (profile)của một ai đó trong danh sách bạn bè, hủy kết bạn
- Quản lý các yêu cầu kết bạn đã nhận: Xem danh sách các yêu cầu kết bạn đãnhận, đồng ý hoặc từ chối yêu cầu kết bạn.
- Quản lý yêu cầu kết bạn đã gửi: Xem danh sách các yêu cầu kết bạn đã gửi, xóayêu cầu kết bạn đã gửi.
Chức năng 3: Nhóm chức năng chủ đề: Người dùng bất kỳ có thể tạo các chủ đề
thảo luận Đối với chủ đề mà mình tạo ra, người dùng đóng vai trò tác giả có quyền :
- Thêm bạn bè tham gia thảo luận trong chủ đề.
- Block bạn bè khỏi chủ đề.
Trang 29Trang xxx
- Post bài lên chủ đề.
Chức năng 4: Quản lý Blog: Người dùng có thể tạo các Blog, chỉnh sửa Blog, xóa
Chức năng 5: Quản lý nhóm: Nhóm là một hình thức học hiệu quả trong thực tế,
một User bất kỳ trong hệ thống có thể tạo ra nhóm và đóng vai trò trưởng nhóm Các chứcnăng liên quan đến nhóm gồm: Tạo nhóm, đăng ký tham gia nhóm, chỉnh sửa nhóm, xóanhóm
Chức năng 6: Nhóm chức năng lớp học: Đây là chức năng chính, đóng vai trò quan
trọng nhất trong hệ thống Chức năng này bao gồm các chức năng con như sau:
- Xem danh sách tất cả các lớp học trong hệ thống.
- Quản lý lớp học theo từng cá nhân người dùng: xem danh sách lớp học mà ngườidùng đã đăng ký, xóa lớp học đã đăng ký, xem các yêu cầu đăng ký lớp học đãgửi, xóa yêu cầu đăng ký lớp học đã gửi, xem các lời mời tham gia các lớp học từcác User khác, đồng ý/ từ chối lời mời tham gia lớp học từ các User khác trong hệthống.
- Quản lý lớp học do chính mình tạo ra: Xem danh sách lớp học do mình đóng vaitrò là giáo viên, tạo lớp học mới.
- Tìm kiếm lớp học theo tên.
- Quản lý lớp học theo đối tượng giáo viên:
Giáo viên (người tạo ra lớp học) có thể: Xem danh sách học sinh tham gialớp học của mình, xem các yêu cầu tham gia lớp học do User khác trong hệthống gửi đến, chấp nhân hoặc từ chối các yêu cầu đó, gửi lời mời tham gialớp học của mình đến các User khác trong hệ thống Tìm kiếm người dùngtrong hệ thống theo Username.
Quản lý bảng viết tương tác thông minh: Tạo nội dung bài giảng, xóa nộidung bài giảng, chia sẻ nội dung bài giảng cho học sinh trên bảng tương tácthông minh.
Quản lý khóa học: tạo khóa học, thiết kế nội dung khóa học (mô tả về khóahọc, các thông tin, thời khóa biểu liên quan đến khóa học), upload tài liệutham khảo, slide liên quan đến nội dung khóa học, ghi lại và lưu trữ cácvideo bài giảng.
Xem các câu hỏi thắc mắc của học sinh, trả lời hoặc xóa câu hỏi đó.