Tải bản đầy đủ (.doc) (114 trang)

đồ án công nghệ thông tin Tìm hiểu chuẩn IMS và xây dựng hệ thống thi trắc nghiệm

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.99 MB, 114 trang )

Đồ án tốt nghiệp – Tìm hiểu chuẩn IMS và xây dựng hệ thống thi trắc nghiệm
LỜI NÓI ĐẦU
Năm năm học tập tại trường Đại Học Bách Khoa Hà Nội là khoảng thời
gian quý giá trong cuộc đời em. Ngay từ những ngày đầu tiên tới trường, em đã
được các thầy giáo, cô giáo tận tình giảng dạy, đã cho em nhiều kiến thức chuyên
môn cũng như phương pháp học tập, làm việc khoa học. Đặc biệt khi vào chuyên
ngành Công nghệ thông tin, không những em được tiếp xúc với nhiều kiến thức
mới qua những bài giảng của các thầy các cô, mà em còn hiểu thêm nhiều điều về
xã hội, vì ngoài những kiến thức chuyên môn mà các thầy các cô cung cấp cho
chúng em, các thầy các cô còn quan tâm, nhắc nhở chúng em trong cách làm việc,
cách ứng xử, . Em xin gửi lời cảm ơn chân thành tới các thầy các cô trong bộ
môn Công nghệ phần mềm đã dìu dắt em những bước đầu tiên trong nghề. Những
kiến thức em nhận được từ các thầy các cô, những điều các thầy các cô căn dặn,
chúng em luôn luôn nhớ và chúng em xin hứa sẽ thực hiện thật tốt.
Nhân dịp này, em cũng xin gửi lời cảm ơn tới thầy Vũ Đức Vượng và thầy
Huỳnh Quyết Thắng. Các thầy đã nhiệt tình hướng dẫn, tạo điều kiện về thời gian
cũng như phương tiện, trang thiết bị, cung cấp cho em những tài liệu và kiến thức
quý báu để em có thể hoàn thành được đồ án tốt nghiệp này. Hiện nay, hình thức
thi trắc nghiệm đang được áp dụng trong nhiều trường, nhiều trung tâm đào tạo.
Thi lấy chứng chỉ TOEFL, thi lấy chứng chỉ của VITEC, hay như cuộc thi đường
lên đỉnh OLYMPYA cho khối phổ thông trung học đều đã áp dụng hình thức
trắc nghiệm. Do vậy, em hi vọng kết quả của đồ án này sẽ có ích cho mọi người,
giúp mọi người dễ dàng hơn trong việc ôn tập và kiểm tra lại những kiến thức đã
có, cũng như học hỏi thêm được nhiều kiến thức mới. Dù đã rất cố gắng, nhưng
trong đồ án này chắc chắn còn những thiếu sót nhất định. Em mong các thầy các
cô nhận xét, hướng dẫn, góp ý và giúp đỡ em để đồ án này được hoàn thiện hơn.
Cuối cùng, em xin gửi lời cảm ơn tới gia đình, tới những người bạn đã
quan tâm, giúp đỡ em, động viên em học tập và giúp đỡ em hoàn thành đồ án tốt
nghiệp này.

Phan Anh Tân


Tháng 5 – năm 2004
Phan Anh Tân – CNPM K44 –Khoa CNTT – ĐHBK Hà Nội
1
Đồ án tốt nghiệp – Tìm hiểu chuẩn IMS và xây dựng hệ thống thi trắc nghiệm
MỞ ĐẦU
Vấn đề đào tạo từ xưa đến nay đều mang tính chất quan trọng, góp phần
quyết định sự phát triển của nhiều lĩnh vực khác nhau. Do nhu cầu ngày càng cao
của xã hội về đào tạo ngành nghề, tiếp thu công nghệ mà nhiều trường đại học đã
mở thêm rất nhiều khoa, viện, nâng cấp cơ sở vật chất. Nhiều cơ sở đào tạo nghề,
bồi dưỡng kiến thức cũng ra đời. Để tham gia được những khoá học như vậy,
học viên cần phải làm rất nhiều thủ tục, cũng như phải lo đến các vấn đề khác như
đi lại, nơi ở Điều này thực sự là một vấn đề đáng quan tâm đối với những người
ở xa.
Do vậy, đào tạo từ xa được đề cập như một giải pháp để khắc phục những
vấn đề này. Ở nước ta, vào những ngày đầu mới hình thành, hình thức đào tạo từ
xa chủ yếu là dạy học trên truyền hình. Tuy nhiên, do sự phát triển của công nghệ
thông tin, đặc biệt là công nghệ trên Internet ngày càng phát triển và mở rộng, nên
trong xu hướng hiện nay, việc đào tạo từ xa được thực hiện trên nền tảng Internet,
còn gọi là E-learning.
Trong đào tạo, có rất nhiều vấn đề cần quan tâm như: Các thủ tục đăng ký
học, đăng ký lớp, đăng ký môn học rồi các vấn đề khác như: trình tự các môn
học, các bài học, làm thế nào để được học tiếp môn khác, bài khác hay là việc hỏi
đáp giữa thầy và trò được thực hiện như thế nào, giữa các học viên thì trao đổi ra
sao Tuy nhiên, trong phạm vi đề tài này, em muốn thực hiện một phần trong E-
learning, nhưng cũng là phần quan trọng và không thể thiếu, nó góp phần quyết
định tới việc đánh giá trình độ của các học viên, đó là phần thi trắc nghiệm.
Việc áp dụng chuẩn để thiết kế và xây dựng các hệ thống đang trở nên phổ
biến trong lĩnh vực công nghệ phần mềm cũng như trong nhiều lĩnh vực khác.
Hiện nay, có 5 chuẩn chính cho việc xây dựng một hệ thống E-learning là:
ARIADNE, AICC, IEEE, IMS, và SCORM. Mỗi chuẩn khi được đưa ra đều có

những ưu điểm nhất định. Tuy nhiên, khái niệm “chuẩn” cũng chỉ mang tính tương
đối, bởi thực tế cho thấy vẫn còn khá nhiều chuẩn cho cùng một vấn đề đang cùng
tồn tại và phát triển, nên không nhất thiết phải áp dụng toàn bộ một chuẩn nào đó
một cách cứng nhắc, bởi giữa các hệ thống phần mềm đều có những đặc trưng
riêng, dù các hệ thống phần mềm đó có giải quyết cùng một vấn đề hay không. Do
Phan Anh Tân – CNPM K44 –Khoa CNTT – ĐHBK Hà Nội
2
Đồ án tốt nghiệp – Tìm hiểu chuẩn IMS và xây dựng hệ thống thi trắc nghiệm
vậy, trong phần đồ án này, em muốn xây dựng hệ thống thi trắc nghiệm dựa theo
mô hình của chuẩn IMS (Instructional Management Systems). Một trong những lý
do cơ bản để lựa chọn chuẩn IMS vì đây chuẩn trong vấn đề đóng gói và xuất bản
nội dung, SCORM cũng lựa chọn chuẩn của IMS để áp dụng vào vấn đề đóng gói
và xuất bản tài nguyên. Dựa theo mô hình nghĩa là không áp dụng toàn bộ các yêu
cầu của chuẩn này, mà chỉ lựa chọn và sử dụng những yếu tố lý thuyết thích hợp,
từ đó đề ra hướng giải quyết cho bài toán đặt ra.
Như vậy, mục tiêu được đặt ra trong đồ án này là:
- Tìm hiểu chuẩn IMS cho các loại hình câu hỏi trắc nghiệm.
- Dựa vào một số loại hình câu hỏi trắc nghiệm tiêu biểu do IMS đề xuất để
xây dựng công cụ biên soạn và quản lý các câu hỏi trắc nghiệm sử dụng
trong hệ thống thi trắc nghiệm.
Phan Anh Tân – CNPM K44 –Khoa CNTT – ĐHBK Hà Nội
3
Đồ án tốt nghiệp – Tìm hiểu chuẩn IMS và xây dựng hệ thống thi trắc nghiệm
CHƯƠNG 1. CƠ SỞ LÝ THUYẾT CỦA ĐỀ TÀI
1.1. Tổng quan về chuẩn SCORM
SCORM (Sharable Content Object Reference Model: Mô hình đối tượng
nội dung có khả năng chia sẻ) là chuẩn được đưa ra nhằm tạo sự thuận tiện trong
việc thao tác dữ liệu giữa các phần mềm dạy học trên nền tảng web (nền tảng web
không có nghĩa là phần mềm đó phải chạy trên Internet. Một ứng dụng web vẫn có
thể chạy được trên một máy PC hoặc trong mạng nội bộ). Theo chuẩn này, để các

thành phần dữ liệu có khả năng tái sử dụng, chúng phải được xây dựng dựa trên
mô hình đối tượng dùng chung (Common Object Model) (Các mô hình này được
trình bày khá đầy đủ trong các tài liệu của tổ chức ADL Co-lab, có thể xem chi tiết
tại địa chỉ www.jointadlcolab.org hoặc trong các tài liệu đi kèm với đồ án này).
Hình 1.1: Các đối tượng dữ liệu dùng chung khi chưa tập hợp
Các thành phần chia sẻ các đối tượng dùng chung có thể tập hợp và sử dụng
lại được những đối tượng dùng chung này.
Hình 1.2: Các đối tượng dữ liệu dùng chung có thể tập hợp và tái sử dụng
Phan Anh Tân – CNPM K44 –Khoa CNTT – ĐHBK Hà Nội
4
Đồ án tốt nghiệp – Tìm hiểu chuẩn IMS và xây dựng hệ thống thi trắc nghiệm
Các hệ thống LMS (Learning Management System - Hệ thống quản lý đào
tạo) áp dụng SCORM có thể có khả năng di chuyển các course (khoá học, bài học)
(một khoá học có thể bao gồm nhiều mô hình dữ liệu có cấu trúc như: Môn học,
bài học, kỳ thi, điểm, nguồn tài nguyên câu hỏi Việc di chuyển các course đồng
nghĩa với việc di chuyển toàn bộ các dữ liệu có cấu trúc nằm trong course này), tái
sử dụng nội dung của các hệ LMS khác, tạo ra nơi chứa đựng thông tin hỗ trợ khả
năng tìm kiếm nội dung từ các hệ LMS khác.
Hình 1.3: Mô hình SCORM của tổ chức ADL Co-lab
Để đạt được các mục tiêu trên, SCORM tập hợp các đặc điểm trong các
chuẩn do một số nhóm và công ty có uy tín đề ra (cũng có thể hiểu rằng, SCORM
là chuẩn bao gồm nhiều chuẩn khác nhau, kết hợp với nhau để đạt được mục tiêu
đóng gói và chia sẻ nguồn tài nguyên). Có thể chia SCORM thành hai phần chính:
- CAM (Content Aggregation Model: Mô hình tập hợp dữ liệu): Hướng dẫn
cách mà nội dung được mô tả (meta-data) và kết hợp để tạo ra các đơn vị dữ liệu
(teaching units), các khoá học (courses) hoặc các chương trình giảng dạy
(curricula), cùng với cách đóng gói các nội dung để cung cấp cho các hệ thống
khác nhau.
- RTE (Run Time Environment: Môi trường thực thi): Định nghĩa phương
pháp kỹ thuật để thực hiện và theo dõi các nội dung giảng dạy giữa hệ thống giảng

dạy LMS và người học trên máy trạm.
Phan Anh Tân – CNPM K44 –Khoa CNTT – ĐHBK Hà Nội
5
Đồ án tốt nghiệp – Tìm hiểu chuẩn IMS và xây dựng hệ thống thi trắc nghiệm
Như vậy, có thể thấy rằng, SCORM sử dụng chuẩn IMS cho việc đóng gói
và xuất bản nội dung. Những hệ thống khác nếu áp dụng chuẩn IMS cho việc đóng
gói và xuất bản nội dung đều có khả năng tương thích với các hệ thống áp dụng
SCORM ở lĩnh vực đóng gói và xuất bản nội dung.
IMS là một trong những chuẩn phục vụ cho các hệ thống Elearning. Nó quy
định cấu trúc nội dung cho các hệ thống (cấu trúc nội dung ở đây nghĩa là cách tổ
chức và lưu trữ các nội dung dạng như: Bài giảng, khoá học, câu hỏi trắc nghiệm,
các nguồn tài nguyên giáo dục ). Các hệ thống khác nhau nếu tổ chức nội dung
theo IMS thì đều có khả năng chia sẻ các nguồn tài nguyên nội dung này.
Do mục tiêu của bài toán đặt ra là thiết kế câu hỏi trắc nghiệm, xây dựng
công cụ soạn thảo và quản lý câu hỏi trắc nghiệm, từ đó hình thành hệ thống thi
trắc nghiệm, nên trong phần dưới đây, em chỉ đề cập đến mô hình đóng gói nội
dung do IMS đề ra trong phần Content Aggregation Model (mô hình tập hợp nội
dung), vì nó hỗ trợ cho phần lớn việc tạo ra và lưu trữ các câu hỏi thi trắc nghiệm.
Hình 1.4: Chuẩn SCORM là tập hợp của một số chuẩn khác nhau
1.2. Đóng gói nội dung theo chuẩn IMS
1.2.1. Tổng quan
Mục đích của đóng gói nội dung (Content Packaging) là đưa ra một phương
pháp chuẩn để trao đổi nguồn tài nguyên kiến thức (learning) giữa các hệ thống
hoặc các công cụ. Content Packaging định nghĩa cấu trúc (cách tổ chức) và cách
Phan Anh Tân – CNPM K44 –Khoa CNTT – ĐHBK Hà Nội
6
Đồ án tốt nghiệp – Tìm hiểu chuẩn IMS và xây dựng hệ thống thi trắc nghiệm
tập hợp các tài nguyên này. Như vậy, Content Packaging có thể dùng để trao đổi
nguồn tài nguyên giữa các hệ thống, nó cung cấp những xử lý vào/ra chung nhất
mà các hệ thống đều hỗ trợ.

Ngoài ra, mô hình IMS Content Packaging còn cung cấp phương pháp để
liệt kê và đóng gói tất cả các tệp dữ liệu vật lý cần thiết để phân phối các nguồn tài
nguyên, tạo ra mối quan hệ giữa các tệp dữ liệu với một hoặc nhiều nguồn tài
nguyên khác, phân chia nguồn tài nguyên theo cách mà chúng được tổ chức, cho
phép sử dụng cùng một nguồn tài nguyên trong các ngữ cảnh khác nhau.
1.2.2. Cấu trúc nội dung
Mục tiêu của cấu trúc nội dung (content structure) là hỗ trợ việc phát triển
nội dung giảng dạy theo hướng tập hợp nguồn tài nguyên tạo thành những đơn vị
có cấu trúc, áp dụng các cấu trúc này kết hợp với các tác động đặc biệt có thể tái
sản xuất lại nguồn tài nguyên qua các hệ LMS khác nhau.
Cấu trúc nội dung có thể xem như một bản đồ để theo dõi và sử dụng nguồn
tài nguyên đã được đóng gói. Cấu trúc nội dung không những bao gồm nguồn các
tài nguyên, mà còn có các tác động trên những nguồn tài nguyên đó.
“Cấu trúc nội dung không đề cập đến chức năng của các hệ LMS, các hệ
thống LMS đều có những chức năng và đặc trưng riêng nhất định, nhưng cần giả
sử rằng các hệ LMS có chức năng xuất cấu trúc nội dung của nó (export), chức
năng nhập cấu trúc nội dung từ một hệ LMS khác và lưu trữ cấu trúc đó theo cách
của nó (import). Cấu trúc nội dung không yêu cầu các hệ thống LMS phải có mô
hình được thiết kế giống nhau.”. Đây là tư tưởng của một số chuyên gia phát triển
các hệ LMS theo chuẩn IMS, cũng là tư tưởng quan trọng mà những người thiết kế
và xây dựng các hệ LMS cần xem xét và thống nhất, vì tư tưởng này là phương
pháp tiếp cận mới có liên quan đến việc thiết kế nội dung. Trong cấu trúc nội dung
có nhiều phần, mỗi phần đều có liên quan đến những khía cạnh khác nhau của các
tài nguyên. Các phần đó là:
-Content Hierarchy (Hệ thống phân cấp nội dung): Thể hiện nội dung dưới
dạng cây phân cấp, nhóm các nguồn tài nguyên theo một thứ tự nhất định. Trong
nhiều trường hợp, cây phân cấp này thể hiện thứ tự mặc định mà một người tạo ra
cho người khác thực hiện.
Phan Anh Tân – CNPM K44 –Khoa CNTT – ĐHBK Hà Nội
7

Đồ án tốt nghiệp – Tìm hiểu chuẩn IMS và xây dựng hệ thống thi trắc nghiệm
-Context Specific Meta-data: Khi nguồn tài nguyên được tạo ra, người phát
triển hi vọng có thể tạo ra được các meta-data đi kèm để mô tả mục đích, định
nghĩa, tên của các nguồn tài nguyên này. Ở đây meta-data có nghĩa là: Dữ liệu
được cấu trúc hoá để mô tả cho một dữ liệu khác, giống như khi ta click chuột
phải vào 1 biểu tượng của một file và chọn mục Properties, một bảng hiện ra mô tả
các thuộc tính và thông số của file, có thể coi bảng đó là 1 loại meta-data.
-Sequencing and Navigation: Phần này cung cấp cho hệ LMS các thông tin
mà nó cần để xác định nguồn tài nguyên nào sẽ được đưa ra cho người học, và khi
nào. Nó cũng cung cấp cho hệ LMS cách thể hiện sự lựa chọn tới người dùng để
thông qua được các nguồn tài nguyên.
Hình dưới đây minh hoạ một số mô hình phân cấp một khoá học:
Mô hình Army Mô hình Air Force Mô hình Marine Corps Mô hình Canadian
Tiến trình Tiến trình Tiến trình Tiến trình
Đơn vị Khối Thời kỳ Đối tượng thực hiện
Bài học Đơn vị Tiến trình con Đối tượng có thể
Đối tượng đào tạo Bài học Bài học Điểm đào tạo
Bước đào tạo Đối tượng đào tạo Công việc

Đối tượng đào tạo

Bước đào tạo

Hình 1.5: Mô hình phân cấp một khoá học của một số tổ chức
Hiểu được phương pháp thiết kế được sử dụng trong cấu trúc nội dung và
các tiếp cận khác nhau trong việc tập hợp các nội dung sẽ trợ giúp cho việc tái sử
dụng và cung cấp các thông tin mở rộng cho một hệ LMS khi nội dung của nó
được di chuyển và thay đổi.
1.2.3. Cây nội dung
Việc tạo ra một tập hợp các tài nguyên giảng dạy theo một cấu trúc logic

được hiểu theo nghĩa tổ chức các nguồn tài nguyên này dưới dạng cây (content
hieararchy). SCORM chia các nguồn tài nguyên thành các nhóm gọi là block
(khối). Các block ở đây có thể hiểu như một khoá học của một khoa, hay là một
bài học trong một môn học, cũng có thể là một chương trong một bài học. Trong
một block cũng có thể bao hàm các block khác. Các block có thể lồng nhau tới cấp
bất kỳ. Bên trong các block lại được chia thành các khối sco (shareable content
objects), là các đối tượng nội dung có khả năng chia sẻ (một ví dụ cụ thể là các
Phan Anh Tân – CNPM K44 –Khoa CNTT – ĐHBK Hà Nội
8
Đồ án tốt nghiệp – Tìm hiểu chuẩn IMS và xây dựng hệ thống thi trắc nghiệm
dạng dữ liệu âm thanh hình ảnh mà các block cần sử dụng). Như vậy, phụ thuộc
vào phương pháp thiết kế, cây phân cấp theo nhóm này có thể dùng để thể hiện
các khái niệm như course (khoá học), chapter (chương), topic (chủ đề) hoặc các
khái niệm tương tự thể hiện cách tập hợp nguồn tài nguyên từ các phần nhỏ hơn.
Hình 1.6: Cây phân cấp nội dung
1.2.4. Meta-data đặc trưng ngữ cảnh
Khi nguồn tài nguyên được tạo ra, cũng cần kèm theo các tài liệu mô tả,
phục vụ cho việc định vị và tái sử dụng trong trường hợp cần thiết (meta-data).
Một meta-data được hiểu là “độc lập với ngữ cảnh” nếu nó mô tả được nguồn tài
nguyên mà không phụ thuộc vào phương pháp tập hợp cụ thể. Ví dụ: Một bài học
cần hướng dẫn cách xâu kim. Trong trường hợp này, meta-data sẽ mô tả kỹ năng
thu được: làm cách nào đưa sợi chỉ qua lỗ của kim, mà không mô tả cái kim được
cấu tạo thế nào, xâu kim xong rồi làm gì
Phát triển và ứng dụng meta-data cho các nguồn tài nguyên dạy học và tập
hợp các nguồn tài nguyên này là một khái niệm còn mới. Nói chung nó thường
được dùng để khai thác và tái sử dụng nguồn tài nguyên, ngoài ra có thể dùng nó
để mô tả về nguồn gốc tài nguyên, người tạo ra, mục đích của thông tin được tạo
ra Một số nhà nghiên cứu và phát triển SCORM còn cho rằng meta-data có khả
năng giúp đỡ và hướng dẫn người học (learner) hiểu được nội dung các bài học dễ
dàng hơn.

Trước khi đi vào tìm hiểu chi tiết về mô hình các câu hỏi trắc nghiệm do
IMS đề xuất, chúng ta sẽ tìm hiểu sơ lược về ngôn ngữ XML. Đây là công cụ giúp
chúng ta thực hiện được khả năng chia sẻ tài nguyên và tái sử dụng một cách dễ
dàng.
Phan Anh Tân – CNPM K44 –Khoa CNTT – ĐHBK Hà Nội
9
Đồ án tốt nghiệp – Tìm hiểu chuẩn IMS và xây dựng hệ thống thi trắc nghiệm
1.3. XML và ứng dụng trong mô hình câu hỏi trắc
nghiệm của IMS
Mô hình cây phân cấp khá thuận tiện cho việc thể hiện dữ liệu gồm nhiều
phần tử và phần tử con (elements và sub-elements), mà XML lại là giải pháp cho
việc thể hiện các phần tử và các phần tử con. Do vậy, một tài liệu XML có thể coi
là một cây phân cấp chứa các phần tử cùng với nội dung và thuộc tính của các
phần tử đó. Từ đó có thể thấy, XML là giải pháp tốt cho việc lưu trữ các dữ liệu có
cấu trúc, mà tiêu biểu là dữ liệu của một câu hỏi trắc nghiệm.
1.3.1. Phần tử
Một phần tử (element) là một thành phần của một tài liệu được định nghĩa
sao cho máy tính có thể hiểu được. Mỗi phần tử đều có một bộ phận gọi là thẻ, tên
thẻ nằm trong dấu “<” và “>”. Khi có dấu hiệu kiểu <TAGNAME>, bộ dịch của
máy tính sẽ đánh dấu sự xuất hiện của một phần tử mới. Khi một thẻ có kèm theo
dấu “/”, ví dụ như </TAGNAME>, bộ dịch hiểu đó là dấu hiệu kết thúc một phần
tử. Hai thẻ trên gọi là thẻ bắt đầu và thẻ kết thúc của một phần tử. Một phần tử có
thể có nội dung, được đặt giữa thẻ bắt đầu và thẻ kết thúc. Phần tử cũng có thể có
một hoặc nhiều thuộc tính. Khi một phần tử có một thẻ bắt đầu và một thẻ kết thúc
(còn gọi là thẻ mở và thẻ đóng) có phần tên giống nhau, nó được hiểu là định dạng
tốt “well-formed”. Một ví dụ của phần tử như sau:
<TAGNAME>This is my contents</TAGNAME>
1.3.1.1. Nội dung của phần tử
Một phần tử có thể chứa các phần tử khác, các Parsed Character Data
(PCDATA), Character Data (CDATA), hoặc chứa cả PCDATA và các phần tử.

PCDATA là một xâu ký tự bất kỳ không chứa ký hiệu của một phần tử. PCDATA
là phần nội dung của một phần tử nằm giữa thẻ mở và thẻ đóng. CDATA hơi khác
một chút, nó cũng là dữ liệu kiểu ký tự nhưng được sử dụng để thêm vào các ký tự
không bị xử lý như các xâu ký tự thông thường, ví dụ như các đoạn mã Javascript.
Đoạn dữ liệu được đặt trong CDATA sẽ được đảm bảo nguyên vẹn mà không bị bộ
biên dịch XML hiểu nhầm.
Phan Anh Tân – CNPM K44 –Khoa CNTT – ĐHBK Hà Nội
10
Đồ án tốt nghiệp – Tìm hiểu chuẩn IMS và xây dựng hệ thống thi trắc nghiệm
1.3.1.2. Thuộc tính của phần tử
Một thuộc tính cung cấp một thông tin mở rộng, là cách gán các đặc điểm
cho một phần tử. Một phần tử có thể có một hoặc nhiều thuộc tính, các thuộc tính
này được đặt trong thẻ mở của phần tử. Một thuộc tính được nhận ra bằng tên của
nó, theo sau là dấu “=”. Giá trị của thuộc tính được đặt trong dấu nháy kép mở-
đóng. Ví dụ:
<timeframe>
<begin restrict="1">1999-07-23</begin>
</timeframe>
Trong ví dụ trên, phần tử <timeframe> chứa một phần tử khác là <begin>.
Phần tử <begin> có nội dung là 1999-07-23, và thuộc tính restrict của nó có giá
trị bằng 1.
1.3.1.3. Tên của phần tử
Mỗi phần tử đều có một tên riêng duy nhất, được hiểu là tên của thẻ (mở,
đóng). XML là ngôn ngữ “nhạy” với tên biến, do đó có sự phân biệt giữa chữ hoa
và chữ thường. Vì vậy, hệ thống câu hỏi và thi trắc nghiệm của IMS đề ra yêu cầu
tuân thủ chặt chẽ các điều kiện sau:
a. Tất cả các tên của thẻ (được hiểu là tên của các phần tử) cần tuân theo
nguyên tắc đặt tên của phiên bản XML 1.0, cụ thể: Tất cả các tên có thể bắt đầu
bằng một ký tự (không được bắt đầu bằng chữ số), bằng một dấu gạch dưới, bất kỳ
ký tự Unicode nào vốn là các ký tự, từ ký tự thứ 2 trở đi có thể sử dụng số, dấu hai

chấm, dấu chấm. Đặc biệt lưu ý là: không được đặt tên có 3 ký tự đầu tiên dạng
xml, XML hoặc tương tự như Xml Tuy được sử dụng dấu hai chấm, nhưng đừng
bao giờ dùng chúng để đặt tên, vì dấu hai chấm cũng được sử dụng để phân tách
các tên namespace với các tên thuộc tính và thành phần XML cơ bản. Việc sử
dụng dấu hai chấm để đặt tên có thể gây ra những nhầm lẫn và rắc rối không cần
thiết.
b. Tên của tất cả các phần tử, thuộc tính đều phải viết chữ thường, như theo
đề nghị của W3C.
c. Tên của các phần tử, thuộc tính không được sử dụng các tên riêng dành
cho XML như: DOCTYPE, ELEMENT, ATTLIST, ENTITY
Phan Anh Tân – CNPM K44 –Khoa CNTT – ĐHBK Hà Nội
11
Đồ án tốt nghiệp – Tìm hiểu chuẩn IMS và xây dựng hệ thống thi trắc nghiệm
d. Các thẻ được định nghĩa trong hệ thống do IMS đề ra không được phép
định nghĩa lại, ngoại trừ một số trường hợp mở rộng.
1.3.2. Giản đồ XML
IMS đưa ra một giản đồ XML (XML schema), trong đó định nghĩa các
phần tử với mẫu nội dung, danh sách các thuộc tính của nó. Giản đồ này cũng định
nghĩa các loại phần tử với các nhóm thuộc tính riêng biệt của chúng, với mục đích:
- Tên của các phần tử được khai báo trước khi định nghĩa loại phần tử để
ngăn chặn sự gán ghép lộn xộn của bộ dịch. Điều này tương tự như việc ta khai
báo các chương trình con ở phần đầu của một thư viện chương trình.
- Các loại phần tử phức tạp có thể được quản lý hiệu quả hơn, có thể hỗ trợ
khả năng nâng cấp trong các phiên bản sau.
- Các thuộc tính cũng có thể được quản lý và sử dụng hiệu quả, hợp lý hơn.
1.3.3. Định nghĩa loại tài liệu
Tên của thẻ, mẫu nội dung, các thuộc tính của các phần tử được định nghĩa
trong phát biểu DTD (Document Type Definitions). Các định nghĩa này có thể
nằm ở một file riêng biệt hoặc được đặt tại 1 vị trí thích hợp trong cùng tài liệu
XML.

1.3.3.1. Khai báo nội dung phần tử
Mẫu khai báo nội dung của một phần tử:
<!ELEMENT tagname (Content Model)>
Ví dụ, một phần tử có tên là short, với kiểu dữ liệu là PCDATA được khai
báo như sau:
<!ELEMENT short (#PCDATA)>
1.3.3.1.1. Danh sách các phần tử
Một danh sách các phần tử có thể hiểu là sự lặp đi lặp lại nội dung của một
phần tử. Các phần tử sau khi đã được khai báo, nội dung của nó có thể lặp lại một
hoặc nhiều lần. Ví dụ:
<!ELEMENT section (item*,extension?)>
<section>
Phan Anh Tân – CNPM K44 –Khoa CNTT – ĐHBK Hà Nội
12
Đồ án tốt nghiệp – Tìm hiểu chuẩn IMS và xây dựng hệ thống thi trắc nghiệm
<item> "The first question set."</item>
<item> "The second question set."</item>
</section>
Trong ví dụ trên, phần tử <item> được lặp lại hai lần. Dấu “*” trong khai
báo trên cho biết phần tử <item> có thể không xuất hiện hoặc xuất hiện nhiều lần,
trong khi dấu “+” chỉ định rằng ít nhất một phần tử phải có mặt. Dấu “?” chỉ định
rằng một phần tử có thể không xuất hiện, hoặc nếu có xuất hiện thì chỉ một lần.
1.3.3.2. Khai báo các thuộc tính của phần tử
Dưới đây là ví dụ về cách khai báo thuộc tính của một phần tử:
<!ELEMENT assessment (description, section+, objectives?, result,
extension?)>
<!ATTLIST assessment title CDATA #IMPLIED>
Dòng đầu tiên chỉ định rằng có một phần tử tên là assessment có các phần
tử con là: description, section và result. Có thể có một hoặc không có phần tử
extension, phần tử objectives cũng tương tự như vậy.

Dòng thứ hai khai báo rằng phần tử assessment có một thuộc tính tên là
title, giá trị phải thuộc kiểu CDATA. Ký hiệu cuối cùng của dòng này là IMPLIED,
nghĩa là cho phép người dùng bỏ qua giá trị của thuộc tính này mà không dùng
đến giá trị mặc định.
1.3.3.3. Cách dùng các thuộc tính
Các thuộc tính thường được dùng để cung cấp các thông tin về cấu trúc của
đối tượng dữ liệu liên quan. Điều này có nghĩa là mỗi thuộc tính có thể được dùng
để tạo ra một loại phần tử có tính chất riêng biệt, ví dụ: Một phần tử là ngày tháng
thì thuộc tính của nó có thể quy định là ngày sinh nhật của một cá nhân nào đó cụ
thể.
1.3.4. Các luật sử dụng đặc biệt
1.3.4.1. Các ký hiệu dành riêng cho XML
Do XML cũng là một loại ngôn ngữ đánh dấu (sử dụng thẻ) nên bắt buộc
phải sử dụng những ký tự đặc biệt cho mục đích đánh dấu. Đó là các ký tự sau: Ký
Phan Anh Tân – CNPM K44 –Khoa CNTT – ĐHBK Hà Nội
13
Đồ án tốt nghiệp – Tìm hiểu chuẩn IMS và xây dựng hệ thống thi trắc nghiệm
tự và (&), ký tự nhỏ hơn (<), ký tự lớn hơn (>), ký tự nháy đơn (‘), ký tự nháy kép
(“). Trong trường hợp dữ liệu cần chứa những ký tự này, có thể thay thế nó bằng
các xâu ký tự quy ước tương ứng như &amp;, &lt;, &gt;, &apos;, &quot; (lưu ý:
các xâu ký tự quy ước đều bắt đầu bằng ký hiệu & và kết thúc bằng ký hiệu ; ).
Các giá trị của thuộc tính muốn chứa ký tự nháy đơn hoặc nháy kép thì phải thay
thế bằng các xâu ký tự quy ước tương ứng. Phần nội dung của phần tử có thể chứa
bất kỳ ký tự Unicode nào ngoại trừ các ký tự được dùng cho mục đích đánh dấu kể
trên. Trong phần CDATA không được phép chứa ký tự dạng “]]>” vì đây là dấu
hiệu kết thúc phần CDATA (dữ liệu dạng CDATA được lưu trữ bên trong cặp ký
hiệu <![CDATA[ ] ]> ). Đây cũng là yếu tố quan trọng cần quan tâm khi muốn
lưu trữ một định dạng của HTML (tức là dữ liệu có chứa các thẻ HTML).
1.3.4.2. Xử lý các khoảng trống
Các phần tử và các thuộc tính có thể chứa nhiều khoảng trống, tab cho

những dụng ý riêng, nhưng trong từng hệ thống sử dụng XML, các khoảng trống
này có thể bị biến đổi không theo ý muốn của người tạo ra. Khi tạo ra các tài liệu
XML, chúng ta thường sử dụng các công cụ phần mềm hỗ trợ (ví dụ phần mềm
XMLSpy). Các phần mềm này thường có khả năng chèn các khoảng trống vào đầu
từng dòng văn bản tạo ra những khoảng phân cách thích hợp tuỳ theo vị trí của các
phần tử, các vùng khai báo, các thuộc tính tạo cho người dùng khả năng dễ đọc,
dễ theo dõi và quản lý. Các khoảng trống kiểu này thường không mong muốn đối
với những loại tài liệu đã được phân phát cho sử dụng, vì khi đó việc xử lý tài liệu
được dành cho ứng dụng giải quyết. Các khoảng trống kiểu này có mặt trong tài
liệu sẽ gây nhiều rắc rối hơn là ích lợi mà nó mang lại.
Do vậy, trong một tài liệu XML cần có quy ước rõ ràng về việc xử lý các
khoảng trống cho phù hợp với mục đích sử dụng. XML quy định sử dụng một
thuộc tính có tên là xml:space được gắn với một phần tử để lưu ý về mục đích sử
dụng các khoảng trống trong phần tử đó. Trong một tài liệu XML hợp lệ, thuộc
tính này phải được khai báo nếu có ý định sử dụng nó. Các giá trị của thuộc tính
này có dạng liệt kê (nghĩa là chỉ tồn tại một trong các giá trị được liệt kê ra tại một
thời điểm), gồm hai giá trị: default và preserve. Có thể khai báo giá trị nào được
chọn làm giá trị mặc định khởi đầu cho tài liệu. Xét ví dụ sau:
Phan Anh Tân – CNPM K44 –Khoa CNTT – ĐHBK Hà Nội
14
Đồ án tốt nghiệp – Tìm hiểu chuẩn IMS và xây dựng hệ thống thi trắc nghiệm
<!ATTLIST poem xml:space (default | preserve) 'preserve'>
Trong ví dụ trên, giá trị default báo hiệu cho bộ dịch XML biết việc xử lý
các khoảng trống tuỳ thuộc vào cách xử lý trên mỗi hệ thống cụ thể. Giá trị
preserve báo cho bộ biên dịch của các ứng dụng biết, khi sử dụng tài liệu XML
này phải đảm bảo vị trí cũng như số lượng các khoảng trống trong tất cả các phần
tử con có thể có của phần tử được khai báo thuộc tính này (ngoại trừ tại một phần
con nào đó có khai báo thuộc tính này với dụng ý khác).
1.3.5. Khả năng mở rộng
Một số nhà cung cấp thứ ba nhận thấy rằng các phần tử hiện có do IMS

định nghĩa có một số giới hạn, do vậy không thể phục vụ đầy đủ mục đích của họ.
Cần có khả năng mở rộng trên cơ sở những gì đã có. XML định nghĩa khả năng
mở rộng là việc thêm thông tin cho một cấu trúc XML đã có, khai báo dưới dạng
sau:
<!ELEMENT resp_extension ANY>
Ví dụ:
<!ELEMENT presentation (render_choice, render_hotspot,
resp_extension?)>
Và sử dụng phần mở rộng như sau:
<presentation>
<render_choice> Multiple choice selections </render_choice>
<render_hotspot> Image hot spot selections </render_hotspot>
<resp_extension>
<comment>This is a test to demo extensions</comment>
</resp_extension>
</presentation>
Chú ý rằng những phần tử mới định nghĩa mà trùng với những phần tử đã
có trong tài liệu sẽ không được tạo ra.
Một mở rộng với không gian tên mới cần có thêm phần mô tả cho mở rộng
này. Ví dụ, nhóm ADL (Advanced Distributed Learning) muốn thêm tiếp đầu ngữ
adl vào tên của các phần tử mở rộng do họ định nghĩa để nhận diện (tiếp đầu ngữ
do đó phải được khai báo ở phần đầu tài liệu). Dưới đây là ví dụ:
Phan Anh Tân – CNPM K44 –Khoa CNTT – ĐHBK Hà Nội
15
Đồ án tốt nghiệp – Tìm hiểu chuẩn IMS và xây dựng hệ thống thi trắc nghiệm
<item>
mandatory elements of item elements here
<description lang= " en " >
<short>Military psychometric question </short>
</description>

<adl:resp_extension adl:classification="Not classified">
<adl:comment>Discusses how the questions are constructed for defence posts.
</adl:comment>
</adl:resp_extension>
</item>
1.3.6. Các phần tử XML trong cấu trúc câu hỏi của IMS
Như đã đề cập ở phần trước, IMS sử dụng XML đề lưu trữ các nguồn tài
nguyên nội dung có cấu trúc, một trong các nguồn tài nguyên có cấu trúc đó các
các loại hình câu hỏi trắc nghiệm. Do các số lượng các phần tử XML định nghĩa
trong cấu trúc của các loại hình câu hỏi khá nhiều, nên xin xem ở phần phụ lục về
thông tin chi tiết về các phần tử này.
1.4. Quan điểm của IMS về các loại câu hỏi trắc nghiệm
Theo quan điểm của IMS, các câu hỏi trắc nghiệm phân biệt nhau thông
qua hình thức trả lời cho câu hỏi đó, các câu hỏi trắc nghiệm có bản chất giống
nhau thì được xếp vào cùng một nhóm. Như vậy hình thức trả lời là định danh duy
nhất cho mỗi loại hình câu hỏi trắc nghiệm.
1.4.1. Phân loại câu hỏi theo hình thức trả lời
Hình dưới đây minh hoạ sự phân loại các câu hỏi trắc nghiệm theo quan điểm
của IMS. Các thuật ngữ cần lưu ý:
- Cơ bản: Loại câu hỏi chỉ chứa một hình thức trả lời duy nhất.
- Hoà trộn: Loại câu hỏi chứa nhiều hình thức trả lời (ví dụ có thể chứa cả
hình thức lựa chọn lẫn hình thức điền từ vào chỗ trống).
- Sở hữu riêng: Loại câu hỏi của riêng hãng sử dụng, không công bố.
- Độc lập với thời gian: Việc trả lời câu hỏi không bị giới hạn thời gian.
- Hạn chế thời gian: Việc trả lời câu hỏi bị giới hạn thời gian.
Phan Anh Tân – CNPM K44 –Khoa CNTT – ĐHBK Hà Nội
16
Đồ án tốt nghiệp – Tìm hiểu chuẩn IMS và xây dựng hệ thống thi trắc nghiệm
Hình 1.7: Phân loại câu hỏi theo hình thức trả lời
Cấp độ cuối cùng trong bảng trên được xác định nhờ số lượng các hoạt

động mà người dùng phải thực hiện. Bảng dưới đây mô tả chi tiết về sự phân loại
này:
Hình thức trả lời Cơ bản Hoà trộn
Đơn Người dùng thực hiện một
thao tác trả lời cho một câu
hỏi dạng cơ bản (ví dụ: loại
điền từ vào một chỗ trống
hoặc loại chọn một phương
án )
Người dùng thực hiện một
thao tác trả lời cho một câu
hỏi dạng hoà trộn. Hình thức
trả lời có thể là chọn một
phương án, điền một từ hoặc
không trả lời.
Bội Người dùng thực hiện một
hoặc nhiều thao tác trả lời
cho một câu hỏi dạng cơ
bản (ví dụ: loại chọn nhiều
phương án, loại điền từ vào
nhiều chỗ trống )
Người dùng thực hiện một
hoặc nhiều thao tác trả lời
cho một câu hỏi dạng hoà
trộn. Hình thức trả lời có thể
là chọn một hoặc nhiều
phương án, điền một hoặc
nhiều từ vào chỗ trống, hoặc
không trả lời.
Có thứ tự Người dùng thực hiện một Người dùng thực hiện một

Phan Anh Tân – CNPM K44 –Khoa CNTT – ĐHBK Hà Nội
17
Đồ án tốt nghiệp – Tìm hiểu chuẩn IMS và xây dựng hệ thống thi trắc nghiệm
hoặc nhiều thao tác trả lời
cho một câu hỏi dạng cơ
bản (ví dụ: loại kéo thả, loại
sắp xếp thứ tự các đối
tượng ). Thứ tự các thao
tác và thứ tự các phương án
trả lời sẽ được ghi nhận và
đối chiếu với đáp án.
hoặc nhiều thao tác trả lời
cho một câu hỏi dạng hoà
trộn.Thứ tự các thao tác và
thứ tự các phương án trả lời
sẽ được ghi nhận và đối chiếu
với đáp án. Việc trả lời có thể
không bắt buộc.
1.4.2. Một số loại câu hỏi trắc nghiệm do IMS đề xuất
Dưới đây là danh sách một số loại câu hỏi thi trắc nghiệm cơ bản
- Trắc nghiệm lựa chọn dựa vào tính logic (LID) (Logical identifier)
- Trắc nghiệm lựa chọn dựa vào toạ độ (XYC) (X-Y co-ordinate)
- Trắc nghiệm dựa vào xâu ký tự (STR) (String)
- Trắc nghiệm dựa vào con số (NUM) (Numeric)
- Trắc nghiệm dựa vào nhóm logic (GRP) (Logical groups)
Trong từng loại lại chia thành nhiều hình thức cụ thể hơn như sau:
a. Loại trắc nghiệm lựa chọn dựa vào tính logic có các hình thức sau:
- Chọn True/False (dạng văn bản) (Standard True/False-Text based)
- Chọn một phương án (dạng văn bản) (Standard Multiple Choice-Text
based)

- Chọn một phương án (dạng ảnh) (Standard Multiple Choice-Image based)
- Chọn một phương án (dạng audio) (Standard Multiple Choice-Audio
based)
- Chọn nhiều phương án (dạng văn bản) (Standard Multiple Response-Text
based)
- Sắp xếp thứ tự các đối tượng (dạng văn bản) (Standard Order Objects-
Text based)
- Sắp xếp thứ tự các đối tượng (dạng ảnh) (Standard Order Objects-Image
based)
Phan Anh Tân – CNPM K44 –Khoa CNTT – ĐHBK Hà Nội
18
Đồ án tốt nghiệp – Tìm hiểu chuẩn IMS và xây dựng hệ thống thi trắc nghiệm
b. Loại trắc nghiệm lựa chọn dựa vào toạ độ có các hình thức:
- Vùng ảnh nhạy cảm (dạng ảnh) (Standard Image Hot Spot-Image based)
- Nối các điểm (dạng ảnh) (Connect the points-Image based)
c. Loại trắc nghiệm dựa vào xâu ký tự có các hình thức sau:
- Điền từ vào chỗ trống (một vị trí) (Standard Singler Fill-in-Blank)
- Điền từ vào chỗ trống (nhiều vị trí) (Standard Multiple Fill-in-Blank)
- Trả lời ngắn (dạng văn bản) (Standard Short Answer)
d. Loại trắc nghiệm dựa vào con số có các hình thức sau:
- Điền số nguyên vào chỗ trống (Standard Integer Fill-in-Blank)
- Điền số thực vào chỗ trống (Standard Real number Fill-in-Blank)
- Nhập số dùng Slider (Numerical entry with Slider)
e. Loại trắc nghiệm dựa vào nhóm logic có các hình thức sau:
- Kéo thả (dạng ảnh) (Standard Drag and Drop-Multiple Images based)
Trước khi đi vào các ví dụ mẫu về từng loại hình, chúng ta hãy xem xét về
cách lưu trữ các câu hỏi trắc nghiệm của IMS (cấu trúc câu hỏi). Do IMS phân
chia thành khá nhiều loại hình, nhưng một số loại câu hỏi lại có bản chất khá
giống nhau (dù cách thể hiện có khác nhau) nên trong phần này em chỉ phân tích
các lưu trữ của một số loại hình câu hỏi trắc nghiệm cơ bản.

Theo chuẩn IMS, loại hình câu hỏi chọn một phương án được lưu bằng một
file dạng XML, có cấu trúc như sau:
-Có một thẻ cấp cao nhất tên là <questestinterop>, thẻ này đại diện cho
một câu hỏi trắc nghiệm, dùng để lưu trữ các thể khác cấp thấp hơn.
- Thẻ <item> là thẻ con của thẻ <questestinterop>, thẻ này chứa các định
nghĩa về loại câu hỏi (chọn đúng sai, điền từ, kéo thả ). Trong thẻ <item>
này có rất nhiều các thẻ con khác, mỗi thẻ đều có những chức năng nhất
định và được sử dụng trong những yêu cầu cụ thể. Tuy nhiên, một số thẻ
sau đây có tính chất quan trọng và thường xuất hiện:
o Thẻ <material>. Thẻ này dùng để định nghĩa loại tài liệu cần thể
hiện cho người dùng. Khái niệm “tài liệu” ở đây có thể là: nội
dung câu hỏi, các phương án trả lời, các phản hồi . Các loại tài
Phan Anh Tân – CNPM K44 –Khoa CNTT – ĐHBK Hà Nội
19
Đồ án tốt nghiệp – Tìm hiểu chuẩn IMS và xây dựng hệ thống thi trắc nghiệm
liệu có thể có là: Thuần văn bản, hình ảnh, âm thanh, video
được lưu trữ và định nghĩa trong các thẻ con tương ứng là
<mattext>, <matimage>, <mataudio>, <matvideo>.
o Thẻ <render_choice>. Thẻ này chứa các phương án trả lời sẽ
đưa ra cho người dùng trong các loại câu hỏi như: Chọn đúng sai,
chọn một phương án, chọn nhiều phương án, điền từ , trong đó,
các phương án cụ thể được lưu trữ trong thẻ con là
<response_label>.
Các thẻ khác và vị trí, ý nghĩa của từng thẻ cũng như các thuộc tính của nó,
xin xem thêm ở phần phụ lục. Tuy nhiên cần lưu ý một điểm khá quan trọng, nội
dung của thẻ <material> rất có thể chứa các ký tự đặc biệt, ví dụ như thẻ <b>, thẻ
<sub>, thẻ <script> trong HTML. Trong những trường hợp như vậy, trong thẻ
<mattext> của thẻ <material> thường sử dụng cặp ký hiệu <![CDATA[ ]]> để
lưu trữ các ký tự đặc biệt này. Người lập trình cần quan tâm và xử lý những trường
hợp dữ liệu được lưu trữ trong cặp ký hiệu này.

Để thuận tiện trong việc theo dõi, phần dưới đây chỉ đưa ra các ví dụ điển
hình ứng với từng mẫu câu hỏi trên. Các ví dụ dạng file XML do IMS đề xuất cho
từng loại câu hỏi này khá dài nên không đưa trực tiếp vào phần cơ sở lý thuyết, tuy
nhiên chúng không thể thiếu vì chúng giúp chúng ta hiểu được rõ hơn cấu trúc của
từng loại câu hỏi, đặc biệt càng có ích hơn đối với người lập trình xử lý xuất/nhập
dữ liệu theo chuẩn của IMS. Do vậy, các ví dụ dạng file XML này sẽ được lưu
trong đĩa CD kèm theo đồ án.
1.4.2.1. Các mẫu câu hỏi dạng lựa chọn dựa vào tính logic
1.4.2.1.1 Chọn True/False
Hình 1.8.a: Câu hỏi hiện theo hàng ngang
Phan Anh Tân – CNPM K44 –Khoa CNTT – ĐHBK Hà Nội
20
Đồ án tốt nghiệp – Tìm hiểu chuẩn IMS và xây dựng hệ thống thi trắc nghiệm
Hình 1.8.b: Câu hỏi hiện theo hàng dọc
Hai hình bên trên thể hiện một câu lựa chọn True/False (Đúng/Sai) tiêu
biểu, các tình huống biểu diễn câu hỏi được trình bày theo các kiểu khác nhau
(Hình 1.8.a-Các phương án thể hiện theo chiều ngang. Hình 1.8.b. - Các phương
án thể hiện theo chiều dọc). Trong hai ví dụ này, người dùng cần lựa chọn phương
án Đúng hoặc Sai để trả lời câu hỏi. Nội dung file XML lưu trữ câu hỏi ở hình
1.8.a như sau:
<questestinterop>
<qticomment>
Đây là câu hỏi chọn Đúng/Sai, cấu trúc câu dựa theo phiên bản 1.2 của
IMS. Trong câu hỏi này, các phương án đưa ra được hiển thị theo hàng
ngang và hiển thị bằng nút radio button. Đáp án cho câu hỏi cũng được đi
kèm.
</qticomment>
<item ident="IMS_V01_I_BasicExample001">
<presentation label="BasicExample001">
<flow>

<material>
<mattext>Paris là thủ đô của nước Pháp, điều này:
</mattext>
</material>
<response_lid ident="TF01" rcardinality="Single"
rtiming="No">
<render_choice>
<flow_label>
<response_label ident="T">
<material>
Phan Anh Tân – CNPM K44 –Khoa CNTT – ĐHBK Hà Nội
21
Đồ án tốt nghiệp – Tìm hiểu chuẩn IMS và xây dựng hệ thống thi trắc nghiệm
<mattext>Đúng</mattext>
</material>
</response_label>
<response_label ident="F">
<material>
<mattext>Sai</mattext>
</material>
</response_label>
</flow_label>
</render_choice>
</response_lid>
</flow>
</presentation>
<resprocessing>
<outcomes>
<decvar/>
</outcomes>

<respcondition title="Correct">
<conditionvar>
<varequal respident="TF01">T</varequal>
</conditionvar>
<setvar action="Set">1</setvar>
<displayfeedback feedbacktype="Response"
linkrefid="Correct"/>
</respcondition>
</resprocessing>
<itemfeedback ident="Correct" view="Candidate">
<flow_mat>
<material>
<mattext>Bạn đã trả lời đúng</mattext>
</material>
</flow_mat>
Phan Anh Tân – CNPM K44 –Khoa CNTT – ĐHBK Hà Nội
22
Đồ án tốt nghiệp – Tìm hiểu chuẩn IMS và xây dựng hệ thống thi trắc nghiệm
</itemfeedback>
</item>
</questestinterop>
1.4.2.1.2. Chọn một phương án (dạng văn bản)
Hình 1.9: Nội dung câu hỏi chọn một phương án dạng văn bản
Hình trên thể hiện một ví dụ tiêu biểu về loại câu chọn một phương án
(dạng văn bản). Người dùng cần lựa chọn một trong số các phương án được đưa ra
bằng các click chuột vào một trong các radio button tương ứng để trả lời câu hỏi.
1.4.2.1.3. Chọn một phương án (dạng ảnh)
Hình 1.10: Nội dung câu hỏi chọn một phương án dạng ảnh
Hình trên thể hiện dạng câu hỏi chọn một phương án sử dụng ảnh. Người
dùng cần click chuột vào một trong các radio button tương ứng để lựa chọn câu trả

lời thích hợp.
Phan Anh Tân – CNPM K44 –Khoa CNTT – ĐHBK Hà Nội
23
Đồ án tốt nghiệp – Tìm hiểu chuẩn IMS và xây dựng hệ thống thi trắc nghiệm
1.4.2.1.4. Chọn một phương án (dạng audio)
Hình dưới đây thể hiện câu hỏi chọn một phương án dạng audio, tức là
người dùng lắng nghe âm thanh phát ra từ máy tính để quyết định việc trả lời. Các
âm thanh tương ứng với các phương án chỉ phát ra khi người dùng kích hoạt lên
các biểu tượng biểu diễn tương ứng. Các biểu tượng này phụ thuộc vào từng hệ
thống. Hình này chỉ là ví dụ, chưa hiện ra các biểu tượng cần có.
H ình 1.11: Nội dung câu hỏi chọn một phương án dạng audio
1.4.2.1.5. Chọn nhiều phương án (dạng văn bản)
Hình 1.12: Nội dung câu hỏi chọn nhiều phương án dạng văn bản
Hình trên biểu diễn một câu hỏi chọn nhiều phương án (dạng văn bản).
Người dùng cần click chuột vào các check button tương ứng để lựa chọn câu trả
lời thích hợp.
Phan Anh Tân – CNPM K44 –Khoa CNTT – ĐHBK Hà Nội
24
Đồ án tốt nghiệp – Tìm hiểu chuẩn IMS và xây dựng hệ thống thi trắc nghiệm
1.4.2.1.6. Sắp xếp thứ tự các đối tượng (dạng văn bản)
Hình dưới đây biểu diễn một câu hỏi sắp xếp thứ tự các đối tượng. Người
dùng cần click chuột lên các văn bản tương ứng và thay đổi lại thứ tự của chúng.
Hình 1.13: Nội dung câu hỏi sắp xếp thứ tự các đối tượng dạng văn bản
1.4.2.1.7. Sắp xếp thứ tự các đối tượng (dạng ảnh)
Hình dưới đây thể hiện một câu hỏi sắp xếp thứ tự các đối tượng dạng ảnh.
Người dùng sử dụng chuột để di chuyển chúng và sắp xếp lại thứ tự của chúng.
Hình 1.14: Nội dung câu hỏi sắp xếp thứ tự các đối tượng dạng văn ảnh
1.4.2.2. Các mẫu câu hỏi dựa vào toạ độ
1.4.2.2.1. Chọn một phương án với vùng ảnh nhạy cảm
Hình dưới đây thể hiện mẫu câu hỏi chọn một phương án với vùng ảnh

nhạy cảm. Người dùng cần click chuột vào các radio button tương ứng để lựa chọn
câu trả lời thích hợp. Lưu ý điểm khác ở đây là các radio button được đặt tại
những toạ độ thích hợp.
Phan Anh Tân – CNPM K44 –Khoa CNTT – ĐHBK Hà Nội
25

×