Создание бесплатной программы для тестирования студентов

Обеспечение универсальности функций тестирования при разработке программы для тестирования студентов. Бесплатное программное обеспечение. Анализ выбора среды программирования. Особенности среды Delphi и СУБД MySQL. Описание алгоритма и блок-схемы.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 01.02.2013
Размер файла 1,6 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Содержание

  • Введение
  • Глава 2. Обзор аналогов
  • 2.1 Платное программное обеспечение
  • 2.1.1 Редактор для создания электронных тестов EasyQuizzy
  • 2.1.2 Автоматизированная информационная система контроля знаний Easy Test
  • 2.2 Бесплатное программное обеспечение
  • 2.3 Анализ выбора среды программирования
  • 2.3.1 Особенности среды Delphi
  • 2.3.2 Особенности СУБД MySQL
  • 3. Расчётная часть
  • 3.1 Общее описание алгоритма
  • 3.2 Общая блок-схема
  • 3.3 Описание блок-схемы
  • Заключение

Введение

Компьютерная программа - это последовательность инструкций, предназначенная для исполнения устройством управления вычислительной машины. Программа - один из компонентов программного обеспечения. В зависимости от контекста, рассматриваемый термин может относиться также и к исходным текстам программы. Компьютерные программы, как объект интеллектуальной собственности, относится к категории нематериальных активов.

Чаще всего образ программы хранится в виде исполняемого модуля (отдельного файла или группы файлов). Из этого образа, находящегося как правило на диске, исполняемая программа в оперативной памяти может быть построена программным загрузчиком.

В системном программировании существует более формальное определение программы как размещённых в оперативной памяти компьютера данных и машинных кодов, исполняемых процессором для достижения некоторой цели. Здесь подчёркиваются две особенности: нахождение программы в памяти и её исполнение процессором.

Процесс разработки программного обеспечения состоит из нескольких этапов, из которых в узком смысле лишь непосредственное создание программного кода носит название "программирование". В быту под программированием часто подразумевается весь процесс разработки ПО, а людей, занимающихся этим видом деятельности, называют программистами.

Запись исходных текстов программ при помощи языков программирования облегчает понимание и редактирование человеком. Этому, в частности, помогают комментарии, допустимые в синтаксисе большинства языков. Для выполнения на компьютере готовый текст программы преобразуется (компилируется) в машинный.

Некоторые языки программирования позволяют обходиться без предварительной компиляции программы и переводят её в инструкции машинного кода непосредственно во время исполнения. Этот процесс называется динамической компиляцией и он позволяет добиться большей переносимости программ между разными аппаратными и программными платформами при сохранении многих плюсов компиляции.

Исходные тексты компьютерных программ в большинстве языков программирования состоят из списка инструкций, точно описывающих заложенный алгоритм. Подобный подход в программировании называется императивным. Однако применяются и другие методологии программирования. Например, описание исходных и требуемых характеристик обрабатываемых данных и предоставление выбора подходящего алгоритма решения специализированной программе-интерпретатору - такой подход называется декларативным программированием. К декларативному программированию относятся функциональное и логическое, а также менее распространённые виды программирования.

Целью дипломного проекта является создание бесплатной программы для тестирования студентов.

Задачами данного проекта являются:

1) Обеспечение универсальности функций тестирования (приведение программы к универсальному виду, о котором говорилось выше),

2) Обеспечение стабильной работы и кросплатформенности.

3) Сделать программу максимально надёжной.

Тема дипломного проекта, является актуальной так как грамотно составленная программа позволяет тестировать студентов и составлять различного рода отчёты по проведённым тестированиям, что позволяет сэкономить много времени и бумажных ресурсов.

В XXI веке современный мир столкнулся с являем всеобщей компьютеризации и информатизации. Сегодня, мы можем найти компьютер почти в каждом доме, учебном заведении, или какой-либо организации. ЭВМ сильно упростили жизнь человеку, сейчас, компьютер способен выполнять расчёты, на которые у человека могут уйти месяцы, за несколько секунд, диагностировать заболевания, строить различные модели и проекции, с помощью которых можно увидеть какой была раньше наша планета, как выглядит живая клетка и т.д.

Современную систему образования так же постигла участь компьютеризации и информатизации. Сейчас, в учебный процесс активно внедряются компьютерные технологии. Постепенно, вся информация переходит в электронный вид. В настоящее время получили большое распространение программы для электронного тестирования студентов и школьников. Такие технологии являются наиболее удобными для преподавателя, поскольку, данный подход позволяет сэкономить кучу времени, а главное, критерии оценивания являются самыми объективными, так как машина не способна умышленно завышать, или занижать баллы.

Ещё одной особенностью такого программного обеспечения является то, что оно изначально может быть ориентировано под конкретную дисциплину, или быть универсальным (то есть, тестировать можно по любой дисциплине).

Технологии для электронного тестирования школьников и студентов являются наиболее удобными для преподавателя, поскольку, данный подход позволяет сэкономить кучу времени, а главное, критерии оценивания являются самыми объективными, так как машина не способна умышленно завышать, или занижать баллы.

Ещё одной особенностью такого программного обеспечения является то, что оно изначально может быть ориентировано под конкретную дисциплину, или быть универсальным (то есть, тестировать можно по любой дисциплине)

Основные преимущества программ для тестирования:

бесплатная программа тестирование студент

4) В некоторых программах такого рода в каждый пункт теста можно ввести не одно, а много понятий, за счет чего информационная емкость задания повышается;

5) Обеспечение стандартизации;

6) Обеспечение индивидуальности, самостоятельность, способствуют обучению детей процессуальному самоконтролю;

7) Обеспечение возможности преподавателю быстрой проверки знаний большого количества обучаемых по разным темам;

8) Тестирование - более справедливый метод, оно ставит всех учащихся в равные условия, как в процессе контроля, так и в процессе оценки, практически исключая субъективизм преподавателя.

9) Тестирование может включать в себя задания по всем темам курса. Это позволяет выявить знания учащегося по всему курсу, исключив элемент случайности при вытаскивании билета. При помощи тестирования можно установить уровень знаний учащегося по предмету в целом и по отдельным его разделам;

10) Способствуют большой накопляемости оценок;

11) Не создаёт тяжёлого чувства тревожности, как перед традиционной контрольной работой или экзаменом.

Тестирование имеет и ряд недостатков:

Исключение из процедуры контроля устного речевого компонента;

Снижение потребности выбора главного в прочитанном;

Тест не позволяет проверять и оценивать высокие, продуктивные уровни знаний, связанные с творчеством;

В тестировании присутствует элемент случайности (случайная ошибка, угадывание ответа);

Необходимость принятия специальных мер по обеспечению конфиденциальности тестовых заданий.

Глава 2. Обзор аналогов

Столкнувшись с задачей разработки собственной системы для создания и редактирования тестов, я не могла не сделать обзор по уже существующим программам, поскольку мне нужно было иметь какое-то представление о наборе функций, входящих в такие системы.

2.1 Платное программное обеспечение

2.1.1 Редактор для создания электронных тестов EasyQuizzy

Рассмотрим пример программы для тестирования на основе платной программы easyQuizzy.

EasyQuizzy - это программа, с помощью которой можно создавать и редактировать компьютерные тесты знаний. Используя подготовленные тесты, можно облегчить работу преподавателей при проведении ежедневных "быстрых" опросов учеников и ускорить проверку результатов, т.к. выставление оценки происходит автоматически на основе системы оценивания, выбранной при создании теста.

Программа easyQuizzy предоставляет единый последовательный интерфейс для создания тестов. Начните создание теста со вкладки "Информация о тесте". Сформулируйте название и описание теста, а также укажите автора теста.

Затем перейдите на вкладку "Вопросы и ответы". Добавление вопросов, вариантов ответов и последующий выбор правильных вариантов не должно вызвать затруднений.

В текст вопросов и вариантов ответов можно вставлять картинки, формулы и специальные символы.

После формирования списка вопросов, на вкладке "Настройки теста" настройте параметры теста: количество задаваемых вопросов и их порядок, систему оценивания, ограничение времени и формат итогового отчета.

При сохранении теста формируется независимая программа, которую достаточно скопировать на любой компьютер и запустить, чтобы начать тестирование.

Интерфейс тестов спроектирован так, чтобы при прохождении теста пользователь задумывался только над задаваемыми вопросами, а не над тем, как работать с программой.

Для ответа на вопрос достаточно выбрать правильный ответ (ответы) и подтвердить выбор.

По окончании тестирования выставляется рекомендуемая оценка.

Также имеется возможность распечатать итоговый отчет или сохранить его и отправить по электронной почте.

При составлении теста можно использовать следующие типы вопросов:

Альтернативный выбор

Выбор одного правильного ответа

Выбор нескольких правильных ответов

Установление правильной последовательности

Установление соответствия

Свободный ответ

В каждом тесте можно свободно совмещать вопросы всех трех типов.

Редактор тестов позволяет вставлять рисунки в любом формате и менять их размеры. При наличии на компьютере установленного пакета Microsoft Office 95 или более поздней версии, возможна вставка в тест формул Microsoft Equation.

На компьютерах тестируемых пользователей для отображения формул при запуске теста наличие пакета Microsoft Office не требуется.

Созданные тесты совместимы с операционными системами:

· Windows 2000;

· Windows XP;

· Windows Fundamentals for Legacy PC;

· Windows 2003 Server;

· Windows Vista;

· Windows Embedded;

· Windows 2008 Server;

· Windows 7;

а также:

· Linux, FreeBSD, Mac OS X и Solaris с установленным Wine

Также требуется:

· не менее 3 Мбайт свободного места на диске;

· для возможности редактирования формул с помощью Microsoft Equation необходим установленный пакет Microsoft Office 95 или более новая версия.

У данной программы удобный интерфейс и довольно много разных функций. Но помимо преимуществ, данная программа имеет свои недостатки, во-первых, - это высокая цена, во вторых, не смотря на большой перечень операционных систем, последние версии данной программы работают далеко не на каждой из них

2.1.2 Автоматизированная информационная система контроля знаний Easy Test

Автоматизированные информационные системы контроля знаний (АИСКЗ) EasyTest используются во многих областях, например:

· при проведении пробных ЕГЭ;

· при принятии теоретического экзамена в ГАИ;

· в различных тестах в Интернете (учебные, социологические опросы и т.д.).

АИСКЗ имеют ряд преимуществ по сравнению с традиционными методами контроля:

1. Процесс проверки заданий автоматизирован.

2. Выставление оценок происходит на основании количества правильно выполненных заданий теста.

3. Контроль знаний можно проводить на каждом занятии, так как такой контроль при малом количестве вопросов, выполняется очень быстро.

4. Оценка за знания ставится объективно и не зависит от преподавателя.

5. Все результаты проведенных тестов сохраняются, и всегда можно повторно вернуться к результатам.

6. У преподавателя всегда есть статистика по успеваемости учащихся.

7. Высокий уровень масштабируемости тестовых систем.

8. Хорошая защита от фальсификации результатов тестирования.

9. Возможность дистанционной проверки знаний учащегося находящегося, вне учебного заведения (например, по причине болезни)

Чтобы обеспечить совместимость с различными типами компьютеров и различными ОС, в качестве рабочей среды АИСКЗ был выбран Интернет (тип приложения - Web-приложение). Для работы Web-приложения нужен Web-браузер, который по умолчанию всегда устанавливается в современных операционных системах, поэтому преимущество такой схемы очевидно. Отсутствие Интернета не мешает использовать АИСКЗ, так как в любом учебном заведении есть локальная вычислительная сеть, и АИСКЗ может быть установлена на Web-сервер этой сети.

Для новой АИСКЗ были определены следующие требования:

1. Информационная система должна функционировать практически на любом компьютере и с любой ОС.

2. Информационная система должна иметь простой, понятный и удобный интерфейс.

3. Информационная система должна работать стабильно, гарантировать сохранность результатов тестирования.

4. Информационная система должна быть легко настраиваема, должна иметь установщик системы.

5. Информационная система должна использовать общую базу для хранения всех настроек системы.

6. Информационная система должна обеспечивать возможность масштабирования и инвариантности тестов.

7. В информационной системе должны быть реализованы механизмы визуализации результатов тестирования.

8. Информационная система должна быть защищена от возможности несанкционированного доступа.

9. Информационная система должна содержать простой механизм регистрации новых участников.

10. Информационная система должна иметь возможность демонстрации ошибок для участников тестов.

11. В информационной системе должна быть возможность размещения дополнительных учебных материалов.

12. В информационной системе должен быть электронный журнал с регистрацией имени, дня и времени посещения. Также в журнале должно быть записано время прохождения теста.

Рис. Взаимодействие пользователя с АИСКЗ

Пользователь составляет запрос посредством своего браузера, (браузер может быть любой - Internet Explorer, Opera, Mozilla Firefox, Apple Safari, Google Chrome). Браузер пользователя формирует запрос и передает его сетевой подсистеме операционной системы, которая посылает запрос на сервер, на котором находится АИСКЗ посредством канала связи (каналом может выступать Интернет или локальная сеть). Сервер принимает запрос, и передает запрос АИСКЗ. Скрипты АИСКЗ обрабатывают полученный запрос, и результат выполнения запроса пересылают обратно пользователю.

Рис. Логическая структура АИСКЗ

Пользователь формирует запрос на получение HTML-документа с PHP-кодом (например, запрос на вывод оценок какого-либо ученика) с помощью браузера и передает его Web-серверу через канал связи. Web-сервер, получив запрос, передает управление запрошенному PHP-скрипту. PHP-скрипт делает запрос на выбор данных из базы данных АИСКЗ и формируетHTML-документ на основе полученных данных.

Далее HTML-документ отправляется через канал связи обратно в браузер пользователя.

Рис. Физическая структура АИСКЗ

На схеме показано взаимодействие учеников и преподавателей с АИСКЗ. Ученики проходят тесты, отправляют результаты на Web-сервер через Интернет или Интранет. АИСКЗ записывает все результаты в базу данных АИСКЗ. Ученики могут запросить у АИСКЗ просмотр своих результатов. Преподаватели разрабатывают тестовые задания, и помещают их в базу данных АИСКЗ. Также они могут получить отчеты о выполненном тестировании.

Для создания системы мы использовали следующие технологии:

· XHTML (англ. Extensible Hypertext Markup Language - расширяемый язык разметки гипертекста) для разметки текста на странице.

· CSS (англ. Cascading Style Sheets - каскадные таблицы стилей) для описания внешнего вида системы.

· JavaScript (скриптовый язык программирования) для обеспечения в системе интерактивности и обеспечения безопасности вводимых данных в систему.

· PHP (англ. PHP: Hypertext Preprocessor - PHP: препроцессор гипертекста) для написания всей вычислительной части системы и работы с базой данных.

· MySQL (свободно распространяемая система управления базами данных) для хранения тестов, оценок, журналов АИСКЗ.

Рис. Главная страница АИСКЗ

Для начала работы с АИСКЗ предварительно необходимо пройти регистрацию, перейдя по ссылке "Регистрация”.

Рис. Регистрация в системе АИСКЗ

Необходимо ввести логин, пароль (2 раза) и адрес электронной почты, затем нажать кнопку "Готово”. Через некоторое время на указанный адрес электронный почты должно прийти сообщение со ссылкой на регистрацию нового пользователя.

После перехода по ссылке из письма новый пользователь будет активирован.

После выполнения регистрации можно зайти в систему АИСКЗ, используя данные регистрации.

После входа появляется главная страница АИСКЗ.

Рис. Главная страница АИСКЗ

Слева находится главное меню тестирующей системы. В нем содержится 3 пункта:

1. Просмотр тестов - здесь можно выбрать нужный тест и приступить к его выполнению.

2. Создание теста - этот пункт меню предназначен для создания нового теста.

3. Оценки - здесь можно узнать оценки за пройденные тесты.

Чтобы приступить к выполнению теста необходимо перейти на страницу "Просмотр тестов” и напротив нужного теста щелкнуть по ссылке "Начать”. После прохождения теста результат можно посмотреть на странице "Оценки

Рис. Оценки пользователя

Данная программа имеет лишь один недостаток: очень высокая цена.

2.2 Бесплатное программное обеспечение

В СПФ ВГИКе ранее писались подобные системы для создания и редактирования тестов. Одна из них написала студентом Волковым Александром, её и рассмотрим, как альтернативу.

Система состоит из двух программ: модуль администратора и модуль тестирования.

Алгоритм работы модуля администратора следующий. Он состоит из четырех модулей: модуля подключения, редактора тем и вопросов, оценок и отчетов. Начнем описывать все по порядку.

Модуль подключения. Первым пунктом идет загрузка данных (пароля и настроек). Далее если пароль и настройки верны, то идет подключение к серверу. Отдельным блоком идет разрыв соединения, который может наступить в любой момент, как по желанию пользователя, так и в зависимости от каких-либо обстоятельств.

Редактор опросника. Данный этап, как видно из рисунка, состоит из двух частей: реактора тем и редактора вопросов. Сперва заполняются темы, а уже потом, к каждой теме есть возможность создать вопросы. По умолчанию (как требовалось изначально) создаётся 1 вопрос, но их количество можно менять. Редакторы содержат стандартные функции создания, редактирования и удаления.

Пользователи. В данном модуле реализована возможность управления пользователями имеющих доступ к базе данных. Для этого в нём есть стандартные функции создания, редактирования и удаления пользователей. При создании пользователя необходимо указать имя и пароль, а так же задать его права.

Студенты. Для прохождения тестирования необходимо заранее занести имя, фамилию и номер группы каждого студента в базу данных. Для этого и предназначен данный модуль.

Модуль Оценок. Этот модуль небольшой по размеру и состоит всего из двух пунктов. В начале мы получаем уже готовые результаты тестирования, которые хранятся на сервере в базе данных, а потом выводим эти результаты на экран.

Модуль Отчетов. Данный модуль состоит из четырех этапов, которые, если объединить второй и третий пункты, можно было бы сократить до трех. Сначала мы берем уже готовые результаты, которые хранятся на сервере. Затем происходит их фильтрование и сортировка по указанным пользователем критериям и запросам. А после этого уже нужные данные можно распечатать в виде отчетов.

Модуль обложек. В данной программе использован механизм обложек или так называемых "скинов", что позволяет легко и просто менять интерфейс программы т.е. изменять стиль отображения элементов и различных визуальных эффектов. Для разработки обложки используется сторонняя программа, после чего файл обложки загружается в БД и может быть использован.

Алгоритм работы Модуля тестирования состоит из четырех модулей: Аутентификации, Выбора тем для опроса, Опроса и Результатов.

Модуль Аутентификации. Этот модуль состоит всего из трех пунктов. На первом тапе вводятся данные (фамилия, имя и группа студента). На втором этапе введенные данные пересылаются на сервер и происходит подключение. На последнем третьем этапе на сервере проверяется, опрашивался ли этот студент ранее. Если он не опрашивался, то в таблице создается еще одна строка с его учетной записью, а если он ранее уже опрашивался, то к уже созданной его строке добавляется только новое поле с новой датой проведения тестирования.

Модуль выбора теста для опроса. Этот модуль прост по своей сути. В начале мы получаем список направлений, по которым мог бы опрашиваться студент, затем выбираем направление и как только мы его выбрали, у нас появляется список предметов этого направления. При смене направления список обновляется и изменяется. На последнем этапе мы выбираем предмет для тестирования.

Модуль Результат. Данный модуль достаточно небольшой по размеру, но зато очень важный по значению. Он отвечает за вывод результатов, которые берутся с сервера и выводятся на экран. Далее идет разрыв соединения с сервером.

Модуль администратора нужен для занесения списка направления тестирования, предметов, вопросов по ним, просмотра оценок, создания отчётов, а так же для формирования списка студентов. Доступ к нему может быть только под учетной записью оператора базы данных, который обладает правами администратора. База данных Модуля администратора ведёт работу с таблицами: Subject (Предмет), Theme (Тема выбранного предмета) и Question (вопрос по дисциплине), Q_Illustration (Иллюстрации к вопросу), Answer (Ответы на вопрос), Test (Перечень всех опросов студентов), Student (Содержит всех студентов подлежащих опросу), User (Список пользователей которым доступны функции администрирования), Skin (Хранит обложки для программы).

Рис. Таблицы базы данных редактора опроса

Как видно из рисунка, целостность таблиц Subject и Theme поддерживается с помощью полей id_subject содержащихся в обоих таблицах, в таблицах Theme и Question с помощью полей id_theme, а в таблицах Question и Q_Illustration целостность поддерживается с помощью полей id_question PK - первичный ключ таблицы, FK вторичный ключ.

Рис. Таблицы базы данных Модуля тестирования

Как видно из рисунка основных таблиц всего 8, и 2 вспомогательных для хранения списка студентов и обложек. Первая содержит информацию о студенте: его имя, фамилию, номер группы и порядковый номер (всё, что нужно для авторизации). Вторая таблица отвечает за стили отображения кнопок, панелей, меню и прочих элементов программы. Порядковому номеру студента соответствует время, дата тестирования, а так же оценка которые запрашиваются у СУБД, тем самым, обеспечивая точное время проведения опроса.

Модуль администратора выглядит следующим образом. При загрузке программы у нас появляется главное меню.

Главное меню программы представляет собой набор вкладок, каждая из которых ссылается на свой модуль.

Вкладка редактор опросника предоставляет возможность редактировать уже созданные и добавлять новые темы предметы, а также создавать набор вопросов к ним.

После перехода на вкладку отчёты и оценки нам представляется возможным выбрать критерии сортировки выборки и количество полей отображаемых данных.

Именно здесь происходит фильтрация, создание отчетов и печать результирующих ведомостей. Информация, отбираемая путём различных критериев, отображается в одной результирующей таблице, в случаи необходимости она же и выводится на печать.

После выхода из главного меню Модуля администратора соединение с сервером у нас разрывается.

Модуль Тестирования выглядит следующим образом. На рисунке 4.10 представлено окно Аутентификации. Здесь всего три поля, в которые тестируемый студент должен занести свою фамилию, имя и номер группы. Для продолжения надо нажать кнопку Далее. Если по каким-либо причинам необходимо прервать тестирование. Нужно лишь закрыть окно.

Если пользователь нажмет кнопку "Далее”, но у него появится следующее окно.

В верхней части выбирается предмет для тестирования. Например, математика или информатика. Данные предметов были сделаны для того, чтобы нельзя было перепутать тесты по одинаковым темам, но для разных специальностей и курсов. В нижней части располагается список тем, относящийся к тому или иному предмету. Меняя предмет, нижний список предметов автоматически обновляется. Для выбора предмета необходимо просто выбрать его левой кнопкой мыши в выпадающем списке. Затем нажать кнопку опрос. И на экране появится окно самого теста.

В левой верхней части написан вопрос. Левое нижнее поле предназначено для картинок, которые могут содержаться в вопросе. В правой части расположены поля с вариантами ответов. Чтобы выбрать на ваш взгляд правильный, необходимо нажать на точечку или галочку (в зависимости от того сколько правильных вариантов ответа может быть у вопроса), слева от правильного варианта. Для перехода к следующему, предыдущему, первому или последнему вопросам есть группа кнопок слева. Также есть возможность перейти к какому-то определенному вопросу. После того, как будут стоять ответы на все вопросы, можно закончить тестирование, по нажатию которой проверяется правильность ответов, результаты отсылаются на сервер и записываются там в таблицу.

На последнем этапе на экране появляется окно с результатами тестирования.

Данная программа имеет ряд достоинств: удобный пользовательский интерфейс, высокая степень надёжности; недостатки: сложность настройки программы, количество компьютеров, с которыми одновременно может работать программа ограничено, код закрыт, пересборка не возможна.

2.3 Анализ выбора среды программирования

2.3.1 Особенности среды Delphi

Данная среда программирования была выбрана мной из-за того, что язык программирования Delphi я знаю лучше всего и данный язык преподаётся в нашем колледже, к тому же, у этой среды весьма удобный интерфейс для разработки и поддерживаются все функции, которые потребуются мне при разработке системы для создания и редактирования тестов.

Основной упор модели в Delphi делается на максимальном не использовании кода. Это позволяет разработчикам строить приложения весьма быстро из заранее подготовленных объектов, а также дает им возможность создавать свои собственные объекты для среды Delphi. Никаких ограничений по типам объектов, которые могут создавать разработчики, не существует. Действительно, все в Delphi написано на нем же, поэтому разработчики имеют доступ к тем же объектам и инструментам, которые использовались для создания среды разработки. В результате нет никакой разницы между объектами, поставляемыми Borland или третьими фирмами, и объектами, которые можно создать.

Рис. Среда разработки визуальных приложений

В стандартную поставку Delphi входят основные объекты, которые образуют удачно подобранную иерархию из 270 базовых классов. На Delphi можно одинаково хорошо писать как приложения к корпоративным базам данных, так и программы для измерительных систем. Разработка интерфейса в Delphi является довольно простой задачей для программиста.

Delphi обеспечивает исчерпывающую библиотеку классов - Визуальную Компонентную Библиотеку (VCL), Библиотека Borland Component (CLX), и блок Быстрой разработки (RAD) инструментальные средства, включая приложение и шаблоны форм, и мастера. Delphi объектно-ориентированное программирование.

Из нестандартных улучшений Borland, внесенных в объектный Pascal надо отметить свойства (Properties) и перезагружаемость процедур и функций (Overloading).

Достоинством Delphi является простота, скорость и эффективность. Delphi имеет самый быстрый из всех компилятор. Другим достоинством является простота изучения Object-Pascal. Библиотека VCL позволяет программировать и в среде Windoows API. Модель программирования в Delphi компонентная, что позволяет использовать множество уже созданных компонент, создавать свои и использовать дополнительные чужие. К достоинствам можно отнести достаточно быстрый браузер классов и мгновенный вывод подсказки авто завершения кода.

Недостатком Delphi можно назвать наличие меньшего числа функций, чем у C++: не достает шаблонов, перегрузки операторов и объектной модели, похожей на модель C++. После использования объектов их надо уничтожить, вызывая метод Free. В C++ объекты уничтожаются автоматически при выходе из зоны видимости. Кроме того, заметно разрастание ехе-файлов, генерируемых Delphi.

Компилятор встроенный в Delphi обеспечивает трансляцию Object Pascal программы в объектный код, выявляет синтаксические ошибки, обрабатывает исключительные ситуации, позволяет производить отладку, осуществляет линковку и создает исполняемый модуль. В Delphi компиляция производится непосредственно в машинный код.

Особенности технологии CodeInsight в редакторе кодов это интеллектуальный редактор, позволяющий выполнять копирование/вставку, выбор из списка зарезервированных слов, указание вида и места синтаксических ошибок.

В Delphi используется Инкапсуляция (объединение записей с процедурами и функциями), Наследование (использование объекта для построения иерархии порожденных объектов), Полиморфизм (задание одного имени действию, которое передается вверх и вниз по иерархии объектов) - традиционные для ООП.

Visual Componentes Librares (VCL) - это иерархия из 270 базовых классов. построения пользовательского интерфейса, объекты управления данными, графические объекты, объекты мультимедиа, диалоги и объекты управления файлами, управление DDE и OLE

Borland Database Engine (BDE) - препроцессор операционной системы обеспечивает доступ к объектам БД в Delphi, основанным на SQL: Oracle, Sybase, Informix и InterBase, файлам формата. dbf, или. db (Paradox) или. mdb (Access).

Уникальные возможности Delphi состоят в том, что разработчики могут добавлять CASE-инструменты, кодовые генераторы, а также авторские help'ы, доступные через меню Delphi.

Технология Two-way tools обеспечивает однозначное соответствие между визуальным проектированием и классическим написанием текста программы. Это означает, что разработчик всегда может видеть код, соответствующий тому, что он построил при помощи визуальных инструментов и наоборот.

Инспектор объектов представляет из себя отдельное окно, где можно в период проектирования программы устанавливать значения свойств и событий объектов (Properties & Events).

Менеджер проектов дает возможность разработчику просмотреть все модули в соответствующем проекте и снабжает удобным механизмом для управления проектами.

Основа Object Pascal это механизм Run-Time Туре Information (RTTI), т.е. информации о типах на этапе выполнения программы и свойств объектных типов - классов, с понятием свойства (property); а также обработки исключительных ситуаций (exception handling).

Делегирование события означает прикрепление кода, обрабатывающего действие какого-либо интерактивного элемента, например, кнопки, нажатие на которую фактически использует делегирование кода для ассоциирования кода с событием onclick.

Основные файлы проекта Delphi это PROJECT1. DPR, UNIT1. PAS, UNIT1. DFM - сведения о форме,PROJECT1. RES содержит иконку для проекта, PROJECT1. OPT по умолчанию, является текстовым файлом для сохранения установок, связанных с данным проектом, После компиляции программы получаются файлы с расширениями: DCU - скомпилированные модули, EXE - исполняемый файл. Установки Editor Options сохраняются в файле DELPHI. INI, который находится в директории Windows.

Технология редактирования ошибок программы предусматривает переход к фрагменту кода, который содержит ошибку, при этом надо установить курсор в строку с сообщением об ошибке и из контекстного меню выбрать команду Edit source.

Предупреждения и подсказки появляются при обнаружении в программе неточностей, которые не являются ошибками, компилятор выводит подсказки (Hints) и предупреждения (warnings).

Ошибки времени выполнения (run-timeerrors) или исключения (exceptions).

Страница настроек Линкера Options позволяет произвести выбор установок, которые напрямую влияют на текущий проект, это могут быть, к примеру, директивы компилятора проверки стека (stack checking) или диапазона (rangechecking).

Страница настроек Directories/Conditionals Options дает возможность расширить число директорий, в которых компилятор и линковщик ищут DCU файлы.

Страница настроек Editor Options позволяет настроить тонкие детали работы Редактора.

Страницы настроек EditorOptions, EditorDisplay и EditorColors позволяют изменить цвета и "горячие" клавиши, используемые IDE.

Пять основных окон ООП среды программирования Delphi:

дизайнер Форм (Form Designer);

окно Редактора Исходного Текста (Editor Window);

палитра Компонент (Component Palette);

инспектор Объектов (Object Inspector);

справочник (On-line help).

Структурная обработка исключительных ситуаций это система, позволяющая программисту при возникновении ошибки (исключительной ситуации) связаться с кодом программы, подготовленным для обработки такой ошибки. Это выполняется с помощью директив, которые как бы "охраняют” фрагмент кода программы и определяют обработчики ошибок, которые будут вызываться, если что-то пойдет не так в "охраняемом” участке кода.

Основные компоненты Delphi:

Компонент Edit. Text позволяет производить чтение текста из окна Edit

Компонент TCheckBox отображает строку текста с маленьким окошком рядом.

Компонент TRadioButton позволяет выбрать только одну опцию из нескольких.

Компонент TListBox нужен для показа прокручиваемого списка.

Компонент TStringGrid служит для представления текстовых данных в виде таблицы.

Компонент TMainMenu позволяет поместить главное меню в программу.

Компонент TPopupMenu позволяет создавать всплывающие меню.

Компонент TBitBtn представляет кнопку, на которой можно разместить картинку.

Компонент TDrawGrid служит для представления данных любого типа в виде таблицы. Доступ к каждому элементу таблицы происходит через свойство CellRect.

Компонент TImage отображает графическое изображение на форме. Воспринимает форматы BMP, ICO, WMF. Если картинку подключить во время дизайна программы, то она прикомпилируется к EXE файлу.

Компонент TShape служит для отображения простейших графических объектов на форме: окружность, квадрат и т.п.

Диалоги Windows организуются компонентами диалога: OpenDialog - выбрать файл, SaveDialog - сохранить файл, FontDialog - настроить шрифт, ColorDialog - выбор цвета, PrintDialog - печать, PrinterSetupDialog - настройка принтера.

Компонент страницы System - TTimer это таймер, событие OnTimer периодически вызывается через промежуток времени, указанный в свойстве Interval. Период времени может составлять от 1 до 65535 мс.

Компонент страницы System - TFileListBox это специализированный ListBox, в котором отображаются файлы из указанной директории (св-во Directory).

Компонент страницы System - TDirectoryListBox это специализированный ListBox, в котором отображается структура директорий текущего диска. В св-ве FileList можно указать TFileListBox, который будет автоматически отслеживать переход в другую директорию.

Компонент страницы System - TDriveComboBox это специализированный ComboBox для выбора текущего диска. Имеет свойство DirList, в котором можно указать TDirectoryListBox, который будет отслеживать переход на другой диск.

Компонент страницы System - TMediaPlayer служит для управления мултимедйными устройствами (типа CD-ROM,MIDI и т.п.). Выполнен в виде панели управления с кнопками Play, Stop, Record и др.

Интегрированная среда разработки проекта. Пять основных окон интегрированной среды разработки: главное, форма, окно редактирования кодов, объект инспектор, броузер.

Особенностью интегрированной среды разработки является визуальное (а, следовательно, и скоростное) построение приложений из программных прототипов.

Компиляция, линкование и запуск программ. Задачу преобразования исходной программы в машинный код выполняет специальная программа - компилятор.

Компилятор выполняет последовательно две задачи:

1. Проверяет текст исходной программы на отсутствие синтаксических ошибок.

2. Создает (генерирует) исполняемую программу - машинный код.

При возникновении ошибки в программе, запущенной из Delphi, среда разработки прерывает работу программы, о чем свидетельствует заключенное в скобки слово Stopped в заголовке главного окна Delphi, и на экране появляется диалоговое окно, которое содержит сообщение об ошибке и информацию о типе (классе) ошибки.

Компиляция программы, в которой есть алгоритмическая ошибка, завершается успешно. При пробных запусках программа ведет себя нормально, однако при анализе результата выясняется, что он неверный. Для того чтобы устранить алгоритмическую ошибку," приходится анализировать алгоритм, вручную "прокручивать" его выполнение.

Типы данных и выражений. К типам данных относятся целочисленные, вещественные, логические, строковые и символьные:

Shortint - 128-127 8 битов

Smallint - 32 768 - 32 767 16 битов

Longint - 2 147 483 648 - 2 147 483 647 32 бита

Int64 - 263 - 263 - 1 64 бита

Byte 0-255 8 битов, беззнаковый

Word 0-65 535 16 бит, беззнаковый

Longword 0 - 4 294 967 295 32 бит беззнаковый

универсальный целый тип - Integer

Real 48

Single 04

Double 08

Extended 10

Comp 08

Currency08

универсальный вещественный тип - Real

тип Ansichar - это символы в кодировке ANSI, которым соответствуют числа в диапазоне от 0 до 255;

типwidechar - это символы в кодировкеUnicode, им соответствуют числа от 0 до 65 535.

ObjectPascal поддерживает и наиболее универсальный символьный тип -

Char

тип shortstring представляет собой статически размещаемые в памяти компьютера строки длиной от 0 до 255 символов;

тип Longstring представляет собой динамически размещаемые в памяти строки, длина которых ограничена только объемом свободной памяти;

тип WideString представляет собой динамически размещаемые в памяти строки, длина которых ог-раничена только объемом свободной памяти. Каждый символ строки типа WideString является Unicode-символом

тип string эквивалентен типу shortstring.

Boolean.

Проектирование и инициализация общих элементов управления предполагает использование:

интерфейса присоединения Drag-and-Dock;

интерфейса переноса Drag-and-Drop;

усовершенствованного масштабирования;

управления фокусом;

управления мышью;

ярлыков.

Создание всплывающих подсказок. Если задержать курсор, например, над кнопкой или компонентом палитры самой среды Delphi, появляется маленький прямоугольник яркого цвета (окно подсказки), в котором одной строкой сказано о названии этого элемента или связанном с ним действии. Delphi поддерживает механизмы создания и отображения таких ярлычков в создаваемых программах.

Технология разработки программы в Delphi для широкого применения включает этапы:

Спецификация (определение, формулирование требований к программе).

Разработка алгоритма.

Кодирование (запись алгоритма на языке программирования).

Отладка.

Тестирование.

Создание справочной системы.

Создание установочного диска (CD-ROM).

В процессе построения приложения разработчик выбирает из палитры компонент готовые компоненты. Еще до компиляции он видит результаты своей работы - после подключения к источнику данных их можно видеть отображенными на форме, можно перемещаться по данным, представлять их в том или ином виде. Пользователь также может присоединить к библиотеке свои собственные компоненты, которые он разрабатывает в среде Delphi.

Рабочий экран Delphi (версия Delphi-6) имеет 4 основных окна: главное окно Delphi; окно формы Form1; окно инспектора объектов Object Inspector и окно редактора кода Unit1. pas

2.3.2 Особенности СУБД MySQL

MySQL - свободная система управления базами данных (СУБД). MySQL является собственностью компании Oracle Corporation, получившей её вместе с поглощённой Sun Microsystems, осуществляющей разработку и поддержку приложения. Распространяется под GNU General Public License или под собственной коммерческой лицензией. Помимо этого разработчики создают функциональность по заказу лицензионных пользователей, именно благодаря такому заказу почти в самых ранних версиях появился механизм репликации.

MySQL является решением для малых и средних приложений. Входит в состав серверов WAMP, AppServ, LAMP и в портативные сборки серверов Денвер, XAMPP. Обычно MySQL используется в качестве сервера, к которому обращаются локальные или удалённые клиенты, однако в дистрибутив входит библиотека внутреннего сервера, позволяющая включать MySQL в автономные программы.

Гибкость СУБД MySQL обеспечивается поддержкой большого количества типов таблиц: пользователи могут выбрать как таблицы типа MyISAM, поддерживающие полнотекстовый поиск, так и таблицы InnoDB, поддерживающие транзакции на уровне отдельных записей. Более того, СУБД MySQL поставляется со специальным типом таблиц EXAMPLE, демонстрирующим принципы создания новых типов таблиц.

Благодаря открытой архитектуре и GPL-лицензированию, в СУБД MySQL постоянно появляются новые типы таблиц.

Выбранное мной программное обеспечение отличается простотой и удобством, а так же, в нём есть все компоненты, которые мне понадобятся при разрабоки собственной программы, поэтому, свой выбор я остановила именно на данных средах разработки.

3. Расчётная часть

3.1 Общее описание алгоритма

1) Начало

2) Выбор режима

3) Если выбран режим преподавателя, вывести процедуру аутентификации, в случае успешного выполнения предоставить доступ к вывобру режимов просмотра, либо организации тестирования, соответственно, доступ предоставляется так же к специальным возможностям пользователя и возможности сохранения сделанных настроек.

4) Если выбран режим студента, то доступ предоставляетмся к панели регистратора, далее, происходит тестирование, вывод результатов, с возможностью подробного просмотра и сохранение результатов.

5) Конец

3.2 Общая блок-схема

3.3 Описание блок-схемы

При запуске программы мы оказываемся в главном меню, где предоставляется выбор между двумя режимами "Преподаватель" и "Студент".

При выборе режима "Преподаватель", мы обязаны пройти процедуру аутентификации, если таковая проходит успешно, то доступ к информации открывается. Здесь есть два варианта: либо режим обучения/просмотра (позволяет просмотреть программу, выполнить какие-либо загрузки, настройки, сформировать отчёты по уже проведённым работам и в целом ознакомиться с принципом работы программы), либо режим организации тестирования (предоставляет практически те же возможности, но без формирования отчётов и контроль настроек идёт более жёсткий).

После того, как все настройки выполнены, студенты могут приступать к тестированию. Когда мы входим в режим "Студент", то сразу попадаем на панель регистрации, где нужно указать какие-либо данные о себе, далее, начинается процедура тестирования. Как только студент готов, он нажимает на "Завершить", программа уточняет, желает ли студент закончить. Получив подтверждение, программа переносит его на панель результатов, где можно просмотреть результаты более подробнее. Далее, студент сохраняет данные о себе, после этого, программа спрашивает, желаете ли вы окончить тестирование, если подтверждение было, то всплывает запрос о закрытии программы, если пользователь подтверждает, то программа закрывается, в противном случае, мы возвращаемся в режим "Студент".

Заключение

Целью дипломного проекта являлось создание бесплатной программы для тестирования студентов.

Задачами данного проекта являлись:

12) Обеспечение универсальности функций тестирования (приведение программы к универсальному виду, о котором говорилось выше),

13) Обеспечение стабильной работы и кросплатформенности.

14) Сделать программу максимально надёжной.

Тема дипломного проекта, является актуальной так как грамотно составленная программа позволяет тестировать студентов и составлять различного рода отчёты по проведённым тестированиям, что позволяет сэкономить много времени и бумажных ресурсов.

Достоинствами программы являются следующие критерии:

1) Высокая степень надёжности;

2) Высокая степень стабильности работы;

3) Кросплатформенность;

4) Лёгкий интуитивно понятный интерфейс и встроенные справки на случай надобности пользователю;

5) Читабельный программный код, удобный для пересборки;

6) Надёжные алгоритмы обработки.

Недостатками программы являются следующие критерии:

1) Не самые эффективные алгоритмы;

2) Не выявлены все баги.

Для разработки проекта были выбрны следующие компоненты:

1) Программная среда Delphy 7;

2) СУБД MySQL Server;

3) Операционная система Windows XP.

Программа совместима со следующими операционными системами:

Windows XP 95/ ME/ 98/ 2000/vista/7

GNU/Linux (wine 1.4)

Mac Os (wine)

В ходе выполнения проекта интерфейс программы переделывался несколько раз, добавлялись новые возможности, первые версии уже набирают популярность среди обычных пользователей в сетях, начиная с текущей версии, работа была оптимизирована, использована СУБД mysql server, что кроссплатформенность позволило добавить следующие возможности: формирование различного рода отчётов о проведённых работах по различным критериям и улучшить процедуру аутентификации пользователя. Так же, была добавлена возможность сохранения настроек, что позволяет экономить ещё больше времени преподавателю. Поставленные задачи были выполнены, цель достигнута.

Размещено на Allbest.ru


Подобные документы

  • Проектирование программы в среде Delphi для тестирования знаний студентов по программированию, с выводом оценки по окончанию тестирования. Разработка экранных форм и алгоритма программы. Описание программных модулей. Алгоритм процедуры BitBtn1Click.

    курсовая работа [365,0 K], добавлен 18.05.2013

  • Разработка программы тестирования студентов по MS PowerPoint с кодом на языке Delphi. Создание алгоритма для решения функциональных требований задачи. Описание переменных, вспомогательных процедур, входных и выходных данных для реализации программы.

    курсовая работа [1,5 M], добавлен 21.09.2010

  • Виды организации контроля знаний и умений учащегося. Формирование независимой и объективной информации о результатах учебного процесса для обучаемого и обучающего. Обоснование выбора программы тестирования знаний студентов младших курсов по информатике.

    курсовая работа [488,8 K], добавлен 03.09.2016

  • Разработка головоломки на основе гравюры Альбрехта Дюрера "Магический квадрат". Главные составные части среды программирования Delphi, особенности ее стандартных компонентов и процесса сохранения программы. Компоненты и алгоритмы создаваемой программы.

    курсовая работа [147,1 K], добавлен 05.02.2015

  • Основные функции, требования и характеристики системы тестирования. Создание современной модели WEB-сервиса тестирования знаний студентов с помощью средств WEB-разработки. Описание пользовательского интерфейса сайта, этапы прохождения тестовых заданий.

    курсовая работа [6,4 M], добавлен 14.07.2012

  • Разработка программы проверки знаний для тестирования студентов по программированию с кодом на языке Delphi. Проектирование визуального интерфейса и словесный алгоритм работы программы. Алгоритмы разработанных процедур и функций, инструкция пользователя.

    курсовая работа [506,5 K], добавлен 21.02.2011

  • Разработка программы для тестирования студентов в интегрированной среде разработки Lazarus. Создание формы, отображение графического изображения, выхода, ответа, завершения теста. Процесс выбора ответа студентом. Исходный вид программы тестирования.

    курсовая работа [388,4 K], добавлен 23.12.2014

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.