Автоматизированное рабочее место регистрации и документирования комплекса средств автоматизации
·
выбранная для реализации модель данных
(реляционная).
Перечислим
СУБД подобного класса: D-Base, Clipper, Paradox. Перед
тем как приступить к сравнительному анализу моделей баз данных, и,
следовательно, к окончательному выбору СУБД, необходимо выделить набор
факторов, которые влияют на окончательный выбор варианта.
Наиболее
часто используемые факторы оценки моделей баз данных:
·
трудоемкость реализации приложений;
·
стоимость эксплуатации информационной системы;
·
возможность совмещения разработки БД с ранее
выполненными программными реализациями;
·
прогнозируемые сроки реализации информационной
системы;
·
затраты на обучение персонала.
На
этом этапе необходимо несколько детализировать требования к реализуемому ПО АРМ
РД.
Как
было отмечено в п.3.3.1., обмен информацией в системе происходит при помощи
кодограмм, которые содержат информацию о состоянии устройств в двоичном коде,
поэтому требования к СУБД, и соответственно к программам-приложениям достаточно
жестки – необходимо обеспечить выборку сведений об устройствах, причем с
возможностью их представления не в двоичном виде, а в удобной для анализа форме
– в виде таблиц и справок.
Следовательно,
большие требования предъявляются даже не к СУБД, а к языку программирования, на
котором будут создаваться программы-приложения. Реализация программных средств
окружения СУБД и приложений достаточно трудоемкий процесс.
При
выборе СУБД необходимо учесть и такой фактор, как наличие опыта у разработчиков
в создании прикладных программ для данной СУБД, часто он является определяющим.
В
качестве программного продукта для создания ПО АРМ РД была выбрана разработка
фирмы Borland
– язык программирования Турбо Си++ версии 3.0 и библиотека
стандартных программ на языке Турбо Си++ Paradox Engine для реализации
обслуживания реляционных баз данных.
Paradox
Engine является уникальным программным средством,
позволяющим программистам языка Си в полном объеме использовать архитектуру
системы Paradox.
Engine
- библиотека стандартных программ на языке Си, которые можно объединить с любой
прикладной программой на языке Си. В большинстве современных систем общий
доступ к данным можно осуществить лишь при выполнении дополнительных операций -
обычно файлы одной операционной среды переводятся в форматы другой, и наоборот.
Если при анализе задачи выясняется, что исходные данные хранятся в разных
системах, то проблемы обобщения становятся важной областью решения задачи.
Engine
устраняет эту проблему, открывая структуру данных Paradox
для
программ на языке Си. Таким образом, прикладные программы на языке Си получают
возможность обрабатывать данные системы Paradox.
Paradox
Engine - это удобное средство для разработчиков программ
обслуживания реляционных баз данных на традиционном языке программирования.
Разработчики Engine могут использовать данные
системы Paradox
или разрабатывать приложения, которые в дальнейшем можно развивать на основе Paradox.
Разработчики Paradox могут расширить функции
системных программ Paradox, дополнив их
вспомогательными программами на языке Си.
Основные
характеристики системы Paradox.
Таблицы
Paradox
- это стандартные файлы DOS с расширением “.DB”.
Имена таблиц отвечают стандартным соглашениям об идентификации файлов, принятым
в ОС MS
DOS.
Каждая
таблица может содержать до двух биллионов записей, а при ее записи на диск
размер таблицы ограничен только размером диска или объемом свободной памяти на
диске.
Каждая
запись может включать до 255 полей, а каждое поле до 255 символов.
В
Paradox используется пять типов полей:
алфавитно-цифрового типа, которые позволяют использовать полный набор символов
кода ASCII,
числовые
поля данных, позволяющие использовать до 15-ти значащих цифр, включая место для
десятичной точки в интервал значений, а также текущие поля данных, короткие
числовые поля и поля даты.
Для
упорядочения и поиска ключевых полей таблицы в Paradox Engine предусмотрены
специальные функции, использующие индексный метод доступа. Индекс таблицы
позволяет ускорить процесс поиска нужной записи. Первичный индекс упорядочивает
записи в порядке возрастания ключевых полей. Paradox
хранит записи отсортированными по ключу и не позволяет дублировать ключи.
Вторичные индексы, как правило, организуются для очередей таблиц и служат для
улучшения представления данных.
Для
создания оконного интерфейса пользователя используется библиотека СXL-
библиотека функций на языке С, что дает возможность ускорить написание
программы, так как позволяет уделить больше времени решению основной задачи.
Конечно,
нельзя однозначно сказать, что выбранная СУБД идеально соответствует
поставленной перед разработчиками задаче. Для иллюстрации сравним Paradox
Engine и СУБД Paradox с внутренним языком программирования PAL.
PAL
- это внутренний язык программирования системы Paradox. Сравнивая PAL и Си,
можно отметить, что и тот и другой обладают рядом преимуществ и недостатков.
Например,
PAL обладает обширным встроенным аппаратом для обслуживания баз данных, однако
не обладает гибкостью и управляющими возможностями языка Си. С другой стороны,
Си, обеспечивая максимально возможный уровень управления программой, и,
следовательно, ее гибкость, не обладает возможностью обслуживания баз данных.
PAL
считается языком высокого уровня, предельно подогнанным к среде Paradox. Он
обеспечивает возможность создания документов, зашитую в интерфейс вместе с
процедурными возможностями, а также является идеальным средством для быстрого
макетирования или разработки многопользовательских программ обслуживания баз
данных.
В
свою очередь, т.к. Си является традиционным языком программирования, то его
нецелесообразно применять для программ обслуживания баз данных - они сложнее
аналогичных программ на языке PAL. С другой стороны, программы обслуживания баз
данных на языке PAL больше по размеру и хуже по быстродействию, чем те же
программы на языке Си, использующие функции Engine.
Преимущества
языка PAL заключаются в том, что он обладает обширным встроенным аппаратом и
обеспечивает немедленный доступ ко всем областям системы Paradox. PAL позволяет
разрабатывать программы с использованием опций меню Paradox.
Преимущества
Engine заключаются в следующем: обеспечение высокого уровня управления
программами; расширение функциональности системы Paradox (работая в Engine, вы
ограничены только возможностями собственной программы и доступностью
вспомогательных библиотек); обеспечение максимальной эффективности программ при
их минимальном размере.
Из
представленных выше рассуждений следует, что при помощи любого программного
продукта приблизительно одного класса можно решить поставленную задачу, выбрав
различные подходы к проблеме, минимизируя или максисмизируя те или иные
характеристики.
Можно
сделать вывод, что на выбор СУБД повлияли следующие факторы:
1.
Наличие
опыта программирования на языке Турбо Си++, у разработчиков, что позволяет
снизить временные и материальные затраты на их переобучение.
2.
Трудоемкость
реализации приложений, позволяющая в то же время обеспечить более высокое
быстродействие выполнения программ (например, позволяющая минимизировать такую
характеристику как время поиска по БД, и, следовательно, уменьшить время
реакции на запрос).
3.
Обеспечение
гибкости ПО и высокого уровня управления программами.
4.
Си
открывает программисту доступ к “внутренностям” компьютера - битам, байтам и
регистрам, управляющим работой центрального процессора и внешних устройств. Но
Си все-таки представляет собой нечто большее, чем язык ассемблера высокого
уровня. Блочная структура программы на Си обеспечивает как защиту данных, так и
высокий уровень контроля за областями действия и видимости переменных.
5. Возможность
при реализации ПО АРМ РД для создания оконного интерфейса использовать
библиотеку СXL- библиотеку функций на языке Си, что дает возможность уделить
больше времени решению основной задачи.
4. Структура комплекса
программ АРМ РД
4.1. Обоснование
структуры комплекса программ
4.1.1. ПО общесистемного
назначения
Структура
комплекса программ АРМ РД представлена на рис. 20 и является логическим
продолжением реализации функционального назначения АРМ РД.
ПО
общесистемного назначения представляет собой программные средства, используемые
на этапе проектирования АРМ РД.
Исходными
данными предусмотрено, что в качестве среды функционирования выбирается
операционная система MS DOS с файловой оболочкой Norton
Commander.
Для
работы с файлами в составе ПО АРМ РД предусмотрены общесистемные утилиты
(архиваторы, антивирусы, и т.п.). Для оформления документации, записок, отчетов
предусмотрен текстовый редактор LEXICON.
Для
создания специального ПО для АРМ РД используются следующие программные
продукты:
·
Язык
программирования Турбо Cи++ версии 3.0;
·
PX
Engine - библиотеки функций на языке Borland
Cи++, для создания БД в формате Paradox;
·
CXL
- библиотеки функций на языке Borland C++ для создания
оконного интерфейса пользователя.
4.1.2. ПО специального
назначения
ПО
специального назначения представляет собой программные средства, используемые
на этапе эксплуатации АРМ РД (см. рис. 20). Его
условно можно разделить на три группы:
1. Операционная
система MS
DOS
2. Библиотеки
используемых функций (LIB) включают библиотеки
используемых функций языка Borland С++, PX
Engine - библиотеки функций языка С++ для создания БД в
формате Paradox,
CXL – библиотеки функций языка С++ для создания оконного
интерфейса.
3. Исполяемые
модули программ, обеспечивающие следующие функции:
·
управляющая программа (MAIN);
·
функции создания прототипов БД и первичных
ключей к ним (INITENG);
·
функции записи информации и внесения изменений в
БД (ZAPBD);
·
функции формирования и исполнения запросов
(INQUIRY), включает программы обработки запросов для 3-х форм представления БС
(BS-INQ);
·
функции службы администрирования БД (CR_ARMBD –
создание базы данных администратора, CREAT_FA – создание файла администратора,
BDADM – работа с БД администратора – создание списка пользователей, регистрация
и удаление пользователей);
·
функции архивирования и работы с архивом (ARCH).
4.1.3. Требования,
предъявляемые к специальному ПО АРМ РД
1.
Требования по обеспечению надежности.
Требования
по обеспечению надежности ПО складываются из двух аспектов требований,
предъявляемых к языку программирования. Первый - легкость расширения языка и
программы, независимость от машины, эффективность компиляции программ,
способность четко и просто представлять логику и функции программы. Вторым
аспектом обеспечения надежности ПО является модульная структура программы.
2.
Требования по обеспечению удобства эксплуатации.
Программное
обеспечение АРМ РД должно функционировать в диалоговом режиме с выдачей
иерархических меню основных функций подсистем, например, текст запроса по мере
его формирования отображается на экране. Система меню является подсказкой,
исключающей ошибку оператора.
3.
Требования к операционной и программной совместимости.
Программное
обеспечение средств регистрации и документирования АРМ должно обеспечивать:
-
информационную совместимость в части возможности замены ЭВМ РС/АТ
на модель более высшего порядка, замену принтера на более производительный, и
т.п.
4.2. Программная
реализация
Постановка
задачи
Задачей
данного дипломного проекта является разработка программ формирования и
обработки запросов для трех форм представления БС и выдача их на экран монитора
и принтер.
Программы
должны быть разработаны для технических средств АРМ РД и обеспечивать
информационную и программную совместимость в части возможности замены ЭВМ на
модель более высокого порядка, замену принтера на более производительный и т.п.
Программы обработки запросов должны функционировать в составе остального ПО АРМ
РД и минимизировать время обработки запроса.
Это означает, что необходимо организовать поиск
по БД таким образом, чтобы минимизировать время поиска по БД, и,
следовательно, уменьшить время ответа на запрос оператора (характеристика,
рассмотренная в п.2.5. может быть минимизирована не только техническими, но и
программными средствами).
Программы
обработки запросов должны обеспечить запись преобразованных форм БС в файл, и
работать совместно с программами, обеспечивающими выдачу преобразованных форм
БС на экран монитора и принтер.
Вид
представления информации после преобразования БС на экран монитора и принтер
Исходя
из соображений практического смысла были выбраны 3 формы представления БС:
компактная-символическая, табличная, справочная (первая, вторая и третья формы
представления БС соответственно).
Первая
форма представления БС.
Первая
форма представления БС приведена на рис.21 и позволяет выдавать на экран
информацию о БС по всем разнотипным устройствам (по любому сочетанию устройств,
по всем устройствам сразу, и т.д.)
1-5
поля - ключевые. Поле 6 - БС технических устройств в позиционном коде. Для
каждого устройства определено фиксированное количество этих байтов
(максимальное значение 4 группы или 4слова).
Пример
кодирования одного слова для устройства i (рис.22) - значение 035007 надо
интерпретировать как:
Данная
форма представления удобна для работы с большими объемами данных (за день
неделю, месяц...) по всем устройствам, где для оператора важен факт обнаружения
неисправности (если значения БС не равны нулю, то в данном устройстве произошел
какой-то сбой). Но эта форма неудобна тем, что требует расшифровки данных с
помощью инструкции. Для устранения этого неудобства вводится вторая форма
представления, где выборка выполняется по одному, выбранному оператором
устройству.
Вторая
форма представления БС.
Пример
представления формы 2 приведен на рис.23. Как видно из рис.23, форма 2 является
отражением формы 1 для одного устройства и требует меньших усилий при
расшифровке данных, т. к. здесь “шапки” колонок таблицы содержат более или
менее понятные сокращения и обозначения для специалистов, обслуживающих
аппаратуру, т.е. обозначения даются терминах, понятных для сферы деятельности
оператора.
Третья
форма представления БС.
Существует
третья форма представления, которая является трансформированной формой 2,
выбранной на один момент времени, т.е. она отражает техническое состояние
i-го устройства в заданный момент времени. Пример формы 3 приведен на рис.24.
Как видно из рис.24, форма 3 представляет собой развернутую справку с перечнем
неисправностей и рекомендаций по устранению этих неисправностей. Длина справки
практически ограничивается при этом только соображениями достаточности
информации, представленной в справке.
|