-10- ỨNG DỤNGCÔNGNGHỆ PORTAL TRONGĐÀOTẠOTRỰCTUYẾN Nguyễn Đức Anh MSV: 0320010 Email: anhnd85@gmail.com Người hướng dẫn: TS. Nguyễn Việt Hà 1. Giới thiệu E-learning hay còn gọi là đàotạotrựctuyến là một thuật ngữ thu hút được sự quan tâm, chú ý của rất nhiều người hiện nay. E-learning thực sự là một cuộc cách mạng về học tập khi người học có thể ngồi một chỗ để “đến trường” bất cứ thời gian nào, bất kể trường đó ở đâu trên thế giới. Mô hình Elearning phổ biến nhất hiện nay là phát triển các hệ thống đàotạotrựctuyến dựa trên nền web (Web-Based Training - WBT) cho phép quản lý một lượng lớn người dùng và cung cấp các hình thức tương tác phong phú. Sakai, một sản phẩm WBT sử dụngcôngnghệportal điển hình là một giải pháp phù hợp cho việc phát triển hệ thống đàotạotrựctuyến ở các trường đại học của nước ta hiện nay. Để áp dụng Sakai trong bài toán Đàotạotrựctuyến nền web cho các trường đại học, chúng tôi phân tích, nghiên cứu côngnghệ và kiến trúc hệ thống Sakai, so sánh các hướng phát triển công cụ giảng dạy trong môi trường Sakai nhằm tìm ra mô hình phát triển công cụ phù hợp nhất cho lập trình viên và nhà quản lý. 2. Côngnghệ và kiến trúc Sakai Sakai thực chất là một hệ thống đa tầng. Tẩng dưới cùng là các dịch vụ cung cấp các phương thức quản lý dữ liệu, tiếp đến là các công cụ biểu diễn logic ứng dụng, sau đó dữ liệu trong tầng công cụ được tập hợp trong tầng trình diễn và cuối cùng qua bộ kết tập đem lại khung nhìn và cảm quan cho người dùng cuối. Côngnghệ sử dụngtrong hệ thống Sakai bao gồm khung làm việc Spring, cung cấp khả năng độc lập giữa các thành phần Sakai qua bộ quản lý thành phần nằm trong khung framework Sakai, côngnghệ lưu trữ đối tượng lâu dài Hibernate với mô hình ánh xạ từ các đối tượng hướng đối tượng sang mô hình CSDL truyền thống. Không gian lưu trữ dữ liệu được tổ chức trong mô hình cây phân cấp, mỗi nút liên kết đến một đối tượng tài nguyên dưới sự quản lý của công cụ cụ thể. Giải pháp tích hợp thêm chức năng vào khung Sakai là phát triển thêm các công cụ plug-in cắm vào khung. 3. Xây dựng các công cụ Sakai Các công cụ Sakai không giống như mô hình web server và Servlet mà tương tự như các Portlet. Trong môi trường công cụ Sakai TPP này, các công cụ được chia vào 3 tầng cơ bản: Tầng logic trình diễn, Tầng logic công cụ, và Các dịch vụ ứng dụng. Các kỹ thuật phát triển công cụ Sakai phổ biến từ trước đến nay bao gồm Servlet, Velocity, JSF. Servlet tập trung tất cả mã xử lý và mã sinh giao diện phản hồi trong cùng một file, thực tế rất khó khăn để phát triển ứng dụng. Velocity cài đặt cơ chế MVC, cho phép đồng thời phát triển mã chương trình và thiết kế giao diện cùng lúc. Tuy nhiên phần lớn các công cụ Velocity đều thừa kế từ khung CHEF và đã lạc hậu, không được khuyến khích trongcộng đồng phát triển Sakai. JSF là kỹ thuật được dùng phổ biến nhất cho các công cụ mới phát triển gần đây, phần lớn xây dựng trên JSP và được hỗ trợ bởi một thư viện các tag giao diện phong phú. Nhược điểm của JSF là sự tách biệt giữa giao diện và mã chương trình không rõ ràng, chạy khá nặng và tích hợp kém với Ajax, Javacript. RSF là khung làm việc có cùng mục tiêu và phạm vi quản lý với JSF, tuy nhiên rất gọn nhẹ và có cơ chế hồi đáp yêu cầu nhanh chóng. Trong một chu kỳ tương tác của RSF, có ba nhân tố chính là mẫu khung nhìn (View template) chỉ ra sự hiển thị trực quan của khung nhìn, cây thành phần (component tree) gắn liền các phần của mẫu khung nhìn với mô hình bean nằm dưới thể hiện dữ liệu và logic nghiệp vụ của bạn, và mô hình bean của bản thân nó. Ba nguồn thông tin này kết hợp với nhau trong suốt chu kỳ tương tác để sản sinh ra khung nhìn được yêu cầu bằng bộ hồi đáp RSF, IKAT. Sự tách biệt rõ ràng về trách nhiệm cho ba phần dẫn đến sự độc lập cuối cùng giữa khung nhìn hiển thị và mô hình bean của ứng dụng. 4. Ứng dụngcông cụ Quản lý Điểm danh -11- Điểm danh là một biện pháp nhằm quản lý, đánh giá và cải thiện mức độ tập trung trong một khóa học cụ thể của học viên. Trong cơ chế giảng dạy ở nước ta, điểm danh là một chức năng bắt buộc. Tuy nhiên hiện tại các hệ thống đàotạotrựctuyến trên thế giới nói chung và ở nước ta nói riêng chưa có một chức năng quản lý tương ứng. Vì vậy yêu cầu về một ứng dụng quản lý các hoạt động liên quan đến việc điểm danh và liên kết với các công cụ giảng dạy điện tử khác là cần thiết cho việc phát triển một hệ thống giảng dạy trựctuyến phù hợp với cơ chế đàotạo nước ta. Các ca sử dụng chính của ứng dụng bao gồm: 1. Quản lý khóa học 1.1. Thêm khóa học 1.2. Cập nhật thông tin khóa học 1.3. Hủy bỏ khóa học 2. Quản lý danh mục sinh viên 2.1. Thêm sinh viên 2.2. Sửa thông tin sinh viên 2.3. Xóa sinh viên 3. Quản lý lịch học 3.1. Thêm buổi học 3.2. Cập nhật thông tin buổi học 3.3. Xóa buổi học 4. Quản lý điểm danh 4.1. Điểm danh 4.2. Tra cứu tình trạng tập trung mỗi buổi học 4.3. Tổng kết cuối khóa học. 5. Phân quyền Công cụ được phân tích và thiế t kế theo mô hình hướng đối tượng UML, với các biểu đồ use-case, biểu đồ lớp thực thể, biểu đồ lớp giao diện, biểu đồ lớp xử lý, biểu đồ tương tác và biểu đồ thành phần. 5. Triển khai Ứng dụng được phát triển bằng công cụ lập trình Eclipse, xây dựng và triển khai bằng công cụ Maven. Toàn bộ các file biên dịch war, jar của hệ thống Sakai, bao gồm mã công cụ Điểm danh được chứa và chạy trong khung chứa servlet Apache Tomcat. Các thành phần chính của ứng dụng: - org.sakaiproject.tool.roll.api: gói chứa các giao diện các lớp thể hiện logic nghiệp vụ. - org.sakaiproject.tool.roll.impl: gói chứa các lớp cài đặt logic nghiệp vụ. - org.sakaiproject.tool.roll.hibernate: gói chứa các file xml thể hiện các thực thể của ứng dụng. - org.sakaiproject.tool.roll.rsf: gói chứa các lớp producer. - bundle/messages.properties: file bao gồm các thông điệp ngoài được sử dụngtrong ứng dụng. - content/ templates: các mẫu khung nhìn được sử dụngtrong ứng dụng. - tools/ Sakai.roll.xml: file cấu hình ứng dụng cho môi trường Sakai. - applicationContext.xml, request.xml, web.xml: các file ngữ cảnh Spring chuẩn. - project.properties, project.xml: các file cấu hình project của Maven. 6. Kết luận Khóa luận làm rõ bản chất và kiến trúc, mô hình hoạt động của khung Sakai. Khóa luận đã chứng minh được tính ưu việt của phương phát phát triển công cụ Sakai dựa trên khung RSF so với các phương pháp khác như Servlet, Velocity, JSP, JSF. Khóa luận đã xây dựng một công cụ giảng dạy – công cụ Điểm danh để kiểm chứng cho mô hình phát triển được nêu ra. Các nghiên cứu trong luận văn được xem như cơ sở lý thuyết và côngnghệ cho việc phát triển một portalđàotạo điện tử phù hợp với mô hình giảng dạy của các trường đại học trong nước. Tài liệu tham khảo [1]. Aaron Zeckoski. Introduction to Reasonable Server Faces. Sakai Programmer’s Cafe. [2]. Craig Counterman et al. Sakai Java Framework, Technical Report Sakai Project, 2005. http://www.sakaiproject.org. [3]. Glenn R. Golden. Structuring Sakai, Sakai Framework Architect, July 10, 2005. http://sakaiproject.org. [4]. RSF wiki. www.caret.cam.ac.uk/rsfwiki [5]. Sakai Project. http://sakaiproject.org . -10- ỨNG DỤNG CÔNG NGHỆ PORTAL TRONG ĐÀO TẠO TRỰC TUYẾN Nguyễn Đức Anh MSV: 0320010 Email: anhnd85@gmail.com. Sakai, một sản phẩm WBT sử dụng công nghệ portal điển hình là một giải pháp phù hợp cho việc phát triển hệ thống đào tạo trực tuyến ở các trường đại học