TÓM TẮT Tên đề tài “SMART LEARNING KIT” Nội dung nghiên cứu Hướng tiếp cận và giải quyết vấn đề - Nghiên cứu các tài liệu kỹ thuật liên quan - Tìm hiểu và điều chỉnh các op
Trang 1BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC NÔNG LÂM TP HCM
KHOA CÔNG NGHỆ THÔNG TIN
LUẬN VĂN TỐT NGHIỆP
Sinh viên thực hiện : Phan Minh Triệu
Trang 2BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC NÔNG LÂM TP HCM
KHOA CÔNG NGHỆ THÔNG TIN
LUẬN VĂN TỐT NGHIỆP
TÌM HIỂU CÁC HỆ THỐNG HỌC
MÃ NGUỒN MỞ VÀ XÂY DỰNG
HỆ THỐNG MINH HỌA SMART
LEARNING KIT
Giáo viên hướng dẫn: Sinh viên thực hiện:
ThS Nguyễn Thị Thanh Thủy Phan Minh Triệu
K’Bou Đa Lých Nhi
Võ Văn Lượt
Trang 3CÔNG TRÌNH HOÀN TẤT TẠI TRƯỜNG ĐẠI HỌC NÔNG LÂM TP HCM
Giáo viên hướng dẫn: Nguyễn Thị Thanh Thủy
Giáo viên phản biện: Nguyễn Thanh Phước
Luận văn cử nhân được bảo vệ tại HỘI ĐỒNG CHẤM LUẬN VĂN CỬ NHÂN TRƯỜNG ĐẠI HỌC NÔNG LÂM TP HCM ngày 01 tháng 09 năm
2011
Trang 4Nhận xét của giáo viên hướng dẫn
Nhận xét của giáo viên phản biện
Trang 5
NHÓM SINH VIÊN THỰC HIỆN:
Chuyên nghành: Hệ Thống Thông Tin Địa chỉ:
E-mail: pmtrieu@ymail.com K’Bou Đa Lých Nhi Ngày sinh: 13/10/1988
Trang 6Chúng em xin chân thành cám ơn Khoa Công nghệ thông
tin trường Đại học Nông Lâm Thành Phố Hồ Chí Minh đã tạo
điều kiện thuận lợi cho chúng em thực hiện luận văn này
Chúng em xin chân thành cảm ơn Cô Nguyễn Thị Thanh
Thủy đã tận tình hướng dẫn, chỉ bảo cùng những lời động viên
khuyến khích và giúp đỡ chúng em trong suốt quá trình thực
hiện luận văn
Chúng em xin chân thành cảm ơn quý Thầy Cô trong
Khoa đã tận tình giảng dạy, trang bị cho chúng em những kiến
thức quý báu trong những năm học vừa qua
Chúng con xin nói lên lòng biết ơn sâu sắc đối với Ông
Bà, Cha Mẹ đã chăm sóc, nuôi dạy chúng con thành người
Xin chân thành cảm ơn các anh chị và bạn bè đã ủng hộ,
giúp đỡ và động viên chúng em trong thời gian học tập và
nghiên cứu
Mặc dù chúng em đã cố gắng hoàn thành tốt luận văn
trong phạm vi và khả năng cho phép nhưng chắc chắn sẽ không
tránh khỏi những thiếu sót nhất định Chúng em kính mong
nhận được sự cảm thông và tận tình chỉ bảo của quý Thầy Cô và
các bạn
Sinh viên thực hiện Phan Minh Triệu K’Bou Đa Lých Nhi
Võ Văn Lượt
LỜI CẢM TẠ
Trang 7MỤC LỤC
LỜI CẢM TẠ
DANH SÁCH CHỮ VIẾT TẮT IV DANH SÁCH CÁC THUẬT NGỮ TIẾNG ANH V
1.1 LÝ DO CHỌN ĐỀ TÀI 1
1.2 MỤC TIÊU ĐỀ TÀI 2
1.3 PHẠM VI NGHIÊN CỨU 2
CHƯƠNG 2 TỔNG QUAN CÔNG NGHỆ 3 2.1 MOODLE 3
2.2 DSPACE 9
2.3 KOHA 13
2.4 CAS - CENTRAL AUTHENTICATION SERVICE 18
2.5 LDAP 22
CHƯƠNG 3 GIẢI PHÁP 26 3.1 PHÁT BIỂU BÀI TOÁN 26
3.2 MÔ HÌNH USECASE 33
3.3 KIẾN TRÚC HỆ THỐNG 36
3.4 KIẾN TRÚC CÀI ĐẶT 37
3.5 MÔ HÌNH CHỨNG THỰC 39
CHƯƠNG 4 ĐÁNH GIÁ 41 4.1 MOODLE 41
4.2 DSPACE 42
4.3 KOHA 43
CHƯƠNG 5 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 44 5.1 KẾT LUẬN 44
5.2 HƯỚNG PHÁT TRIỂN 44
Trang
Trang 8DANH SÁCH CHỮ VIẾT TẮT
SSO Single Sign On
ILL Interlibrary Loan
ISBN International Standard Book Number
LDAP Lightweight Directory Access Protocol
LDIF LDAP Interchange Format
OPAC Online Public Access Catalog
URI Uniform Resource Identifier
E-LEARNING Electronic Learning
GPL General Public License
LCMS Learning Content Management System
LGPL Limit General Public License
LMS Learning Management System
LO Learning Object
IEEE Institute of Electrical and Electronics Engineers
IMS Instructional Management System
SCORM Sharable Content Object Reference Model
SMS Short Message Service
VLE Virtual Learning Environment
Trang 9DANH SÁCH CÁC THUẬT NGỮ TIẾNG ANH
Trang 10DANH MỤC CÁC HÌNH
Hình 2.1: Kiến trúc hệ thống E-Learning 5
Hình 2.3: Kiến trúc hệ thống Moodle 6
Hình 2.4: Kiến trúc hệ thống Moodle đã có Plugin 6
Hình 2.5: Kiến trúc hệ thống Dspace 10
Hình 2.6: Kiến trúc hệ thống Koha 14
Hình 2.7: Các Module chính trong Mô hình kiến trúc hệ thống Koha 15
Hình 2.8: Người dùng truy cập vào ứng dụng khi đã chứng thực với CAS server 20
Hình 2.9: Người dùng truy cập vào ứng dụng mà chưa chứng thực với CAS server 21 Hình 2.10: Mô hình kết nối giữa client/server 23
Hình 2.11: Cấu trúc cây LDAP 25
Hình 3.1: Người dùng truy cập vào ứng dụng khi đã chứng thực với CAS server 29
Hình 3.2: Người dùng truy cập vào ứng dụng mà chưa chứng thực với CAS server 30 Hình 3.3: Thao tác tìm kiếm với phạm vi base 31
Hình 3.4: Thao tác tìm kiếm với phạm vi onelevel 32
Hình 3.5: Thao tác tìm kiếm với phạm vi subtree 32
Hình 3.6: Mô hình usecase người quản trị trong Moodle 33
Hình 3.7: Mô hình usecase của giáo viên trong Moodle 33
Hình 3.8: Mô hình usecase của học viên trong Moodle 34
Hình 3.9: Mô hình usecase Administrator trong Dspace 34
Hình 3.10: Mô hình usecase của Normal User trong Dspace 35
Hình 3.11: Mô hình usecase của Koha 35
Hình 3.12: Mô hình kiến trúc tổng thể 36
Hình 3.13: Mô hình cài đặt hệ thống 37
Hình 3.14: Sơ đồ quản lý người dùng 38
Hình 3.15: Mô hình chứng thực 39
Hình A.1: Giao diện cài AppServ 2.5.9 47
Hình A.2: Giao diện của License Agreement 47
Hình A.3: Giao diện chọn đường dẫn cài đặt 48
Hình A.4: Giao diện chọn các component cần cài đặt 48
Hình A.5: Giao diện nhập thông tin server 49
Hình A.6: Giao diện nhập pass và chọn Unicode 49
Hình A.7: Giao diện cài đặt thành công 50
Hình A.8: Giao diện chọn ngôn ngữ cài đặt của Moodle 51
Hình A.9: Giao diện nhập thông tin đường dẫn cài đặt 51
Hình A.10: Giao diện nhập thông tin database của Moodle 52
Hình A.11: Giao diện kiểm tra thông tin trước khi cài đặt 52
Hình A.12: Giao diện download gói ngôn ngữ 53
Hình A.13: Giao diện cấu hình hoàn thành 53
Trang
Trang 11Hình A.17: Giao diện cài đặt PHP trên Ubuntu 56
Hình A.18: Giao diện chọn ngôn ngữ 58
Hình A.19: Giao diện kiểm tra phiên bản PHP trên Ubuntu 59
Hình A.20: Giao diện nhập thông tin database cài đặt trên Ubuntu 60
Hình A.21: Giao diện kiểm tra hệ thống trên Ubuntu 60
Hình A.22: Giao diện chọn ngôn ngữ download cài đặt trên Ubuntu 61
Hình A.23: Giao diện chọn ngôn ngữ cài đặt thành công 61
Hình A.24: Giao diện cấu hình thành công trên Ubuntu 62
Hình A.25: Giao diện thông báo bản quyền trên Ubuntu 62
Hình A.26: Giao diện chờ cài đặt database trên Ubuntu 63
Hình A.27: Giao diện cài đặt thông tin account admin trên Ubuntu 63
Hình A.28: Giao diện nhập thông tin trang web trên Ubuntu 64
Hình A.29: Giao diện nhập thông báo và chứng thực email trên Ubuntu 64
Hình A.30: Giao diện cài đặt Moodle thành công trên Ubuntu 65
Hình A.31: Giao diện Installing Java 67
Hình A.32: Giao diện Accept Installing Java 67
Hình A.33: Giao diện Custom Setup Install Java 68
Hình A.34: Giao diện Installing Java Completed 68
Hình A.35: Giao diện chọn ngôn ngữ Instal Postgresql 69
Hình A.36: Giao diện Instal Postgresql 69
Hình A.37: Giao diện Custom Setup Postgresql 70
Hình A.38: Giao diện Service configuration Posgresql 70
Hình A.39: Giao diện chọn ngôn ngữ 71
Hình A.40: Giao diện chọn Module contrib 71
Hình A.41: Giao diện Start Posgresql 72
Hình A.42: Giao diện kết nối database Posgresql 72
Hình A.43: Giao diện Login Posgresql 73
Hình A.44: Giao diện tạo Role mới 73
Hình A.45: Giao diện tạo database mới 74
Hình A.46: Giao diện Instal Apache Tomcat 75
Hình A.47: Giao diện cấu hình Apache Tomcat 75
Hình A.48: Giao diện Custom Setup Apache Tomcat 76
Hình A.49: Giao diện hoàn thành cài đặt Apache Tomcat 76
Hình A.50: Giao diện tạo biến môi trường 77
Hình A.51: Giao diện nhập giá trị tạo biến môi trường 77
Hình A.52: Giao diện tạo lệnh cài đặt MVN 80
Hình A.53: Giao diện chạy lệnh MVN 81
Hình A.54: Giao diện cài đặt ANT 81
Hình A.55: Giao diện chạy lệnh cài đặt ANT 82
Hình A.56: Giao diện Dspace (JSPUI) 82
Hình A.57: Giao diện Dspace (XMLUI) 83
Hình A.58: Đường dẫn update Ubuntu 83
Hình A.59: Giao diện cài đặt Apache Webserver 89
Hình A.60: Thông tin Server 89
Hình A.61: Kiểu Setup 90
Trang 12Hình A.63: Giao diện chọn custom cài đặt 91
Hình A.64: Tiến hành cài đặt Apache 91
Hình A.65: Giao diện cài đặt Apache hoàn thành 91
Hình A.66: Giao diện chọn kiểu cài đặt cho MySQL 92
Hình A.67: Giao diện tiến hành cài đặt MySQL 92
Hình A.68: Giao diện tiến hành cài đặt MySQL custom 93
Hình A.69: Giao diện hòan thành cài đặt MySQL 93
Hình A.70: Chọn cách cấu hình cho MySQL 94
Hình A.71: Giao diện chọn Window PATH 94
Hình A.72: Tạo password mới cho MySQL 94
Hình A.73: Chọn cách cấu hình cho MySQL 95
Hình A.74: Cài đặt Perl 95
Hình A.75: Chọn folder cài đặt Perl 96
Hình A.76: Chọn hành động cài đặt 96
Hình A.77: Tiến hành cài đặt Perl 97
Hình A.78: Hoàn thành cài đặt Perl 97
Hình A.79: Chọn kiểu cài đặt Koha 98
Hình A.80: Chọn kiểu biên mục cho Koha 98
Hình A.81: Chọn chương trình cài đặt cần cho Koha 99
Hình A.82: Chọn đường dẫn cài đặt Koha 99
Hình A.83: Hoàn thành cài đặt Koha 99
Hình A.84: Giao diện cài đặt YAZ 100
Hình A.85: Chọn đường dẫn cài đặt YAZ 100
Hình A.86: Hoàn thành cài đặt YAZ 100
Hình A.87: Đường dẫn update Ubuntu 101
Hình A.88: Giao diện ban đầu của Webmin 103
Hình A.89: Tạo user và group cho Koha 103
Hình A.90: Giao diện CAS khi cài đặt thành công 110
Hình A.91: Giao diện đăng nhập thành công 110
Hình A.92: Giao diện cài đặt LDAP 113
Hình A.93: Giao diện thông tin server 113
Hình A.94: Giao diện cấu hình Access 113
Hình A.95: Giao diện sau khi cài đặt thành công LDAP 116
Hình A.96: Giao diện control panel của LDAP 116
Hình A.97: Giao diện tạo Base DN 117
Hình A.98: Giao diện Manage Entries trong LDAP 117
Hình A.99: Giao diện khai báo tổ chức trong LDAP 119
Hình A.100: Giao diện khai báo uid 120
Trang 13TÓM TẮT
Tên đề tài
“SMART LEARNING KIT”
Nội dung nghiên cứu
Hướng tiếp cận và giải quyết vấn đề
- Nghiên cứu các tài liệu kỹ thuật liên quan
- Tìm hiểu và điều chỉnh các opensource liên quan
Một số kết quả đạt được
- Cài đặt và custom thành công Moodle, Dspace và Koha
- Việt hóa Moodle, Koha và Dspace
- Nhập liệu cho Moodle, Dspace và Koha
- Đăng nhập SSO giữa các ứng dụng
- Quản lý người dùng bằng LDAP
- Tạo tên group một cách tự động theo Community và Collection trong Dspace
- Tùy chỉnh code đề cho file dạng video hiển thị trên trang web của Dspace
- Tùy chỉnh code đề cho file office và pdf hiển thị trên trang web của Dspace dạng google doc
Trang 14CHƯƠNG 1 MỞ ĐẦU
1.1 LÝ DO CHỌN ĐỀ TÀI
Ngày nay công nghệ thông tin ngày càng phát triển và nhu cầu công nghệ thông tin hóa ở các trường trung học, cao đẳng và các trường đại học càng cao nhằm dễ dàng hơn cho việc quản lý và học sinh, sinh viên truy cập tìm thông tin bài học cần thiết, tạo cơ hội cho người học có thể tự học, tự nghiên cứu và trao đổi kiến thức với nhau
Hầu hết các trường sử dụng các phần mềm có phí, mua từ các công ty và không thống nhất, một số trường còn sử dụng hình thức lưu trên giấy Trong khi đó, hiện nay có rất nhiều phần mềm quản lý thư viện và đào tạo trực tuyến là mã nguồn
mở, không tốn phí Và nhiều nước trên thế giới đã áp dụng các giải pháp mã nguồn mở vào cho nền giáo dục nước họ
Vấn đề đặt ra cho nền giáo dục Việt Nam là đưa vào các phần mềm thư viện và đào tạo trực tuyến miễn phí áp dụng cho các trường trung học cấp 2, cấp 3 và các trường đại học trên cả nước nhằm thuận tiện cho nhu cầu tìm hiểu và thu hút học sinh, sinh viên đến thư viện nhiều hơn, giúp cho các học viên ở xa không có điều kiện đến lớp nhưng vẫn có thể tham gia vào lớp học, giáo viên có thể trực tiếp tham gia giảng dạy tại một địa điểm nào đó, học viên có thể trao đổi trực tiếp với giáo viên
Trong phạm vi của đề tài chúng em sẽ trình bày đầy đủ các phần sau:
Hệ thống đào tạo trực tuyến _Moodle
Quản lý thư viện số _Dspace
Quản lý thư viện vật lý _Koha
Mô hình chứng thực đăng nhập một lần _CAS
Trang 151.2 MỤC TIÊU ĐỀ TÀI
- Tìm hiểu, cài đặt và sử dụng thành thạo ba opensource Moodle, Dspace và Koha
- Việt hóa Moodle, Dspace và Koha
- Tìm hiểu và cài đặt thành công LDAP và CAS
- Hiện thực thành công hệ thống đào tạo trực tuyến Moodle, hệ thống thư viện
số Dspace và thư viện vật lý Koha cho khoa Công Nghệ Thông Tin Trường Đại Học Nông Lâm Thành Phố Hồ Chí Minh
1.3 PHẠM VI NGHIÊN CỨU
Trong khoảng thời gian nhất định, đề tài chúng em tìm hiểu các mục sau:
Tìm hiểu nghiệp vụ thư viện
Tìm hiểu nghiệp vụ đào tạo trực tuyến
Hướng dẫn cài đặt và sử dụng hệ thống đào tạo trực tuyến Moodle
Việt hóa Moodle
Tùy chỉnh Moodle
Hướng dẫn cài đặt và sử dụng thư viện điện tử Dspace
Việt hóa Dspace
Tùy chỉnh Dspace
Hướng dẫn cài đặt và sử dụng thư viện thật Koha
Việt hóa Koha
Tùy chỉnh Koha
Hướng dẫn cài đặt và cấu hình CAS
Hướng dẫn cài đặt và cấu hình LDAP
Hiện thực hệ thống Smart Learning Kit (SLK) cho khoa Công Nghệ Thông
Tin – Đại Học Nông Lâm Thành Phố Hồ Chí Minh
Trang 16CHƯƠNG 2 TỔNG QUAN CÔNG NGHỆ
2.1 MOODLE
2.1.1 Giới thiệu
Moodle là một hệ thống quản lý học tập (Learning Management System -
LMS hoặc người ta còn gọi là Course Management System hoặc VLE - Virtual Learning Environment) mã nguồn mở (do đó miễn phí và có thể chỉnh sửa được mã nguồn), cho phép tạo các khóa học trên mạng Internet hay các website học tập trực tuyến
Moodle (viết tắt của Modular Object-Oriented Dynamic Learning
Environment) được sáng lập năm 1999 bởi Martin Dougiamas, tại trường Đại học Curtin của Úc Moodle ra đời là một sự thay thế cho các hệ thống LMS/LCMS thương mại như Blackboard & WebCT Từ đó đến nay
Moodle có sự phát triển vượt bậc và thu hút được sự quan tâm của hầu hết các quốc gia trên thế giới và ngay cả những công ty bán LMS/LCMS thương mại lớn nhất như BlackCT (BlackBoard & WebCT) cũng có các chiến lược riêng để cạnh tranh với Moodle
Moodle nổi bật là thiết kế hướng tới giáo dục, dành cho những người làm
trong lĩnh vực giáo dục Moodle rất dễ dùng với giao diện trực quan, giáo viên chỉ mất một thời gian ngắn để làm quen và có thể sử dụng thành thạo Giáo viên có thể tự cài và nâng cấp Moodle Do thiết kế dựa trên module nên Moodle cho phép bạn chỉnh sửa giao diện bằng cách dùng các theme
có trước hoặc tạo thêm một theme mới cho riêng mình Tài liệu hỗ trợ của Moodle rất đồ sộ và chi tiết, khác hẳn với nhiều dự án mã nguồn mở khác
Moodle phù hợp với nhiều cấp học và hình thức đào tạo: phổ thông, đại
Trang 17Moodle rất đáng tin cậy, theo thống kê tại http://moodle.org cho thấy có trên 42,667 site trên thế giới đã dùng Moodle tại 193 quốc gia và đã được dịch ra 75 ngôn ngữ khác nhau Phiên bản hiện hành của Moodle là
Moodle 2.0 và không ngừng được cải tiến dựa vào sự hỗ trợ của một cộng đồng mạng rộng lớn Trên thế giới có trên 400 nghìn người đã đăng kí tham gia cộng đồng Moodle (moodle.org) và sẵn sàng giúp bạn giải quyết khó khăn Nếu cần sự giúp đỡ chuyên nghiệp về cài đặt, hosting, tư vấn sử dụng Moodle, phát triển thêm các tính năng mới, và tích hợp Moodle với các hệ thống đã có trong trường, có thể chọn cho mình một trong các công
ty Moodle Partners (khoảng 30 công ty)
Moodle hỗ trợ các chức năng khá ưu việt như:
Ghi lại các hoạt động và thời điểm mà từng người sử dụng truy cập vào hệ thống nhưng không ghi lại thời điểm thoát khỏi truy cập
Các diễn đàn thảo luận theo từng chủ đề mà người dùng có thể lựa chọn tham gia
Hỗ trợ rất nhiều ngôn ngữ
Hỗ trợ tài liệu người dùng rất tốt
Quản lý giáo viên và học viên dễ dàng
Hỗ trợ việc upload và download file
Có tính sử dụng lại cao (có thể lưu trữ, sao chép dự phòng…)
Có tính sử dụng cao, thể hiện trong việc Moodle hiện đang là hệ thống được sử dụng nhiều trên toàn thế giới và ở Việt Nam
Hỗ trợ việc lập kế hoạch và học tập: hệ thống hỗ trợ rất mạnh về lập kế hoạch học tập chung cho cả khóa học Các tài liệu, bài giảng được
“đính” vào kế hoạch học tập
Moodle là một hệ quản lý khóa học tập trung vào học viên, nó được thiết kế để trợ giúp những nhà giáo dục tạo các khóa học trực tuyến chất lượng nên nó những ưu điểm vượt trội hơn so với các hệ thống
Trang 18khác Nhờ đó nó được sử dụng rất phổ biến trên toàn thế giới trong các trường đại học, trung học, các công ty và các giáo viên riêng
2.1.2 Mô hình kiến trúc
2.1.2.1 Kiến trúc cơ bản của hệ thống E-Learning
Hình 2.1: Kiến trúc hệ thống E-Learning
Các module được chia làm 2 phân hệ cơ bản:
Phân hệ quản trị nội dung học (LCMS-Learning Content Management System): là phân hệ hỗ trợ việc xây dựng nội dung học tập bao gồm: việc tạo, cập nhật, tìm kiếm và sử dụng lại các module bài giảng
Phân hệ quản trị học (LMS-Learning Management System): là phân hệ quản lý quá trình học bao gồm: đăng ký khóa học của học viên, phân phối các nội dung học cho học viên, các hoạt động kiểm tra đánh giá
Trang 192.1.2.2 Kiến trúc hệ thống Moodle
Kiến trúc hệ thống Moodle chưa có Plugin
Hình 2.2: Kiến trúc hệ thống Moodle
Kiến trúc hệ thống Moodle đã Plugin
Hình 2.3: Kiến trúc hệ thống Moodle đã có Plugin
Trang 202.1.3 Quản lý người dùng
Trong Moodle cung cấp quản lý người dung sau:
Người quản lý (Các nhà lãnh đạo, các giáo vụ, quản trị hệ thống)
Người dạy (Các giáo viên, những người chỉ dẫn)
Người học (sinh viên chính quy, tại chức, từ xa, học viên cao học…)
2.1.4 Các chức năng của Moodle
2.1.4.1 Chức năng giành cho người quản trị
Tạo lập một khóa học bất kỳ
Kết nạp thành viên của một khóa học
Theo dõi tiến trình của người học
Thiết lập các chế độ giao diện của khóa học
Theo dõi lịch sử làm việc của người học
Phân công giáo viên phụ trách khóa học
Có thể sao lưu, phục hồi khóa học
2.1.4.2 Chức năng dành cho giảng viên
Cung cấp tài nguyên cho người học
Cung cấp nội dung học tới người học(các file, văn bản text, gói dạng Scorm)
Gửi một thông báo mới tới một nhóm hoặc tất cả học viên
Tạo một diễn đàn trao đổi thảo luận
Trả lời các câu hỏi của học viên thông qua diễn đàn hoặc nhắn tin nội bộ
Tạo một bài học mới: có tính logic và liên kết bài học sau
Tạo một bài tập lớn
Tạo một bài thi trắc nghiệm: Các loại câu hỏi(đúng sai, trả lời ngắn, nhiều chọn 1, nhiều chọn nhiều, ghép từ, điền từ, tiểu luận…)
Giám sát tình hình hoạt động của học viên trong khóa học
Trang 212.1.4.3 Chức năng dành cho học viên
Đăng ký tham gia khóa học bất kỳ
Tham gia các hoạt động giảng dạy của giáo viên
Tham gia hỏi đáp trên diễn đàn
Tham gia thi cuối khoá
Xem kết quả học tập của mình
Gửi thắc mắc tới giáo viên hoặc bạn học khác
Xem các thông báo của khóa học
Trang 222.2 DSPACE
2.2.1 Giới thiệu
DSpace là một bộ phần mềm mã nguồn mở hỗ trợ giải pháp xây dựng và
phân phối các bộ sưu tập số hóa trên internet, cho phép các thư viện, các
cơ quan nghiên cứu phát triển và mở rộng Nó cung cấp một phương thức mới trong việc tổ chức và xuất bản thông tin trên internet
DSpace do HP và The MIT Libraries phát triển vào năm 2002, hiện nay có
hơn 200 trường đại học và các tổ chức văn hoá sử dụng phần mềm số DSpace để quản lý và chia sẻ nguồn tài nguyên: sách, tạp chí, luận văn và các sưu tập hình ảnh, âm thanh và phim
Những yếu tố làm nên sự khác biệt của DSpace với các phần mềm mã nguồn mở khác:
Dễ dàng chỉnh sửa phù hợp với nhu cầu sử dụng
Mô hình quản lý nội dung phù hợp với thực tế của các tổ chức chính phủ, giáo dục…
Được hỗ trợ bởi cộng đồng phát triển và người sử dụng đông đảo ngày càng lớn mạnh
Lưu trữ và quản lý hầu hết các loại nội dung kỹ thuật số: hình ảnh, âm thanh, tài liệu… và phân loại theo chuẩn Dublin Core Metadata rất phổ biến và thông dụng
2.2.2 Mô hình kiến trúc
Chia làm ba tầng xử lí chính, với những nhiệm vụ và chức năng riêng:
Application Layer: Tầng ứng dụng gồm các giao diện tương tác với
người dùng: giao diện web, nhập và xuất tài liệu…
Bussiness Logic Layer: Tầng xử lý gồm các gói xử lý theo từng chức
năng: tìm kiếm, quản lý người dùng, quản lý dòng công việc, xác thực
Trang 23 Storage Layer: Tầng lưu trữ gồm kết nối và cơ sở dữ liệu để lưu trữ
Anonymous (người dùng vô danh): nếu chưa đăng nhập thì tất cả
những người dùng của DSpace được xem là người dùng vô danh Nhóm này được phép xem những tài liệu công khai cho tất cả mọi người
Normal users (người dùng bình thường): là những người sau khi
đăng đăng nhập được phép đăng tải tài liệu lên bộ sưu tập, được quyền xem những tài liệu công khai cho tất cả mọi người, ngoài ra còn được quyền quản lý một số bộ sưu tập hoặc xem một số bộ sưu tập bị giới hạn
Administrators (người quản trị): những người dùng có quyền truy
cập vào tất cả các chức năng trên tất cả các bộ sưu tập, các mục trong DSpace
Trang 24 Lưu ý:
Một người dùng có thể là thành viên của nhiều nhóm
Một nhóm – A - có thể là thành viên của một nhóm khác - B, khi
đó quyền hạn của nhóm A sẽ là quyền hạn của nhóm A và kế thừa quyền của nhóm B
Ngoài ra khi tạo một bộ sưu tập hệ thống sẽ tự động tạo nhóm quản
lý trên bộ sưu tập đó
Người dùng (User) trong DSpace được gọi là E-Person, trở thành thành viên của Dspace theo 2 cách:
Người quản trị tạo tài khoản đăng nhập cho thành viên
Người dùng tự đăng ký và xác nhận thông tin qua tài khoản email đã đăng ký
Quyền hạn của người dùng trong Dspace
Trên tập tin (Bitstream)
READ: có thể đọc file
WRITE: có thể thay đổi file
Trên bó (Bundle)
ADD: có thể thêm nhiều tập tin vào bó
REMOVE: xoá tập tin ra khỏi bó
Trên mục (Item)
READ: có thể xem mục
WRITE: có thể thay đổi mục
ADD/REMOVE: có thể thêm hoặc xóa các tập tin
- Trên bộ sưu tập (Collection)
ADD/REMOVE: có thể thêm hoặc xóa các tập tin khỏi bộ sưu tập
DEFAULT_ITEM_READ: các mục có thuộc tính đọc
DEFAULT_BITSTREAM_READ: các tập tin được phép đọc
Trang 252.2.4 Các chức năng của Dspace
Thêm cộng đồng
Thêm bộ sưu tập
Thêm quyền hạn trên cộng đồng và bộ sưu tập
Thêm tài liệu
Tìm kiếm tài liệu
Quản lý tài liệu
Thêm thành viên mới
Trang 262.3 KOHA
2.3.1 Giới thiệu
Koha là hệ thống thư viện tích hợp (ILS) mã nguồn mở đầu tiên và được
phân phối theo mã nguồn mở General Public License (GPL) Hệ thống này được sử dụng trên toàn thế giới, được sự hỗ trợ từ cộng đồng phát triển lớn
Koha được phát triển đầu tiên tại New Zealand bởi Katipo communication
Ltd và triển khai lần đầu tại Horowhenua Library Trust
Koha đầy đủ tính năng của một hệ thống thư viện và hỗ trợ định dạng bản
ghi thư mục MARC 21 và UNIMARC Được sử dụng trong thư viện từ lớn đến bé với các chức năng tùy chọn từ cơ bản đến nâng cao
Các tính năng nổi trội của Koha hiện đang được tiếp tục được phát triển và
mở rộng để đáp ứng nhu cầu người dùng
Koha được xây dựng sử dụng theo chuẩn của thư viện và các giao thức
đảm bảo khả năng tương tác giữa koha và các hệ thống và công nghệ khác,
nó có hỗ trợ quy trình công việc hiện tại (workflows) và nhiều công cụ hỗ trợ khác, giao diện dựa trên web, phân hệ tra cứu OPAC, lưu thông, quản
lý và giao diện cho mượn trả đều dựa trên tiêu chuẩn tương thích với công nghệ World Wide Web - XHTML, CSS và Javascript – Cho nên Koha là một giải pháp có nền tảng độc lập thực sự
Những yếu tố làm nên sự khác biệt của Koha với các phần mềm thư viện tích hợp khác:
Phần mềm mã nguồn mở, không có phí
Koha được hỗ trợ bởi cộng đồng phát triển và người sử dụng đông đảo
Trang 27 Đầy đủ các tính năng của thư viện vật lý và có các công cụ hỗ trợ khác như tạo mã vạch, in nhãn sách, in thẻ bạn đọc, mượn trả offline,
Mô hình quản lý nội dung phù hợp với thư viện thực tế
Sử dụng chuẩn của thư viện và các giao thức đảm bảo khả năng tương tác giữa Koha và các hệ thống và công nghệ khác
Trang 28 Tất cả các trang HTML cũng được tạo từ Perl Script
OPAC: Đây là phần module chính giao tiếp với người sử dụng
INTRANET: Nơi quản trị toàn bộ hệ thống
Deamon: Chứa tất cả các script cho các trình nền (deamons) của hệ thống
DB: Chứa các script để truy cập vào Cơ Sở Dữ Liệu của hệ thống
Hình 2.6: Các Module chính trong Mô hình kiến trúc hệ thống Koha
2.3.3 Quản lý người dùng
Danh mục người dùng: Cho phép bạn sắp xếp bạn đọc theo vai trò, theo độ tuổi và theo loại người dùng khác nhau Mỗi danh mục lớn bạn có thể định nghĩa những người dùng khác nhau Trong Koha, mặc định chia ra 6 danh mục chính:
Trang 29 Thành viên: Bạn đọc thư viện sau khi đăng nhập được phép xem thông tin tài khoản của mình, đặt trước tài liệu hay tạo kệ sách, tạo thẻ
Nhân viên: Người dùng có quyền truy cập vào các phân hệ chức năng tùy theo quyền hạn người quản trị cấp Quyền phân ra được truy cập thực hiện chức năng hay chỉnh sửa trên phân hệ nào
Quản trị: Nhân viên có quyền truy cập và chỉnh sửa tất cả phân hệ trong hệ thống
Trở thành thành viên của Koha:
Mặc định khi cài đặt hệ thống sẽ tạo ra một tài khoản với quyền quản trị
Nhân viên được tạo tài khoản và cấp quyền bởi người quản trị hoặc nhân viên có thẩm quyền trên phân hệ bạn đọc
Người dùng muốn đăng ký trở thành bạn đọc của thư viện phải tới trực tiếp thư viện đăng ký tạo tài khoản với nhân viên thư viện Nếu bật tham số AutoEmailOpacUser thì thông tin tài khoản đăng nhập Opac
sẽ được gửi cho bạn đọc qua email khi tạo tài khoản mới
Trang 302.3.4 Các chức năng của Koha
Phân hệ mượn liên thư viện (ILL)
Phân hệ thống kê, báo cáo
Phân hệ quản lý
Phân hệ quản lý tài nguyên
Phân hệ quản lý bạn đọc
Phân hệ quản lý ấn phẩm định kỳ
Quản lý tài liệu
Quy định mượn trả tài liệu và các khoản phí
Tạo nhóm và nhánh thư viện
Quy định loại tiền tệ sử dụng
Trang 312.4 CAS - CENTRAL AUTHENTICATION SERVICE
2.4.1 Giới thiệu
CAS là một giải pháp Single Sign On, mã nguồn mở được phát triển bởi
đại hoc Yale Hỗ trợ nhiều thư viện phía client được viết bởi nhiều ngôn ngữ: PHP, Java, PL/SQL, …
CAS lấy thông tin Single Sign On thông qua cookie Cookie này sẽ bị hủy
khi user đăng xuất khỏi CAS hoặc đóng trình duyệt Cookie được sinh ra bởi CAS, còn được gọi là TGT Cookie (Ticket Granting Cookie) chứa một
id duy nhất và thời gian hết hạn Thời gian hết hạn là 8 giờ
CAS cung cấp nhiều trình quản lý xác thực (authenticate handler) khác
nhau CAS xác thực nhiều loại thông tin người dùng như
username/password, X509 Certificate, để xác thực những thông tin người dùng khác nhau này, CAS sử dụng những trình quản lý xác thực tương ứng
CAS còn cung cấp tính năng “Remember Me” Developer có thể cấu hình
tính năng này trong nhiều file cấu hình khác nhau và khi người dùng chọn
“Remember me” trên khung đăng nhập, thì thông tin đăng nhập sẽ được ghi nhớ với thời gian được cấu hình (mặc định là 3 tháng) và khi người dùng mở trình duyệt thì CAS sẽ chuyển đế service url tương ứng mà không cần hiển thị khung đăng nhập
2.4.2 Các phiên bản của CAS
CAS 1.0
Được tạo bởi Yale University, khởi đầu từ năm 1999
Là một Web Single Sign On, dễ sử dụng
CAS 2.0
Cũng được tạo ra bởi Yale University
Giới thiệu thêm tính năng mới là Proxy Authentication
Trang 32 JA-SIG CAS 3.0
Trở thành JA-SIG project vào 2004
Mục đích là làm cho CAS tương thích cao hơn, mềm dẻo hơn
100% tương thích với CAS 2.0
2.4.3 CAS URIs
CAS thực hiện Single Sign On thông qua những URI và sinh ra những
ticket khác nhau CAS sẽ sử dụng những URI sau:
/login Hiển thị khung đăng nhập yêu cầu người dùng
xác thực /logout Hủy Single Sign On session và ticket granting
cookie /validate Kiểm tra tính hợp lệ của Service Ticket Nếu nó
không sử dụng proxy authentication /serviceValidate Kiểm tra tính hợp lệ của Service Ticket và trả vể
một XML-fragment và sinh ra proxy-granting ticket khi được yêu cầu
/proxyValidate Thực thi giống như /serviceValidate và ngoài ra
còn kiểm tra tính hợp của proxy ticket /proxy Cung cấp Proxy Ticket đến service
/services/add.htm Một tính năng admin Thêm những service đến
danh sách Registered Services
/services/edit.html Chỉnh sửa những service đã đăng ký
Xóa service bởi tham số “id” được cung cấp
2.4.4 Nguyên tắc hoạt động của CAS
Trang 33 Người dùng nhập UserId / Password vào khung đăng nhập Các thông tin này được truyền cho CAS server thông qua giao thức HTTPS là một giao thức bảo đảm dữ liệu được mã hóa trước truyền đi
Xác thực thành công, TGC được sinh ra và thêm vào trình duyệt dưới hình thức là cookie TGC này sẽ được sử dụng để Single Sign
On với tất cả các ứng dụng
Mô hình:
Hình 2.7: Người dùng truy cập vào ứng dụng khi đã chứng thực với CAS server
Trang 34Hình 2.8: Người dùng truy cập vào ứng dụng mà chưa chứng thực với CAS server
Trang 352.5 LDAP
2.5.1 Giới thiệu
LDAP (Lightweight Directory Access Protocol) – là giao thức truy cập nhanh các dịch vụ thư mục - là một chuẩn mở rộng cho nghi thức truy cập thư mục
LDAP là một giao thức tìm, truy nhập các thông tin dạng thư mục trên server Nó dùng giao thức dạng Client/Server để truy cập dịch vụ thư mục
LDAP chạy trên TCP/IP hoặc các dịch vụ hướng kết nối khác
Ngoài ra, LDAP được tạo ra đặc biệt cho hành động "đọc" Bởi thế, xác thực người dùng bằng phương tiện "lookup" LDAP nhanh, hiệu suất, ít tốn tài nguyên, đơn giản hơn là query 1 user account trên Cơ
Sở Dữ Liệu
Có các LDAP Server như: OpenLDAP, OPENDS, Active Directory
2.5.2 Phương pháp hoạt động
Ldap dùng giao thức giao tiếp client/sever
Giao thức giao tiếp client/sever là một mô hình giao thức giữa một chương trình client chạy trên một máy tính gởi một yêu cầu qua mạng đến cho một máy tính khác đang chạy một chương trình sever (phục vụ)
Chương trình server này nhận lấy yêu cầu và thực hiện sau đó nó trả lại kết quả cho chương trình client
Ý tưởng cơ bản của giao thức client/server là công việc được gán cho những máy tính đã được tối ưu hoá để thực hiện công việc đó
Một máy server LDAP cần có rất nhiều RAM (bô nhớ) dùng để lưu trữ nội dung các thư mục cho các thao tác thực thi nhanh và máy này cũng cần đĩa cứng và các bộ vi xử lý ở tốc độ cao
Đây là một tiến trình hoạt động trao đổi LDAP client/server :
Trang 36Hình 2.9: Mô hình kết nối giữa client/server
Client mở một kết nối TCP đến LDAP server và thực hiện một thao tác bind Thao tác bind bao gồm tên của một directory entry ,và uỷ nhiệm thư sẽ được sử dụng trong quá trình xác thực, uỷ nhiệm thư thông thường là pasword nhưng cũng có thể là chứng chỉ điện tử dùng để xác thực client
Sau khi thư mục có được sự xác định của thao tác bind, kết quả của thao tác bind được trả về cho client Client phát ra các yêu cầu tìm kiếm
Server thực hiện xử lý và trả về kết quả cho client
Server gởi thông điệp kết thúc việc tìm kiếm
Client phát ra yêu cầu unbind, với yêu cầu này server biết rằng client muốn huỷ bỏ kết nối
Server đóng kết nối
2.5.3 Cấu trúc file LDIF
Khái niệm:
LDIF ( LDAP Interchange Format) được định nghĩa trong RFC
2849, là một chuẩn định dạng file text lưu trữ những thông tin cấu hình LDAP và nội dung thư mục
File LDIF thường được sử dụng để import dữ liệu mới vào trong
Trang 37LDIF cần phải tuân theo một luật có trong schema của LDAP directory
Schema là một loại dữ liệu đã được định nghĩa từ trước trong directory của bạn Mọi thành phần được thêm vào hoặc thay đổi trong directory của bạn sẽ được kiểm tra lại trong schema để đảm bảo sự chính xác Lỗi vi phạm schema sẽ xuất hiện nếu dữ liệu không đúng với các luật đã có
Cấu trúc tập tin LDIF:
Thông thường một file LDIF sẽ theo khuôn dạng sau:
Mỗi một tập entry khác nhau được phân cách bởi một dòng trắng
Sự sắp đặt “tên thuộc tính : giá trị”
Một tập các chỉ dẫn cú pháp để làm sao xử lý được thông tin
Những yêu cầu khi khai báo nội dung file LDIF :
Lời chú giải trong file LDIF được gõ sau dấu # trong một dòng
Thuộc tính được liệt kê phía bên trái của dấu (:) và giá trị được biểu diễn bên phải Dấu đặc biệt được phân cách với giá trị bằng dấu cách trắng
Thuộc tính dn định nghĩa duy nhất một DN xác định trong entry
đó
Ví dụ một file LDIF:
Trang 38 Mô hình trong LDAP:
Node leaf : uid=mai, [path parrent]
hoặc cn=mai,[path parent]
Trang 39CHƯƠNG 3 GIẢI PHÁP
3.1 PHÁT BIỂU BÀI TOÁN
Hiện nay, để giải quyết vấn đề đặt ra chúng em sử dụng phần mềm thư viện OpenSource Dpsace, Koha và đào tạo trực tuyến Moodle không tốn phí tạo ra
hệ thống Smart Learning Kit linh động, dễ sử dụng và phù hợp với nhu cầu, mục đích của khoa Công Nghệ Thông Tin – Đại Học Nông Lâm Thành Phố Hồ Chí Minh nhằm giải quyết việc lưu trữ, phổ biến các tài liệu học tập của giảng viên và sinh viên như:
Các slide bài giảng cho từng môn học
Tài liệu tham khảo
Các eBook dành cho sinh viên mượn
Các Luận Văn của các khóa trước
Tạp chí
Với các công nghệ đã nghiên cứu và tìm hiểu được bài toán sẽ được hiện thực như sau:
3.1.1 Moodle
Tạo lập và quản lý các khóa học
Phân tán nội dung học tới người học
Trợ giúp người dạy tổ chức các hoạt động nhằm quản lý khóa học: Các đánh giá,trao đổi thảo luận, đối thoại trực tiếp, trao đổi thông tin offline, các bài học, các bài kiểm cuối khoá, các bài tập lớn…
Quản lý người học theo từng nhóm
Quản lý tài nguyên từng khóa học: Bao gồm các file, website, văn bản
Tổ chức hội thảo: Các học viên có thể tham gia đánh giá các bài tập lớn của nhau
Quản lý các sự kiện, các thông báo theo thời gian
Báo cáo tiến trình của người học: báo cáo về điểm, về tính hiệu quả của việc sử dụng phần mềm
Trang 40 Trợ giúp tạo lập nội dung khó học đơn giản
3.1.2 Dspace
Các Cộng đồng (Communication)/ Bộ sưu tập (Collection) dùng trong thư viện khoa Công nghệ thông tin:
Các môn cơ bản – lưu trữ tài liệu của các môn học cơ bản
Chuyên ngành Công nghệ phần mềm – lưu tài liệu của các môn chuyên ngành Công nghệ phần mềm
Chuyên ngành Hệ thống thông tin – lưu tài liệu của các môn chuyên ngành Hệ thống thông tin
Chuyên ngành Mạng máy tính – lưu tài liệu của các môn thuộc chuyên ngành Mạng máy tính
Đề tài môn học – lưu trữ tài liệu của các đề tài môn học các nhóm sinh viên thực hiện
Luận văn – lưu trữ file luận văn của các khoá tốt nghiệp
Phân loại người dùng trong Thư viện số:
Người quản trị cấp cao:
Nhóm những thành viên có quyền cao nhất đối với hệ thống, được phép thiết lập các thông số và quản lý toàn bộ người dùng, toàn bộ dữ liệu về tài liệu và các chính sách truy cập trên các Cộng đồng (Communication)/ Bộ sưu tập (Collection)
Được giao cho quản trị viên thư viện, người điều hành chịu trách nhiệm chính quản trị hệ thống
Nhóm gồm tài khoản đăng nhập thư viện số của:
Thầy Trưởng khoa
Giáo vụ khoa
Nhóm người dùng quản trị các Cộng đồng (Communication)/ Bộ sưu tập (Collection):