Программы по организации практических занятий по криптографическим дисциплинам

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

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

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

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

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

- высоким уровнем;

- строгой ориентацией на символьные вычисления;

- возможностью инверсных вычислений, то есть переменные в процедурах не делятся на входные и выходные;

- возможной логической неполнотой, поскольку зачастую невозможно выразить в программе определенные логические соотношения, а также невозможно получить из программы все выводы правильные [25].

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

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

- Объектно-ориентированные системы предназначены для изменений. Второе преимущество объектно-ориентированных систем обусловлено способом взаимосвязи объектов через сообщения. Гибкость объектно-ориентированных систем является неоспоримым преимуществом для пользователей в быстро меняющихся средах, например, в технологии программирования. Так, Computer Science Corporation использовал объектно-ориентированный язык Smalltalk для разработки продукта Design Generator. Компания отмечает, что благодаря использованию объектно-ориентированной технологии, разработчики программ имеют возможность быстро реагировать на новые течения рынка в условиях возрастающей конкуренции.

- Объекты могут использоваться несколько раз. Третье преимущество объектно-ориентированных систем заключается в том, что классы могут наследовать процедуры от других классов. Компания может составить библиотеки наиболее часто используемых классов, содержащих процедуры, предназначенные для специфических нужд и применяющихся в последующих прикладных задачах. В прошлом библиотеками подпрограмм пользовались разработчики ПО для решения стандартных задач типа математических вычислений. Объектно-ориентированные системы дают более широкий спектр многократного использования текстов программ. Библиотеки объектов также можно приобретать от независимых поставщиков. В настоящее время наиболее активно покупают такие библиотеки классов для создания пользовательских интерфейсов с пиктограммами. Разработка и написание таких интерфейсов с нуля - задача нелегкая. Компании типа Apple и Whitewater Group поставляют инструментарии для быстрого построения таких интерфейсов на основе нескольких базовых классов типа Window, Menu, ScrollBar и Icon. Пользователи могут использовать как эти классы, так и их подклассы, добавляющие в интерфейс, например, специальные пиктограммы.

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

Вследствие этих преимуществ, а также еще ряда причин, объектно-ориентированное программирование (ООП) является в настоящее время самым перспективным, распространенным и эффективным направлением в программировании [35].

2.5.2 Обоснование выбора языка программирования

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

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

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

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

Delphi - самая современная система программирования и в тоже время доступна для освоения даже начинающим [31].

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

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

Delphi - язык и среда программирования, относящаяся к классу RAD- (Rapid Application Development - «Средство быстрой разработки приложений») средств CASE - технологии. Delphi сделала разработку мощных приложений Windows быстрым процессом, доставляющим вам удовольствие. Приложения Windows, для создания которых требовалось большое количество человеческих усилий например в С++, теперь могут быть написаны одним человеком, использующим Delphi. [29]

Выгоды от проектирования АРМ в среде Windows с помощью Delphi:

1. Устраняется необходимость в повторном вводе данных;

2. Обеспечивается согласованность проекта и его реализации;

3. Увеличивается производительность разработки и переносимость программ [31].

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

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

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

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

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

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

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

Огромное количество характеристик для Windows, полностью поддерживаются Delphi. А так как операционная система Windows в последнее время пользуется наибольшей популярностью, соответственно делает Delphi современным языком программирования, отвечающим всем требованиям операционных систем.[29]

Приведенные выше характеристики, доказывают, что наиболее подходящим языком для разработки является Borland Delphi. Именно он лег в основу данной работы.

2.6 Цели и задачи разрабатываемой обучающей программы

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

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

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

Внедрение компьютерных технологий в процесс обучения позволяет:

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

2. избавить студента от процедуры поиска и покупки книг;

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

4. совершенствование методов изложения материала на основе анализа результатов периодического тестирования студентов по каждой теме;

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

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

Актуальность данной работы обусловлена:

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

2. созданием автоматизированного учебника, посвященного изучению криптографических дисциплин Visual FoxPro, являющейся наиболее распространенной в настоящее время;

Целью данной диссертационной работы является разработка обучающей программы Visual FoxPro. Разработка направлена на существенное облегчение преподавания по предмету «Криптографические протоколы» и систематический контроль знаний получаемых студентами, основанных на современных методиках обучения с применением компьютерной техники. Лекционный материал составлен таким образом, что дает необходимые знания для разработки готовых приложений без привлечения помощи преподавателя. Контролирующая часть позволяет объективно оценить полученные знания, разбивая весь учебный процесс на отдельные темы, что позволяет применять данную программу на всем этапе обучения, начиная с самой первой лекции.

На мой взгляд, необходимость данной темы обусловлена тем, что создаваемая обучающая программа представляет универсальное пособие для студентов по дисциплине («Криптографические протоколы»), входящей в федеральный и региональный компоненты многих специальностей и включает в себя:

1. теоретический курс по дисциплине «Криптографические протоколы»;

2. комплекс лабораторных работ;

3. тестовый блок, включающий в себя не только тестирование по дисциплине «Криптографические протоколы», но и тест для оценки обучающегося.

ГЛАВА 3. Обоснование структуры обучающей системы

3.1 Схема взаимодействия модулей

Программное изделие «Автоматизированная обучающая система с контролем знаний по дисциплине «Криптографические протоколы» удовлетворяет требованиям технического задания и декомпозируется на восьми модулях:

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

2. TKF - модуль обучения, реализует возможность интерактивного поиска нужной информации для ее изучения.

3. LRF - модуль лабораторных работ, реализует возможность выбора необходимой лабораторной работы, и далее, возможность пошагового ее выполнения.

4. Test - модуль, в котором реализуется регистрация пользователя для прохождения тестирования.

5. TVFXPRO - модуль итогового контроля знаний, реализует итоговый тест по БД.

6. MiniT - модуль мини тестов, реализует возможность прохождения мини теста после изучения теоретического материала по главе.

7. ResultF - модуль вывода результатов, он реализует:

8. Help - модуль помощи по работе с обучающей программой;

Схема взаимодействия модулей представлена на рисунке 1.

Рисунок 1 - Схема взаимодействия модулей

3.2 Алгоритм функционирования обучающей программы

Рисунок 2 - Алгоритм функционирования обучающей программы

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

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

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

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

3.3 Общее описание работы программы

В данной обучающей программе реализованы следующие возможности:

* пройти, для определения будет ли процесс обучения эффективен в данный момент;

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

* не допускать пользователя до прохождения тестирования, если он не зарегистрируется;

* ознакомиться с теоретическим материалом по дисциплине «Криптографические протоколы»;

* выполнить мини-тест по прочитанному материалу по главе и получить оценку ваших знаний;

* выбрать из всего списка лабораторных необходимую и выполнить её в пошаговом режиме;

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

* ознакомиться с инструкцией по использованию данной обучающей программы, нажав на пункт меню «Помощь» в главном окне обучающей программы;

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

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

3.4 Модуль Unit1

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

Рисунок 3 - Внешний вид формы Form1

Данный модуль включает следующие процедуры и функции:

Procedure DM_komp - процедура реализует возврат элементов управления в исходное значение.

Рrocedure FormResize(Sender: TObject) - процедура реализует расстановку компонент на форме в заданное положение.

Рrocedure FormActivate(Sender: TObject) - процедура реализует вызов подпрограммы DM_komp, а также здесь хранится путь к exe-файлу обучающей программы.

Рrocedure FormMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer) - процедура реализует вызов подпрограммы DM_komp.

Рrocedure Image4Click(Sender: TObject) - процедура реализует закрытие формы.

Рrocedure Image4MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer) - процедура реализует изменение элемента управления Image4, если он активизирован в данный момент.

Procedure Image5Click(Sender: TObject) - процедура реализует активацию формы TKForm (форма теоретической части) при нажатии на элемент управления Image5.

Procedure Image5MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer) - процедура реализует изменение элемента управления Image5, если он активизирован в данный момент.

Procedure Image6Click(Sender: TObject) - процедура реализует активизацию формы LR (форма лабораторных работ) при нажатии на элемент управления Image6.

Procedure Image6MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer) - процедура реализует изменение элемента управления Image6, если он активизирован в данный момент.

Procedure Image7Click(Sender: TObject) - процедура реализует активацию формы Ftesting (форма главного окна блока тестирования) при нажатии на элемент управления Image7.

Procedure Image7MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer) - процедура реализует изменение элемента управления Image7, если он активизирован в данный момент.

Рrocedure Image4Click(Sender: TObject) - процедура реализует закрытие формы.

Рrocedure Image4MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer) - процедура реализует изменение элемента управления Image4, если он активизирован в данный момент.

3.5 Модуль TKF

Данный модуль реализует возможность ознакомиться с теоретическим материалом по дисциплине «Криптографические протоколы».

В основу лекционного материала лег компонент из стандартного набора Borland Delphi - Web Browser, предназначенный для просмотра текста в формате HTML. К возможностям Web Browser можно отнести - загрузка документа, сохранение списка ранее посещенных страниц, обновление и прекращение загрузки страниц, возможности выбора цвета и формата шрифта [37].

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

Кнопки, существующие в блоке теоретической части:

- при нажатии на эту кнопку, осуществляется переход к главному содержанию блока теоретической части;

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

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

Визуальное отображение работы блока теоретической части представлено на рисунке 4.

Рисунок 4 - Визуальное отображение работы блока теоретической части

Алгоритм функционирования модуля TKF представлен на рисунке 5.

Рисунок 5 - Алгоритм функционирования модуля TKF

Описание работы алгоритма:

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

Модуль TKF включает следующие процедуры и функции:

Procedure DM_komp - процедура реализует возврат элементов управления Image1, Image3, Image4, Image6 в исходное значение.

Рrocedure FormActivate(Sender: TObject) - процедура реализует проверку на наличие слеша в конце пути к exe-файлу. Слеш нужен для того, чтобы дописать путь к файлу. TEORH\index\Index.html'. В компонент WebBrowser1 загружается html-страничка (Index.html).

Рrocedure FormMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer) - процедура реализует вызов подпрограммы DM_komp.

Рrocedure FormResize(Sender: TObject) - процедура реализует расстановку компонент на форме в заданное положение.

Procedure Image1Click(Sender: TObject) - процедура реализует возврат в оглавление теоретической части.

Procedure Image1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer) - процедура реализует изменение элемента управления Image1, если он активизирован в данный момент.

Procedure Image3Click(Sender: TObject) - процедура реализует переход к предыдущей странице, путем подгрузки ее в компонент WebBrowser1.

Procedure Image3MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer) - процедура реализует изменение элемента управления Image3, если он активизирован в данный момент.

Рrocedure Image4Click(Sender: TObject) - в этой процедуре происходит закрытие формы.

Рrocedure Image4MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer) - в этой процедуре происходит изменение элемента управления Image4, если он активизирован в данный момент.

Procedure Image6Click(Sender: TObject) - процедура реализует вызов формы мини-тестов.

Procedure Image6MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer) - процедура реализует изменение элемента управления Image6, если он активизирован в данный момент.

3.6 Модуль LRF

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

Рисунок 6 - Визуальное отображение работы блока лабораторных работ

Алгоритм функционирования модуля LRF представлен на рисунке 7.

Рисунок 7 - Алгоритм функционирования модуля LRF

Описание работы алгоритма:

В начале алгоритма происходит активация блока лабораторных работ, которая подразумевает под собой перестройку графического интерфейса. Затем номеру шага лабораторной работы присваивается значение 1 (i:=1). Далее в блоке выбора направления выполнения алгоритма, пользователь решает, будет ли он приступать к выполнению лабораторной работы, если «да», то выбирает номер работы, которая будет выводиться на экран, после этого выполняется первый шаг лабораторной работы. Затем если пользователь не захочет больше выполнять данную лабораторную работу, он может перейти либо в список лабораторных работ, либо выйти из блока лабораторных работ (конец алгоритма). Если же обучаемый все-таки продолжил выполнение лабораторной работы, то он попадает в блок проверки на желание вернуться в начало лабораторной работы, если такое желание имеется, то шагу лабораторной работы присваивается 1 (i:=1), и осуществляется возврат в блок выполнения i-го шага. Если пользователь не захотел возвращаться в начало лабораторной работы, то в следующем блоке у него есть возможность выбора сделать шаг вперед или назад, если делает шаг вперед, то параметру i прибавляется 1 (i:=i+1) и затем идет проверка не превышает ли теперь количество шагов максимально возможного для лабораторной (i>n), если превышает, то осуществляется переход на первый шаг, если не превышает, то данный шаг выполняется. В случае, когда пользователь решил сделать шаг назад проверяется условие i<1, если оно истинно, то осуществляется переход на первый шаг, если ложно, то выполняется предыдущий шаг.

Модуль LRF включает следующие процедуры и функции:

Procedure ScrollBox1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer) - процедура реализует вызов подпрограммы DM_komp.

Procedure DM_komp - процедура реализует возврат элементов управления Image1, Image2, Image3, Image4, Image5, Image7, Image8, Image9, Image10, Image11, Image12, Image13, в исходное значение.

Procedure LoadNS - процедура реализует загрузку определенного шага лабораторной работы.

Рrocedure FormActivate(Sender: TObject) - процедура реализует загрузку количества шагов лабораторных работ из файла sps.inf.

Рrocedure FormMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer) - процедура реализует вызов подпрограммы DM_komp.

Рrocedure FormResize(Sender: TObject) - процедура реализует расстановку компонент на форме в заданное положение.

Procedure Image1Click(Sender: TObject) - процедура реализует возврат к предыдущему шагу лабораторной работы.

Procedure Image1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer) - процедура реализует изменение элемента управления Image1, если он активизирован в данный момент.

Procedure Image2Click(Sender: TObject) - процедура реализует возврат к началу (первому шагу) лабораторной работы.

Procedure Image2MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer) - процедура реализует изменение элемента управления Image2, если он активизирован в данный момент.

Procedure Image3Click(Sender: TObject) - процедура реализует переход к следующему шагу лабораторной работы.

Procedure Image3MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer) - процедура реализует изменение элемента управления Image3, если он активизирован в данный момент.

Рrocedure Image4Click(Sender: TObject) - в этой процедуре происходит закрытие формы.

Рrocedure Image4MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer) - в этой процедуре происходит изменение элемента управления Image4, если он активизирован в данный момент.

Procedure Image5Click(Sender: TObject) - процедура реализует возврат к списку лабораторных работ.

Procedure Image5MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer) - процедура реализует изменение элемента управления Image5, если он активизирован в данный момент.

Procedure Image8Click(Sender: TObject) - процедура реализует выбор лабораторной работы №1 и загрузку её в компонент WebBrowser1.

Procedure Image8MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer) - процедура реализует изменение элемента управления Image8, если он активизирован в данный момент.

Procedure Image7MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer) - процедура реализует изменение элемента управления Image7, если он активизирован в данный момент.

Procedure Image9MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer) - процедура реализует изменение элемента управления Image9, если он активизирован в данный момент.

Procedure Image10MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer) - процедура реализует изменение элемента управления Image10, если он активизирован в данный момент.

Procedure Image11MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer) - процедура реализует изменение элемента управления Image11, если он активизирован в данный момент.

Procedure Image7Click(Sender: TObject) - процедура реализует выбор лабораторной работы №2 и загрузку её в компонент WebBrowser1.

Procedure Image9Click(Sender: TObject) - процедура реализует выбор лабораторной работы №3 и загрузку её в компонент WebBrowser1.

Procedure Image10Click(Sender: TObject) - процедура реализует выбор лабораторной работы №4 и загрузку её в компонент WebBrowser1.

Procedure Image11Click(Sender: TObject) - процедура реализует выбор лабораторной работы №5 и загрузку её в компонент WebBrowser1.

Procedure Image12Click(Sender: TObject) - процедура реализует выбор лабораторной работы №6 и загрузку её в компонент WebBrowser1.

Procedure Image12MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer) - процедура реализует изменение элемента управления Image12, если он активизирован в данный момент.

Procedure Image13Click(Sender: TObject) - процедура реализует выбор лабораторной работы №7 и загрузку её в компонент WebBrowser1.

Procedure Image13MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer) - процедура реализует изменение элемента управления Image11, если он активизирован в данный момент.

3.7 Модуль Test

Данный модуль реализует возможность зарегистрироваться пользователю, решившему протестировать себя, а также перейти на выполнение теста заинтересовавшего его. Данный модуль ассоциирован с окном Ftesting, внешний вид которого приведен на рисунке 8.

Рисунок 8 - Внешний вид формы Ftesting

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

Рисунок 9 - Внешний вид окна информации

Модуль Test включает следующие процедуры и функции:

Procedure DM_komp - процедура реализует возврат элементов управления Image1, Image2, Image4, Image8 в исходное значение.

Рrocedure FormActivate(Sender: TObject) - процедура реализует вызов подпрограммы DM_komp.

Рrocedure FormMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer) - процедура реализует вызов подпрограммы DM_komp.

Рrocedure FormResize(Sender: TObject) - процедура реализует расстановку элемента управления Image4 на форме в заданное положение.

Procedure Image1Click(Sender: TObject) - процедура реализуется проверка зарегистрировался ли пользователь прежде чем начать выполнять тест или нет, если нет, то выводится сообщение «Введите свои данные», если зарегистрировался, то происходит переход на тест по диагностике выгорания;

Procedure Image1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer) - процедура реализует изменение элемента управления Image1, если он активизирован в данный момент.

Procedure Image2Click(Sender: TObject) - процедура реализуется проверка зарегистрировался ли пользователь прежде чем начать выполнять тест или нет, если нет, то выводится сообщение «Введите свои данные», если зарегистрировался, то происходит переход на тест по диагностике уровня невротизации.

Procedure Image2MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer) - процедура реализует изменение элемента управления Image2, если он активизирован в данный момент.

Рrocedure Image4Click(Sender: TObject) - в этой процедуре происходит закрытие формы.

Рrocedure Image4MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer) - в этой процедуре происходит изменение элемента управления Image4, если он активизирован в данный момент.

Procedure Image8Click(Sender: TObject) - процедура реализуется проверка зарегистрировался ли пользователь прежде чем начать выполнять тест или нет, если нет, то выводится сообщение «Введите свои данные», если зарегистрировался, то происходит переход на тест по базам данных.

Procedure Image8MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer) - процедура реализует изменение элемента управления Image1, если он активизирован в данный момент.

3.8 Модуль TMini

Данный модуль реализует возможность пройти мини-тест по материалу определенной главы. Внешний вид форм вывода вопросов идентичен рисунку 3.5., разница только в заголовке формы и названии теста.

По итогам прохождения теста обучаемому ставится оценка. Т.к. каждый мини-тест состоит из 5 вопросов, то соответственно за 5 правильных ответов ставиться оценка «5», за 4 - оценка «4», за 3 - оценка «3», если у обучаемого более 3 неправильных ответов, то программа выводит сообщение «Подучи и пройди тест ещё раз».

Алгоритм функционирования модуля TMini представлен на рисунке 10.

Описание работы алгоритма:

В начале алгоритма происходит активация блока тестирования, которая подразумевает под собой перестройку графического интерфейса. Затем производится запуск генератора случайных чисел, после этого происходит обнуление счетчика правильных ответов. Далее в цикле происходит выборка вопросов (всего вопросов в мини-тесте 5). Генератор случайных чисел производит выбор вопроса. Далее вопрос проверяется на отсутствие повторяющихся вопросов, при отрицательном результате генератор случайных чисел выбирает новый вопрос, при положительном результате вопрос выводится на экран, далее проверяется наличие правильного ответа, которое фиксируется с помощью счетчиков положительных и отрицательных ответов. Цикл повторяется 5 раз. По окончанию тестирования из счетчиков правильных ответов формируется итоговая оценка. По окончанию теста дается возможность повторить тест или закончить исполнение программы.

Рисунок 10 - Алгоритм функционирования модуля TMini

Модуль TMini включает следующие процедуры и функции:

Procedure Rez - процедура реализует вычисление количества правильных ответов на вопросы, а также по итогом прохождения теста выводится оценка.

Procedure GetQW - процедура реализует вывод последующего вопроса, его номера, а также в ней происходит установка основных параметров выводимого текста (цвет, толщина линий, расположение).

Procedure Open_Test - процедура реализует загрузку всего теста.

Procedure DM_komp - процедура реализует возврат элементов управления Image1, Image2, Image4 в исходное значение.

Рrocedure FormActivate(Sender: TObject) - процедура реализует вызов подпрограммы Open_Test и GetQW, а также здесь хранится двумерный массив из правильных ответов к тестам.

Рrocedure FormMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer) - процедура реализует вызов подпрограммы DM_komp.

Рrocedure FormResize(Sender: TObject) - процедура реализует расстановку компонент на форме в заданное положение.

Procedure Image1Click(Sender: TObject) - процедура активируется при нажатии на элемент управления Image1 и реализует переход к следующему вопросу теста, а в случае окончания теста осуществляет вывод результата.

Procedure Image1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer) - процедура реализует изменение элемента управления Image1, если он активизирован в данный момент.

Рrocedure Image4Click(Sender: TObject) - в этой процедуре происходит закрытие формы.

Рrocedure Image4MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer) - в этой процедуре происходит изменение элемента управления Image4, если он активизирован в данный момент.

Function TK(fl:boolean):Boolean - реализует пошаговую запись результатов тестирования.

3.9 Модуль ResultF

Модуль ResultF - это модуль вывода результатов. Он реализует:

- вывод результатов тестирования по итоговому тесту по БД, экранная форма представлена на рисунке 11;

Модуль RezultF включает следующие процедуры и функции:

Procedure DM_komp - процедура реализует возврат элементов управления Image1, Image2, Image4 в исходное значение.

Procedure ТRez - процедура реализует вычисление количества правильных ответов на вопросы по тесту «АБД», вычисление процентного соотношения положительных ответов к общему числу вопросов, отображение этих результатов с помощью компонента TGauge (индикатор величины), а также запись результатов в текстовый файл.

Procedure FormClose - процедура реализует закрытие форм TSUBD, TNEWROZ, TPVIGOR.

Рrocedure FormActivate(Sender: TObject) - процедура реализует вызов подпрограммы StatRez и Resize.

Рrocedure FormResize(Sender: TObject) - процедура реализует расстановку компонент на форме в заданное положение.

Рrocedure Image4MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer) - в этой процедуре происходит изменение элемента управления Image4, если он активизирован в данный момент.

3.10 Модуль HELP

Данный модуль ассоциирован с окном HLForm. Внешний вид формы HLForm приведен на рисунке 11.

Рисунок 11 - Внешний вид формы HLForm

Данный модуль включает следующие процедуры и функции:

Procedure DM_komp - процедура реализует возврат элемента управления Image4 в исходное значение;

Рrocedure FormResize(Sender: TObject) - процедура реализует расстановку компонент на форме в заданное положение;

Рrocedure FormActivate(Sender: TObject) - процедура реализует проверку на наличие слеша в конце пути к exe-файлу. Слеш нужен для того, чтобы дописать путь к файлу Help.mht;

Рrocedure FormMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer) - процедура реализует вызов подпрограммы DM_komp;

Рrocedure Image4Click(Sender: TObject) - процедура реализует закрытие формы;

Рrocedure Image4MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer) - процедура реализует изменение элемента управления Image4, если он активизирован в данный момент.

Заключение

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

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

Разработан программный продукт «Автоматизированная обучающая система с контролем знаний по дисциплине «Криптографические протоколы», который обладает следующими основными достоинствами:


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

  • Система программирования Delphi, ее характеристика. Основные требования к обучающей программе. Составление блок-схемы алгоритма программы "Математика. 1 класс". Виды задач для решения в обучающей программе. Описание работы системы, инструкция к ней.

    курсовая работа [2,0 M], добавлен 17.06.2015

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

    дипломная работа [522,2 K], добавлен 30.08.2010

  • Использование обучающих программ для формирования знаний и умений по информатике. Главное окно среды программирования Delphi, окна дерева объектов и кода программы. Требования к оборудованию и описание обучающей программы "Информатика в играх и загадках".

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

  • Этапы создания обучающей программы "Трюки и Эффекты в Delphi" в интегрированной среде Borland Delphi 7 и СУБД MS Access 2010. Главное меню и организация базы данных MS Access. Основные характеристики и состав основных модулей. Описание программы.

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

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

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

  • Изучение программы базовой системы ввода-вывода (BIOS) и её настроек. Разработка компьютерной обучающей программы-тренажера "Настройка BIOS" в объектно-ориентированной среде Delphi. Тестирование данного программного продукта и экономические затраты.

    дипломная работа [54,5 K], добавлен 09.10.2013

  • Требования к обучающим электронным материалам, особенности использования программы "Осирис". Ее возможности, построение обучающих, тестирующих блоков. Просмотр результатов тестирований. Изучение электронного учебного материала по физике в среде "Осирис".

    контрольная работа [2,5 M], добавлен 08.01.2010

  • Создание электронного учебника "Визуальные и не визуальные компоненты Delphi". Основные требования к организации интерфейса. Логическая структура и технические средства. Аппаратно–программный комплекс. Применение программы, тестирование и отладка.

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

  • Особенности разработки и реализации обучающей программы и схемы алгоритмов на языке программирования С++. Понятие равномерной и неравномерной дискретизации. Представление информации (составление кода) в виде таблицы перекодировки или многочлена.

    курсовая работа [704,6 K], добавлен 06.03.2013

  • Возможности применения информационных технологий в дистанционном обучении. Рекомендации по созданию АОС. Разработка автоматизированной обучающей программы на базе комплекса стандартного цифрового пилотажно-навигационного оборудования самолета Ил-96-300.

    дипломная работа [3,7 M], добавлен 29.10.2013

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