ння і проведення комп'ютерного тестування, збору та аналізу результатів, виставлення оцінки за вказаною в тесті шкалою.
Програма MyTest X працює з дев'ятьма типами завдань: одиночний вибір, множинний вибір, встановлення порядку проходження, встановлення відповідності, вказівка ??істинності чи хибності тверджень, ручне введення числа (чисел), ручне введення тексту, вибір місця на зображенні, перестановка букв. Завдання типу так/ні легко можна отримати, використовуючи тип з одиночним вибором. У тесті можна використовувати будь-яку кількість будь-яких типів, можна тільки один, можна і все відразу.
Серед недоліків цієї системи щодо поставленого завдання є відсутність необхідних типів завдань, а також закритий вихідний код системи.
Малюнок 1.3 - Вікно тестованого в системі MyTestX
Система тестування знань Moodle
Moodle [3] (малюнок 1.4) - система управління курсами (електронне навчання), також відома як система управління навчанням або віртуальна навчальна середовище (англ.). Являє собою вільне (розповсюджується за ліцензією GNU GPL) веб-додаток, що надає можливість створювати сайти для онлайн-навчання.
Система реалізує філософію педагогіки соціального конструкціонізму і орієнтована насамперед на організацію взаємодії між викладачем і учнями, хоча підходить і для організації традиційних дистанційних курсів, а також підтримки очного обученія.переведена на десятки мов, в тому числі і російська і використовується майже в 50 тисячах організацій з понад 200 країн світу. У РФ зареєстровано більше 1000 інсталяцій. Кількість користувачів Moodle в деяких інсталяціях досягає 500000 чоловік.
Лідером і ідеологом системи є Martin Dougiamas з Австралії. Проект є відкритим і в ньому бере участь і безліч інших розробників. Русифікацію Moodle здійснює команда добровольців з Росії, Білорусії та України.
Серед недоліків цієї системи щодо поставленого завдання є відсутність необхідних типів завдань, а також те, що настройка системи займає надто багато часу і вимагає спеціальних навичок, так як вона має Web - інтерфейс.
Малюнок 1.4 - Демонстраційний сайт системи Moodle
. 3 Обгрунтування вибору інструментального середовища розробки програмного забезпечення системи
Основним завданням даної роботи є автоматизація тестування знань учнів програмуванню. Для виконання цієї мети буде розроблена програмна система для тестування знань. Щоб це зробити необхідно вибрати мову програмування і середовище програмування максимально підтримують розробку програмних додатків з доброзичливим і сучасним інтерфейсом користувача. Внаслідок цього були відкинуті мови низького рівня, такі як Assembler і C. Серед мов високого рівня була вибрана мова C ++, оскільки він володіє необхідним набором засобів для реалізації даного завдання, має велику кількість довідкової інформації, а також присутня велика кількість бібліотек класів для роботи з ним. Серед середовищ програмування були варіанти Borland C ++ Builder, Visual Studio, Qt Creator (малюнок 1.5).
Малюнок 1.5 - Графічна середа розробки Qt Creator
Була обрана середу Qt Creator версії 2.8.1 і бібліотека Qt 4.8.5, так як вона володіє наступними перевагами:
- велика бібліотека класів Qt для роботи на мові C ++;
- велика довідкова система;
- велика спільнота Qt-project, яке підтримує і розвиває бібліотеку Qt;
- безкоштовність використання бібліотеки Qt версії 4.8.5;
- кроссплатформенность додатків написаних з використанням бібліотеки Qt.
Цільовий операційною системою була обрана Windows XP, так як саме ця версія Windows є домінуючою на ринку операційних систем всередині навчальних закладів України. Так само можливе збірка проекту під інші операційні системи, які підтримуються бібліотекою Qt після проведення мінімальних змін у вихідному коді проекту.
. 4 Обгрунтування вибору технічної платформи розроблюваної системи
Ефективність розроблюваної системи забезпечується при наявності таких технічних умов експлуатації:
- Процесор 2.2 GHz;
- ОЗУ 512 МБ;
- 200 МБ вільного простору на жорсткому диску;
- Монітор (дозвіл 1024х768);
- Миша;
- Клавіатура.
1.5 Завдання випускної роботи
Мета роботи: зниження термінів і підвищення якості тестування знань учнів програмуванню.