Chat cung cấp một cách để nhiều người có thể trao đổi thông tin với nhau theo một cách đồng bộ. Các công cụ Chat có thể được tích hợp với các hệ thống e-Learning hoặc một môi trường tách biệt.
2.5.9. Diễn đàn
Là các công cụ dùng để tạo các diễn đàn thảo luận. Là một phương thức không đồng bộ.
3. Chương 3:
XÂY DỰNG HỆ THỐNG E-LEARNING THỬ NGHIỆM
3.1. Giải pháp công nghệ
Hệ thống e-Learning trên mạng diện rộng của Đảng được xây dựng tại Ban Khoa giáo Trung ương (nay là Ban Tuyên giáo Trung ương) nhằm đáp
ứng nhu cầu ứng dụng công nghệ thông tin trong công tác đào tạo từ xa và các hoạt động công tác trên mạng cho các cán bộ của các cơ quan Đảng.
Hệ thống e-Learning được xây dựng trên cơ sở là một phân hệ phần mềm trong hệ thống thông tin tổng thể (Cổng điện tử) của Ban Tuyên giáo Trung ương, bao gồm các thành phần cơ bản sau:
• Các phần mềm hệ thống và hệ thống cơ sở dữ liệu
• Cổng thông tin điện tử (portal) của Ban Tuyên giáo Trung ương, cùng với các ứng dụng hiện có của Ban Tuyên giáo Trung ương,
• Hệ thống e-Learning, • Các công cụ tạo bài giảng
3.1.1. Các yêu cầu của hệ thống
Hệ thống mạng của Ban Tuyên giáo Trung ương hiện nay đang sử dụng song song cả hai hệ điều hành mạng là Window và Linux. Các ứng dụng phần lớn được xây dựng dựa trên công nghệ web-based với các hệ thống cơ sở dữ liệu MS SQL và MySQL.
Theo định hướng của Ban Chỉ đạo Công nghệ thông tin cơ quan Đảng: “Tiếp tục thực hiện chủ trương sử dụng rộng rãi phần mềm nguồn mở trong các
dự án xây dựng hệ thống thông tin của các cơ quan Đảng”[2], do đó việc lựa chọn giải pháp sử dụng các phần mềm mã nguồn mở cần được ưu tiên.
Dựa trên hệ thống hiện trạng và định hướng phát triển của Ban Chỉ đạo Công nghệ thông tin cơ quan Đảng, việc lựa chọn giải pháp xây dựng hệ thống e-Learning cần thoả mãn các yêu cầu sau:
• Giải pháp phải có độ tương tác cao, bảo đảm tích hợp được với hệ
thống hiện tại của Ban Tuyên giáo Trung ương, • Ưu tiên lựa chọn các phần mềm nguồn mở,
• Các giải pháp công nghệ tuân theo định hướng phát triển ứng dụng chung của Ban Chỉđạo Công nghệ thông tin cơ quan Đảng,
• Có thể cài đặt, phát triển trên cả hai môi trường Windows và Linux, • Không cần nâng cấp, thay đổi phái máy trạm. Người dùng chỉ cẩn sử
dụng các trình duyệt cơ bản, phổ biến,
• Hệ thống e-Learning phải mềm dẻo, có thể thêm bớt các chức năng một cách dễ dàng, hỗ trợ môi trường làm việc cộng tác mạnh mẽ, • Chuẩn e-Learning lựa chọn phải là chuẩn cơ bản, có tính phổ biến,
được hỗ trợ bởi nhiều tổ chức đào tạo trong nước và quốc tế, • Đảm bảo môi trường tiếng việt,
• Dễ tích hợp các kỹ thuật tương tác, • Chủ động về cơ sở dữ liệu.
Hệ thống e-Learning được lựa chọn phải có tính độc lập, không phụ
thuộc vào portal. Hệ thống có thể chạy như một ứng dụng độc lập hoặc chạy như một ứng dụng của Cổng thông tin điện tử (portal) của Ban Tuyên giáo Trung ương và đáp ứng các yêu cầu sau:
• Hệ thống e-Learning kế thừa các dịch vụ cơ bản của một Portal như
LDAP, Email, DNS, Tìm kiếm… • Hỗ trợ chuẩn e-Learning cơ bản. • Hỗ trợ một số dịch vụ làm việc nhóm.
• Thể hiện nội dung bằng đa ngôn ngữ (tiếng Việt, tiếng Anh).
3.1.2. Lựa chọn giải pháp
Căn cứ theo các yêu cầu của hệ thống và các phân tích chi tiết về các công cụ, sản phẩm, giải pháp xây dựng hệ thống e-Learning trên mạng diện rộng của
Đảng được lựa chọn cụ thể như sau:
• Môi trường hệ điều hành mạng: Không phụ thuộc vào môi trường hệ điều hành (có thể chạy được cả trên môi trường hệ điều hành nguồn mở Linux/RedHat và hệ điều hành mạng Microsoft Windows 2000 Server),
• Máy chủ Web (Web Server): Apache Tomcat, một webserver rất phổ
biến và có tính ổn định cao.
• Cổng thông tin điện tử (portal): Liferay Portal, cổng điện tử mã nguồn mởđược đánh giá cao nhất hiện nay,
• Hệ thống e-Learning: Sakai, hệ thống e-Learning phát triển trên mã nguồn mở có nhiều tính năng ưu việt, được nhiều tổ chức áp dụng và hỗ trợ rất mạnh môi trường cộng tác,
• Ngôn ngữ lập trình: Java, ngôn ngữ lập trình mạnh, được hỗ trợ bởi cả Liferay Portal và Sakai,
• Công cụ tạo bài giảng: ReLoad và một số công cụ multimedia phổ
• Chuẩn: SCORM (Sharable Content Object Reference Model), chuẩn phổ biến hỗ trợ hầu hết các chuẩn e-Learning,
• Hệ quản trị cơ sở dữ liệu: MySQL 4.1,
• Trình duyệt Web: Hỗ trợ MS Internet Explorer 6.0, Netscape 4.7, Firefox 1.0, trở lên,
• Mã tiếng Việt: Hỗ trợ Unicode chuẩn Việt Nam và Quốc tế (bộ mã chuẩn tiếng việt TCVN 6909: 2001).
Hình 3-1: Mô hình hệ thống e-Learning tại Ban Tuyên giáo Trung ương
Việc lựa chọn các công nghệ liên quan đến chuẩn e-Learning SCORM, cổng điện tử Liferay Portal, hệ thống e-Learning Sakai và công cụ tạo bài giảng Reload được phân tích chi tiết hơn ở các mục 2.4, 3.2, 3.3 và 3.4.
3.2. Cổng điện tử Liferay Portal
3.2.1. Giới thiệu tổng quan
Liferay Portal là một trong những giải pháp cổng điển tử mã nguồn mở
hàng đầu thế giới sử dụng các công nghệ mới như Java, J2EE (Java to Enterprise Edition) và Web 2.0 để phân phối các giải pháp cho cả hai lĩnh vực công cộng và cá nhân. Liferay Portal Enterprise có rất nhiều đặc điểm hữu dụng như CMS (Content Management System), tuân theo WSRP (Web Services for Remote Portlets), SSO (Single Sign On), hỗ trợ AOP (Aspect Oriented Programming), và nhiều công nghệ mới nhất khác.
3.2.2. Kiến trúc của Liferay
Liferay có một thiết kế kiến trúc rất rõ ràng dựa trên thực tế tốt nhất của J2EE, điều đó cho phép nó được sử dụng với một loạt các container khác nhau, từ những servlet container như Tomcat và Jetty cho tới những server tuân theo J2EE mạnh mẽ như BorlandES, JBoss, JOnAs, JRun, Oracle9iAS, Orion, Pramati, Sun JSAS, WebLogic và WebSphere.
Kiến trúc của Liferay cho các đặc điểm chính sau:
• Kiến trúc dịch vụ hướng đối tượng (SOA viết tắt của Service Oriented Architecture): Liferay sử dụng kiến trúc dịch vụ hướng đối tượng (SOA) cho các thiết kế của mình và cung cấp các công cụ, framework đểđưa ra SOA cho các ứng dụng khác.
• Bảo mật (Security): Liferay sử dụng các chuẩn công nghiệp, các công nghệ mã hõa cấp nhà nước bao gồm các giải thuật cao như DES, MD5 và RSA. Liferay được đánh giá là portal có độ bảo mật cao. • Đăng nhập một lần (Single Sign On): Liferay có thể tích hợp dịch vụ
đăng nhập một lần với các chương trình Yale CAS, JAAS, LDAP, Netegrity, Microsoft Exchange.... Trong đó, Yale CAS được tích hợp mặc định.
• Kiến trúc nhiều tầng (Multi-Tier) và Limitless Clustering: Kiến trúc Liferay được phân thành các tầng: trình diễn (presentation), dịch vụ (service), tác nghiệp (business logic) và cơ sở dữ liệu (database). • Tính sẵn sàng cao (High Availability): Tính sẵn sàng cao trong thiết
kế cho phép bổ sung business logic bất kỳ một công nghệ nào tương
ứng và thích hợp.
• Lưu các trang (Page Caching): Làm tăng hiệu quả của web với việc lưu (caching) toàn bộ nội dung của các trang web tĩnh.
• Khả năng Hosting động (Dynamic Virtual Hosting) – Cung cấp cho thành viên khả năng sở hữu riêng các trang web.
3.2.3. Đánh giá Liferay Portal [12]
Liferay có một thiết kế kiến trúc rất rõ ràng dựa trên thực tế tốt nhất của J2EE, điều đó cho phép nó được sử dụng với một loạt các container khác nhau, từ những servlet container như Tomcat và Jetty cho tới những server tuân theo J2EE mạnh mẽ như BorlandES, JBoss, JOnAs, JRun, Oracle9iAS, Orion, Pramati, Sun JSAS, WebLogic và WebSphere. Trong trường hợp này, Liferay chỉ là một open source portal container hỗ trợ gần như hầu hết JavaServer open source hay thương mại.
Tính linh hoạt trong thiết kế cho phép bổ sung business logic bất kỳ một công nghệ nào tương ứng và thích hợp như Struts, Tiles, Spring và EJB, có thể được dựa trên Hibernate, Java Messaging Service (JMS), Java Mail và Web Service. Liferay có thể thay đổi Portal Presentation trở thành một Java Application bất kỳ mà không có hoặc rất ít sự thay đổi.
Việc tùy biến các trang portal và các portlet trong những Portal mã nguồn mở như môi trường eXo là không dễ dàng, và có thể làm rất nhiều trong việc cấu hình, nhưng với Liferay layout management thì rất dễ dàng. Liferay Portal có một GUI dựa trên Web cho phép người dùng tương tác để
thiết kế giao diện của trang Portal mà không cần phải chỉnh sửa bất kỳ file cấu hình nào.
Liferay Portal chuyên nghiệp đi kèm với những portlet hữu dụng. Và nếu
đem so sánh với các Portal nguồn mở khác, Liferay portal có một lượng lớn các portlet tiện ích tuân theo JSR-168 và có thể được sử dụng trong bất kỳ
Liferay hỗ trợ WSRP specification cả cho WSRP consumer và WSRP producer như một thực thể của Liferay portal. Việc cấu hình Liferay yêu cầu một vài deployment descriptor không chuẩn chẳng hạn Struts hoặc Tiles, điều này có thể làm cho việc phát triển trở nên phức tạp hơn.
Giống như hầu hết các Portal Framework, Liferay sử dụng database mặc
định là Hypersonic rất tốt cho mục đích phát triển. Liferay có thể được sử dụng với bất kỳ database nào với chút ít ảnh hưởng tùy theo việc sử dụng Hibernate trong thiết kế của nó. Liferay có các JSP tag lib và nhiều class tiện ích khác trong những package khác nhau để trợ giúp các developer trong việc phát triển portal/portlet. Sử dụng những package tiện ích này có thể dễ dàng phát triển portal nhưng khi đó những portal này sẽ giống Liferay và các portlet thì không còn tuân theo JSR-168 nữa.
3.2.4. So sánh Liferay với một số portal khác
Mỗi Portal được phát triển dựa trên những yêu cầu khác nhau và các công nghệ khác nhau. Do đó, thực sự khó khăn khi đánh giá, so sánh các Portal. Có thể đánh giá một Portal theo một số tiêu chí dựa trên những yêu cầu lựa chọn từ Portal như sau [12]:
• Sự tuân theo JSR-168 (JSR-168 compliant): JSR-168 là yêu cầu khá quan trọng cho việc phát triển portal.
• Tính dễ cài đặt (Ease to installation): Việc đánh giá ở đây dựa trên các yêu cầu để bắt đầu, ví dụ: cấu hình database, framework có chứa web-container hay không?
• Tài liệu (Documentation Standard): Việc phát triển Portal vẫn còn những phụ thuộc vào Portal Framework. Tài liệu của Portal
Framework là tiêu chí đánh giá sự hoàn hảo, sự chính xác và chất lượng tài liệu của mỗi Portal Framework.
• Hỗ trợ trực tuyến (Online Support): Việc đánh giá dựa trên chất lượng, sự nhanh chóng, sự tương ứng của các hồi đáp của người phát triển cho các truy vấn trực tuyến.
• Quản lý Portal (Portal Management): Đánh giá các chức năng quản trị
(thêm user, gán quyền cho các user, gán đề mục cho các portlet...) và chức năng của user để tùy biến các portlet theo các yêu cầu khác nhau. • Tài nguyên (Portlet Resources): việc đánh giá dựa trên tính hữu
dụng và tính sử dụng lại của các Portlet đi kèm với Portal
• Tính khả thi và khả triển (Performance & Scalability): Tiêu chí
này đánh giá dựa trên giới hạn của thời gian khởi động, thời gian load portlet, thời gian truy cập database...
• Tính bảo mật (Security): Đánh giá các khả năng bảo mật bổ sung của Portal Framework như: Java Authentication & Authorization Service (JAAS), Java Open Single Sign On (JOSSO) & cấu hình SSL. • Công nghệ sử dụng (Technology Used): Tiêu chí này đánh giá các
công nghệ phổ biến khác nhau được sử dụng bởi những Portal Framework khác nhau như Struts, JSF, Spring, Hibernate, Tiles, EJB và Web Service.
• Các đặc trưng (Portal Features): Tiêu chí này đánh giá các đặc điểm sẵn có cũng như tiêu chuẩn và khả năng sử dụng chúng trong Portal. • Sự phụ thuộc server (Server Dependency): Việc đánh giá tập trung
vào tính tương thích của các Portal Framework với những server thương mại và mã nguồn mở khác nhau.
• Tuân theo WSRP (WSRP standard compliant): Tiêu chí này đánh giá việc hỗ trợ WSRP trong các framework. Đặc tả WSRP tạo nên khả
năng sử dụng portal/portlet trong những ứng dụng không phải Web. Bảng sau đây là kết quả đánh giá và so sánh Liferay với một số portal mã nguồn mở uPortal, Gridsphere, xEo, Liferay, Stringbeans theo các tiêu chí
đáng giá trên:
Portal Tiên chí đánh giá
uPortal Gridsphere xEo Liferay Stringbeans
Sự tuân theo JSR-168 5 5 5 5 5 Tính dễ cài đặt 5 5 5 5 5 Tính dễ sử dụng 5 4 4 5 5 Tài liệu 2 4 3 3 5 Hỗ trợ trực tuyến 3 4 4 3 5 Quản lý Portal 5 4 5 4 5 Tính tùy biến 3 4 3 5 4 Portlet miễn phí 3 4 3 5 3 Tính khả thi và khả triển 4 3 4 3 3 Tính bảo mật 4 3 4 4 4 Công nghệ sử dụng 3 4 5 4 3 Các đặc trưng 2 3 5 4 2 Sự phụ thuộc server 3 3 4 5 3 Tuân theo WSRP 3 0 3 3 0 Tổng: 50 50 57 58 52
Hình 3-3: Biểu đồđánh giá một số portal mã nguồn mở [12]
3.3. Hệ thống e-Learning Sakai
3.3.1. Giới thiệu tổng quan
Sakai là một dự án phát triển phần mềm mã nguồn mở của một cộng
đồng các viện nghiên cứu khoa học, các tổ chức thương mại và các cá nhân cùng cộng tác với nhau trong việc xây dựng một Môi trường học và cộng tác chung (CLE – Collaboration and Learning Environment). Sakai là một sản phẩm miễn phí dựa trên mã nguồn mở và được phân phối tuân theo giấy phép mã nguồn mở Cộng đồng giáo dục (Education Community License). Sakai CLE được sử dụng cho việc dạy, nghiên cứu và cộng tác và được xem như
một hệ thống CMS/LMS hay Môi trường học ảo (VLE – Virtual Learning Environments).
Hình 3-4: Các thành phần tạo nên dự án Sakai
Dự án Sakai được khởi động từ cuối năm 2003 với sự công tác của một số trường đại học và các tố chức (Đại học tổng hợp Michigan, Đại học tổng hợp Indiana, MIT, Đại học Stanford, uPortal, OKI2) và được hỗ trợ tài chính ban đầu của Andrew W. Mellon Foundation, Đại học tổng hợp Indiana. Tên gọi Sakai được ví như “đầu bếp” trong một chương trình truyền hình nổi tiếng tại Nhật Bản là Iron chef Hiroyuki Sakai.
3.3.2. Lịch sử hình thành và phát triển
Tháng 12 năm 2003, Dự án Sakai được bắt đầu, đến tháng 6 năm 2004, tại hội thảo đầu tiên, phiên bản thử nghiệm 1.0 được phát hành. Phiên bản ban
đầu của sakai dựa trên các công cụ có sẵn được tạo ra bởi các tổ chức tham gia Dự án với số lượng lớn các công cụ được lấy từ hệ thống CMS “CHEF”
được xây dựng bởi Trường đại học Michigan. Trong năm 2005, liên tục năm phiên bản của Sakai được phát hành (Sakai 1.5 phát hành 3/20005, Sakai
2 Open Knowledge Initiative
1.5.1 phát hành 5/2005, Sakai 2.0 phát hành 6/2005, Sakai 2.0.1 phát hành 8/2005 và Sakai 2.1 phát hành 12/2005). Phiên bản hiện tại 2.4.1 được phát hành ngày 22 tháng 9 2007.
Tháng 10 năm 2005, Dự án Sakai thông báo thành lập Sakai Foundation, một tổ chức phi lợi nhuận, làm cơ sở cho sự phát triển mạnh mẽ của công
đồng Sakai. Sakai Foundation bao gồm các nhà phát triển, các nhà tài trợ và các người dùng.
Đến tháng 7 năm 2007, Sakai đã được cài đặt tại chính thức tại hơn 150 viện nghiên cứu cũng như được thử nghiệm tại hơn 100 tổ chức khác.
Hình 3-6: Cộng đồng tài nguyên của Sakai 3.3.3. Giải pháp công nghệ của Sakai
Sakai được xây dựng trên nền ngôn ngữ Java, ứng dụng theo hướng đối tượng và được thiết kế theo hướng động, có thể tương tác và mở rộng được. Sakai có thể chạy tốt ở cả môi trường hệ điều hành Microsoft Windows Server hoặc các hệđiều hành họ Linux. Giải pháp công nghệ cơ bản phát triển hệ thống Sakai gồm:
• Hệ quản trị cơ sở dữ liệu (CSDL): tuỳ theo quy mô, yêu cầu, có thể
lựa chọn hệ CSDL Oracle hoặc MySQL cho hệ thống Sakai. Hệ
CSDL HSQL thường được được dùng để demo. • Máy chủ Web: Sử dụng Apache HTTP Server • Ngôn ngữ phát triển: Java