1. Trang chủ
  2. » Luận Văn - Báo Cáo

Nghiên cứu học cộng tác ứng dụng trong ELearning giảng dạy các ngôn ngữ lập trình cơ bản (Luận văn thạc sĩ)

71 140 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 71
Dung lượng 2,1 MB

Nội dung

Nghiên cứu học cộng tác ứng dụng trong ELearning giảng dạy các ngôn ngữ lập trình cơ bảnNghiên cứu học cộng tác ứng dụng trong ELearning giảng dạy các ngôn ngữ lập trình cơ bảnNghiên cứu học cộng tác ứng dụng trong ELearning giảng dạy các ngôn ngữ lập trình cơ bảnNghiên cứu học cộng tác ứng dụng trong ELearning giảng dạy các ngôn ngữ lập trình cơ bảnNghiên cứu học cộng tác ứng dụng trong ELearning giảng dạy các ngôn ngữ lập trình cơ bảnNghiên cứu học cộng tác ứng dụng trong ELearning giảng dạy các ngôn ngữ lập trình cơ bảnNghiên cứu học cộng tác ứng dụng trong ELearning giảng dạy các ngôn ngữ lập trình cơ bảnNghiên cứu học cộng tác ứng dụng trong ELearning giảng dạy các ngôn ngữ lập trình cơ bảnNghiên cứu học cộng tác ứng dụng trong ELearning giảng dạy các ngôn ngữ lập trình cơ bảnNghiên cứu học cộng tác ứng dụng trong ELearning giảng dạy các ngôn ngữ lập trình cơ bản

Trang 1

HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG

Trang 2

Lời cam đoan

Tôi cam đoan đây là công trình nghiên cứu của riêng tôi

Các số liệu, kết quả nêu trong luận văn là trung thực và chưa từng được ai công bố trong bất kỳ công trình nào khác

HỌC VIÊN

Phạm Hoài Thu

Trang 3

Mục lục

Lời cam đoan 1

Mục lục 2

Danh mục các ký hiệu, các chữ viết tắt 5

Danh mục các bảng 6

Danh mục các hình 7

MỞ ĐẦU 9

CHƯƠNG 1: TỔNG QUAN VỀ HỌC CỘNG TÁC 11

1.1 Lịch sử phát triển của học cộng tác 11

1.2 Khái niệm, đặc điểm, mục tiêu của học cộng tác 13

1.2.1 Khái niệm học cộng tác 13

1.2.2 Đặc điểm của học cộng tác 14

1.2.3 Mục tiêu của học cộng tác 15

1.3 Phân loại học cộng tác và ứng dụng 16

1.3.1 Phân loại học cộng tác 16

1.3.2 Ứng dụng học cộng tác 16

1.4 Nền tảng cộng tác 17

1.4.1 Công cụ cộng tác 17

1.4.2 Nền tảng cộng tác 20

1.5 Kết luận 21

CHƯƠNG 2: HỌC CỘNG TÁC VÀ ỨNG DỤNG VÀO GIẢNG DẠY CÁC NGÔN NGỮ LẬP TRÌNH CƠ BẢN 22

2.1 Học cộng tác và phương pháp học truyền thống 22

2.2 Học cộng tác trong E-Learning 23

Trang 4

2.2.1 Ưu điểm và nhược điểm của hệ thống E-Learning 23

2.2.2 Mô hình học cộng tác 25

2.2.3 Các công nghệ cộng tác trong E-Learning 27

2.3 Ứng dụng học cộng tác trong E-Learning vào giảng dạy các ngôn ngữ lập trình 28

2.3.1 Một số nghiên cứu liên quan 30

2.3.2 Môi trường phát triển tích hợp học cộng tác 31

2.4 Một số hệ thống học cộng tác mã nguồn mở 35

2.4.1 Hệ thống Moodle 35

2.4.2 Hệ thống Sakai 39

2.4.3 So sánh giữa hai hệ thống mã nguồn mở Moodle và Sakai 41

2.5 Kết luận 42

CHƯƠNG 3: XÂY DỰNG HỆ THỐNG E-LEARNING HỖ TRỢ HỌC CỘNG TÁC CÁC NGÔN NGỮ LẬP TRÌNH CƠ BẢN TẠI HỌC VIỆN AN NINH 44

3.1 Ứng dụng mô hình hỗ trợ học cộng tác các ngôn ngữ lập trình tại Học viện An ninh nhân dân 44

3.2 Cài đặt, cấu hình hệ thống thử nghiệm 47

3.2.1 Cài đặt và cấu hình chương trình Sakai, Eclipse Che 47

3.2.2 Công cụ thông dung 50

3.2.3 Công cụ mở rộng 56

3.3 Các tình huống thử nghiệm 57

3.3.1 Tính huống 1: Giao tiếp giữa giáo viên và học viên 57

3.3.2 Tình huống 2: Giao tiếp giữa học viên và học viên 65

3.4 Kết luận 67

Trang 5

KẾT LUẬN 68 DANH LỤC TÀI LIỆU THAM KHẢO 69

Trang 6

Danh mục các ký hiệu, các chữ viết tắt

Từ viết tắt Từ gốc

NICT National institute of information and communication technology CSCW computer supported collaborative work

P2P Peer-to- Peer

IDE Integrated Developement Environment

LMS learning Management system

VLE Virtual Learning Environment

LCMS Learning Course Management System

JISC Japanese industrial standards committee

SCORM Sharable content object reference model

LAMS Learning activity management system

CLE Collaborationand Learning Environment

Trang 7

Danh mục các bảng

Bảng 1 1 Bảng chế độ làm việc nhóm 16

Bảng 1 2 Công cụ cộng tác (1) 18

Bảng 1 3 Công cụ cộng tác (2) 18

Bảng 3 1 Cấu hình và chương trình cài đặt 47

Trang 8

Danh mục các hình

Hình 2 1 Sự tiến hóa của giáo dục 25

Hình 2 2 Mô hình quá trình thử nghiệm 26

Hình 2 3 Mô hình của môi trường nghiên cứu 27

Hình 2 4 Các công nghệ cộng tác trong E-Learning 28

Hình 2 5 Web-Based IDE - IDE dựa trên nền Web 30

Hình 2 6 Mô hình tổng quan 32

Hình 2 7 Kiến trúc Web-based IDE 34

Hình 2 8 Hệ thống quản lý moodle 37

Hình 3 1 Giao diện chính của hệ thống hỗ trợ học trực tuyến Sakai 49

Hình 3 2 Màn hình khởi động Docker terminal 50

Hình 3 3 Màn hình chạy khởi động chương trình Eclipse Che 50

Hình 3 4 Giao diện công cụ Gradebook 52

Hình 3 5 Giao diện của công cụ nộp bài tập 53

Hình 3 6 Giao diện công cụ thông báo Announcements 54

Hình 3 7 Giao diện màn hình chat thời gian thực giữu giáo viên và sinh viên 55

Hình 3 8 Giao diện chức năng Forum 55

Hình 3 9 Giao diện chương trình code trực tuyến ideone 56

Hình 3 10 Giao diện chính của chương trình Colline 57

Hình 3 11 Giao diện chính công cụ bài tập 58

Hình 3 12 Cấu hình thông số cho việc nộp bài của sinh viên 59

Hình 3 13 Giao diện hoàn thành việc tạo bài và cấu hình 59

Hình 3 14 Giao diện khi sinhvien1 thực hiện mở, và làm bài tập 60

Trang 9

Hình 3 15 Giao diện trao đổi nội dung bài tập qua ứng dụng chat 60

Hình 3 16 Giáo viên lập các nhóm chat cho các nhóm sinh viên 61

Hình 3 17 Giáo viên trao đổi với nhóm sinh viên 62

Hình 3 18 Giao diện tạo chủ đề thảo luận trong diễn đàn 62

Hình 3 19 Tạo chủ đề thảo luận trong diễn đàn 63

Hình 3 20 Phân quyền cho độc giả trong diễn đàn 63

Hình 3 21 Giao diện đăng nhập công cụ Colline 64

Hình 3 22 Giao diện công cụ sau khi đăng nhập 64

Hình 3 23 Tương tác giữu giáo viên với sinh viên 65

Hình 3 24 Giao diện chat giữa sinh viên với sinh viên 66

Hình 3 25 Giao diễn công cụ hỗ trợ lập trình giữa sinh viên với sinh viên 66

Hình 3 26 Trao đổi trong diễn đàn 67

Trang 10

MỞ ĐẦU

Ngày nay, cùng với sự bùng nổ mạnh mẽ của công nghệ thông tin và sự phát triển của Internet toàn cầu, đi kèm với đó là các ứng dụng giúp khai thác hết lợi thế

mà chúng mang lại Đặc biệt, việc nâng cao hiệu quả, chất lượng giáo dục, đào tạo

sẽ là nhân tố sống còn quyết định sự tồn tại và phát triển của mỗi quốc gia, công ty, gia đình và cá nhân Hơn nữa, việc học tập không chỉ bó gọn trong việc học phổ thông, học đại học mà là học suốt đời Hiện nay, có nhiều phương pháp giảng dạy được sử dụng với mục đích đem lại sự hiểu biết tốt nhất cho người học, trong các phương pháp này nổi bật lên là phương pháp học cộng tác, đây là hoạt động học tập theo nhóm được tổ chức sao cho việc học tập phụ thuộc vào sự trao đổi thông tin, được cấu trúc có tính chất xã hội giữa những người học trong các nhóm, trong đó mỗi người học phải tự mình chịu trách nhiệm về việc học tập của bản thân mình, đồng thời được khuyến khích hỗ trợ học tập của những người cùng tham gia Học tập cộng tác là một mô hình trong đó các nhóm người học làm việc theo những nhiệm vụ được cấu trúc (ví dụ: bài tập về nhà, thí nghiệm tại Lab, các dự án thiết kế…) với các điều kiện sau: sự phụ thuộc tích cực, tự chịu trách nhiệm, tương tác giáp mặt, sử dụng hợp lý các kỹ năng cộng tác, tự đánh giá nhóm một cách đều đặn Nhiều nghiên cứu đã chỉ ra rằng khi được thực hiện một cách chính xác, đúng đắn, học tập cộng tác sẽ tăng cường khả năng thu nhận, lưu trữ thông tin, các kỹ năng tư duy trình độ cao, kỹ năng truyền thông giao tiếp giữa các cá nhân, sự tự tin Ngoài

ra, để cung cấp cho người học tài nguyên cũng như môi trường học tập một cách có hiệu quả, thêm vào đó là đổi mới phương pháp dạy và học nhằm xây dựng môi trường giảng dạy và học tập điện tử hướng tới giáo dục và người học nhiều hơn, người học có thể chủ động lĩnh hội kiến thức từ kho tài nguyên số cùng các công cụ

hỗ trợ trong các lớp học ảo thì E-Learning là giải pháp để giải quyết được vấn đề này Việc ứng dụng phương pháp học cộng tác vào giải pháp E-Learning cũng đang

là một xu thế tất yếu của thế giới hiện đại

Trang 11

E-Learning là phương pháp học tập với sự hỗ trợ của truyền thông đa phương tiện và Internet Về bản chất E-Learning là một trong những hình thức tổ chức dạy học theo hướng đổi mới Hình thức này cũng được các nhà trường áp dụng nhiều đối với các môn giảng dạy nhằm nâng cao chất lượng dạy và học Đối với các môn ngôn ngữ lập trình, khi giảng dạy thì sự tương tác giữa học viên với giáo viên, học viên với học viên rất quan trọng Tuy nhiên, với hình thức dạy và học từ xa thông qua E-Learning thì việc học các ngôn ngữ lập trình cơ bản không hiệu quả

Sự bất lợi chính của E-Learning đó là số lượng học viên nhiều hơn số lượng giáo viên Các học viên thường phải làm việc độc lập khi việc học tập nghiên cứu được thực hiện qua mạng Họ ít được thảo luận và kết giao được với bạn bè mới Học cộng tác chính là một giải pháp để khắc phục những hạn chế trên

Chính vì vậy, trong quá trình tìm hiểu, nghiên cứu và được sự đồng ý của

thầy hướng dẫn tôi đã chọn đề tài luận văn là “Nghiên cứu học cộng tác ứng dụng trong E-Learning giảng dạy các ngôn ngữ lập trình cơ bản” Trong đề tài này

tôi tập trung tìm hiểu lý thuyết về hệ thống học cộng tác, từ đó áp dụng phương pháp học cộng tác trong E-Learning giảng dạy các ngôn ngữ lập trình cơ bản

Trang 12

Dự án ENFI đã tạo ra một số ví dụ đầu tiên về các chương trình dành cho thành phần có hỗ trợ bởi máy tính Các sinh viên theo học tại Gallaudet đều bị điếc hoặc khiếm thính; rất nhiều sinh viên như vậy đã vào đại học với các khiếm khuyết trong kỹ năng giao tiếp bằng văn bản Các công nghệ được phát triển vào lúc đó, mặc dù cũng được xem là tiến bộ, lại có vẻ thô sơ theo như tiêu chuẩn ngày nay Các lớp học đặc biệt đã được xây dựng sao cho các bàn học chứa máy tính sẽ được sắp xếp thành một vòng tròn Một phần mềm tương tự các chương trình trò chuyện ngày nay đã được xây dựng để giúp sinh viên và giáo viên có thể thực hiện các cuộc thảo luận bằng văn bản Công nghệ sử dụng trong dự án ENFI được thiết kế nhằm

hỗ trợ một hình thức tạo ra ý nghĩa mới bằng cách đưa ra một phương tiện truyền tải dưới hình thức văn bản mới

Một dự án có ảnh hưởng từ rất sớm khác đã được thực hiện bởi Bereiter và Scardamalia tại trường Đại học Toronto Họ đã lo ngại rằng việc học tập tại trường lớp thường hời hợt và kém năng động Trong Dự án CSILE (Computer Supported Intentional Learning Environment - Môi trường học tập dưới sự hỗ trợ của máy tính), dự án này được biết đến như một diễn đàn kiến thức, họ đã phát triển các công nghệ và phương pháp sư phạm nhằm tái cấu trúc các lớp học dưới dạng các cộng đồng xây dựng kiến thức Cũng giống với dự án ENFI, CSILE cũng tìm kiếm các

Trang 13

cách thức giúp việc viết lách có ý nghĩa hơn bằng cách để sinh viên tham gia vào hoạt động biên soạn văn bản chung của cả hai dự án Các văn bản được biên soạn trong mỗi trường hợp đều khá khác nhau, tuy nhiên các văn bản của ENFI thường mang tính chất đàm thoại nhiều hơn; chúng được biên soạn ngẫu hứng và thường không được lưu trữ vượt quá thời hạn của một tiết học Mặt khác, các văn bản của CSILE thì lại thường có tính chất lưu trữ, giống như các tài liệu học thuật thông thường khác

Giống như trường hợp của CSILE, Dự án Chiều không gian Thứ năm (5thD) cũng bắt đầu nhằm cải thiện các kỹ năng đọc của sinh viên Dự án khởi đầu bằng một chương trình ngoại khóa do Cole và các đồng nghiệp tổ chức tại Đại học Rockefeller Dự án 5thD đã được phát triển thành một hệ thống có khả năng tích hợp hầu hết các hoạt động sử dụng máy tính nhằm nâng cao các kỹ năng đọc và giải quyết vấn đề của sinh viên Các sinh viên sẽ được hỗ trợ bởi các các bạn học có kỹ năng tốt hơn và các sinh viên tự nguyện từ Trường Sư phạm Chương trình ban đầu chỉ được triển khai tại bốn địa điểm ở San Diego, nhưng cuối cùng cũng được mở rộng tại nhiều địa điểm trên khắp thế giới

Tất cả các dự án trên - ENFI, CSILE và 5thD, đều được thực hiện với mục đích đẩy mạnh công tác giảng dạy theo chiều hướng sáng tạo ý nghĩa Cả ba đều thiên hướng việc sử dụng máy tính và công nghệ thông tin như các nguồn lực để đạt được mục đích này, và chúng đều giới thiệu các hình thức mới lạ có khả năng tổ chức các hoạt động xã hội trong khuôn khổ giảng dạy Bằng cách này, chúng đã đặt vững nền móng cho sự xuất hiện của CSCL sau đó

Năm 1983, một hội thảo về chủ đề “giải quyết vấn đề chung và máy vi tính”

đã được tổ chức tại San Diego Sáu năm sau, một hội thảo do NATO tài trợ đã được

tổ chức tại Maratea, Italy Hội thảo Maratea năm 1989 này được rất nhiều người đánh giá là cột mốc đánh dấu sự ra đời của lĩnh vực học cộng tác, khi đó là cuộc tụ hội quốc tế và công cộng đầu tiên đã sử dụng cụm từ “học tập cộng tác bằng máy tính” trong tiêu đề của mình

Trang 14

Hội nghị chính thức đầu tiên về CSCL đã được tổ chức tại Đại học Indiana vào mùa thu năm 1995 Các sự kiện quốc tế tiếp theo diễn ra ít nhất hai năm một lần, bao gồm các hội nghị tại Đại học Toronto năm 1997, Đại học Stanford năm

1999, Đại học Maastricht, Hà Lan năm 2001, Đại học Colorado năm 2002, Đại học Bergen, Norway năm 2003, và Đại học Quốc gia Trung ương tại Đài Loan năm 2005

Những nghiên cứu và lý thuyết về các tài liệu chuyên nghành CSCL đã được xây dựng ngay sau khi hội thảo Maratea do NATO tài trợ diễn ra [1]

1.2 Khái niệm, đặc điểm, mục tiêu của học cộng tác

1.2.1 Khái niệm học cộng tác

Cộng tác là một quá trình nhằm chia sẻ sáng tạo [2] Quá trình này nhằm trao đổi, trợ giúp, phối hợp giữa một nhóm người nhằm đạt được một mục tiêu xác định Một nhóm các cá nhân có một vấn đề chung để giải quyết Mỗi thành viên có một quan điểm khác nhau và có sự hiểu biết khác nhau về vấn đề này Họ trao đổi kiến thức và đưa ra ý kiến của mình để giải quyết vấn đề Trong hầu hết các trường hợp, một vấn đề được chia thành các vấn đề con và được giải quyết bởi một hoặc nhiều thành viên của nhóm Con người đã thực hiện việc cộng tác từ rất lâu, là cơ sở cho

sự phát triển và hình thành nên xã hội loài người Từ đó con người phát triển từ giai đoạn bầy đàn sang giai đoạn xã hội Hoạt động cộng tác được thể hiện dưới nhiều hình thức: cộng tác trong công việc, cộng tác trong truyền đạt tri thức

Học cộng tác là một thuật ngữ chỉ những cách tiếp cận đào tạo khác nhau liên quan đến việc sử dụng trí tuệ giữa các học viên với nhau hoặc giữa các học viên với giáo viên nhằm tăng cường khả năng tiếp thu tri thức, khả năng vận dụng và áp dụng tri thức vào thực tế trên cơ sở có sự hợp tác của nhiều thành viên Các học viên có thể làm việc theo nhóm hai người hoặc hơn để cùng nhau nghiên cứu giải quyết các vấn đề mà giáo viên đưa ra Hình thức học cộng tác trong đó không chỉ tập trung vào bài giảng của giáo viên trên lớp, mà nó còn có cả các hoạt động thảo luận, tương tác tích cực giữa sinh viên với nhau Môi trường này giáo viên không chỉ đóng vai trò là người nắm tri thức để truyền đạt mà còn có vai trò là chuyên gia

Trang 15

thiết kế quá trình, xây dựng môi trường tiếp thu tri thức cho người học Học cộng tác là phương pháp có nhiều ưu điểm so vơi phương pháp cổ điển đang được áp dụng hiện nay Với phương pháp này, học không còn đơn thuần là một tiến trình học thuật cá nhân đơn lẻ, mà là một tiến trình xã hội, trong đó các học viên làm việc cùng nhau Theo [5] học cộng tác đem lại nhiều lợi ích cho người học, đặc biệt kĩ năng làm việc nhóm và sự thích thú mà phương pháp cổ điển không thể mang lại

Một hệ thống học cộng tác hoặc một phần mềm nhóm là một cơ sở hạ tầng phần mềm cơ bản thúc đẩy công việc cộng tác Theo [6], hệ thống cộng tác là một

hệ thống dựa trên máy tính hỗ trợ các nhóm người tham gia vào một nhiệm vụ chung Đối với khía cạnh này, hệ thống cung cấp một giao diện được chia sẻ cho phép thực hiện các nhiệm vụ chung Một nhiệm vụ chung và một giao diện được chia

sẻ là các yếu tố thiết yếu cho một hệ thống cộng tác

1.2.2 Đặc điểm của học cộng tác

Việc học tập sẽ được thực hiện dưới hình thức cộng tác nhằm phát triển kiến thức Học cộng tác được thể hiện dưới nhiều hình thức khác nhau, và có những đặc trưng sau:

- Để học được những kiến thức, khái niệm hoặc kĩ năng mới, sinh viên cần tiếp cận với những kiến thức đó theo nhiều cách khác nhau với mục đích rõ ràng Sinh viên cần kết hợp giữa việc tiếp thu kiến thức mới từ tài liệu với những kiến thức đã biết Từ đó người học có thể chủ động tiếp thu và vận dụng tri thức mới trên

cơ sở những hiểu biết đã có của bản thân Vậy nên trong học cộng tác, quá trình học trở thành quá trình xây dựng tri thức cá nhân một cách tích cực

- Môi trường học tập rất quan trọng Môi trường học tập tốt thì càng kích thích cao trong việc nhận thức Theo những nghiên cứu về giáo dục, việc học tập thường bị ảnh hưởng bởi hoàn cảnh và các hoạt động trong hoàn cảnh đó Khi sinh viên trong môi trường học cộng tác, các hoạt động học cộng tác sẽ đưa sinh viên vào nhiệm vụ hoặc những câu hỏi mang tính thách thức Sinh viên sẽ chủ động thực hành luôn những điều đã, đang hoặc nhằm giải quyết những vấn đề mà giáo viên

Trang 16

đưa ra thay vì chỉ nghe giảng rồi sau đó trả lời những câu hỏi mang tính kiểm tra lại những thông tin từ bài giảng Môi trường học tập này thách thức sinh viên và phát triển kĩ năng tranh luận và tự giải quyết vấn đề

- Trong môi trường học cộng tác, đối tượng người học đa dạng: người học có

sự đa dạng về kiến thức, kinh nghiệm, phong cách và mục tiêu học tập Việc học cộng tác trở nên có hiệu quả và việc mỗi người học đều có thể đóng góp kinh nghiệm và kiến thức của cá nhân và việc giải quyết chung việc của nhóm

- Môi trường học cộng tác là nơi mà sinh viên có thể nói, có thể trao đổi với nhau Việc học được thực hiện ngay trong quá trình trao đổi, nói chuyện đó Việc học tập cộng tác không chỉ bó hẹp trong phạm vi một nhóm sinh viên mà còn có thể

mở rộng ra với nhiều người tham gia Sinh viên cùng nhau khám phá, cùng nhau trao đổi, phản hồi thông tin giúp sinh viên có hiểu biết tốt hơn và mang lại những kiến thức mới mẻ hơn Vì vậy, trong học cộng tác thì việc học trở thành hoạt động mang tính chất xã hội

1.2.3 Mục tiêu của học cộng tác

Mục tiêu đầu tiên của học cộng tác là tạo ra được mối liên kết về mặt xã hội

và tri thức với những người học với nhau và môi trường học tập Mối liên kết này giúp tăng cường khả năng trao đổi nhằm nâng cao khả năng tiếp thu và vận dụng tri thức của mỗi thành viên

Mục tiêu thứ hai đó là: cộng tác và làm việc theo nhóm Với đặc điểm đa dạng về người học, quá trình học cộng tác phải đạt được mục tiêu là sự hợp tác và khả năng làm việc theo nhóm của mỗi cá nhân người học Sinh viên phải khắc phục những sự khác biệt về văn hóa tri thức, phương pháp học tập và tiếp cận vấn đề Việc xây dựng được sự thỏa hiệp và đồng thuận chung trong nhóm sẽ là tiền đề cho

sự thành công trong hoạt động của nhóm

Thêm một mục tiêu nữa của học cộng tác đó là tạo ra tính trách nhiệm công dân: quá trình học cộng tác phải tạo ra thói quen tham gia và chịu trách nhiệm đối

Trang 17

với cộng đồng của mỗi người học Quá trình này khuyến khích sinh viên đóng góp tiếng nói tích cực của mình vào việc hình thành các khái niệm, các giá trị và biết lắng nghe mọi người Đối thoại, tranh luận và tìm kiếm sự đồng thuận là những yếu

tố chính của học cộng tác cũng như của cuộc sống

Cộng tác hiệu quả nhất là được thực hiện trực tiếp vì tất cả các thành viên cộng tác cùng một lúc và trong cùng một không gian Sau đó, nó là sự cộng tác khoảng cách đồng bộ, với sự cộng tác này các thành viên cộng tác cùng một lúc, nhưng mỗi thành viên đều ở những nơi khác nhau, ví dụ: một trình soạn thảo tài liệu theo thời gian thực Sau đó, nó là sự cộng tác không đồng bộ, nơi các thành viên trao đổi trên cùng một không gian, nhưng không đồng thời, ví dụ: bảng thông tin vật

lý Cuối cùng, sự cộng tác từ xa không đồng bộ tương ứng với trường hợp các thành viên cộng tác không đồng thời và cùng một lúc ví dụ: hệ thống thư điện tử, diễn đàn…

1.3.2 Ứng dụng học cộng tác

Với sự phát triển của công nghệ thông tin và truyền thông mới (ICT) và nhu cầu, các hệ thống cộng tác ngày càng trở nên cần thiết và được sử dụng Chúng được áp dụng trong nhiều lĩnh vực như:

Trang 18

- Trò chơi, đặc biệt là trò chơi trên mạng, ví dụ: Starcraft, Quake Trong loại ứng dụng này, người chơi cộng tác để đạt được nhiệm vụ và giành chiến thắng

-Workflow, hệ thống cho phép phối hợp Loại hệ thống này giúp nhiều người tham gia quản lý một quy trình làm việc (Ví dụ: Ultimus Workflow Suite, IBM MQSeries )

- Giảng dạy nơi các hệ thống cộng tác dựa vào phương tiện thông tin và công nghệ mạng để tạo điều kiện thuận lợi cho việc học tập

- Truyền thông nơi các hệ thống cộng tác cho phép nhiều thành viên của một nhóm giao tiếp và tham khảo ý kiến thông qua hỗ trợ âm thanh, video hoặc văn bản

- Không gian làm việc được chia sẻ nơi các hệ thống cộng tác cung cấp một không gian chia sẻ mà ở không gian đó người tham gia các hiện tượng nhân tạo (ví dụ: PHP Groupware, EGroupware, Sakai )

1.4 Nền tảng cộng tác

Một nền tảng cộng tác là một hệ thống phân phối cung cấp các dịch vụ trao đổi giữa các thành viên của một nhóm thông qua mạng Nó tích hợp: (i) công cụ (hội nghị truyền hình, nhắn tin tức thì, …) để hỗ trợ tương tác giữa mọi người, (ii) các tính năng quản lý người dùng, nhóm và quyền, (iii) bảo mật để đảm bảo tính bảo mật của dữ liệu người dùng và tính nhất quán Nền tảng cộng tác có thể được coi là nền tảng tập trung các chức năng khác nhau để cộng tác

Trong phần này, chúng ta thảo luận về một số công cụ cộng tác và chức năng của chúng, trước khi tập trung vào các môi trường cộng tác

1.4.1 Công cụ cộng tác

Nhờ các phân tích nền tảng hiện có khác nhau, chúng tôi đã có thể thiết lập một danh sách các công cụ cộng tác được sử dụng rộng rãi (xem Bảng 1.2 và 1.3)

Nền tảng cộng tác

Trang 19

Đồng bộ và không đồng bộ

Thông báo Thông báo tự động sau một sự kiện

dụ số lượng truy cập…

Không đồng bộ

Tham chiếu

cá nhân

Cung cấp cho mỗi thành viên một

nhiệm vụ

Chức năng này cho phép đăng kí các nhiệm vụ khác nhau được thực hiện trong khuôn khổ dự án và giao

nó cho các thành viên trong môi trường làm việc

Không đồng bộ

Diễn đàn

Các thành viên sẽ có thể đăng một tin nhắn mới hoặc nhận xét về một tin nhắn đã đăng

Tin nhắn đã gửi được lưu trữ trong Diễn đàn và bất kì ai cũng có thể được đọc

Trang 20

Thông tin viên có thể ghi lại bất kỳ thông tin

nào mà họ cho là hữu ích cho các thành viên của không gian làm việc cộng tác

FAQ Quản lý các câu hỏi thường gặp

Nghiên cứu Để nghiên cứu các phiếu, tờ quảng

Tạo thành viên và nhóm

Xác thực: Mỗi người muốn kết nối với môi trường làm việc cộng tác phải xác thực bằng tên người dùng và mật khẩu

Quản lý hồ sơ người dùng: Mỗi thành viên có thể có thông tin trong một hồ

sơ, đó là để xác định người dùng cụ thể, ví dụ: tác giả, người đọc, người quản lý

Quản lý không gian riêng tư: Thành viên có thể phải tạo không gian làm việc riêng tư, hoặc có thể được truy cập bởi nhiều người dùng hoặc chỉ bởi tác giả của

nó Những không gian này được gọi (tùy thuộc vào công cụ) “phòng” “ phòng phụ”

“không gian làm việc”, hoặc "bộ phận"

- Quản lý các tài liệu, hỗ trợ

Trang 21

Soạn thảo điện tử: Mỗi thành viên có thể tận dụng tính năng này để lưu các phiên bản khác nhau đối với tài liệu của họ

Chia sẻ tài liệu điện tử: Mỗi tài liệu có thể được đặt trong không gian chia sẻ

để mọi người có đủ tư cách có thể truy cập tài liệu

1.4.2 Nền tảng cộng tác

Các nền tảng cộng tác bao gồm các công cụ cộng tác thông thường (hội nghị truyền hình, nhắn tin tức thì, lịch được chia sẻ, quản lý nhóm, v.v…) Một nền tảng cộng tác tốt nếu nó đáp ứng các yêu cầu sau:

- Các công cụ cộng tác cần thiết cho nghiên cứu;

- WebCT: là một môi trường học tập trực tuyến được cấp phép cho các trường cao đẳng và các tổ chức khác và được sử dụng nhiều trong nhiều cơ sở cho học trực tuyến Tuy nhiên, giao diện của WebCT phức tạp và chưa đáp ứng được các yêu cầu đặt ra của người dùng

- Sakai: Sakai cho phép cộng tác trực tuyến và học trực tuyến Giống như một nền tảng chung chung, Sakai chứa tất cả các công cụ cần thiết để cộng tác, ví dụ: Diễn đàn thảo luận, nhắn tin tức thì, lịch, khu vực riêng tư, không gian chia sẻ Ngoài ra, nó là một nền tảng mô-đun Do đó, có thể phát triển và tích hợp các chức năng mới để có thể tạo môi trường chuyên dụng phù hợp với bối cảnh công việc

Trang 22

- Moodle: Moodel được thiết kế với mục đích tạo ra những khóa học trực tuyến với sự tương tác cao Moodle có các tính năng cần thiết cho một hệ thống đào tạo trực tuyến, ngoài ra còn có thêm một số tính năng độc đáo Nó có thể phát triển

và tích hợp các tính năng mới để tạo ra môi trường chuyên dụng hơn

Có rất nhiều nền tảng hỗ trợ trong lĩnh vực học cộng tác, tuy nhiên một số nền tảng đã cũ và không còn được sử dụng và nền tảng được sử dụng nhiều nhất hiện nay đó là moodle và Sakai Hai nền tảng này được trình bày cụ thể hơn trong phần 2.4 của chương 2

1.5 Kết luận

Cộng tác là một hoạt động thiết yếu Với sự phát triển của ICT (Công nghệ thông tin mới và Truyền thông), ngày càng có nhiều hệ thống cộng tác Những hệ thống này bao gồm một số lĩnh vực :Trò chơi, quy trình làm việc, Giáo dục, Giao tiếp…Nền tảng cộng tác là hệ thống phân phối cung cấp các dịch vụ cho phép trao đổi giữa các thành viên của một nhóm thông qua Internet Nó cung cấp các tính năng các vấn đề cơ bản như hội nghị truyền hình, nhắn tin tức thì và bảng trắng cho phép tương tác giữa những người xa xôi Họ cũng kết hợp các tính năng quản lý người dùng, nhóm và bảo mật

Đối với trong giáo dục, sự cộng tác đóng một vai trò rất quan trọng Nó giúp đổi mới phương pháp dạy và học, giúp người học lĩnh hội kiến thức một cách tốt nhất còn người dạy có thêm những phương tiện hỗ trợ trong việc biên tập, quản lý nội dung bài học cũng như trong việc theo dõi và trợ giúp người học Hệ thống học cộng tác tạo ra một môi trường học tập có tính trao đổi, cộng tác cao giữa người học với người học với giáo viên cũng như người học với hệ thống quản lý quá trình học

Và hệ thống học cộng tác cũng được áp dụng vào giảng dạy môn học các ngôn ngữ lập trình cơ bản Chương 2 sẽ đi trình bày về học cộng tác và ứng dụng trong giảng dạy các ngôn ngữ lập trình cơ bản

Trang 23

CHƯƠNG 2: HỌC CỘNG TÁC VÀ ỨNG DỤNG VÀO GIẢNG

DẠY CÁC NGÔN NGỮ LẬP TRÌNH CƠ BẢN

Trong chương 2 tập trung nghiên cứu về học cộng tác và các phương pháp học khác, nghiên cứu về học cộng tác trong hệ thống E-Learning Cũng trong chương này sẽ giới thiệu về các hệ thống học cộng tác mã nguồn mở là Moodle và Sakai qua đó so sanh và chọn ra được phần mềm phù hợp với bài toán đặt ra, qua

đó tiến hành cài đặt và sử dụng công cụ Phần cài đặt và sử dụng sẽ được trình bày

cụ thể trong chương 3

2.1 Học cộng tác và phương pháp học truyền thống

Học cộng tác khác với phương pháp truyền thống ở chỗ: học cộng tác có môi trường làm việc nhóm, còn đối với phương pháp truyền thống thì việc học tập mang tính cá nhân đơn lẻ

Học cộng tác có thể diễn ra bất cứ lúc nào, ví dụ khi các sinh viên cùng nhau làm bài tập về nhà Việc hợp tác diễn ra khi các nhóm nhỏ sinh viên cùng nhau tham gia một dự án tại một nơi nào đó Kĩ năng làm việc nhóm có thể giúp ích sinh viên phát triển kĩ năng giao tiếp…

Học cộng tác sử dụng các kĩ năng làm việc nhóm Nó khác biệt hơn với những kĩ năng được sử dụng để tự viết bài luận tốt hoặc hoàn thành các bài tập về nhà được sử dụng trong phương pháp truyền thống Làm việc nhóm là một trong những nhân tố mang lại thành công và hiệu quả cao trong công việc Tuy vậy học cộng tác chỉ là một trong những công cụ hỗ trợ, nó có thể dễ dàng kết hợp với lớp học truyền thống

Học cộng tác đem lại kết quả rất tích cực, các nghiên cứu cho thấy, sau khi tiến hành học cộng tác thì sinh viên hiểu sâu nội dung bài học hơn, thành tích được cải thiện và nâng cao hơn Sinh viên trở nên tích cực và có tính xây dựng trong quá trình tích lũy kiến thức của bản thân, giải quyết xung đột và phát triển kĩ năng làm việc nhóm

Trang 24

2.2 Học cộng tác trong E-Learning

Cộng tác với sự trợ giúp của máy tính (Computer supported collaborative work – CSCW) là hệ thống phần mềm, máy tính được nối mạng nhằm hỗ trợ nhóm làm việc trong hoàn thành nhiệm vụ chung bằng việc cung cấp khả năng chia sẻ giữa các nhóm làm việc với nhau CSCW giúp thiết đặt công việc kiểm soát được mục tiêu và tăng cường thuận tiện trong cộng tác giữa các nhóm CSCW đang được ứng dụng trong giáo dục, máy tính hỗ trợ giáo dục cộng tác (CSCE - Computer Supported Collaborative Education) đang dần trở thành hiện thực Mục tiêu của nó

là hỗ trợ các vai trò phức tạp trong giáo dục như giáo viên, sinh viên để dạy và học hiệu quả hơn

2.2.1 Ưu điểm và nhược điểm của hệ thống E-Learning

a Về ưu điểm

E-Learning được xem là phương thức đào tạo cho tương lai Về bản chất, có thể coi E-Learning cũng là một hình thức đào tạo từ xa và nó có những điểm khác biệt so với đào tạo truyền thống Những ưu điểm nổi bật của E-Learning so với đào tạo truyền thống là:

Giảm chi phí: Khi người học tham gia một khóa học trực tuyến thì chi phí của khóa học trực tuyến chỉ bằng khoảng 1/10 chi phí của một khóa học bình thường

Tự định hướng: Khi tham gia học trực tuyến, người học tự chọn khóa học phù hợp nhất đối với trình độ, sở thích, mục tiêu của bản thân

Tự điều chỉnh: Người học có thể tự điều chỉnh nhịp điệu khóa học cho mình,

có thể học từ từ hay nhanh do thời gian mình tự sắp xếp hay do khả năng tiếp thu kiến thức

Tính linh hoạt: Từ khi đăng ký học đến lúc hoàn tất, người học có thể học theo thời gian biểu mình định ra Không bị gò bó bởi thời gian và không gian lớp học dù bạn vẫn đang ở trong lớp học “ảo”

Trang 25

Tính đồng bộ: Giáo trình và tài liệu của các khóa học trực tuyến là có tính đồng bộ cao vì các hầu hết học trình cùng tài liệu được soạn thảo và đưa vào chương trình dạy được xem xét và đưa lên trang trực tuyến từ ban đầu

Tương tác và hợp tác: Học trực tuyến bạn có thể giao lưu và tương tác với nhiều người cùng lúc Bạn cũng có thể hợp tác với bạn bè trong nhóm học trực tuyến để thảo luận và làm bài tập về nhà

Dễ tiếp cận và thuận tiện: Dịch vụ học trực tuyến dựa trên công nghệ là Internet, vì vậy việc tiếp cận rất dễ dàng Bạn có thể tiếp cận và học bất cứ nơi đâu Đây cũng chính là tính thuận tiện của việc học trực tuyến

Như vậy với E-Learning người học trở nên năng động hơn, cán bộ, học sinh

và sinh viên có thể dùng quỹ thời gian của mình để tham gia các hoạt động khác (tại nhà, tại cơ sở đào tạo ở xa, quán cafe hay một địa điểm nào đó có kết nối Internet) E-Learning đóng một vai trò rất quan trọng trong giảm thiểu lượng thời gian dành cho đào tạo cán bộ, học sinh và sinh viên

b Về nhược điểm

Sự bất lợi chính của E-Learning đó là số lượng sinh viên nhiều hơn so với số lượng giáo viên và sinh viên thường phải làm việc độc lập khi việc học tập nghiên cứu được thực hiện qua mạng Họ ít được thảo luận và kết giao với bạn bè mới Giáo dục cộng tác có thể là một giải pháp Các giáo viên, sinh viên và cha mẹ của

họ khuyến khích cộng tác cùng nhau nhằm tạo cho sinh viên học để hợp tác với những người khác, học từ những người khác và học cách nghiên cứu Do vậy việc cộng tác trong E-Learning thật sự là cần thiết

Mục tiêu chính và quan trọng của E-Learning đó là học cách nghiên cứu và cộng tác Điều này thấy rõ mô hình giáo dục chuyển từ lấy mô hình giáo dục lấy người giáo viên làm trung tâm, tới mô hình giáo dục lấy người sinh viên làm trung tâm và bây giờ lấy môi trường học tập làm trung tâm Kết quả đạt được đó là sinh viên không chỉ đơn giản là nhớ khi học, mà chuyển sang là chỉ nghĩ và phân tích các

Trang 26

vấn đề Sinh viên sẽ cùng nhau nghĩ và phân tích các vấn đề và các khía cạnh con người

Với mô hình giáo dục lấy môi trường học tập làm trung tâm giáo dục nghĩ rằng những giáo viên, sinh viên và phụ huynh được khuyến khích cộng tác với nhau nhằm hình thành một môi trường tạo cho những sinh viên học cách để có thể hợp tác được với những người khác, học từ những người khác và học cách nghiên cứu như thế nào

Hình 2 1 Sự tiến hóa của giáo dục

2.2.2 Mô hình học cộng tác

2.2.2.1 Mô hình xử lý học tập

Việc nghiên cứu một loạt các bài tập thực hành và thông qua đó kiến thức sẽ được tích lũy dần dần Trong cuộc sống hàng ngày, chúng ta luôn tiếp thu được kiến thức từ việc làm các bài tập thực hành, những kinh nghiệm và những bài học Một vài người nào đó tiến xa hơn, họ giao tiếp với những người khác và học từ họ những kinh nghiệm và những bài học Người nào đó tổng kết những kinh nghiệm và những

Trang 27

bài học này, tìm ra những quy luật đằng sau đó và đưa điều đó vào trong những lý thuyết của họ [8].

Hình 2 2 Mô hình quá trình thử nghiệm

Trong giáo dục, sinh viên cần phải có cơ hội để học từ việc rèn luyện của mình trên cơ sở các tri thức đã được tiếp thu và cũng cần phải có cơ hội để cộng tác với những người khác và học từ những người khác Có cộng tác thì mới có tiến bộ

Có hai tác động đóng góp nhiều trong quá trình nghiên cứu Một là sự tác động từ bên trong, hai là sự tác động từ bên ngoài Tác động từ bên trong bao gồm những sự quan tâm của bản thân, mong muốn chiến thắng Tác động bên ngoài bao gồm sự cạnh tranh, ảnh hưởng từ gia đình

2.2.2.2 Mô hình môi trường học tập

Ở trường học, những giáo viên và sinh viên tranh luận với nhau Trong gia đình, cha mẹ và con cái tranh luận với nhau về ý nghĩa cuộc sống Trong xã hội, những kĩ sư, những thương gia, những người nông dân đưa ra những hướng dẫn và

ví dụ khác nhau Không chỉ giáo viên, sinh viên mà cả cha mẹ họ cũng đóng vai trò trong giáo dục Không chỉ trong trường học, mà còn môi trường cộng tác, nơi mà việc nghiên cứu xảy ra Sinh viên nghiên cứu trong môi trường cộng tác mà môi trường đó là sự pha trộn của trường học, gia đình và xã hội như hình sau:

Trang 28

Hình 2 3 Mô hình của môi trường nghiên cứu

2.2.3 Các công nghệ cộng tác trong E-Learning

Lớp học thông minh là một không gian thông minh có sự hỗ trợ của những giáo viên để dạy theo những cách truyền thống mà không gò bó, tự nhiên và sống động Sự tương tác đa dạng bằng việc sử dụng văn bản, giọng nói, hình ảnh và video, cũng như những thông báo ngắn, để giúp mọi người giao tiếp và cộng tác với nhau Mã hóa theo lớp cung cấp những công nghệ mã hóa cho âm thanh, video và màn hình có khả năng thích nghi với nhiều dạng mạng và nhiều dạng thiết bị đầu cuối Công nghệ ngang hàng hỗ trợ P2P dựa vào cộng tác và chia sẻ nội dung Tự thân tổ chức cộng đồng khuyến khích mọi người giúp đỡ lẫn nhau và học từ những người khác Việc khai phá dữ liệu và phân tích trợ giúp giáo viên và các bậc cha mẹ

để tìm ra những gì tiến bộ, những sinh viên biết cái gì cần nghiên cứu Máy trả lời

tự động thông minh tìm ra những câu trả lời cho những câu hỏi và sau đó chuyển

Trang 29

nhúng cho những sinh viên bằng những thông báo ngắn, email… Nếu nó tìm thấy câu trả lời, máy trả lời sẽ chuyển những câu hỏi đó tới cho các giáo viên

Hình 2 4 Các công nghệ cộng tác trong E-Learning

2.3 Ứng dụng học cộng tác trong E-Learning vào giảng dạy các ngôn ngữ lập trình

Phương pháp dạy và học các ngôn ngữ lập trình cơ bản hiện nay vẫn còn nhiều hạn chế Với các giờ lý thuyết người học thường tiếp nhận kiến thức một cách thụ động Khi lớp học đông thì sự tương tác giữa người dạy và học gần như không

có Với các giờ thực hành, quá trình thực hành thường diễn ra riêng lẻ Thông thường, người dạy hướng dẫn demo một số bài toán, sau đó người học tự thực hành trên máy của phòng lab Sự tương tác giữa các học viên với nhau, giữa học viên với

Trang 30

người dạy còn hạn chế Đặc biệt người dạy gặp nhiều khó khăn trong giám sát, theo dõi quá trình học của học viên Mặc dù giờ thực hành của sinh viên nhiều nhưng việc giám sát rất khó khăn, và phụ thuộc hoàn toàn vào tính tự giác của sinh viên Ngoài ra quá trình sửa lỗi, demo cho từng học viên không tối ưu; cùng một lỗi nhưng nhiều sinh viên thường xuyên lặp đi lặp lại, việc hướng dẫn cho từng người một rất mất thời gian Đặc biệt, giảng viên gần như không thể theo dõi tiến trình thực hành của từng học viên, để đưa ra nhưng lời khuyên hoặc thay đổi bài giảng cho phù hợp Lập trình cộng tác là quá trình người học có thể áp dụng các phương pháp làm việc cộng tác để viết code Ví dụ như viết code đồng thời theo thời gian thực từ xa, trong đó hai hay nhiều người học có thể cùng lập trình trên một file nguồn, hoặc cùng xem quá trình lập trình từ xa Trong quá trình đó người học có thê trao đổi với nhau thông qua các công cụ chat, video - conference Đấy là nhưng tinh năng học cộng tác đồng bộ Ngoài ra người học có thể sử dụng các tính năng học cộng tác không đồng bộ để hỗ trợ thêm,ví dụ như diễn đàn, wiki Tuy nhiên, các trình viết code thường không hỗ trợ làm việc cộng tác Do đó, một phương pháp hay được áp dụng hiện nay, đó là sử dụng kết hợp các trình viết code với các công

cụ hỗ trợ làm việc cộng tác, ví dụ như Skype, TeamViewer, Google Hangout, VNC hoặc Microsoft Meeting để đồng bộ hoá màn hình hoặc liên lạc[3] Tuy nhiên những công cụ này thường yêu cầu cao về băng thông, không hỗ trợ làm việc đồng thời trên cùng một máy, và nhiều khi phụ thuộc vào hệ điều hành Ngoài ra, có một

số công cụ cộng tác chuyên biệt được phát triển riêng cho một trình viết code cụ thể Vi dụ như RIPPLE hoặc Saros cho Eclipse Những công cụ này hô trợ đầy đủ các chức năng cần thiết cho làm việc cộng tác trong lập trình, ví dụ như chat, viết code cộng tác thời gian thực, chia sẻ màn hình Tuy nhiên, nhưng công cụ này thứ nhất chỉ dành riêng cho một số IDE (Integrated Developement Environment – Môi trường phát triển tích hợp) Thêm vào đó, việc sử dụng nhưng IDE phức tạp như Eclipse, NetBean, Microsoft Visual Studio cho người mới học lập trình là không phù hợp

Trang 31

2.3.1 Một số nghiên cứu liên quan

Trong khoảng một thập kỷ trở lại đây, sự phát triển của công nghệ dịch vụ web cũng như điện toán đám mây đã mở ra một hướng mới trong cho việc xây dựng các IDE: Web-Based IDE - IDE dựa trên nền Web Với xu thế này, nền tảng của IDE (yêu cầu nhiều tài nguyên) được tập trung ở một số máy cấu hình mạnh (máy chủ) Còn người dùng, không phải cài đặt bất cứ môi trường nào, chỉ cần sử dụng bất cứ trình duyệt nào để soạn và gửi code đến máy (các máy) chứa nền tảng IDE để biên dịch, chạy và trả về kết quả, như hình sau:

Hình 2 5 Web-Based IDE - IDE dựa trên nền Web

Web-based IDE có nhiều ưu điểm hơn, như tính di động, khả năng độc lập thiết bị và hệ điều hành, hỗ trợ nhiều ngôn ngữ khác nhau, không yêu cầu cao về tài nguyên máy (ở phía người dùng), quản lý và đồng bộ tốt Đặc biệt, về khả năng cộng tác thời gian thực thì Web-based IDE hỗ trợ tốt hơn hẳn các phương pháp khác Trên thị trường hiện nay có một số IDE kiểu này, ví dụ như CodeRun3 , Kodingen4 , Cloud95 , và eXo Cloud IDE6 Trong đó chỉ có 2 hệ thống Cloud9 và eXo Cloud IDE hỗ trợ các tính năng cộng tác: chat, xem lại code, viết code đồng thời, xem trình diễn đồng thời Gần đây, tại Việt Nam, một nhóm dự án thuộc

Trang 32

trường Đại học Quốc gia Thành phố Hồ Chí Minh đã đề xuất một Webbased IDE

hỗ trợ cộng tác, tên là IDEOL [9] IDEOL hỗ trợ các tính năng cơ bản của một IDE (viết code, biên dịch, chạy và gỡ lỗi) Ngoài ra, hệ thống này còn cung cấp một số tính năng làm việc cộng tác hữu ích, như viết code đồng thời, chat Tuy nhiên xét tổng thể, IDEOL vẫn chưa trở thành một công cụ có thể áp dụng trong giảng dạy chính thức Về mặt nghiệp vụ sư phạm, công cụ này vẫn còn thiếu nhiều tính năng,

ví dụ công cụ giám sát tiến trình học, hỗ trợ xây dựng cấu trúc các bài thực hành có định hướng Về các chức năng cộng tác, IDEOL còn thiếu nhiều tính năng hộ trợ làm việc không đồng bộ,ví dụ như diễn đàn, wiki Ngoài ra, số lượng ngôn ngữ được IDEOL hỗ trợ còn hạn chế (C và C++)

2.3.2 Môi trường phát triển tích hợp học cộng tác

Luận văn sẽ đi tìm hiểu về mô hình cũng như công nghệ xây dựng một hệ thống hỗ trợ học cộng tác trong giảng dạy các ngôn ngữ lập trình cơ bản Đầu tiên

về mô hình, một hệ thống như trên để có thể áp dụng được trong công việc giảng dạy thực tế thì không chỉ nên giới hạn là một Web-based IDE hỗ trợ làm việc cộng tác Mà thay vào đó là một hệ thống quản lý học tập – LMS ( Learning Management system) với thành phần cốt lõi là một Web- based IDE như hình sau Ngoài ra hệ thống còn được bao bọc bởi nhiều công cụ cộng tác cho phép người dùng truy cập

và sử dụng các chức năng chính ( ví dụ như lập trình cộng tác )

Trang 33

Hình 2 6 Mô hình tổng quan 2.3.2.1 Hệ thống quản lý học tập ( Learning Management system – LMS)

a Định nghĩa: Hệ thống quản lý học tập - LMS (Learning Management System): là một phần mềm quản lý các quá trình học tập và phân phát nội dung khoá học tới người học LMS bao gồm nhiều mô-đun khác nhau giúp quá trình học tập trên mạng được thuận tiện và dễ dàng phát huy hết các điểm mạnh của internet

Theo dõi: Theo dõi quá trình học tập của học viên và tạo các báo cáo

Trao đổi thông tin: Trao đổi thông tin bằng chat, diễn đàn, e-mail, chia sẻ màn hình và e-seminar

Trang 34

Kiểm tra: cung cấp khả năng kiểm tra đánh giá kết quả học tập học viê

c Nhiệm vụ của LMS: Quản lý các khoá học trực tuyến (Online courses) và quản lý người học Quản lý quá trình học tập của người học và quản lý nội dung dạy học của các khoá học

Đảm bảo việc đăng kí khoá học của người học, kết nạp và theo dõi quá trình tích luỹ kiến thức của người học Giúp các nhà quản lý và người dạy thực hiện các công việc kiểm tra, giám sát, thu nhận kết quả học tập, báo cáo của người học và nâng cao hiệu quả giảng dạy

Ngoài ra hệ thống còn tích hợp các dịch vụ cộng tác hỗ trợ quá trình trao đổi thông tin giữa người dạy với người học, giữa người học với người học Nó bao gồm các dịch vụ: giao nhiệm vụ tới người học, thảo luận, trao đổi, gửi thư điện tử, lịch học

c Phân loại: Có nhiều loại LMS khác nhau, việc so sánh các loại LMS một cách chính xác và đầy đủ giữa các LMS là một việc làm khó khăn vì có rất nhiều vấn đề khác nhau trong các LMS Điểm khác nhau cơ bản giữa các LMS dựa trên những yếu tố sau đây: Khả năng mở rộng, chuẩn hệ thống tuân theo, hệ thống đóng hay mở, tính thân thiện người dùng, sự hỗ trợ các ngôn ngữ khác nhau, khả năng cung cấp các mô hình học, giá cả

Một số LMS phổ biến hiện nay trên thế giới phải kể đến là: IBM, BlackBoard, WebCT, Atutor, Itias, LRN, Moodle .Trong khuôn khổ tài liệu này xin giới thiệu về LMS Moodle, một hệ thống quản lý học tập mã nguồn mở đang được đánh giá rất cao và chiếm một số lượng lớn người dùng trên toàn thế giới 2.3.2.2 Web-based IDE

Phần lõi của hệ thống, Web-based IDE hỗ trợ các chức năng chính như sau: Các chức năng cơ bản của một IDE: dịch/biên dịch, chạy, gỡ lỗi Trình viết code cộng tác thời gian thực: nhóm học viên có thể đồng thời viết code trên một file nguồn và thấy được sự thay đổi do người khác viết Công cụ thảo luận tích hợp (chat box): cho phép các học viên, giảng viên có thể thảo luận cùng nhau Terminal

Trang 35

cộng tác : cho phép nhóm người dùng chạy các lệnh trên console Hỗ trợ biên dịch

và chạy nhiều ngôn ngữ khác nhau Liệt kê, tham gia các phiên lập trình đang được thực hiện Lưu, khởi động lại phiên lập trình trước Dựa trên mục đích đó, Web-based IDE sẽ có kiến trúc như hình sau:

Hình 2 7 Kiến trúc Web-based IDE

Kiến trúc của Web-based IDE sẽ tuân theo kiến trúc MVC (Model-View Controller) Trong đó 3 tầng tương ứng như sau:

Tầng trình diễn (Presentation): Một máy chủ web (web application server) quản lý giao diện web cộng tác được dùng để viết code chay, hiện thị kết quả, và các chức năng hộ trợ cộng tác Máy chủ này được xây dựng trên các nền tảng J2EE với máy chủ Apache Tomcat Riêng máy chủ để chạy terminal và các chức năng lập trình cộng tác sẽ được phát triển trên công nghệ Nodejs

Tầng logic (Business) : Một máy chủ ứng dụng phân tán (EJBJonas) quản lý nhân của của hệ thống (các máy biên dịch)

Tầng mô hình (Model) : Tập các file nguồn, và cơ sở dữ liệu (MySQL) để lưu trữ các thông tin liên quan đến người dùng, kết quả, quá trình học

Ngày đăng: 14/03/2019, 23:43

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w