Главная Случайная страница


Полезное:

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


Категории:

АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника






Верификация Логических функций





Модуль верификации

Верификация символов в логических функциях

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

Рисунок 4.1 – Фрагмент технического задания с внесенными изменениями

Код функции для верификация символов в логических функциях представлен в листинге 4.1.

function Verification.VerifyAll(key: string): Bool;

var RegExp: TRegExpr;

begin

RegExp:=TRegExpr.Create;

RegExp.Expression:='[A-Z0-9_(+*^)=]+';

RegExp.Exec(key);

if RegExp.MatchLen[0]=key.Length then

begin

Result:=True;

end

else

begin

Result:=False;

end;

end;

Листинг 4.1 – Функция верификации всех символов логической функции


 

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

Рисунок 4.2 – Результат выполнения верификации символов логических функций

Верификация структуры в логических функциях

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

Рисунок 4.3 – Фрагмент технического задания с внесенными изменениями

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

Рисунок 4.4 – Результат выполнения верификации структуры логических функций

 

Модуль валидации

Модуль валидации предназначен для поиска дубликатов имен логических функций и поиска имен аргументов логических функций, не объявленных в именах логических функций (рисунок 3.14).

Валидация имен логических функций (поиск дубликатов)

Для поиска дубликатов имен были переписаны имена нескольких функций на уже существующие (рисунок 4.5).

 

Рисунок 4.5 – Фрагмент технического задания с дубликатами функций

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

Рисунок 4.6 – Результат выполнения валидации имен логических функций

Валидация аргументов логических функций (поиск несуществующих имен аргументов)

Для поиска несуществующих имен аргументов были переписаны имена нескольких функций на уже существующие (рисунок 4.5).

l

Рисунок 4.7 – Фрагмент технического задания, с несуществующими именами аргументов

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

Рисунок 4.6 – Результат выполнения валидации аргументов логических функций

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

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

Рисунок 5.3 – Предварительный итог валидации

 

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

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

SQLite — легковесная встраиваемая реляционная база данных.

Слово «встраиваемый» означает, что SQLite не использует парадигму клиент-сервер, то есть движок SQLite не является отдельно работающим процессом, с которым взаимодействует программа, а предоставляет библиотеку, с которой программа компонуется и движок становится составной частью программы. Таким образом, в качестве протокола обмена используются вызовы функций (API) библиотеки SQLite. Такой подход уменьшает накладные расходы, время отклика и упрощает программу. SQLite хранит всю базу данных в единственном стандартном файле на том компьютере, на котором исполняется программа. Простота реализации достигается за счёт того, что перед началом исполнения транзакции записи весь файл, хранящий базу данных, блокируется; ACID-функции достигаются в том числе за счёт создания файла журнала.

Необходимая таблица (рисунок 3.15) создаётся и заполняется при помощи набора функций:

formSqliteTable – создает таблицу базы данных;

insertSqliteTable – добавляет запись в таблицу;

findDuplicates – осуществляет поиск дубликатов имен логических функций;

findNotExNames – осуществляет поиск имен аргументов логических функций не объявленных в именах логических функций.

Рисунок 3.15 – Список таблиц базы данных

Файл-отчет

По завершении работы функций формируется текстовый файл, содержащий более подробный отчет об ошибках (рисунок 3.18).

В файле указывается следующее:

имя проверенного документа;

заголовок таблицы;

ошибки верификации:

а. тип ошибки;

б. содержимое логической функции;

в. строка в таблице;

г. столбец в таблице;

д. номер символа в строке;

е. символ;

ошибки валидации:

а. тип ошибки;

б. имя логической функции;

в. строка в таблице;

г. столбец в таблице.

 

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

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

 

Рисунок 5.4 – Расположение файла-отчета

 

Рисунок 3.18 – Файл-отчет


 

 

Date: 2015-07-27; view: 513; Нарушение авторских прав; Помощь в написании работы --> СЮДА...



mydocx.ru - 2015-2024 year. (0.007 sec.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав - Пожаловаться на публикацию