Реферат 2
ВВЕДЕНИЕ 3
1. Основные понятия 4
1.1 Конечные автоматы 4
1.2 Графы 5
2 Разработка пакета «FSMTest-2.0» 7
2.1 Описание пакета «FSMTest-1.0» 7
2.2 Архитектура разрабатываемого пакета. Выбор языков и инструментов 8
2.3 Описание разработанных тегов xml 10
3 Добавление возможности визуализации автоматов 20
3.1 Описание формата файлов с автоматами 20
3.2 Обзор пакетов программ и инструментов, позволяющих выводить
автоматы в виде диаграмм переходов 22
3.2.1 Среда разработки «QtCreator» 22
3.2.2 Пакет утилит «GraphViz» 23
3.3 Программная реализация 24
3.3.1 Преобразование формата .fsm в формат .gv 24
3.3.2 Интеграция программы в «FSMtest-2.0» 25
ЗАКЛЮЧЕНИЕ 27
СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ 28
Приложение А 29
Приложение Б 38
На кафедре информационных технологий в исследовании дискретных структур Томского государственного университета группой авторов был разработан пакет прикладных программ «FSMTest-1.0» [1], который позволяет генерировать автоматы и строить для них тесты.
Этот пакет программ включает программные реализации как хорошо известных, так и разработанных на кафедре методов построения проверяющих тестов для различных моделей с конечным числом переходов. Главная особенность пакета заключается в том, что тесты генерируются с гарантированной полнотой.
Однако данный пакет имеет ряд недостатков. Во-первых, данный пакет был реализован под операционную систему Windows, что не позволяет добавлять программы, скомпилированные под LINUX. Во-вторых, имеющаяся версия пакета не позволяет добавлять новые разделы в интерфейс без повторной компиляции. В третьих, в пакет необходимо добавить визуализацию автоматов. Поэтому на кафедре было решено улучшить пакет «FSMTest-1.0», сделав его кроссплатформенным и упростив добавление новых разделов , в том числе вкладки визуализации, в интерфейс. Для этого прежде всего нужно отделить описание вкладок от программы, которая эти вкладки отрисовывает.
За отрисовку интерфейса отвечает программа, называемая ядром, в данной работе ядро не описывается. Целью же данной работы является разработка системы описания меню на языке XML и добавление возможности визуализации автоматов. Для достижения поставленной цели в рамках данной работы необходимо решить следующие задачи:
- изучить язык разметки XML;
- классифицировать компоненты меню;
- описать меню «FSMTest-1.0» на XML;
- добавить возможность визуализации автоматов .
Данная работа посвящена расширению возможностей пакета «FSMTest- 1.0», который позволяет генерировать автоматы и строить для них тесты. Текущая версия имеет ряд недостатков. Поскольку пакет был реализован под операционную систему Windows, нет возможности добавлять в данный пакет Цпрограммы, скомпилированные под LINUX. Кроме того, имеющаяся версия пакета не позволяет добавлять новые разделы в интерфейс без повторной компиляции. Поэтому данная работа посвящена упрощению добавления новых разделов в интерфейс. Для достижения поставленной цели в рамках данной работы были изучены основы языка разметки XML, классифицированы компоненты меню, описано меню пакета «FSMTest-1.0» на XML. Проведен обзор языков программирования с точки зрения написания ядра нового пакета, сделан выбор в пользу java. Написание ядра на Java выполнялось другими коллегами и в данной работе не описывается.
Разработана и интегрирована в пакет «FSMTest-2.0» программа, позволяющая выводить небольшие примеры автоматов в графическом виде (с использованием «GraphViz».