CƠ SỞ LÝ THUYẾT
Đánh giá các phương pháp và hệ thống hỗ trợ học tập hiện tại và lựa chọn mô hình học tập hỗn hợp
Để có thể đề xuất phát triển một hệ thống hỗ trợ học tập mới phù hợp, việc tìm hiểu và nghiên cứu các phương pháp đào tạo và mô hình dạy học phổ biến hiện nay là rất quan trọng Phần này sẽ trình bày về cách thức hoạt động cũng như các ưu điểm và nhược điểm của các phương pháp dạy học là: truyền thống, trực tuyến và hỗn hợp.
1.1.1 Phương pháp dạy học truyền thống Ở phương pháp học tập truyền thống, học sinh đến lớp học theo lịch biểu đã được sắp xếp để thực hiện các hoạt động học tập với giáo viên và các học sinh khác Ngoài thời gian ở trên lớp thì học sinh có thể dành thêm thời gian ở nhà để hoàn thành một số nhiệm vụ được giao hoặc tự học theo định hướng của mình. Ưu điểm lớn nhất của phương pháp dạy học trực tuyến đó là duy trì được giao tiếp trực tiếp giữa người dạy với người học, cũng như giữa người học với nhau Đây là một hình thức giao tiếp giàu thông tin và có hiệu quả cao[13]. Ưu điểm thứ hai của phương pháp học tập truyền thống là giúp nâng cao động lực học tập cho học sinh Động lực là một yếu tố cốt lõi dẫn đến thành công của hoạt động học tập[14] Phương pháp học tập truyền thống giúp xây dựng được động lực học tập cao hơn so với các phương pháp học tập có khoảng cách[30].
Hình 1.1 Mức thông tin và tính hiệu quả của các phương pháp giao tiếp
Tuy nhiên, phương pháp học tập truyền thống cũng bộc lộ nhiều nhược điểm, trong đó có thể kể đến khía cạnh cá nhân hóa hoạt động học tập và chi phí tổ chức Khi theo học các lớp học truyền thống, học sinh cần phải tuân thủ lịch biểu do nhà trường quy định Nhịp độ học tập của các học sinh trong cùng một lớp là như nhau, trong khi đó mỗi cá nhân thì lại có những nền tảng khác nhau, điều này gây khó khăn cho nhiều học sinh nếu nội dung, thời gian và địa điểm học tập không phù hợp Việc đảm bảo tính cá nhân hóa hoạt động học tập để phù hợp với từng học sinh cũng gặp nhiều khó khăn[31].
Chi phí tổ chức học tập cũng là một yếu tố gây khó khăn khi triển khai các lớp học truyền thống[7] Một trong số các lý do được nêu ra là do số lượng học sinh trong một lớp bị hạn chế Nếu số lượng học sinh quá đông thì sẽ ảnh hưởng đến hiệu quả học tập[28] Trong khi đó, với số lượng học sinh trong một lớp hạn chế thì chi phí tổ chức lớp học sẽ bị tăng lên Hay nói cách khác, học sinh sẽ phải trả học phí cao hơn để đến các lớp học Còn đối với nhà trường thì khó để tiếp cận đến một số lượng đông đảo học sinh.
Với một số nhược điểm cơ bản như đã kể trên của phương pháp học tập truyền thống, cùng với sự phát triển của khoa học công nghệ, đặc biệt là công nghệ thông tin và Internet, đã có nhiều phương pháp học tập khác nhau được áp dụng để giải quyết những vấn đề đó Trong số đó, phương pháp được ưa chuộng và sử dụng phổ biến là học tập trực tuyến.
1.1.2 Phương pháp học tập trực tuyến
Học tập trực tuyến là phương pháp học tập được triển khai hoàn toàn dựa trên nền tảng công nghệ thông tin và Internet[25] Phương pháp này xuất hiện từ những năm 1980 của thế kỷ trước[25] và ngày càng trở nên phổ biến[15] Ở phương pháp này, học sinh không phải di chuyển đến các lớp học mà thực hiện các hoạt động học tập từ xa thông qua các kênh giao tiếp trên Internet.
Ngoại trừ một số khóa học có thời gian cố định thì phần lớn các khóa học đều rất linh hoạt về thời gian, giúp cho học sinh có thể tự lựa chọn, tự sắp xếp lịch biểu một cách phù hợp nhất với điều kiện của mình Việc lựa chọn thời gian học tập phù hợp cũng là một yếu tố quan trọng giúp nâng cao hiệu quả học tập[24] của học sinh Linh hoạt về thời gian là một trong số các ưu điểm của học tập trực tuyến.
Một ưu điểm nữa của học tập trực tuyến là giúp giảm thiểu chi phí triển khai học tập, đồng thời tiếp cận được với một lượng lớn học sinh phân tán ở những vùng khác nhau[6] Thay vì chỉ chăm sóc được một lượng học sinh hạn chế trong cùng một thời điểm như cách dạy học truyền thống, thì bằng cách triển khai học tập trực tuyến, một giáo viên có thể chăm sóc hàng trăm, hàng ngàn thậm chí hàng triệu[23] học sinh trong cùng một thời điểm Việc giảm chi phí và mở rộng được đối tượng tiếp cận là một ưu điểm lớn của học tập trực tuyến, giúp phương pháp này ngày càng trở nên được ưa chuộng và phổ biến hơn.
Tuy nhiên, phương pháp học tập trực tuyến cũng có một số nhược điểm ảnh hưởng đến hiệu quả học tập nếu không được thiết kế tốt Có thể kể đến một số nhược điểm của phương pháp này như tỉ lệ bỏ học cao[26] và nhiều khó khăn cho học sinh khi phải tự điều chỉnh hoạt động học tập Theo một nghiên cứu được thực hiện bởi Christensen năm 2013 thì tỉ lệ hoàn thành các khóa học trực tuyến chỉ đạt con số 5%[11].
Ngoài ra, việc duy trì động lực học tập cho học sinh trong môi trường trực tuyến cũng là một khó khăn [14]-[30] cho việc thiết kế và triển khai các khóa học Đây là một trong các lý do chính dẫn đến việc học sinh từ chối tham gia các khóa học trực tuyến hoặc không hoàn thành được nội dung đã thiết kế. Để khắc phục các nhược điểm của phương pháp học tập truyền thống và phương pháp học tập trực tuyến, đồng thời phát huy các lợi thế của hai phương pháp này, phương pháp học tập hỗn hợp đã được đưa vào áp dụng.
1.1.3 Phương pháp học tập hỗn hợp (Blended Learning)
Học tập hỗn hợp là phương pháp triển khai hoạt động học tập bằng cách kết hợp giữa môi trường trực tuyến và môi trường giao tiếp trực tiếp[16] Với phương pháp này, hoạt động học tập diễn ra ở ba không gian khác nhau, bao gồm: (1) trên lớp, (2) ở nhà, và (3) trên hệ thống trực tuyến Hiệu quả học tập của học sinh phụ thuộc vào hiệu quả học tập ở từng không gian như đã kể trên[18] Việc thiết kế các hoạt động học tập xuyên suốt các không gian học tập này cũng giúp làm tăng được động lực và hiệu quả học tập[1] của học sinh.
Hình 1.2 Các không gian diễn ra hoạt động học tập
Có nhiều lí do để lựa chọn hình thức học tập hỗn hợp Graham đã đưa ra ba lí do chính[16], bao gồm: (1) giàu tính sư phạm, (2) dễ tiếp cận, và (3) hiệu quả chi phí.
Giàu tính sư phạm được thể hiện thông qua việc các hoạt động học tập có cơ hội diễn ra nhiều hơn, đa dạng hơn, kết hợp chặt chẽ hơn và đạt hiệu quả cao hơn Việc kết hợp được các không gian học tập với nhau giúp cho thời gian học tập được kéo dài hơn về mặt thời gian, giúp cho giáo viên có thể đưa vào đó những hoạt động học tập phù hợp hơn với từng không gian học tập.
Việc thiết kế và triển khai một số hoạt động học tập mới bằng cách ứng dụng công nghệ thông tin và Internet giúp mang lại những trải nghiệm với và nâng cao hiệu quả học tập Chẳng hạn, các bài giảng tương tác, các bài hướng dẫn được xây dựng theo hướng kiến tạo, các kênh giao tiếp đa chiều… là những hoạt động mà sẽ không thể có được nếu không có sự hỗ trợ của công nghệ.
Dễ tiếp cận là một trong những ưu điểm nổi bật của các khóa học diễn ra dưới hình thức học tập trực tuyến hoặc hỗn hợp Học sinh được chủ động hơn về mặt thời gian, không bị ràng buộc quá nhiều về việc phải có mặt ở các cơ sở đào tạo, có thể truy xuất các tài nguyên học tập bất cứ lúc nào, được cung cấp các kênh để giao tiếp một cách thuận tiện… là những yếu tố giúp giải phóng học sinh khỏi những hoạt động phục vụ cho việc học tập, thay vào đó học sinh có được tập trung hơn vào bản thân các hoạt động học tập để đạt được hiệu quả cao nhất.
Tìm hiểu một số nền tảng hỗ trợ học tập trực tuyến và hỗn hợp hiện có
Hiện nay trên thị trường đã có khá nhiều nền tảng hỗ trợ việc triển khai các khóa học trực tuyến và hỗn hợp Phần này sẽ liệt kê và phân tích cách thức vận hành, các ưu điểm cũng như nhược điểm của một số nền tảng nổi bật.
Google Classroom là một Hệ thống Quản lý Học tập (Learning Management System - LMS) được công ty Google giới thiệu vào tháng 5 năm
2014 Tuy ra đời muộn hơn so với phần lớn các nền tảng khác nhưng nó lại nhận được sự chào đón khá lớn từ người dùng.
Google Classroom tổ chức lớp học thông qua việc hỗ trợ ba tính năng chính: Giao tiếp, Giao bài tập và Lưu trữ Việc giao tiếp được thực hiện thông qua các thông báo (announcement) và các phản hồi (comment) và tích hợp thêm email Giáo viên và học sinh có thể đính kèm thêm tài liệu, video, ảnh… ở trong các thông báo.
Việc giao và nhận bài tập được thực hiện thông qua ứng dụng Google Drive chia sẻ chung Mỗi lớp học được tổ chức vào trong một thư mục riêng, mỗi học sinh sẽ được tự động tạo một thư mục cho phần bài tập của mình. Ưu điểm đầu tiên của Google Classroom đó là giao diện được thiết kế đơn giản, quen thuộc với những người đã sử dụng qua các sản phẩm khác trước đó của Google.
Google Classroom không có nhiều tính năng Hay nói cách khác, các tính năng của Google Classroom đều được tối giản hết mức để phục vụ những nhu cầu cần thiết nhất của việc triển khai lớp học Việc thiết kế khóa học, đăng ký và vận hành một lớp học trên Google Classroom diễn ra khá đơn giản và dễ dàng.
Tuy nhiên, việc có quá ít tính năng cũng là một hạn chế dẫn đến nhiều chỉ trích của người dùng Đồng thời, việc bắt buộc phải sử dụng một email thuộc gói Google Education (gói ứng dụng Google dành cho giáo dục) để đăng ký vàoGoogle Classroom cũng là một rào cản khiến cho nền tảng này không dễ để phổ biến rộng rãi.
Nhìn chung, Google Classroom là nơi tích hợp các công cụ khác nhau của Google để phục vụ cho việc dạy học Hiện tại Google Classroom vẫn còn khá đơn giản và vẫn chưa phải là một hệ thống đủ mạnh và đầy đủ để quản trị lớp học, đặc biệt là các lớp học triển khai dưới dạng hỗn hợp.
Edmodo là một Hệ thống Quản lý Học tập được phát triển theo hướng mạng xã hội học tập (Social Learning Platform), với số lượng người dùng hiện nay đã lên đến hơn 70 triệu người[2], bao gồm cả giáo viên, học sinh và phụ huynh Giao diện của Edmodo được đánh giá là khá giống với Facebook và một số mạng xã hội khác hiện nay.
Tính năng của Edmodo nhiều hơn hẳn Google Classroom và một số Hệ thống Quản lý Học tập khác Ngoài ra, Edmodo còn có một cửa hàng (App Store) cung cấp các tính năng mở rộng tùy theo nhu cầu của người dùng Đây là một ưu điểm giúp cho Edmodo đáp ứng được nhiều đối tượng người dùng, nhiều tình huống và nhiều nội dung học tập khác nhau.
Các tài nguyên học tập có thể được giáo viên đưa vào trong thư viện (Library), các thư mục (Folder) hoặc kết nối tới các dịch vụ lưu trữ khác như Google Drive, Dropbox… sau đó chia sẻ chúng với các nhóm khác nhau.
Edmodo có thêm tính năng tạo và đặt lịch đăng các ghi chép (Note) khá tiện lợi Giáo viên và học sinh có thể lựa chọn hình thức nhận được các thông báo, chẳng hạn là qua email hoặc tin nhắn điện thoại Trong một lớp, giáo viên có thể tạo ra các nhóm nhỏ để thảo luận về những chủ đề khác nhau của khóa học, tổ chức các hoạt động theo nhóm, gửi thông báo và làm bài tập theo nhóm.
Ngoài ra, Edmodo còn cung cấp tính năng theo dõi tiến độ học tập thông qua việc đánh giá điểm và trao thưởng huy hiệu cho học sinh Tính năng này giúp trực quan hóa quá trình học tập của học sinh và cung cấp nhiều thông tin hữu ích, giúp cho giáo viên có những điều chỉnh hợp lý ngay trong khi quá trình học tập đang diễn ra Tính năng này cũng giúp cho sinh viên tự ý thức được tiến độ của mình và cải thiện động lực học tập.
Một tính năng tốt nữa của Edmodo đó là Shared Teachers (Chia sẻ Giáo viên) trong đó một lớp có thể được quản lý bởi nhiều giáo viên, tạo điều kiện cho việc cộng tác tốt hơn trong việc thiết kế và chuyển giao các lớp học.
Tuy nhiên, Edmodo cũng có một số nhược điểm khiến cho việc áp dụng vào trong phương pháp học tập hỗn hợp gặp khó khăn Chẳng hạn, Edmodo không có tính năng để thiết kế và tổ chức nội dung của một khóa học, không có tính năng cá nhân hóa mục tiêu và hoạt động học tập cho học sinh.
Coursera là một công ty công nghệ giáo dục cung cấp các khóa học trực tuyến đại chúng mở (MOOC) Coursera cộng tác với các trường đại học và một số tổ chức giáo dục khác để xây dựng các khóa học trực tuyến về nhiều lĩnh vực khác nhau như công nghệ, y học, khoa học xã hội, toán học, kinh doanh v.v
Các khóa học trên Coursera được cung cấp dưới dạng miễn phí Sau đó, người học có thể trả tiền để được cấp chứng chỉ hoàn thành đối với khóa học đó. Các chứng chỉ này khá uy tín và có thể được sử dụng vào mục đích nghề nghiệp.
Một số lý thuyết quan trọng về học tập và đào tạo
Song song với việc có được hiểu biết về các phương pháp đào tạo cũng như những tính năng quan trọng của một hệ thống hỗ trợ học tập, việc tìm hiểu về những lý thuyết nền tảng quan trọng trong thiết kế và chuyển giao lớp học cũng là một yếu tố giúp xây dựng được một hệ thống mới đáp ứng được mục tiêu đề ra Phần này sẽ đề cập đến ba lý thuyết quan trọng liên quan đến việc tổ chức học tập cũng như thiết kế khóa học, bao gồm: thuyết học tập trải nghiệm, thuyết kiến tạo và mô hình thiết kế khóa học giàu tính động viên ARCS.
1.3.1 Học tập trải nghiệm và vòng học tập Kolb
Học tập trải nghiệm (experiential learning) là một học thuyết nhấn mạnh rằng việc xây dựng tri thức của học sinh phải được thông qua trải nghiệm thực tế, dựa trên những nền tảng kiến thức vốn có Học thuyết này thể hiện sự khác biệt trong quan điểm so với trường phái học tập hàn lâm (academic learning) khi trường phái này cho rằng việc học tập hoàn toàn có thể thực hiện được dựa trên việc nghiên cứu các lý thuyết, khái niệm mà không cần trải nghiệm thực tế. Thuyết học tập trải nghiệm ngày càng chứng minh được tính đúng đắn của mình và đang được đưa vào áp dụng trong hơn 30 ngành học[21].
Ngoài John Dewey, Kurt Lewin, Jean Piaget và một số nhà tâm lý học và giáo dục học cùng thời khác thì David Kolb được coi là người có ảnh hưởng lớn nhất và cổ súy mạnh mẽ nhất cho học thuyết này[21].
Một trong những công trình được biết đến rộng rãi của Kolb là Chu trình học tập Kolb (Kolb Learning Cycle) giải thích các giai đoạn của việc học Chu trình này diễn giải rằng việc học tốt nhất nên diễn ra bao gồm các giai đoạn: Kinh nghiệm Cụ thể (Concrete Experience), Quan sát Phản tỉnh (Reflective Observation), Khái niệm hóa Trừu tượng (Abstract Conceptualization) và Thử nghiệm Tích cực (Active Experimentation)[20].
Hình 1.4 Chu trình học tập Kolb
Dựa trên các quan điểm của Kolb, hệ thống hỗ trợ giảng dạy được thiết kế để cung cấp đầy đủ các công cụ nhằm giúp học sinh có được trải nghiệm học tập tốt nhất Chẳng hạn, hệ thống cho phép cá nhân hóa hoạt động học tập dưới nhiều mức độ khác nhau, phù hợp với nền tảng của từng học sinh; hệ thống cung cấp các tính năng để học sinh thực hiện thao tác phản tỉnh, ví dụ như ghi chép,viết các bài phản tỉnh, thực hiện các bài đánh giá, v.v
1.3.2 Thuyết kiến tạo trong học tập
Thuyết kiến tạo (constructivism) trong học tập là một cách tiếp cận trong giảng dạy và học tập cho rằng con người tự chủ động xây dựng tri thức cho bản thân dựa trên nền tảng tri thức hiện có của mình[17] Lý thuyết này chỉ ra rằng việc học tốt nhất cần diễn ra một cách tự thân chứ không phải dựa trên sự chuyển giao tri thức từ người này sang người khác Lý thuyết này đã nhận được sự quan tâm và cổ súy của nhiều nhà tâm lý học và giáo dục học nổi tiếng như Jean Piaget, Vygosky, John Dewey, v.v
Dựa trên học thuyết này, có rất nhiều phương pháp giảng dạy và học tập ra đời để xây dựng môi trường học tập tốt nhất cho học sinh và phát huy tính chủ động của học sinh trong việc tự xây dựng nên kiến thức của riêng mình Có thể kể đến một số phương pháp phổ biến như: học tập tích cực (active learning), học qua vấn đề (problem-based learning), học qua dự án (project-based learning), học tập hỗn hợp (blended learning), v.v
Với nhận thức về tầm quan trọng của học sinh trong việc tự xây dựng nên kiến thức của mình, hệ thống được phát triển trong luận văn này cố gắng cung cấp những tính năng phù hợp nhất cho giáo viên và sinh viên để tạo điều kiện cho việc tự học Chẳng hạn, mỗi khóa học đều có các mục tiêu học tập rõ ràng, học sinh luôn biết trước được lộ trình học tập của từng khóa học, học sinh có thể tự đánh giá được kiến thức của mình trong từng giai đoạn học tập, v.v
1.3.3 Mô hình thiết kế động viên ARCS của Keller
ARCS là một mô hình cụ thể để thiết kế các khóa học giàu tính động viên được đề xuất bởi Keller[17] Mô hình này chỉ ra rằng, thiết kế của một khóa học sẽ đạt được tính động viên cao nếu có được bốn yếu tố: thu hút sự chú ý (Attention) của học sinh, liên quan (Relevance) đến nền tảng của bản thân học sinh, giúp cho học sinh cảm thấy tự tin (Confidence), và làm học sinh thấy thỏa mãn (Satisfaction)[17]. Động lực trong học tập là một yếu tố rất quan trọng ảnh hưởng đến kết quả học tập Thậm chí, Chomsky còn cho rằng mục đích cuối cùng của toàn bộ các phương pháp luận trong giáo dục đều là làm thế nào để người học muốn học[10] Có nhiều yếu tố ảnh hưởng và cũng có nhiều kỹ thuật để xây dựng động lực học tập cho học sinh, trong đó mô hình ARCS được coi là một chỉ dẫn đầy đủ, hiệu quả và chi tiết để áp dụng ngay trong giai đoạn thiết kế khóa học.Dựa trên sự hiểu biết về mô hình ARCS, hệ thống được xây dựng trong luận văn này cố gắng cung cấp các tính năng giúp giáo viên thiết kế được các khóa học giàu tính động viên thông qua việc nâng cao bốn tiêu chí như Keller đã chỉ ra.
Như vậy, trong chương này, luận văn đã tập trung liệt kê, nghiên cứu và phân tích các phương pháp học tập chủ đạo, các lý thuyết có ảnh hưởng lớn đến việc thiết kế và triển khai học tập cũng như các công cụ hỗ trợ cho quá trình học tập Kết quả của chương này là cơ sở để lựa chọn và xây dựng thiết kế cho hệ thống hỗ trợ học tập như được đề cập trong chương tiếp theo.
PHÂN TÍCH THIẾT KẾ
Tổng quan về phương pháp và hệ thống hỗ trợ học tập mới
Hệ thống hỗ trợ học tập mới sẽ được thiết kế và xây dựng dựa trên mô hình dạy học hỗn hợp đã được đề cập trong chương trước[2], bao gồm các giai đoạn: phân tích, thiết kế, phát triển, triển khai, thực thi, đánh giá và rà soát Trong mô hình này, các giai đoạn phân tích, thiết kế, phát triển khóa học phụ thuộc nhiều vào giáo viên và chuyên môn của môn học, do đó, hệ thống sẽ cung cấp các hướng dẫn, các gợi ý, các quy định tối thiểu cần thiết để hỗ trợ giáo viên trong các giai đoạn này. Ở các giai đoạn triển khai, thực thi, đánh giá và rà soát thì vai trò của hệ thống hỗ trợ là rõ ràng và quan trọng hơn Hệ thống sẽ cung cấp nhiều tính năng để giúp cho các giai đoạn trong quá trình học tập này trở nên dễ dàng và đạt được hiệu quả cao hơn.
Về không gian học tập, như đã đề cập trong chương trước, có ba không gian học tập chính là trên lớp, ở nhà và trực tuyến Phương pháp và hệ thống mới sẽ cố gắng làm tăng thêm thời gian học tập cũng như nâng cao chất lượng học tập trong từng không gian này Để đạt được mục đích này, hệ thống sẽ cung cấp đầy đủ tất cả các công cụ cần thiết để học sinh dùng trong suốt quá trình học tập mà không cần đến các công cụ hỗ trợ bên ngoài khác Kết quả là, ba không gian học tập này không còn tách biệt như trước nữa mà đan xen, giao thoa lẫn nhau, tạo nên một môi trường học tập đồng nhất, có ý nghĩa.
Khác với cách làm thường thấy là không gian học tập trên lớp dành cho việc giảng bài và thực hiện các hoạt động học theo hình thức tương tác trực tuyến; không gian học tập ở nhà thì khá tách biệt, dành để làm bài tập và củng cố kiến thức, hầu như không có bất cứ một hoạt động học tập nào được thiết kế và ít liên quan đến các hoạt động khác đã diễn ra trên lớp; không gian học tập trực tuyến thì chủ yếu được sử dụng để lưu trữ tài nguyên, nộp bài tập hay báo cáo Phương pháp và hệ thống mới sẽ tiếp cận theo hướng xây dựng một không gian học tập duy nhất, thiết kế các hoạt động học tập xuyên suốt trong các không gian này, từ đó tạo ra sự liên kết và nâng cao ý nghĩa cũng như hiệu quả của các hoạt động học tập.
2.1.2 Giai đoạn thiết kế khóa học
Hệ thống cung cấp một cách thức tổ chức khóa học rõ ràng, dễ dàng nắm bắt đối với học sinh, dễ dàng truy xuất đến nội dung học tập cũng như theo dõi tiến độ học tập từ hai phía là giáo viên và học sinh Cấu trúc này cũng cho phép cá nhân hóa mục tiêu và hoạt động học tập đối với từng học sinh, giúp cho việc học trở nên ý nghĩa và phù hợp hơn đối với từng cá nhân Với cách thức thiết kế và xây dựng nội dung như vậy, hệ thống đang giúp hiện thực hóa mô hình thiết kế giàu tính động viên ARCS của Keller.
2.1.3 Giai đoạn triển khai khóa học
Hệ thống hỗ trợ nhiều kênh tương tác khác nhau giúp cho môi trường học tập trở nên sinh động và gia tăng tính liên tục Từ phía giáo viên, các kênh tương tác này là công cụ để định hướng, hỗ trợ, cung cấp tài nguyên, theo dõi và điều chỉnh nội dung cũng như các hoạt động học tập Từ phía học sinh, các kênh tương tác là cơ hội để duy trì cơ chế học tập theo nhóm, đồng bộ hóa thông tin, nhận được sự hỗ trợ từ chuyên gia và tháo gỡ các khó khăn trong quá trình học tập.
Ngoài ra, ở giai đoạn này, hệ thống còn cung cấp một số công cụ khác để để học sinh thực hiện phản tỉnh (reflect) – một giai đoạn rất quan trọng trong quá trình học tập như đã được đề cập trong vòng học tập Kolb.
2.1.4 Theo dõi và đánh giá
Hệ thống cung cấp các công cụ đánh giá với mục đích theo dõi (formative assessment) và tổng kết (summative assessment) Sự kết hợp của các công cụ đánh giá này không chỉ giúp cho giáo viên nắm được thông tin về học sinh mà còn giúp cho học sinh biết được tiến độ học tập của mình, tự đánh giá và điều chỉnh liên tục trong quá trình học tập.
2.1.5 Sơ đồ ca sử dụng tổng quan của hệ thống
Sơ đồ ca sử dụng mức tổng quan của hệ thống được thể hiện trong Hình 3.1.
Hình 3.1 Sơ đồ ca sử dụng tổng quan của hệ thống
Với cấu trúc và các tính năng hỗ trợ như vậy, hệ thống hướng đến việc tạo điều kiện thuận lợi nhất cho việc thiết kế nên các khóa học giàu tính động viên, hỗ trợ liên tục trong quá trình diễn ra hoạt động học tập, thúc đẩy và hỗ trợ việc tự học, tự xây dựng kiến thức với một chu trình học tập đầy đủ và hiệu quả Chi tiết về các tính năng của hệ thống sẽ được đề cập trong các phần tiếp theo của luận văn.
Cấu trúc tổ chức của lớp học
Các lớp học là đơn vị cơ bản nhất của hệ thống, ở đó diễn ra các hoạt động học tập Mỗi lớp học bao gồm các vai trò, nội dung học tập và các hoạt động học tập diễn ra liên tục.
Có hai vai trò tham gia vào trong một lớp học, bao gồm giáo viên và học sinh Giáo viên có nhiệm vụ khởi tạo lớp học, thiết kế và xây dựng khóa học, duy trì các hoạt động học tập và cung cấp các hỗ trợ cần thiết Học sinh tham giao lớp học có thể truy xuất các tài nguyên, tùy chỉnh nội dung học tập, tham gia vào các trao đổi, tự theo dõi tiến độ học tập và sử dụng các công cụ hỗ trợ trong suốt quá trình học tập.
Khi giáo viên khởi tạo một lớp học, hệ thống sinh ra một mã ngẫu nhiên để đăng ký vào lớp học đó Chỉ những học sinh được cung cấp mã thì mới có thể đăng ký vào lớp học Giáo viên có thể hủy mã đăng ký và sinh ra một mã đăng ký mới Giáo viên cũng có thể đóng tính năng đăng ký của một lớp, chẳng hạn trong trường hợp đã đủ số lượng học sinh.
Mỗi lớp có thể được quản lý bởi nhiều giáo viên, tính năng này cho phép các giáo viên cộng tác và chia sẻ trong trong quá trình xây dựng cũng như triển khai khóa học Một giáo viên có thể mời giáo viên khác cùng tham gia vào lớp học.
Với cấu trúc tổ chức theo lớp học như vậy, hệ thống đảm bảo tạo ra môi trường riêng biệt cho từng khóa học, việc quản lý các lớp học là dễ dàng đối với cả giáo viên và học sinh Khi khởi tạo một lớp học, yếu tố quan trọng nhất đó là xây dựng nội dung của lớp học đó.
Hình 3.2 Sơ đồ hoạt động tạo lớp học
Tổ chức nội dung học tập
Nội dung học tập trong từng lớp học được tổ chức hướng đến sự rõ ràng,đơn giản, dễ dàng truy xuất và theo dõi Nội dung học tập trong một lớp được gọi là một lộ trình học tập (learning path) bao gồm nhiều hạng mục học tập(learning item) Mỗi hạng mục học tập có các mục tiêu, tài nguyên và các hoạt động tương ứng Khi khởi tạo một lớp mới, giáo viên có thể sử dụng những lộ trình học tập sẵn có hoặc tạo ra một lộ trình học tập mới Các lộ trình học tập này có thể được điều chỉnh liên tục dựa vào những quan sát và hiểu biết mới của giáo viên trong suốt quá trình diễn ra lớp học.
Bắt đầu mỗi lộ trình học tập, giáo viên làm rõ tổng quan về khóa học, các hướng dẫn cần thiết, các lưu ý, và đặc biệt quan trọng là các mục tiêu của khóa học này Những thông tin này là rất quan trọng đối với học sinh để giúp cho quá trình tự học được diễn ra thuận lợi hơn.
Mỗi hạng mục học tập có mô tả về mục tiêu của hạng mục đó, các hoạt động chính sẽ diễn ra Các tài nguyên chính trong từng hạng mục bao gồm các video, bài quiz và tài liệu Việc sắp xếp các nội dung này là tùy thuộc vào thiết kế của giáo viên, tuy nhiên một cách làm tốt là tổ chức theo trình tự[6]: bắt đầu bằng video trình bày về các khái niệm; tiếp theo là bài quiz để cũng cố kiến thức; tiếp theo là một bài hướng dẫn; và cuối cùng có thể thêm các bài đọc thêm.
Về nội dung video, độ dài của mỗi video không nên dài quá 10 phút[32] để tận dụng được thời gian tập trung của học sinh Mỗi video nên có một mục tiêu rõ thêm và tập trung để giúp học sinh dễ nắm bắt Các nội dung mở rộng nên được cung cấp ở các phần sau Bản thân mỗi video cũng cần được thiết kế để gia thêm tính động viên, có thể áp dụng mô hình ARCS để xây dựng video.
Các bài quiz là cơ chế để tự đánh giá trong quá trình học tập Hay nói cách khác, mục tiêu của bài quiz không phải là để đánh giá học sinh mà là để cũng cố kiến thức, rà soát và gợi nhớ những nội dung đã được đề cập trước đó Với mục tiêu như vậy, nên xây dựng các bài quiz ngay sau mỗi nội dung mang tính lý thuyết hay hướng dẫn, chẳng hạn như là ngay sau mỗi video như đã đề cập ở trên Bắt đầu mỗi bài quiz, giáo viên làm rõ mục tiêu và nội dung của bài quiz. Khi thực hiện quiz, đối với từng câu hỏi học sinh được quyền đưa ra các lựa chọn khác nhau cho đến khi vượt qua được câu hỏi đó Khi kết thúc bài quiz, hệ thống sẽ cung cấp một thống kê cho phép người học nhìn lại những nội dung mà mình đã học, những phần mình đã làm tốt và những phần mình cần rà soát thêm.
Ngoài video và quiz thì hệ thống còn hỗ trợ thêm một loại nội dung nữa đó là tài liệu Việc sử dụng tài liệu giúp cho nội dung học tập trở nên phong phú hơn, dễ dàng xây dựng, thường phù hợp với những nội dung mà việc sử dụng video là không cần thiết, chẳng hạn là các bài hướng dẫn áp dụng, các bài đọc thêm để mở rộng cũng như đào sâu hơn kiến thức Ở trong các tài liệu này, giáo viên cũng có thể cung cấp thêm các tài nguyên khác, chẳng hạn như các bản mẫu, các ví dụ, các tài nguyên tải về…
Thông qua cơ chế tổ chức nội dung dưới dạng lộ trình học tập với các định dạng cơ bản là video, quiz và tài liệu với từng mục tiêu và hướng dẫn rõ thêm, hệ thống giúp cho việc thiết kế khóa học trở nên dễ dàng hơn và hỗ trợ tốt nhất cho việc tự học, đồng thời, đây cũng là một cơ sở để triển khai cơ chế cá nhân hóa hoạt động học tập.
Hình 3.3 Sơ đồ hoạt động tạo lộ trình học tập
Cá nhân hóa hoạt động học tập
Cá nhân hóa học tập tức là cung cấp cho học sinh nhiều lựa chọn về mục tiêu học tập, trải nghiệm, hỗ trợ phù hợp với các mong muốn, sự quan tâm, nền tảng của từng cá nhân[9] Cá nhân hóa hoạt động học tập là cách tiếp cận khác với cách truyền thống là “một chương trình cho tất cả” (one-size-fits-all) Như đã đề cập trong Chương 1, cá nhân hóa hoạt động học tập là một thành tố quan trọng để nâng cao hiệu quả học tập Do đó, hệ thống mới sẽ hỗ trợ việc cá nhân hóa dưới nhiều cấp độ khác nhau.
Cơ chế cá nhân hóa đầu tiên được hỗ trợ đó là cho phép học sinh điều chỉnh lộ trình học tập của mình Mỗi lớp đều có một lộ trình học tập chung được giáo viên cung cấp khi khởi tạo lớp, tuy nhiên học sinh có thể tùy chỉnh lộ trình học tập để phù hợp hơn với mục tiêu và nền tảng của mình Đối với mỗi lộ trình học tập được tùy chỉnh, học sinh có thể loại bỏ một số hạng mục mà mình đánh giá là không cần thiết, sắp xếp lại các hạng mục để hợp lý hơn với cá nhân mình. Các lộ trình học tập tùy chỉnh cần được giáo viên chấp thuận trước khi có tác dụng.
Cơ chế cá nhân hóa hoạt động học tập còn được thể hiện ở cấp độ nhóm. Tức là những học sinh có nền tảng, mục tiêu và khả năng tương đồng với nhau thì có thể hỗ trợ nhau trong quá trình học tập.
Mở rộng ra, cơ chế cá nhân hóa còn có thể được triển khai ở cấp độ định hướng nghề nghiệp Tức là, học sinh lựa chọn các khóa học dựa trên nền tảng, mong muốn và thiết lập đầu ra của mình Khía cạnh này không được tập trung xây dựng trong khuôn khổ của luận văn này, tuy nhiên hệ thống đang xây dựng hoàn toàn có thể đáp ứng được nhu cầu này.
Như vậy, ngoài việc tận dụng ưu điểm cá nhân hóa hoạt động học tập vốn có của hình thức học tập trực tuyến và hỗn hợp thì hệ thống còn hỗ trợ thêm các tính năng khác để nâng cao tính hiệu quả của yếu tố này Ngoài ra, cơ chế cá nhân hóa còn được thể hiện thông qua hình thức theo dõi tiến độ học tập của từng học sinh, cung cấp các hỗ trợ cần thiết riêng biệt cho từng học sinh thông qua một số kênh giao tiếp và tương tác khác nhau.
Hình 3.4 Sơ đồ hoạt động cá nhân hóa lộ trình học
Giao tiếp và tương tác
Để tạo môi trường học tập liên tục, minh bạch hóa thông tin và gia thêm tính tương tác trong lớp học thì hệ thống cung cấp các kênh tương tác khác nhau, bao gồm các thông báo và kênh trao đổi riêng.
Các thông báo (announcement) và phản hồi (comment) là kênh giao tiếp chính của các lớp học Thông qua công cụ này, giáo viên đưa ra các hướng dẫn học tập, cung cấp các tài nguyên cũng như thăm dò học sinh để có thêm thông tin phục vụ việc điều chỉnh hoạt động học tập Giáo viên có thể gửi một thông báo tới một hoặc nhiều lớp mà mình quản lý cùng một lúc Học sinh có thể xem các thông báo của tất cả các lớp mà mình tham gia hay của một lớp nhất định.Các tài nguyên đính kèm trong các thông báo như tài liệu, video, ảnh đều có thể xem trực tiếp mà không cần sử dụng thêm bất cứ công cụ nào khác Việc này nhằm giảm sự phụ thuộc vào các công cụ bên ngoài và tạo điều kiện thuận lợi cho học sinh không bị sao nhãng mà tập trung vào nội dung chính là học tập Cơ chế thông báo được xây dựng dựa trên việc tham khảo cách thức vận hành của một số mạng xã hội phổ biến cũng như nền tảng Edmodo và giữ ở mức tối giản nhất nhằm tránh sự phức tạp khi sử dụng.
Kênh giao tiếp thứ hai được hỗ trợ là trao đổi riêng giữa giáo viên với học sinh hoặc giữa học sinh với nhau Khác với kênh thông báo chung diễn ra dưới hình thức bất đồng bộ, kênh trao đổi riêng diễn ra dưới hình thức đồng bộ, giúp cho việc giao tiếp trở nên nhanh chóng hơn, tập trung hơn, phù hợp với các trường hợp cần sự hỗ trợ trực tiếp, tháo gỡ các khó khăn trong quá trình học tập.
Ngoài hai kênh giao tiếp chính ở trên, học sinh có thể quan sát tiến độ học tập của nhau Đây là hình thức minh bạch hóa thông tin và thúc đẩy học tập nhóm, gián tiếp nâng cao tính động viên trong học tập.
Hình 3.5 Sơ đồ hoạt động trao đổi trực tiếp
Theo dõi tiến độ học tập
Tiến độ học tập là một thông tin rất hữu ích giúp cho việc điều chỉnh các hoạt động học tập cũng như hỗ trợ quá trình tự học Việc chủ động nắm bắt tiến độ học tập là một cơ chế tự kiểm soát trong học tập, giúp cho quá trình tự học đạt được hiệu quả cao hơn.
Từ phía người dạy, giáo viên có thể biết được tỉ lệ hoàn thành nội dung học tập của từng học sinh, biết được những nội dung nào đang được quan tâm nhiều nhất, nội dung nào cần được cải tiến.
Từ phía người học, học sinh có thể tự biết được tiến độ học tập của mình và của những người khác trong lớp Khi học sinh hoàn thành một nội dung trong một hạng mục học tập (chẳng hạn là video hay quiz) thì hệ thống tự ghi nhận trạng thái này và thể hiện ở trên lộ trình học tập của học sinh đó.
Các công cụ hỗ trợ
Các công cụ hỗ trợ học tập là một phần quan trọng không thể thiếu của bất cứ hệ thống hỗ trợ học tập nào Nhằm tạo ra một môi trường đầy đủ phục vụ cho việc học tập, hệ thống được thiết kế để dễ dàng tích hợp các công cụ hỗ trợ học tập Trong quá trình triển khai hệ thống, nếu có nhu cầu cài đặt thêm các công cụ hỗ trợ mới thì hệ thống cũng cho phép làm điều này.
Ghi chép là một thao tác quan trọng mà học sinh cần thực hiện trong quá trình học tập D Kolb liệt kê việc ghi chép vào một trong số các kỹ thuật để thực hiện phản tỉnh (reflect) có hiệu quả Vì tính chất quan trọng của việc ghi chép cho nên hệ thống cung cấp sẵn một tính năng cho phép học sinh tạo các ghi chú và lưu trữ trên hệ thống.
Có rất nhiều kỹ thuật ghi chép khác nhau, có thể kể đến như: ghi chép tuyến tính (linear note-taking), bản đồ tư duy (mind mapping), bản đồ mô hình
(model mapping), hệ thống ghi chép Cornell (Cornel note-taking system)… trong đó hệ thống ghi chép Cornell được đánh giá cao về tính hiệu quả và đơn giản[27].
Cấu trúc của một bản ghi chép theo mô hình Cornell bao gồm ba phần: (1) phần bên trái thể hiện các từ khóa, các ý chính, các ý tưởng quan trọng, (2) phần bên phải thể hiện chi tiết của các mục ở bên trái, và (3) phần dưới cùng ghi lại tóm lược về nội dung đã học[27].
Hình 2.2 Cấu trúc của một bản ghi chép theo mô hình Cornell
Với tiêu chí lựa chọn là tính đơn giản và hiệu quả trong ghi nhớ, hệ thống sẽ lựa chọn phát triển tính năng ghi chép dựa trên mô hình ghi chép Cornell.
2.7.2 Bản đồ tư duy (mind map)
Ngoài tính năng ghi chép dựa trên mô hình Cornell thì hệ thống còn hỗ trợ ghi chép theo bản đồ tư duy Hình thức ghi chép này tổ chức thông tin dưới dạng sơ đồ trực quan, khoa học giúp nâng cao hiệu quả ghi nhớ[12] cũng như rà soát thông tin.
Cấu trúc của một bản đồ tư duy bao gồm các node (nút chứa thông tin) có quan hệ cha-con với nhau Mỗi node có thể là một khái niệm (concept) dẫn đến những khái niệm liên quan khác Cấu trúc này giúp cho học sinh đi đến một sự hiểu biết sâu sắc hơn về từng khái niệm được học.
Tính năng thu gọn và mở rộng các node giúp cho học sinh có thể nhìn thông tin dưới dạng tổng quát rồi sau đó đi đến các chi tiết mà không bị rối rắm.
2.7.3 Các ứng dụng đọc tài liệu trực tuyến Để hỗ trợ cho học sinh dễ dàng truy xuất thông tin từ các tài liệu, hệ thống sử dụng các ứng dụng đọc tài liệu trực tuyến để học sinh không phải cài đặt các phần mềm khác Tính năng này không chỉ mang lại trải nghiệm học tập tốt mà còn giúp học sinh tránh mất tập trung khi phải sử dụng các phần mềm khác Các ứng dụng đọc tài liệu trực tuyến sẽ hỗ trợ hầu hết các loại tập tin thông dụng như doc, docx, xsl, xslx, pdf…
Nếu không có các ứng dụng đọc tài liệu tích hợp sẵn, thông thường học sinh cần tải các tài liệu được chia sẻ về, sau đó cài đặt các trình đọc tài liệu trên máy tính của mình để có thể xem được nội dung Cách làm này gây khó khăn cho học sinh và đôi khi gây mất tập trung đối với học sinh bởi vì phải quan tâm đến những thao tác phục vụ cho việc học.
Với tính năng tích hợp các ứng dụng đọc tài liệu, học sinh sẽ được giải phóng khỏi những công việc kỹ thuật liên quan đến đọc tài liệu Thay vào đó,học sinh chỉ cần có kết nối Internet là có thể truy xuất đến nội dung của tài liệu bất cứ lúc nào.
Trong chương này, luận văn đã trình bày về thiết kế tổng quan cũng như phân tích và đề xuất các tính năng cơ bản của hệ thống mới Một số tính năng nổi bật đã được đề cập bao gồm: tổ chức nội dung học tập theo mô hình lộ trình học tập, hỗ trợ cá nhân hóa hoạt động học tập, cung cấp các kênh giao tiếp, theo dõi tiến độ học tập và các ứng dụng hỗ trợ học sinh trong suốt quá trình học tập nhằm mang lại trải nghiệm và sự tập trung tốt nhất.
CÀI ĐẶT HỆ THỐNG
Kiến trúc hệ thống
Hệ thống được xây dựng với định hướng đa nền tảng và sẵn sàng cho việc mở rộng Việc lựa chọn một kiến trúc hệ thống phù hợp với định hướng đó là rất quan trọng để tạo điều kiện thuận lợi cho việc cài đặt hiện tại cũng như phát triển sau này.
3.1.1 Áp dụng mô hình client-server
Mô hình client-server cho phép phát triển các hệ thống có tính chất phân tán, rất phù hợp với yêu cầu của hệ thống hiện tại Trong mô hình này, server (máy dịch vụ) có vai trò xử lý các yêu cầu nghiệp vụ, lưu trữ và chia sẻ các tài nguyên với các client (máy khách) Việc liên lạc giữa client và server được thực hiện thông qua dịch vụ web Người dùng không trực tiếp làm việc với server mà thao tác thông qua client.
Với mô hình này, chúng ta sẽ xây dựng một ứng dụng server để xử lý các yêu cầu nghiệp vụ, cung cấp các dịch vụ web để các client kết nối vào Việc cài đặt server và client diễn ra tách biệt, không phụ thuộc lẫn nhau, do đó rất thuận lợi cho việc xây dựng các ứng dụng cho các nền tảng khác nhau cũng như khả năng thay đổi và mở rộng sau này.
Thiết kế kiến trúc tổng quan của hệ thống được thể hiện trong Hình 3.1.
Trong thiết kế này, phần cơ sở dữ liệu cũng được tách rời khỏi ứng dụng server, tuy nhiên, trong thực tế thì việc tách rời hay gắn liền phụ thuộc vào việc triển khai ứng dụng chứ không phải là cố định.
Hình 3.1 Thiết kế kiến trúc của hệ thống Ở phần client, hệ thống được thiết kế để có thể xây dựng các client khác nhau, chẳng hạn như web và ứng dụng di động Tuy nhiên, trong khuôn khổ của luận văn, việc xây dựng client cho các thiết bị di động vẫn chưa được thực hiện. Đây là một ứng dụng được đưa vào trong hướng phát triển tiếp theo của hệ thống.
Quá trình giao tiếp giữa client và server diễn ra dựa vào kết nối Internet. Trên môi trường này, so với các giao thức khác, việc sử dụng dịch vụ web là phù hợp hơn cả Có một số lý do để đưa ra lựa chọn này, có thể kể đến:
Việc phát triển các dịch vụ web khá đơn giản, không phức tạp như phát triển các giao thức ở tầng thấp hơn như TCP, UDP…
Dịch vụ web dễ triển khai, có thể hoạt động trên hầu hết các nền tảng.
Dịch vụ web khá thông dụng, thường không bị ngăn chặn bởi các cấu hình mạng.
Các phần mở rộng mã nguồn mở hỗ trợ cho dịch vụ web hiện nay rất đa dạng, đáp ứng được hầu hết các nhu cầu của hệ thống hiện tại.
Trong các tiêu chuẩn của dịch vụ web thì RESTful có rất nhiều ưu điểm so với tiêu chuẩn truyền thống là SOAP (Simple Object Access Control), có thể kể đến một số lợi thế của RESTful như:
RESTful hỗ trợ định dạng JSON cùng với nhiều loại khác, trong khi đó SOAP chỉ hỗ trợ XML.
RESTful dễ triển khai ở các trình duyệt hơn, vì các trình duyệt hỗ trợ việc xử lý JSON rất tốt.
RESTful là một kiểu kiến trúc nhẹ nhàng (light-weight) nhờ sử dụng giao thức HTTP chuẩn và cấu trúc dữ liệu đơn giản.
RESTful linh hoạt hơn, việc tạo và cập nhật các API không cần đến thiết kế và chỉnh sửa các tập tin mô tả.
RESTful phù hợp với các ứng dụng client ở trên các thiết bị di động.
Với việc tìm hiểu và đánh giá các giao thức phù hợp để thực hiện việc giao tiếp giữa server và client, hệ thống lựa chọn RESTful nhờ những ưu điểm như đã phân tích ở trên Mô tả chi tiết của các API RESTful sẽ được đề cập trong các phần sau.
3.1.3 Bảo mật và phân quyền
Một trong những thành phần quan trọng đối với các hệ thống phân tán đó là triển khai mô hình bảo mật và phân quyền cho hệ thống Đối với mô hình dịch vụ web sử dụng RESTful thì việc lựa chọn mô hình bảo mật càng trở nên quan trọng vì bản thân RESTful không có mô tả cho việc này.
Có nhiều lựa chọn để triển khai bảo mật cho các API, chẳng hạn như:
HTTP Basic Authentication (Xác thực dựa trên HTTP), Digest Access Authentication (Xác thực dựa trên mã băm), OAuth, Token-based
Authentication (Xác thực dựa trên Token)… trong đó mô hình xác thực dựa trên Token là một lựa chọn hợp lý dựa trên hai lí do chính sau:
Gọn nhẹ: Token được truyền đi thông qua URL, tham số trên Request hay trong phần Header của HTTP với kích thước khá nhỏ.
Chứa thông tin: Token chứa thông tin và được mã hóa, sau đó có thể giải mã để lấy các thông tin trong đó, thường là thông tin về người dùng Cách hoạt động này có thể giúp giảm lượng yêu cầu truy xuất đến cơ sở dữ liệu để lấy thông tin người dùng.
Mô hình hoạt động của cơ chế bảo mật dựa trên Token được mô tả trong sơ đồ ở Hình 3.2.
Hình 3.2 Sơ đồ hoạt động của cơ chế bảo mật dựa trên Token.
Trong hệ thống hiện tại, việc triển khai cơ chế bảo mật này được thực hiện thông qua sử dụng module mã nguồn mở jsonwebtoken
(https://github.com/auth0/node-jsonwebtoken) ở phía server và module mã nguồn mở angular-local-storage (https://github.com/grevory/angular-local- storage) để lưu trữ Token ở phía client.
Công nghệ sử dụng
Dựa trên thiết kế kiến trúc như đã đề cập ở trên, luận văn đã thực hiện tìm hiểu và đánh giá các công nghệ để đưa ra sự lựa chọn hợp lý Các công nghệ được sử dụng để xây dựng hệ thống bao gồm: Node.js (với express.js), AngularJS và MongoDB.
3.2.1 Sử dụng ngôn ngữ lập trình Javascript
Khởi nguồn từ ý tưởng ban đầu là tạo ra một ngôn ngữ thông dịch tích hợp vào trình duyệt nhằm mục đích tăng tính tương tác của người dùng với trang web Qua thời gian phát triển hơn 20 năm, ngày nay Javascript đã đi xa hơn mục đích ban đầu của nó Ngoài việc trở thành một ngôn ngữ độc tôn dành cho các trình duyệt thì nó còn có thể được sử dụng ở phía server (nhờ Node.js), tạo ứng dụng Desktop (nhờ các framework như TideSDK hay Electron…), tạo ứng dụng cho thiết bị di động (nhờ các framework như jQuery Mobile, PhoneGap, SenchaTouch…), tạo trò chơi (nhờ các framework như Construct 2, ImpactJS…)…
Với tính đa năng của mình, Javascript được lựa chọn làm ngôn ngữ lập trình duy nhất để xây dựng hệ thống Lợi ích đầu tiên khi lựa chọn Javascript đó là không cần trang bị thêm các kỹ năng liên quan đến một ngôn ngữ nào khác. Lợi ích tiếp theo là hiện nay có nhiều framework được xây dựng dựa trên Node.js giúp cho việc phát triển ở phía server trở nên khá dễ dàng.
Ngoài những lợi ích như đã kể trên, việc lựa chọn Javascrtipt còn có một lợi ích khác nữa đó là nó cũng được sử dụng trong hệ quản lý cơ sở dữ liệu MongoDB Nội dung này sẽ được đề cập trong phần sau của luận văn.
3.2.2 Sử dụng Node.js ở phía server
Như đã trình bày ở phần trên, Node.js là một framework giúp tạo ra các web server sử dụng ngôn ngữ lập trình Javascript Việc lựa chọn Node.js dựa trên các ưu điểm của framework này, có thể kể đến như:
Tính thông dụng của Javascript: Javascript là một ngôn ngữ quen thuộc, dễ học và rất linh hoạt.
Hiệu năng cao: Node.js sử dụng engine V8 do Google phát triển Tốc độ xử lý của Node.js rất cao nhờ việc biên dịch Javascript sang mã nguồn gốc của máy (native machine code).
Hỗ trợ tốt các ứng dụng thời gian thực (real-time): Một số thành phần của hệ thống cần xử lý ở thời gian thực (chẳng hạn thông báo, trao đổi trực tuyến) Node.js triển khai cơ chế giao tiếp thời gian thực thông qua giao thức TCP tăng tốc độ xử lý và giảm tải cho máy chủ web.
Công cụ quản lý tốt: Đối với các hệ thống sử dụng nhiều module mã nguồn mở, việc có một công cụ quản lý phụ thuộc là rất quan trọng. Công cụ npm của Node.js giúp cho lập trình viên được giải phóng khỏi các thao tác liên quan đến cấu hình và xử lý phụ thuộc và tập trung vào xử lý nghiệp vụ của hệ thống.
Mặc dù Node.js có nhiều ưu điểm như vậy nhưng việc xây dựng một hệ thống dựa trên Node.js thuần gặp nhiều khó khăn về mặt kiến trúc và đầu tư thời gian Do đó, đã có nhiều framework được xây dựng trên nền Node.js giúp cho việc phát triển dễ dàng hơn, một trong số đó là express.js
3.2.3 Sử dụng express.js framework
Express.js (phiên bản 4.x) là một framework mã nguồn mở miễn phí phát triển theo kiến trúc MVC giúp cho việc xây dựng các ứng dụng Node.js trở nên dễ dàng và thuận lợi hơn Trên thực tế, Express.js được xem như một framework tiêu chuẩn của Node.js Hiện nay Express.js đang thuộc quyền quản lý của IBM và thuộc Node.js Foundation (Hiệp hội các nhà phát triển của nền tảng Node.js). Express.js được sử dụng để xây dựng các ứng dụng web, các ứng dụng cung cấp API với phương châm tối giản (minimalist) Một số tính năng nổi bật của Express.js bao gồm hỗ trợ routing (định tuyến các API), hỗ trợ kiểm thử nhanh chóng, cung cấp nhiều engine cho phần giao diện (view) và có rất nhiều module mở rộng đáp ứng được các nhu cầu đa dạng của lập trình viên Việc khởi động một ứng dụng Express.js và định tuyến các API là khá đơn giản và nhanh chóng như được thể hiện trong mã nguồn trích dẫn ở Hình 3.3.
Hình 3.3 Khởi động và định tuyến API trong một ứng dụng Express.js
Phiên bản Express.js được sử dụng trong hệ thống hiện tại là 4.12.3.
3.2.4 Sử dụng AngularJS ở phía client
AngularJS là một framework Javascript mã nguồn mở miễn phí giúp cho việc xây dựng các ứng dụng web dễ dàng hơn AngularJS hỗ trợ phát triển các ứng dụng theo mô hình MVC (Model-View-Contrller) hoặc MVVM (Model- View- ViewModel) AngularJS được khởi xướng và hỗ trợ phát triển bởi Google. AngularJS hiện nay có hai phiên bản là 1.x và 2.x phát triển khá độc lập với nhau. Mặc dù trên thị trường hiện nay có rất nhiều các framework Javascript khác nhau hỗ trợ cho việc lập trình ở phía front-end, chẳng hạn như Backbone, Ember, jQuery, ReactJS… nhưng AngularJS được sử dụng rất rộng rãi nhờ những tính năng ưu việt của mình, có thể kể đến như:
Mô hình MVC hoặc MVVM: tách biệt các thành phần khác nhau giúp cho việc lập trình trở nên rõ ràng và dễ duy trì.
Data-binding: kết nối dữ liệu giữa phần View và Model Tự động đồng bộ dữ liệu khi có thay đổi từ một trong hai phía.
Kiểm thử được: các thành phần trong AngularJS đều có thể kiểm thử được.
Dependency Injection: các thành phần trong AngularJS được khởi tạo và cung cấp sử dụng cơ chế Dependency Injection giúp giảm thiểu sự phụ thuộc giữa chúng.
Tái sử dụng được: các thành phần trong AngularJS có thể tái sử dụng được nhiều lần trong cùng một ứng dụng hoặc trong các ứng dụng khác nhau.
Hỗ trợ tốt ở hầu hết các trình duyệt hiện nay.
Các thành phần của AngularJS được mô tả trong Hình 3.4.
Hình 3.4 Các thành phần của AngularJS
Phiên bản được sử dụng cho hệ thống hiện tại là 1.5.6.
3.2.5 Sử dụng MongoDB để lưu trữ dữ liệu
MongoDB là một nền tảng mã nguồn mở miễn phí dùng để lưu trữ dữ liệu dưới dạng các tài liệu có cấu trúc MongoDB thuộc nhóm các hệ quản trị cơ sở dữ liệu NoSQL Cấu trúc của các tài liệu được định nghĩa thông qua cácSchema, sử dụng cú pháp Javascript Nội dung của các tài liệu được biểu diễn dưới dạng cú pháp của JSON.
Hình 3.5 mô tả nội dung của một file Schema định nghĩa cấu trúc của một tài liệu trong MongoDB.
Hình 3.5 File Schema định nghĩa cấu trúc của tài liệu lưu trữ thông tin người dùng trong MongoDB
Một số ưu điểm nổi bật của MongoDB so với các hệ quản trị cơ sở dữ liệu truyền thống bao gồm:
Mô hình dữ liệu linh hoạt: lập trình viên có thể định nghĩa các cấu trúc dữ liệu tùy biến theo nhu cầu của mình.
Tương thích rất cao với các ngôn ngữ lập trình hướng đối tượng: việc thao tác với các đối tượng diễn ra một cách tự nhiên, không cần đến các tầng ORM (Object-Relation Mapping) như truyền thống.
Hỗ trợ tốt cho quy mô lớn theo cơ chế sharding (mở rộng theo chiều ngang).
Phiên bản MongoDB được sử dụng cho hệ thống hiện tại là 3.0.1.
Việc lựa chọn các công nghệ cho hệ thống hiện tại được thực hiện chủ yếu dựa trên các ưu điểm của từng công nghệ Ngoài ra, có một lí do quan trọng khác nữa đó là các công nghệ này cùng nhau tạo nên một hệ sinh thái rất mạnh mẽ và ngày càng phổ biến: MEAN (tên gọi này xuất phát từ chữ viết tắt của MongoDB, Express.js, AngularJS và Node.js) MEAN là một bộ công cụ đầy đủ để phát triển các ứng dụng web hoàn toàn dựa trên Javascript.
3.2.6 Sử dụng các module mã nguồn mở
Ngoài việc sử dụng bốn công nghệ chủ yếu là MongoDB, Express.js,AngularJS và Node.js thì hệ thống còn sử dụng thêm một số các module mã nguồn mở miễn phí khác Danh sách các module sử dụng được thể hiện trong các Hình 3.6, 3.7.
Hình 3.6 Danh sách các module được sử dụng ở phía server
Hình 3.7 Danh sách các module được sử dụng ở phía client
Sử dụng PivotalTracker để quản lý dự án
Trong quá trình phát triển hệ thống, việc quản lý các tính năng cũng như công việc được thực hiện thông qua hệ thống quản lý của PivotalTracker Đây là một công cụ quản lý khá đơn giản, tiện lợi nhưng khá đầy đủ, đáp ứng được hầu hết các nhu cầu về quản trị như theo dõi, ước tính, lập kế hoạch…
Giao diện chính của trang quản trị dự án được thể hiện trong Hình 3.8.
Hình 3.8 Trang quản trị dự án trên PivotalTracker
Cài đặt chi tiết các module của hệ thống
Hệ thống được cài đặt theo từng module tách biệt, phần này sẽ trình bày lần lượt về việc cài đặt các module này.
Có hai vai trò người dùng trong hệ thống là giáo viên và học sinh Các thông tin người dùng được quản lý được thể hiện trong Hình 3.5 Khi đăng ký một tài khoản ở hệ thống, người dùng sẽ chọn vai trò của mình, mỗi người dùng chỉ có một vai trò duy nhất Trang đăng ký người dùng được thể hiện trong
Hình 3.9 Trang đăng ký người dùng
Khi người dùng đã đăng ký thành công và đăng nhập vào hệ thống thì có thể thực hiện các thao tác tiếp theo tùy theo vai trò của mình.
Lớp học là đơn vị tổ chức học tập cơ bản của hệ thống Thông tin của một lớp học được mô tả trong Schema ở Hình 3.10 Trong đó, mỗi lớp học có một danh sách các giáo viên và học sinh trực thuộc, cùng với đó là một lộ trình học tập dành riêng cho lớp đó.
Hình 3.10 Schema quy định cấu trúc của một lớp học
Chỉ có giáo viên mới được quyền khởi tạo một lớp mới Mỗi lớp sẽ có một mã để đăng ký, giáo viên có thể cung cấp mã này cho sinh viên của mình để đăng ký vào lớp Giáo viên có thể khóa chức năng đăng ký vào lớp.
Hình 3.11 Chức năng quản lý mã đăng ký vào lớp học
Trang chủ của mỗi lớp học thể hiện các thông báo (announcement) mới nhất của lớp đó Cả giáo viên và học sinh đều có thể viết các thông báo mới, phản hồi các thông báo đã có Người dùng có thể đính kèm các tệp tài liệu vào các thông báo Việc hiển thị các thông báo được thực hiện qua cơ chế infinitive- scroll (hiển thị liên tục) khi người dùng cuộn trang chủ Hình 3.12 thể hiện trang chủ của một lớp học.
Hình 3.12 Các thông báo trong trang chủ của một lớp học
Ngoài tính năng liên quan đến thông báo thì thành viên của một lớp học có thể xem danh sách giáo viên và học sinh của lớp đó.
3.4.3 Quản lý nội dung học tập
Mỗi lớp học có một lộ trình học tập riêng Giáo viên có thể thiết lập lộ trình học tập cho một lớp Tất cả các thành viên của lớp đều có thể sử dụng lộ trình học tập này Mỗi lộ trình học tập bao gồm nhiều hạng mục (hay còn gọi là section), mỗi hạng mục bao gồm nhiều nội dung khác nhau như video, quizz, tài liệu… như được thể hiện trong Hình 3.13.
Hình 3.13 Lộ trình học tập của một lớp
Khi quản lý một lộ trình học tập, giáo viên có thể thêm các section mới, tạo các video, quiz và tài liệu cho từng section và sắp xếp trật tự của chúng Giao diện quản trị của thao tác này được thể hiện trong Hình 3.14.
Hình 3.14 Giáo viên quản lý một lộ trình học tập
Hình 3.15 Lộ trình học tập tùy biến của học sinh Đối với học sinh, hệ thống cho phép tùy biến lộ trình học tập của lớp học tùy theo tình huống của mình thông qua việc loại bỏ một vài hạng mục được phép cũng như thay đổi trật tự của các hạng mục sao cho phù hợp với mục tiêu học tập của mình.
Cơ chế theo dõi tiến độ học tập của học sinh được thể hiện ở hai mức độ là tổng quan và chi tiết Ở mức tổng quan, giáo viên có thể biết được tỉ lệ phần trăm các hạng mục mà mỗi học sinh đã hoàn thành Ở mức chi tiết, giáo viên có thể biết cụ thể từng hạng mục mà sinh viên đã hoàn thành, và những hạng mục chưa hoàn thành.
Hình 3.16 Tiến độ học tập tổng quan của học sinh
Hình 3.17 Chi tiết tiến độ học tập của học sinh, phân biệt giữa hạng mục đã hoàn thành và chưa hoàn thành
Trong khuôn khổ của một lớp học, ngoài việc giao tiếp thông qua cơ chế thông báo thì hệ thống còn hỗ trợ tính năng trao đổi trực tuyến (online chat) Tất cả các thành viên của lớp học đều có thể nhắn tin cho nhau Hình 3.18 thể hiện một đoạn hội thoại giữa giáo viên và học sinh.
Hình 3.18 Trao đổi trực tiếp giữa các thành viên trong lớp
3.4.6 Các công cụ hỗ trợ
Công cụ hỗ trợ đầu tiên được xây dựng đó là đọc các tài liệu trực tuyến Hệ thống sử dụng bộ công cụ văn phòng trực tuyến của Microsoft để đọc tài liệu. Các loại tài liệu được hỗ trợ bao gồm các loại tập tin văn phòng phổ biến như doc, docx, xls, xlsx…
Hình 3.19 Xem hoặc tải về tập tin đính kèm ở một thông báo
Công cụ hỗ trợ tiếp theo đã được phát triển đó là ghi chép sử dụng cấu trúcCornell Hình 3.20 thể hiện danh sách các ghi chép của người dùng và Hình 3.21 thể hiện giao diện ghi chép.
Hình 3.20 Danh sách các ghi chép
Công cụ hỗ trợ tiếp theo đó là trình xem video được tích hợp vào trong lộ trình học tập Hình 3.22 thể hiện giao diện của trang xem video.
Hình 3.23 Trang trả lời câu hỏi
Chức năng làm các bài quiz cũng là một công cụ nổi bật của hệ thống Với định hướng các bài quiz hỗ trợ học tập thay vì để đánh giá học sinh, công cụ này được thiết kế để giúp học sinh giợi nhớ và rà soát các kiến thức học được Bắt đầu mỗi bài quiz thì học sinh được thông báo về mục tiêu cũng như nội dung tổng quát của bài quiz Khi trả lời các câu hỏi, học sinh được phép trả lời sai,đến khi nào chọn được câu trả lời đúng thì mới được tiếp tục Khi kết thúc một bài quiz, học sinh được thông báo về kết quả đạt được, trong đó có chỉ ra thế mạnh cũng như điểm yếu của học sinh trong nội dung đó.
Trong Chương 3, luận văn đã trình bày về thiết kế chi tiết của hệ thống cũng như việc cài đặt cụ thể các chức năng Một số đặc điểm nổi bật của các công nghệ lựa chọn cũng như việc quản lý quá trình phát triển cũng đã được đề cập tới Ngoài ra, Chương 3 cũng đã trình bày sơ bộ kết quả đạt được cũng như cách thức vận hành của một số tính năng quan trọng Trong chương tiếp theo,luận văn sẽ đánh giá về các kết quả đạt được này cũng như trình bày về hướng phát triển tiếp theo của hệ thống.
KẾT QUẢ ĐẠT ĐƯỢC VÀ PHƯƠNG HƯỚNG PHÁT TRIỂN
Kết quả đạt được
Xét tổng quan, luận văn đã đạt được hai kết quả quan trọng bao gồm: (1) nghiên cứu và tổng hợp được những lý thuyết giáo dục và phương pháp đào tạo có ảnh hưởng hiện nay, giúp ích cho quá trình thiết kế cũng như giảng dạy trong các cơ sở đào tạo, và (2) xây dựng được một hệ thống có khả năng sử dụng ngay trong các cơ sở đào tạo để hỗ trợ cho phương pháp dạy học hỗn hợp.
Hai kết quả này có tầm quan trọng như nhau và bổ trợ cho nhau, bởi vì: Học tập hỗn hợp khó để triển khai nếu thiếu vắng một công cụ hỗ trợ đủ tốt; Ngược lại, nếu chỉ có công cụ triển khai mà không am hiểu về các triết lý nền tảng thì khó để có thể đạt được hiệu quả cao.
Xét về khía cạnh kỹ thuật, hệ thống mới được trang bị một số tính năng nổi bật như:
Hỗ trợ cá nhân hóa lộ trình học tập
Hỗ trợ theo dõi tiến độ học tập
Hỗ trợ đọc tài liệu trực tuyến
Hỗ trợ trao đổi trực tiếp
Xét về khía cạnh học tập và nghiên cứu, quá trình xây dựng hệ thống đã giúp cho tác giả có cơ hội thử nghiệm và áp dụng nhiều kỹ thuật và công nghệ tiên tiến trong phát triển phần mềm, chẳng hạn như: TDD, Docker, Vagrant, MEAN Stack, Agile/Scrum… Trải nghiệm này là rất hữu ích và cần thiết đối với thực tiễn phát triển phần mềm hiện tại.
Mặc dù phiên bản hiện tại của hệ thống là một MVP (Minimum ViableProduct – Sản phẩm Tối thiểu Dùng được – một khái niệm trong Lean) nhưng vẫn cần thiết đầu tư phát triển thêm để hệ thống hỗ trợ tốt hơn cho những tình huống khác nhau.
Phương hướng phát triển tiếp theo
Trong phương hướng phát triển tiếp theo của luận văn, có hai mảng công việc cần thực hiện, đó là: tiếp tục tìm hiểu và áp dụng các lý thuyết học tập và đào tạo tiên tiến vào trong thực tiễn, đồng thời làm mịn và tích hợp thêm nhiều tính năng hỗ trợ hơn nữa cho hệ thống.
Một số lý thuyết, mô hình và phương pháp học tập và đào tạo có thể đưa vào nghiên cứu và áp dụng bao gồm: thang các cấp độ tư duy Bloom, thang các cấp độ kỹ năng Dreyfus, học qua dự án (project-based learning), học qua vấn đề (problem-based learning), học qua trò chơi (gamification in learning),…
Một số tính năng có thể tích hợp thêm vào hệ thống bao gồm:
Hỗ trợ ghi chép trên video và tài liệu: khi xem video, học sinh có thể ghi chép vào một đoạn bất kỳ và chia sẻ ghi chép đó với những người khác Kỹ thuật này được áp dụng tương tự với các đoạn văn bản trong tài liệu.
Chức năng giải đáp các khái niệm: khi học sinh xem video hoặc đọc văn bản, các khái niệm quan trọng được làm nổi bật và học sinh có thể chọn xem nhanh một đoạn định nghĩa hoặc mô tả của khái niệm đó.
Gợi ý các nội dung học tập: dựa trên cơ sở dữ liệu về quá trình học tập của học sinh, hệ thống có thể đưa ra các gợi ý về các nội dung học tập để hoàn thiện kiến thức cũng như kỹ năng của mình.
Cấu trúc lại lớp học, cho phép có các nhóm nhỏ trong từng lớp để hỗ trợ học tập và làm việc theo nhóm.
Thêm các module để tạo các bài học tương tác cho từng lĩnh vực khác nhau, ví dụ: bài học tương tác để hiểu về các khái niệm trong lập trình, bài học tương tác để làm các thí nghiệm vật lý, bài học tương tác để học lịch sử…
Thêm các tính năng liên quan đến gamification (trò chơi), chẳng hạn như: tích lũy điểm cho học sinh, tặng thưởng huy hiệu, tạo các cuộc thi,…
Song song với việc phát triển các tính năng mới, hệ thống sẽ được đưa vào sử dụng trong một số cơ sở đào tạo để sớm có phản hồi và thực hiện những điều chỉnh cho phù hợp hơn với nhu cầu thực tế của người dạy cũng như người học.
Như vậy, trong chương này luận văn đã đánh giá những kết quả đạt được, về khía cạnh nghiên cứu, phát triển hệ thống cũng như phụ vụ cho việc học tập.Cùng với đó, luận văn cũng đã đề cập đến những bước phát triển tiếp theo bao gồm cả nghiên cứu những lý thuyết đào tạo quan trọng và tích hợp thêm các tính năng nổi bật khác cho hệ thống.