Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 15 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
15
Dung lượng
1,18 MB
Nội dung
34 IMSQTIBasicObjects: là nơi định nghĩa và cài đặt tất cả các class nằm trong đặc tả IMS Question and Test Interoperability, trừ các class phụ thuộc từng câu hỏi là các class interaction cụ thể của từng loại câu hỏi và các class mô tả các phương án trả lời. Hình 4-5 Sơ đồ lớp phần IMSQTIBasicObject của Engine ETSEngineControllerObjects: phần này định nghĩa và cài đặt tất cả các class liên quan đến xử lý chung cho hệ thống. ETSEngineControllerObjects ExportIMSQTIDatabase ScoringMachine WordMachine ExportEngine ImportEngine MailEngine SectionUserResult AssessmentUserResult AssessmentUserResponse SectionUserResponse QuestionUserResponseDatabaseController Hình 4-6 Sơ đồ lớp phần ETSEngineControllerObject của Engine 35 ETSEngineDBManager: là nơi định nghĩa và cài đặt tất cả các interface, các class liên quan đến truy xuất cơ sở dữ liệu cùng các class cung cấp cơ chế cho việc truy xuất dữ liệu theo mô hình n-tier. ETSEngineDBManager DatabaseInterface DBManager IQuestionManager ISectionManager IAssessmentManager IMemberManager ……………………. SQLSERVER SqlServerDBManager QuestionManager SectionManagerAssessmentManager MemberManager ……………………. XML ………………… Hình 4-7 Sơ đồ lớp phần ETSEngineDBManager 36 4.2.2 ETSONLINE Là phần ứng dụng chạy trên web của hệ thống. Đây là một web application, có nhiệm vụ thực hiện các chức năng của hệ thống, bao gồm tất cả các công việc từ việc soạn câu hỏi, đề thi đến việc thi cử trên mạng. ETSONLINE là phần ứng dụng chính, quan trọng nhất của hệ thống. 4.2.2.1 Sơ đồ tổ chức của ứng dụng ETSONLINE ETSONLINE Các file ngôn ngữ Các trang web aspx Các file lưu thông tin cấu hình Các trang user control ascx Các tài nguyên hình ảnh, flash Đây là nơi thật sự chứa các thông tin và các xử lý nghiệp vụ của hệ thống Hiện hệ thống hỗ trợ 2 ngôn ngữ tiếng Việt và tiếng Anh Các trang web này thực sự không chứa nội dung cũng như xử lý nghiệp vụ, thật sự chúng là các cổng điều phối các luồng xử lý vào thể hiện vào đúng vị trí cần thiết Các file template đề thi Các file plugin cần thiết của các bộ câu hỏi choiceInteraction inlineChoiceInteraction ……… Hình 4-8 Sơ đồ tổ chức ứng dụng ETSONLINE 37 4.2.2.2 Sơ đồ tổ chức các lớp Tổ chức class ETSONLINE Các class của web pages Các bộ câu hỏi Default Testing MemberAdministration ImportExport Management ViewStatistics RestructureFolder ChooseQuestion ForSection ChooseSection ForAssessment Các class của user control CreateAssessment CreateNewFolder MoveFolder CreateSection ConfigUI Register CreateNews MoveMember ReportMemberResult CustomTestList ViewQuestionContainer ViewTest ViewSection SummaryQuestionList SummarySectionList SummaryAssessmentList SummaryMemberList SummarySectionList ViewProfile ViewQuestionStatistics PortalLeftMenu choiceInteraction inlineChoiceInteraction …… RestructureSections Global …… PortalTopMenu PortalHeader ……… Hình 4-9 Sơ đồ tổ chức lớp trong ETSONLINE 38 4.2.2.3 Các chức năng chính: Ứng dụng ETSONLINE đã giải quyết được những vấn đề chính sau: (Một số vấn đề sẽ được trình bày tương đối chi tiết, một số phần khác sẽ được trình bày rõ hơn ở các chương sau trong các chương về module Quản lý, Soạn thảo, Plugin và Thi cử) 1. Tạo ra một cổng thông tin đa năng portal đóng vai trò là cổng vào của hệ thống dịch vụ thi cử trực tuyến mà chúng ta đ ang phát triển. Hình 4-10 Trang chủ ETSONLINE 39 2. Có một vùng tiến trình quản lý theo cấp cây thư mục phục vụ cho việc sử dụng và quản lý các tài nguyên phân cấp dành cho cả nhà quản trị và cả các thành viên đóng vai trò là giáo viên. Tài nguyên được quản lý phân cấp ở đây bao gồm: kho câu hỏi, kho bài thi, thư mục chứa thành viên và section. Hình 4-11 Phân cấp quản lý theo cấu trúc cây Hình 4-12 Trang quản lý chính của ETSONLINE 40 3. Có các chức năng để soạn thảo ra các câu hỏi hoàn chỉnh, và chỉnh sửa chúng. Trong việc soạn câu hỏi, cho phép plugin câu hỏi tùy ý, cho phép mở rộng tối đa khả năng thêm loại câu hỏi mới. Hình 4-13 Demo chức năng soạn thảo câu hỏi 4. Phân cấp xử lý soạn thảo, lưu trữ, xử lý thể hiện, xử lý tính điểm cho câu hỏi đến mức con nhất có thể. Mỗi loại câu hỏi phải tự biết mình phải được soạn thảo bằng bộ editor nào, thể hiện bằng control nào, lưu trữ những thông tin gì và chấm điểm ra sao. 5. Có các chức năng tạo mới, chỉnh sửa đề thi một cách thuậ n tiện nhất, có nhiều mẫu template bài thi để người giáo viên chọn lựa, đồng thời người giáo viên có thể chỉnh sửa template này hoặc thêm một template mới hoàn toàn một cách nhanh chóng. 41 6. Quản lý nội dung đề thi theo dạng phân cấp, mỗi đề thi có thể có các phần đề thi con, và mỗi phần con này lại có thể có các phần con khác. Việc thay đổi cấu trúc nội dung đề thi chỉ đơn giản là check, bỏ check và kéo thả. 7. Có các bộ editor soạn thảo đa năng, có thể định dạng một cách dễ dàng font chữ, cỡ chữ, chèn các ký tự đặc biệt, chèn bảng biểu, chỉnh sửa các thuộc tính định dạng, chèn hình ảnh, video, flash, nhạc… 8. Có phần xử lý hiển thị đề thi có các dạng câu hỏi với thể hiện và xử lý khác nhau mà không được biết trước. 9. Có phần chấm điểm với khả năng tùy biến, chấm điểm theo cách xử lý riêng của từng loại câu hỏi. Muốn thay đổi cách chấm điểm của bất cứ loại câu hỏi nào cũng dễ dàng. 10. Thông tin về kết quả lựa chọn khi làm bài thi và kết quả chi tiết của bài thi được lưu trữ đầy đủ, kỹ càng theo định dạng XML, giúp cho việc truy xuất, thống kê kết quả làm bài, theo dõi kết quả học tập có thể thực hiện bất cứ lúc nào. Hình 4-14 Kết quả bài thi được truyền đi bằng XML 42 11. Thông tin truyền thông kết quả lựa chọn khi làm bài và kết quả chấm điểm đều sử dụng XML. 12. Đặc biệt, do hệ thống tuân theo đặc tả IMSQTI, một đặc tả dựa trên XML, hệ thống hiện tại có chức năng kết xuất một hay nhiều tài nguyên kho câu hỏi ra định dạng chuẩn của đặc tả IMSQTI, từ đó, có thể chia sẻ cơ sở dữ liệ u với tất cả các hệ thống khác trên thế giới có tuân theo đặc tả này. (Và có thể import cơ sở dữ liệu từ các hệ thống khác trong tương lai). Chức năng kết xuất này sử dụng XSLT để chuyển đổi từ định dạng đang sử dụng sang định dạng chuẩn đúng đặc tả. Nội dung file XSLT làm nhiệm vụ chuyển đổi xin xem trong phần phụ lục. 13. Có phần gửi tin nhắn ngắn gọn giúp giáo viên có thể gửi tin nhắn nhanh đến sinh viên của mình qua cổng portal này. 14. Cung cấp một cơ chế web đa ngôn ngữ linh động. File ngôn ngữ được lưu trữ dưới dạng XML. Mỗi thành viên có thông tin cấu hình riêng. Khi đăng nhập vào trang web, ngôn ngữ hiển thị của trang web sẽ là ngôn ngữ mà thành viên này đã chọn. Một người chưa phải là thành viên cũng có thể chọn ngôn ngữ hiển thị cho riêng mình. Khi cần thêm một ngôn ngữ mới, chỉ cần làm công việc hết sức đơn giản là thêm vào thư mục file ngôn ngữ một file ngôn ngữ của ngôn ngữ mình muốn thêm vào – file này chỉ việc lấy mẫu và cấu trúc bằng việc copy lại một file có sẵn và dịch sang ngôn ngữ mới. Cấu trúc file XML lưu ngôn ngữ: <?xml version="1.0"?> <Resources language="Tên ngôn ngữ" code="Mã ngôn ngữ"> <page name="Tên trang web hoặc control"> <! Ten_Trang_Web_Control.ascx > <Resource tag="Tên thẻ">Nội dung thẻ</Resource> <Resource tag="Tên thẻ">Nội dung thẻ</Resource> <Resource tag="Tên thẻ">Nội dung thẻ</Resource> <Resource tag="Tên thẻ">Nội dung thẻ</Resource> </page> <page name="Tên trang web hoặc control"> <! Ten_Trang_Web_Control.ascx > <Resource tag="Tên thẻ">Nội dung thẻ</Resource> <Resource tag="Tên thẻ">Nội dung thẻ</Resource> <Resource tag="Tên thẻ">Nội dung thẻ</Resource> <Resource tag="Tên thẻ">Nội dung thẻ</Resource> </page> 43 <page name="Tên trang web hoặc control"> <! Ten_Trang_Web_Control.ascx > <Resource tag="Tên thẻ">Nội dung thẻ</Resource> <Resource tag="Tên thẻ">Nội dung thẻ</Resource> <Resource tag="Tên thẻ">Nội dung thẻ</Resource> <Resource tag="Tên thẻ">Nội dung thẻ</Resource> </page> </Resources> Ví dụ: <?xml version="1.0"?> <Resources language="Vietnamese" code="vi"> <page name="LOGIN"> <! login.ascx > <Resource tag="TITLE">Đăng nhập</Resource> <Resource tag="USERNAME">Tên đăng nhập</Resource> <Resource tag="PASSWORD">Mật khẩu</Resource> <Resource tag="REMEMBER_ME">Tự động đăng nhập</Resource> <Resource tag="PASSWORD_PROBLEM">Bạn gặp trục trặc ? Hay là quên mật khẩu ? </Resource> <Resource tag="BTN_LOGIN">Đăng nhập</Resource> <Resource tag="LOGIN_SUCCESSFULLY">Đăng nhập thành công!</Resource> <Resource tag="HAVE_NOT_GOT_ACCOUNT">Bạn chưa có tài khoản ? Vui lòng</Resource> <Resource tag="REGISTER">Đăng ký</Resource> <Resource tag="USERNAME_PASSWORD_ERROR">Tên đăng nhập và mật khẩu của bạn không hợp lệ. Vui lòng làm lại nhé!</Resource> <Resource tag="BOTH_USERNAME_PASSWORD">Bạn hãy nhập cả tên đăng nhập và mật khẩu</Resource> <Resource tag="RECOVER">Phục hồi mật khẩu</Resource> <Resource tag="EMAIL_SENT_PASSWORD">Chúng tôi đã gửi cho bạn mật khẩu mới!</Resource> <Resource tag="SEND_PASSWORD">Gửi mật khẩu</Resource> <Resource tag="RECOVER_ERROR">Việc tạo mới mật khẩu bị lỗi</Resource> </page> <page name="REGISTER"> <! register.aspx > <Resource tag="TITLE">Đăng ký thành viên mớir</Resource> <Resource tag="DETAILS">Thông tin đăng ký</Resource> <Resource tag="USERNAME">Tên tài khoản</Resource> <Resource tag="NEED_USERNAME">Bạn chưa nhập tên tài khoản.</Resource> <Resource tag="PASSWORD">Mật mã</Resource> <Resource tag="NEED_PASSWORD">Bạn chưa nhập mật mã.</Resource> <Resource tag="RETYPE_PASSWORD">Nhập lại mật mã</Resource> <Resource tag="NEED_MATCH">Mật mã không giống nhau.</Resource> <Resource tag="EMAIL">Địa chỉ email</Resource> <Resource tag="PROFILE">Thông tin cá nhân</Resource> [...]... lệ. 15 Có cơ chế plugin các thành phần giao diện Mỗi thành phần giao diện trên trang chủ là một component được phát triển riêng và tích hợp vào hệ thống Nhà quản trị có thể thêm bớt các component này vào hệ thống bằng cách đơn giản là copy, paste hay delete 16 Cung cấp cho các thành viên khả năng cấu hình các thành phần giao diện Mỗi thành viên có thể cho phép hiển... ETSClient Hình 4-15 Sơ đồ tổ chức ứng dụng ETSClient 46 4.2.3.2 Sơ đồ tổ chức các lớp Hình 4-16 Sơ đồ tổ chức lớp trong ETSClient 4.2.3.3 Các chức năng chính: Các chức năng chính trong ứng dụng ETSClient bao gồm: (Cũng như phần trên, một số vấn đề sẽ được trình bày tương đối chi tiết, một số phần khác sẽ được trình bày rõ hơn ở các chương sau trong các chương về module Quản lý, Soạn thảo, Plugin và Thi... các chương về module Quản lý, Soạn thảo, Plugin và Thi cử) 47 1 Quản lý theo cấp cây thư mục phục vụ cho việc sử dụng và quản lý các tài nguyên phân cấp dành cho cả nhà quản trị và cả các thành viên đóng vai trò là giáo viên 2 Có các chức năng để soạn thảo ra các câu hỏi hoàn chỉnh, và chỉnh sửa chúng Trong việc soạn câu hỏi, cho phép plugin câu hỏi tùy ý, cho phép mở rộng tối đa khả năng thêm loại... đổi cấu trúc nội dung đề thi chỉ đơn giản là check, bỏ check và kéo thả,… giống như ứng dụng trên web 5 Có các bộ editor soạn thảo đa năng, có thể định dạng một cách dễ dàng Font chữ, cỡ chữ, chèn các ký tự đặc biệt, chèn bảng biểu, chỉnh sửa các thuộc tính định dạng, chèn hình ảnh…Đặc biệt, ứng dụng trên windows có bộ soạn thảo với input và output đều là HTML Điều đó có nghĩa là tất cả những gì người... thành phần mình thích hay quan trọng với chính mình và tại vị trí bên trái hay bên phải tùy thích 17 Cung cấp cơ chế bảo mật FormsAuthenticationTicket đảm bảo hệ thống website được bảo mật, phân quyền an toàn Đảm bảo mỗi thành viên không thể truy cập vào tài khoản của các thành viên khác, đồng thời, những người chưa phải là thành viên không thể truy cập vào những khu vực chỉ dành riêng cho thành viên 18... procedure và truyền tham số theo parameter, giúp cho tránh được lỗ hổng Sql Injection 44 4.2.3 ETSClient Là phần ứng dụng chạy trên windows Là một windows application có nhiệm vụ thực hiện bổ sung những tiện ích hữu dụng cho hệ thống phần mềm ở trên windows và thực hiện một số tính năng trợ giúp cho ứng dụng web nhằm đem lại những lợi ích về thời gian xử lý cũng như thuận tiện trong tương tác mà các ứng... bằng bộ editor nào 3 Có các chức năng tạo mới, chỉnh sửa đề thi một cách thuận tiện nhất, có nhiều mẫu template bài thi để người giáo viên chọn lựa, đồng thời người giáo viên có thể chỉnh sửa template này hoặc thêm một template mới hoàn toàn một cách nhanh chóng 4 Quản lý nội dung đề thi theo dạng phân cấp, mỗi đề thi có thể có các phần đề thi con, và mỗi phần con này lại có thể có các phần con khác Việc... client, không phụ thuộc tốc độ và sự ổn định của đường truyền internet Sau đó, người giáo viên sẽ kết nối internet và upload đề thi lên tài khoản của mình trên server và sinh viên có thể làm bài thi trên mạng - Tạo ra phần dành cho thí sinh thi cử tập dượt ngay trên máy tính của mình khi load xong đề thi mẫu và các đề thi tham khảo trên server - Thực hiện import đề thi từ các nguồn dữ liệu điện tử có... những gì người giáo viên trông thấy khi soạn câu hỏi trên windows thì cũng sẽ trông thấy như vậy khi câu hỏi được hiển thị trên web và ngược lại do đều cùng có input và output vào editor là HTML 6 Tầng truy xuất cơ sở dữ liệu thực hiện viết code an toàn, dùng store procedure và truyền tham số theo parameter, giúp cho tránh được lỗ hổng Sql Injection 48 . ETSONLINE Các file ngôn ngữ Các trang web aspx Các file lưu thông tin cấu hình Các trang user control ascx Các tài nguyên hình ảnh, flash Đây là nơi thật sự chứa các thông tin và các xử lý. vụ của hệ thống Hiện hệ thống hỗ trợ 2 ngôn ngữ tiếng Việt và tiếng Anh Các trang web này thực sự không chứa nội dung cũng như xử lý nghiệp vụ, thật sự chúng là các cổng điều phối các luồng. plugin các thành phần giao diện. Mỗi thành phần giao diện trên trang chủ là một component được phát triển riêng và tích hợp vào hệ thống. Nhà quản trị có thể thêm bớt các component này vào hệ thống