Mục tiêu nghiên cứu Đề tài nhằm xây dựng mới module Chat4Group dùng để trao đổi trực tuyến, với các yêu cầu chức năng phục vụ cho ngữ cảnh dạy học kết hợp Blended learning kế thừa từ mod
Trang 1
TRƯỜNG ĐẠI HỌC SƯ PHẠM TPHCM
KHOA CÔNG NGHỆ THÔNG TIN
- -PHAN KHÔI LONG
XÂY DỰNG MODULE CHAT4GROUP
(TRAO ĐỔI TRỰC TUYẾN) CHO CMS MÃ NGUỒN MỞ MOODLE
ĐỒ ÁN TỐT NGHIỆP
TP.HỒ CHÍ MINH - NĂM 2012
Trang 2
TRƯỜNG ĐẠI HỌC SƯ PHẠM TPHCM
KHOA CÔNG NGHỆ THÔNG TIN
- -PHAN KHÔI LONG
XÂY DỰNG MODULE CHAT4GROUP
(TRAO ĐỔI TRỰC TUYẾN) CHO CMS MÃ NGUỒN MỞ MOODLE
CHUYÊN NGÀNH: SƯ PHẠM TIN HỌC
ĐỒ ÁN TỐT NGHIỆP
NGƯỜI HƯỚNG DẪN: ThS LÊ ĐỨC LONG
TP.HỒ CHÍ MINH - NĂM 2012
Trang 3Em cũng xin gởi lời cảm ơn sâu sắc nhất đến:
ThS Lê Đức Long, thầy đã hướng dẫn tận tình, dành nhiều thời gian công sức chỉ bảo, động viên và theo dõi sát sao với tinh thần trách nhiệm cùng lòng thương mến trong suốt quá trình em thực hiện đồ án này
Thầy cô trong Khoa Công nghệ Thông tin nói chung và thầy cô trong bộ môn Phương pháp Giảng dạy nói riêng đã giúp đỡ và hướng dẫn chúng em trong suốt quá trình học tập và nghiên cứu tại ngôi trường Sư phạm thân thương này Thầy cô đã cung cấp những kiến thức quý giá về chuyên môn cũng như cuộc sống giúp chúng em vững tin khi bước vào đời
Cuối cùng xin cảm ơn sự quan tâm và ủng hộ của gia đình, bạn bè đó là nguồn động viên tinh thần rất lớn để em hoàn thành tốt đồ án
Dù đã cố gắng rất nhiều, song chắc chắn đồ án không tránh khỏi những thiếu sót Em rất mong nhận được những ý kiến đóng góp của quý thầy cô cùng các bạn
Em xin chân thành cảm ơn
Tp Hồ Chí Minh, tháng 4 năm 2012
Phan Khôi Long
Trang 4MỤC LỤC
GIỚI THIỆU TỔNG QUAN
1 Mục tiêu nghiên cứu 2
2 Phương pháp và công cụ nghiên cứu 2
3 Kết quả dự kiến của đề tài 2
CHƯƠNG I - KHẢO SÁT MODULE CHATROOM CỦA MOODLE 1 Giới thiệu về Moodle 5
2 Mô đun Chat của Moodle 2.0.8 12
2.1 Khảo sát chức năng của module chat 2.0.8 12
2.2 Giao diện module Chat của Moodle 2.0.8 13
CHƯƠNG II - PHÂN TÍCH VÀ THIẾT KẾ 1 Phân tích yêu cầu chức năng và phi chức năng 16
1.1 Yêu cầu chức năng 16
1.2 Yêu cầu phi chức năng Error! Bookmark not defined 2 Thiết kế dữ liệu 21
3 Thiết kế xử lý 25
3.1 Qui trình đăng nhập hệ thống 25
3.2 Qui trình tạo và cập nhật phòng chat của Quản trị viên hoặc giáo viên: 27
3.3 Qui trình tham gia thảo luận trong phòng chat 30
3.4 Qui trình chấm điểm học viên trong phòng chat 32
3.5 Qui trình xem và quản lý báo cáo thống kê trong Chat4Group 33
4 Thiết kế giao diện 35
4.1 Thiết kế giao diện phòng chat 35
4.2 Thiết kế giao diện Report 37
CHƯƠNG III - CÀI ĐẶT VÀ THỬ NGHIỆM 1 Môi trường phát triển 41
Trang 52 Sitemap 41
3 Kịch bản thử nghiệm 41
3.1 Thông tin về khóa học thử nghiệm 42
3.2 Danh sách Users thử nghiệm 42
3.3 Hoạt động Chat4Group trong khóa học Lập trình cơ bản 43
3.3.1 Học sinh (Student/Leaner) 43
3.3.2 Giáo viên (Instructor/Teacher) 49
KẾT LUẬN 1 Kết quả đạt được 55
1.1 Kỹ năng 55
1.2 Kiến thức 55
1.3 Hiệu quả 55
2 Khả năng ứng dụng đề tài vào thực tiễn 56
3 Hướng phát triển của đề tài 56
TÀI LIỆU THAM KHẢO
PHỤ LỤC
Trang 6DANH MỤC HÌNH VẼ
Hình 1 Biểu đồ thống kê số lượng các sites đã đăng ký trên Moodle 7
Hình 2 Biểu đồ thống kê số lượng đăng ký mới hằng tháng tính từ tháng 4 năm 2009 đến tháng 3 năm 2012 Error! Bookmark not defined Hình 3 Biểu đồ thống kê số lượng người dùng trên các sitesError! Bookmark not defined Hình 4 Dân số của cộng đồng Moodle tới tháng 3 năm 2012 8
Hình 5 Sơ đồ chức năng của người dùng trong mô đun Chat 12
Hình 6 Giao diện phòng chat của moodle 2.0.8 13
Hình 7 Giao diện tạo một phòng Chat của Moodle 2.0.8 13
Hình 8 Sơ đồ chức năng mô tả hoạt động quản lý và tham gia phòng chat 17
Hình 9 Sơ đồ dữ liệu vật lý – Physical Data Model (PDM) 21
Hình 10 Lược đồ hoạt động của qui trình đăng nhập 25
Hình 11 Màn hình hệ thống 26
Hình 12 Màn hình sau đăng nhập của giáo viên 26
Hình 13 Lược đồ hoạt động mô tả qui trình tạo và cập nhật phòng chat của quản trị viên hoặc giáo viên 27
Hình 14 Màn hình tạo phòng chat 28
Hình 15 Màn hình cập nhật thông tin phòng chat 29
Hình 16 Màn hình thông tin phòng chat 29
Hình 17 Lược đồ hoạt động mô tả qui trình tham gia thảo luận trong phòng chat 30
Hình 18 Màn hình Chat 31
Hình 19 Lược đồ hoạt động mô tả qui trình chấm điểm học viên trong phòng chat 32
Trang 7Hình 20 Lược đồ hoạt động mô tả qui trình xem và quản lý báo cáo thống kê trong
Chat4Group 33
Hình 21 Màn hình xem và quản lý report 34
Hình 22 Màn hình Chatroom cũ của Moodle Error! Bookmark not defined Hình 23 Thiết kế giao diện Chatroom 35
Hình 24 Màn hình Chatroom mới Error! Bookmark not defined Hình 25 Thiết kế giao diện màn hình xem báo cáo thống kê các thông tin liên quan đến tin nhắn 39
Hình 26 Giao diện màn hình xem báo cáo thống kê hoạt động trong phòng chat và quản lý report Error! Bookmark not defined Hình 27 Thiết kế giao diện màn hình xem báo cáo thống kê các thông tin trong phiên chat 37
Hình 28 Giao diện màn hình xem báo cáo thống kê tin nhắnError! Bookmark not defined Hình 29 Giao diện màn hình xem báo cáo thống kê người dùng ra/vào phòng chatError! Bookmark not defined Hình 30 Giao diện màn hình xem báo cáo thống kê file uploadError! Bookmark not defined Hình 31 Module Chat4Group Sitemap 41
Hình 32 Màn hình danh sách các phòng chat 44
Hình 33 Màn hình xem thông tin phòng chat 44
Hình 34 Màn hình phòng Chat 45
Hình 35 Màn hình xem và xuất báo cáo của học sinh Error! Bookmark not defined Hình 36 Màn hình tạo phòng Chat 50
Hình 37 Màn hình xem và xuất report của giáo viên 51
Trang 8Giới thiệu tổng quan
1 Mục tiêu nghiên cứu
2 Phương pháp và công cụ nhiên cứu
3 Kết quả dự kiến của đề tài
Trang 91 Mục tiêu nghiên cứu
Đề tài nhằm xây dựng mới module Chat4Group dùng để trao đổi trực tuyến, với các yêu cầu chức năng phục vụ cho ngữ cảnh dạy học kết hợp (Blended learning) kế thừa từ module Chat của hệ thống quản lý khóa học – Course Management System (viết tắt là CMS) nguồn mở Moodle phiên bản 2.0.8 Sau đó được cài đặt và thử nghiệm thực tế tại Khoa Công nghệ Thông tin – Trường Đại học Sư phạm Tp Hồ Chí Minh (http://www.2learner.edu.vn/ACeLS_Moodle)
Mục tiêu cụ thể của đồ án như sau:
Tìm hiểu về CMS nguồn mở Moodle và module Chat đã có của hệ thống;
Xây dựng và thiết kế hoàn toàn mới module Chat4Group phục vụ mô hình hoạt động thảo luận trực tuyến đồng bộ theo nhóm và chấm điểm đánh giá hoạt động thảo luận nhóm;
Cài đặt và thử nghiệm module Chat4Group với hệ thống Moodle phiên bản 2.0.8 Module Chat4Group sẽ được tích hợp vào hệ thống ACeLS đang sử dụng tại trang web http://www.2learner.edu.vn/
2 Phương pháp và công cụ nghiên cứu
Trang 10Kết quả dự kiến của đồ án là một module Chat4Group (trao đổi trực tuyến) hoàn chỉnh với các tính năng nâng cao mới như:
- Chủ đề thảo luận luôn hiên trong phòng chat;
- Tổ chức phòng Chat (nhiều phòng) với việc ấn định số lượng thành viên;
- Tổ chức phòng chat với việc ấn định thời điểm mở phòng chat và thời gian đóng phòng chat;
- Đồng hồ báo thời gian còn lại và tổng thời gian phòng chat hoạt động;
- Cho phép giáo viên quyết định có hiện thông báo khi sắp hết giờ đến các thành viên trong phòng chat;
- Hỗ trợ tốt về mặt soạn thảo và định dạng tin nhắn;
- Khung soạn thảo không giới hạn kích thước cố định mà có thể thay đổi;
- Cho phép gửi tin nhắn riêng tư đến thành viên cụ thể trong phòng chat;
- Tải lên / tải xuống tập tin từ phòng chat;
- Cho phép giáo viên chấm điểm trực tiếp trong phòng chat;
- Cho phép giáo viên ignore (chỉ được xem các thành viên trong phòng chat trao đổi) học sinh;
- Cho phép mọi thành viên xem và lưu các báo cáo thống kê về tin nhắn, tập tin
đã tải lên phòng chat, thông tin về việc người dùng vào/ra phòng chat;
- Cho phép giáo viên xem và lưu báo cáo thống kê về điểm số, thông tin thảo luận của học sinh, và giáo viên có thể thiết lập hệ số để tính điểm;
- Lưu báo cáo với nhiều định dạng tập tin: html, excel, word, pdf
Trang 11CHƯƠNG 1
KHẢO SÁT MODULE CHAT
CỦA MOODLE
1 Giới thiệu về Moodle
2 Khảo sát về chức năng Chat của Moodle v2.x (Cụ thể là 2.0.8)
Trang 121 Giới thiệu về Moodle
Moodle là một hệ thống quản lý khóa học (Course Management System – CMS), cũng được biết đến như một hệ thống quản lý học tập (Learning Management System – LMS) hoặc một môi trường học tập ảo (Virtual Learning Environment – VLE) Đây là một ứng dụng web miễn phí, mã nguồn mở (do đó có thể chỉnh sửa được
mã nguồn) mà ngành giáo dục có thể sử dụng để tạo ra các trang web học tập trực tuyến mang lại hiệu quả.[1]
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, người tiếp tục điều hành và phát triển chính của dự án Do không hài lòng với hệ thống LMS/CMS thương mại WebCT trong trường học Curtin của Úc, Martin đã quyết tâm xây dựng một hệ thống LMS mã nguồn mở hướng tới giáo dục và người dùng hơn 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/CMS 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 học/cao đẳng, không chính quy, trong các tổ chức/công ty
Moodle phát triển dựa trên PHP (ngôn ngữ được dùng bởi các công ty Web lớn như Yahoo, Flickr, Baidu, Digg, CNET) có thể mở rộng từ một lớp học nhỏ đến các trường đại học lớn trên 50 000 sinh viên (ví dụ đại học Open PolyTechnique của Newzealand hoặc đại học mở Anh - Open University of UK trường đại học cung cấp đào tạo từ xa lớn nhất châu Âu và đại học mở Canada Athabasca University)
Trang 13Bạn có thể dùng Moodle với các hệ cơ sở dữ liệu mã nguồn mở như: MySQL hoặc PostgreSQL Từ phiên bản 1.7 sẽ hỗ trợ thêm các hệ cơ sở dữ liệu thương mại như Oracle, Microsoft SQL để các bạn có thêm nhiều cơ hội lựa chọn
Moodle rất đáng tin cậy và được sử dụng rộng rãi trên thế giới, hiện có khoảng 66.106 trang web và khoảng 215 quốc gia có tổ chức hoặc cá nhận sử dụng và đăng ký với cộng đồng Moodle – moodle.org Sau đây là một vài thống kê về việc sử dụng Moodle trên thế giới do cộng đồng Moodle – moodle.org khảo sát và công bố
Bảng 1.1 – 10 quốc gia có số lượng người đăng ký sử dụng Moodle đông nhất [2]
Số liệu trong Bảng 1.1 được cộng đồng Moodle – moodle.org khảo sát đến
tháng 12 năm 2011 Trong đó cột Country – tên quốc gia và cột Registrations – số
người đăng ký sử dụng Moodle với cộng đồng Moodle tại quốc gia tương ứng
Moodle thực hiện kiểm tra thường xuyên tình trạng của hầu hết các trang web
để đảm bảo rằng các trang web đó vẫn còn tồn tại, vì vậy thỉnh thoảng có thể thấy giảm số lượng các trang web
Trang 14Hình 1.1 – Biểu đồ thống kê số lượng các trang web đăng ký với moodle.org [2]
Hình 1.1 thống kê số lượng các trang web đăng ký với cộng đồng Moodle – moodle.org theo từng tháng tính từ tháng 1 năm 2003 đến tháng 12 năm 2011
Bảng 1.2 – 10 trang web sử dụng Moodle có số lượng thành viên đông nhất [2]
Bảng 1.2 thống kê 10 trang web sử dụng Moodle có số lượng thành viên –
Users đông nhất trên thế giới được cộng đồng Moodle khảo sát tính đến tháng 12 năm
2011
Trang 15Bảng 1.3 – 10 trang web sử dụng Moodle có số lượng khóa học nhiều nhất [2]
Bảng 1.3 thống kê 10 trang web sử dụng Moodle có số lượng khóa học –
Courses đông nhất trên thế giới được cộng đồng Moodle khảo sát tính đến tháng 12
năm 2011
Hình 1.2 – Biểu đồ thống kê số lượng thành viên của cộng đồng Moodle [2]
Hình 1.2 thống kê số lượng thành viên của cộng đồng Moodle – moodle.org theo từng tháng tính từ tháng 9 năm 2005 đến tháng 4 năm 2012
Trang 161.1 Các phiên bản của Moodle
Moodle phát triển qua các thời kỳ như sau:
Hình 1.3 – Quá trình phát triển của Moodle qua các thời kỳ
Những dự định năm phát hành cho các phiên bản tiếp theo
Hình 1.4 – Dự định năm tháng phát hành các phiên bản tiếp theo
Cột Version: là cột thể hiện phiên bản của Moodle dự định phát hành;
Cột Release: là cột thể hiện năm tháng phát hàng tương ứng với phiên bản phía trước; Cột Official support until: là cột thể hiện năm tháng hỗ trợ chính thức của Moodle đối với phiên bản tương ứng phía trước;
Trang 171.2 Phiên bản Moodle 2.0.8
So với các phiên bản trước Moodle v2.0.8 đã thay đổi mạnh mẽ Không chỉ cải thiện, phát triển các tính năng sẵn có ở phiên bản 2.0.8 còn có rất nhiều tính năng mới hấp dẫn Một số tính năng mới bao gồm:[1]
Chia sẻ dễ dàng hơn với Community Hub
Bất cứ ai cũng có thể thiết lập được một Community Hub (trung tâm cộng đồng) một thư mục dành cho các khóa học công cộng hay các khóa học cá nhân Giảng viên của những trang đã đăng ký có thể đăng tải toàn bộ khóa học của họ lên các Community Hub này để học viên tải xuống hoặc quảng bá về khóa học của mình Ngoài ra, giảng viên có thể tìm kiếm trong các Community Hub và tải xuống các bài giảng mẫu
Lưu trữ và quản lý tài liệu thuận tiện hơn
Giao diện và các chức năng quản lý dữ liệu đã có những thay đổi lớn File
picker (hộp thoại chọn tập tin) giúp người dùng truy cập hệ thống dữ liệu trong File Bank (kho lưu trữ tập tin của hệ thống) điều này cho phép Moodle v2.0 tích
hợp với những cơ sở dữ liệu bên ngoài; người sử dụng có thể dễ dàng đưa vào các văn bản, phim, hình ảnh… Những tích hợp đầu tiên trong phiên bản 2.0 bao gồm: Alfresco, Amazon S3, Box.net, hệ thống dữ liệu trên Server, Flickr, Google Docs, MERLOT, Picasa, Recent Files, WebDAV servers, Wikimedia, Youtube và nhiều hơn nữa trong tương lai Người dùng cũng dễ dàng nhập dữ liệu từ máy tính hoặc
từ đường dẫn URL cụ thể nào khác
Nhiều tính năng hơn cho giảng viên
Giảng viên có thể sử dụng tính năng Course Completion - để thiết lập
tiêu chuẩn điều kiện của khóa học cho tất cả học viên Các yêu cầu có thể bao gồm việc hoàn thành các hoạt động khóa học hoặc đánh giá bằng điểm, thời hạn hoặc các tiêu chí khác Thông qua chức năng này, giảng viên và học viên có thể quan
Trang 18sát, theo dõi, kiểm soát toàn bộ quá trình học tập của học viên trong một khóa học hoặc qua một loạt các khóa học khác nhau
Quản lý quá trình học xuyên suốt hơn
Giảng viên có thể kiểm soát và giới hạn việc truy cập hay tham gia vào các hoạt động trong khóa học bằng cách thiết lập các tiêu chí cụ thể nhất định như: ngày tháng, mức điểm đạt được, hoặc phải hoàn thành những hoạt động bắt buộc nào trước khi tham gia một hoạt động khác Những yêu cầu này có thể được liên kết với nhau để tạo điều kiện theo dõi tiến độ của toàn khóa học Nhờ tính năng này, giảng viên có thể đặt ra các yêu cầu cụ thể về việc công nhận hoàn thành các hoạt động khóa học, như số lượng bài gửi lên hoặc mức điểm cụ thể học viên đạt được
Bảo vệ sở hữu trí tuệ tốt hơn
Phiên bản Moodle v2.0 mới hỗ trợ việc tích hợp với các công cụ phát hiện
và ngăn chặn việc đạo văn như Turnitin
Trên đây chỉ là một vài tính năng mới nổi trội của Moodle v2.0 Phiên bản này còn
có rất nhiều thay đổi đáng kể khác, chúng ta cùng tham gia và khám phá Moodle v2.0 nhé!
Trang 192 Khảo sát module Chat của Moodle v2.0.8
Module Chat của Moodle 2.0.8 là một công cụ giao tiếp đồng bộ giữa giáo viên
và học sinh trong thời gian thực, để trao đổi trực tuyến giáo viên và học sinh cần phải đăng nhập cùng lúc trong một khoảng thời gian nhất định
2.1 Khảo sát chức năng của module chat trong Moodle v2.0.8
Hình 1.5 – Sơ đồ chức năng người dùng của module Chat trong Moodle v2.0.8
Trang 202.2 Giao diện module Chat của Moodle 2.0.8
Hình 1.6 – Giao diện phòng chat của module Chat trong Moodle v2.0.8
Hình 1.7 – Giao diện tạo một phòng chat của module Chat trong Moodle v2.0.8
Trang 21 Trong đó:
1 Name of this chat room: Tên của phòng Chat;
2 Introduction text: Những giới thiệu, mô tả về chủ đề buổi trò chuyện
cho học sinh hiểu
3 Next chat time: Thời gian diễn ra buổi trò chuyện (được hiển thị ở ngoài
lịch cho người dùng biết)
4 Repeat sessions: Gồm 4 lựa chọn:
Don’t publish any chat times: tạo ra một phòng Chat mà luôn
luôn được mở để người dùng có thể sử dụng bất cứ lúc nào;
No repeats: tạo một phòng Chat ứng với thời gian quy định trong
bước 3;
At the same time every day: Tạo ra một mục trong lịch của khóa
học cho một cuộc trò chuyện hàng ngày với thời gian quy định trong bước 3;
At the same time every week: Tạo ra một mục trong lịch của khóa
học cho một cuộc trò chuyện hàng tuần với thời gian quy định trong
bước 3
5 Save past sessions: Thông thường sẽ chọn Never delete messages để
không báo giờ hệ thống xóa các tin nhắn trong buổi trò chuyện hoặc chọn số ngày quy định sẵn khi chọn vào sẽ xổ xuống số ngày cho người dùng lựu chọn để lưu tin nhắn trò chuyện
Everyone can view past sessions: lựa chọn Yes / No để mọi người có thể xem lại buổi trò chuyện trong quá khứ hay không (giáo viên luôn được xem lại)
Trang 22CHƯƠNG 2
PHÂN TÍCH VÀ THIẾT KẾ
1 Đặc tả yêu cầu chức năng và phi chức năng
2 Thiết kế dữ liệu
3 Thiết kế xử lý
4 Thiết kế giao diện
Trang 231 Đặc tả yêu cầu chức năng và phi chức năng
1.1 Yêu cầu chức năng
Đồ án xây dựng mới module Chat4Group ngoài những chức năng cơ bản như đã khảo sát ở Chương 1 còn có thêm các chức năng được xây dựng hoàn toàn mới nhằm hỗ trợ tối đa cho việc trao đổi trực tuyến đồng bộ cũng như việc đánh giá của giáo viên đối với học sinh Do đó, trong phần đặc tả này sẽ tập trung mô tả thật chi tiết các chức năng mới được xây dựng cho module Chat4Group
Bảng 2.1 – So sánh các chức năng của module Chat và module Chat4Group
Trang 24Hình 2.1 – Sơ đồ Usecase mô tả chức năng của hoạt động trao đổi trực tuyến đồng bộ
(Chat4Group)
Đang tải tài liệu lên phòng chat
Gửi tin nhắn riêng tư
Tham gia thảo luận
Quản lý Chatroom Report
Xem nội dung trò chuyện
Lưu nội dung trò chuyện
Gửi tin nhắn trò chuyện
Xem danh sách thành viên cùng tham gia
Học Sinh
Đăng nhập
Quản lý phòng chat
Ignore học sinh
Đánh giá/
cho điểm học sinh
Ẩn/hiện thông báo hết giờ thảo luận
Ẩn/Hiện phòng chat
Xóa phòng chat
Quản trị viên
Phân quyền người dùng
Điều chỉnh hệ
số điểm
Xuất report
Xem thống kê điểm
Xem điểm đánh giá
Xem thông tin
phòng chat
Xem thống kê File upload
Xem Chat Report
Xem thống kê tin nhắn
Xem thống kê người vào/ra phòng chat
Xem thống kê hoạt động người tham gia phòng chat
Trang 25 Danh sách các tác nhân (Actor):
1 Quản trị viên Người quản lý hệ thống
2 Giáo viên Giáo viên
3 Học sinh Học Sinh
Danh sách các chức năng (Usecase):
STT Tên chức năng Tác nhân sử
1 Đăng nhập
Quản trị viên, giáo viên, học sinh
Đăng nhập vào để sử dụng các chức năng của hệ thống
2 Phân quyền người dùng Quản trị viên
Cấp quyền cho người dùng vào hệ thống với các vai như: giáo viên, học sinh, khách, v.v
3 Quản lý phòng chat Giáo viên Quản lý phòng chat và các vấn đề
liên quan đến phòng chat
4 Tạo phòng chat Giáo viên Tạo mới một phòng chat
5 Giới hạn người tham
gia Giáo viên
Giới hạn số người tham gia vào phòng chat
6 Thiết lập thời gian
đóng/mở phòng chat Giáo viên
Thiết lập thời điểm mở phòng chat
và thời gian tồn tại của phòng chat
7 Cập nhật thông tin giới
thiệu phòng chat Giáo viên
Cập nhật thông tin giới thiệu về phòng chat
8 Ẩn/hiện phòng chat Giáo viên Ẩn/hiện phòng chat đối với học
sinh
Trang 269 Xóa phòng chat Giáo viên Xóa phòng chat và các dữ liệu liên
quan
10 Ẩn/hiện thông báo hết
giờ thảo luận Giáo viên
Ẩn/hiện thông báo hết giờ thảo luận
11 Ignore học sinh Giáo viên Không cho phép học sinh tham gia
thảo luận, chỉ được xem
12 Đánh giá/cho điểm học
sinh Giáo viên
Đánh giá/cho điểm học sinh trực tiếp tại phòng chat
13 Quản lý Chatroom
Report Giáo viên
Quản lý báo cáo thống kê về phòng chat
14
Xem thống kê hoạt
động người tham gia
phòng chat
Giáo viên
Xem thống kê hoạt động của người dùng tham gia vào phòng chat
15 Xem thống kê điểm Giáo viên Xem thống kê điểm số của học
18 Tham gia thảo luận Học sinh
Tham gia việc gửi tin nhắn trò chuyện và các hoạt động khác trong phòng chat
19 Nhận thông báo Học sinh Nhận thông báo khi bắt đầu tham
Trang 27chuyện
22 Gửi tin nhắn trò chuyện Học sinh Gửi tin nhắn trò chuyện
23 Gửi tin nhắn riêng tư Học sinh Gửi tin nhắn riêng tư đến một hoặc
nhiều người trong cùng phòng chat
24 Đăng tải tài liệu lên
phòng chat Học sinh Đăng tải tài liệu lên phòng chat
25 Tải tài liệu về từ phòng
chat Học sinh Tải tài liệu về từ phòng chat
26 Xem nội dung trò
chuyện Học sinh
Xem nội dung trò chuyện trong khung chat
27 Xem lịch sử trò chuyện Học sinh Xem lịch sử trò chuyện
28 Lưu nội dung trò
chuyện Học sinh Lưu nội dung trò chuyện
29 Xem danh sách thành
viên cùng tham gia Học sinh
Xem danh sách tất cả các thành viên cùng tham gia phòng chat
30 Xem điểm đánh giá Học sinh
Xem điểm đánh giá của mình và của các học sinh khác cùng phòng chat
31 Xem báo cáo Học sinh Xem báo cáo thống kê
32 Xem thống kê tin nhắn Học sinh Xem thống kê tin nhắn
33 Xem thống kê tập tin
tải lên Học sinh Xem thống kê tập tin tải lên
34 Xem thống kê người
vào/ra phòng chat Học sinh
Xem thống kê thông tin người dùng vào/ra phòng chat
Trang 282 Thiết kế dữ liệu
Phạm vi đồ án giới hạn trong việc xây dựng module Chat4Group Do đó, phần thiết kế dữ liệu sẽ không trình bày toàn bộ các bảng dữ liệu gốc của Moodle mà chỉ trình bày những bảng mới được xây dựng thêm và những bảng liên quan trực tiếp đến những bảng mới xây dựng thêm này
Sơ đồ bên dưới sẽ mô tả về các bảng dữ liệu mới xây dựng của module Chat4Group Các bảng nằm trong phần đóng khung là những bảng gốc của hệ thống Moodle mà các bảng dữ liệu của module Chat4Group liên kết đến
Hình 2.2 – Mô hình dữ liệu vật lý – Physical Data Model (PDM) của module
mdl_course
id category fullname shortname modinfo startdate currency datecreated datemodified
int int text text text timestamp text timestamp timestamp
<pk>
<fk>
mdl_chatgroup_messages
id chatgroupid userid system message timestamp touser
int int int bit text timestamp text
course lang role grade degrade answer locked lockedcount isinroom mark
int int int int text text timestamp timestamp timestamp text int text text int int int bit int bit float
int text text text text text text text text int timestamp timestamp text
<pk>
Trang 29 Danh sách các bảng (Tables)
1 mdl_Chat4Group Chứa tất cả các bản ghi của từng phòng chat
2 mdl_Chat4Group_messages Chứa tất cả các tin nhắn trò chuyện
3 mdl_Chat4Group_users Chứa những người trong phòng chat
Mô tả thuộc tính của bảng mdl_Chat4Group
STT Tên thuộc tính Kiểu dữ
1 id int Mã tự tăng của Chat4Group pk
2 course int Mã của course fk
3 name text Tên của phòng chat
4 intro text Mô tả về phòng chat
5 keepdays int
Thời gian để hệ thống tự động xóa tin nhắn trò chuyện hoặc không bao giờ xóa tin nhắn đó
6 studentlog int Báo cáo nội dung của phòng chat
7 Chat4Grouptime timestamp Thời gian phòng chat bắt đầu mở
8 schedule int Mã của schedule để hiện lên lịch
9 timemodified timestamp Thời gian chỉnh sửa lần cuối
10 capacity int Số người tối đa của phòng chat
11 today int Tổng thời gian phòng chat hoạt động
12 rplus int Hệ số của điểm cộng
13 rminus int Hệ số của điểm trừ
14 ranswer int Hệ số của số lần trả lời
15 rignored int Hệ số của số lần bị ignore
Trang 3016 renter int Hệ số của thời gian vào trễ
17 isalert bit
Có thông báo còn 15 phút, 5 phút và 1 phút nữa phòng chat đóng lại cho học sinh hay không
Mô tả thuộc tính của bảng mdl_Chat4Group_messages
STT Tên thuộc tính Kiểu dữ
1 id int Mã tự tăng của Chat4Group_messages pk
2 Chat4Groupid int Mã của Chat4Group_message (để biết
tin nhắn này thuộc về phòng chat nào ) fk
3 userid int Mã của người dùng (để biết tin nhắn này
của người dùng nào gửi lên) fk
4 system Bit
Nếu giá trị 0: tin nhắn này là thông báo của server (người dùng đăng nhập / thoát hoặc người dùng tải lên hình ảnh / giáo viên cho học sinh điểm / giáo viên ignore học sinh)
Nếu giá trị 1: là câu chat bình thường
5 message text Nội dung đoạn chat
6 timestamp timestamp Thời gian của đoạn chat
7 touser text Gửi tin nhắn đến một hoặc nhiều người
dùng nào đó ở chế độ riêng tư
Mô tả thuộc tính của bảng mdl_Chat4Group_users
STT Tên thuộc tính Kiểu dữ
1 id int Mã tự tăng của Chat4Group_users pk
Trang 312 Chat4Groupid int Mã của Chat4Group_user (để biết người
dùng này thuộc về phòng chat nào) fk
3 userid int
Mã của người dùng (lien kết với bảng mdl_user để biết thông tin của người dùng này từ hệ thống)
fk
4 groupid int Mã của nhóm
5 version text Phiên bản của Chat4Group
6 ip text ip của người dùng
7 firstping timestamp Thời gian hệ thống xác định lần đầu đăng
nhập vào phòng chat
8 lastping timestamp Thời gian hệ thống xác định lần cuối
đăng nhập vào phòng chat
9 lastmessageping timestamp Thời gian trò chuyện lần cuối
10 sid text
Mã phiên của người dùng (để biết người dùng đăng nhập hay chưa, đăng nhập rồi thì sẽ có mã phiên này)
11 course int Mã của course fk
12 lang text Ngôn ngữ được dùng
13 role text Vai của người dùng (admin/ teacher
/student)
14 grade int Điểm cộng
15 degrade int Điểm trừ
16 answer int Số lần trả lời
17 locked bit Bị ignore hoặc không bị
18 lockedcount int Số lần bị ignore
19 isinroom bit Để biết người dùng có ở trong room hay
ko hay đã tắt/thoát khỏi phòng chat rồi
20 mark float Điểm thực tế (điểm tổng các cột cộng với
điểm giáo viên cho)
Trang 323 Thiết kế xử lý
3.1 Qui trình đăng nhập hệ thống Moodle 2.0.8
- Hệ thống yêu cầu người dùng nhập username (tên người dùng) và password (mật khẩu)
- Người dùng đăng nhập tài khoản cá nhân tại trang đăng nhập
- Hệ thống kiểm tra tài khoản đó có hợp lệ hay không, nếu không thì thông báo lỗi và yêu cầu nhập lại (hoặc thoát khỏi hệ thống), nếu hợp lệ thì kiểm tra tài khoản đó thuộc quyền nào:
+ Nếu là Admin (quản trị viên) thì vào màn hình của quản trị viên và thao tác với quyền quản trị viên
+ Nếu là Teacher (giáo viên) thì vào màn hình của giáo viên và thao tác với quyền giáo viên
+ Nếu là Student (học viên/sinh viên) thì vào màn hình của học viên/sinh viên và thao tác với quyền học viên/sinh viên