ISSN 0236-235X (P)
ISSN 2311-2735 (E)
1

16 Марта 2024

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


Ефремов И.А. (i350300800e@gmail.com) - ФГУ ФНЦ НИИСИ РАН (программист), Москва, Россия, Аспирант
Ключевое слово:
Ключевое слово:


     

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

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

-    наличие универсальных генераторов прило жений, отчетов и экранных форм;

-    высокое быстродействие системы;

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

Эти факторы учитывались при разработке адаптивной персональной информационной системы (АПИС).

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

В процессе диалога с операционной оболочкой АПИС пользователь вводит информацию о предметной области, конфигурации ЭВМ и наборе функциональных режимов работы, который должен быть реализован в проектируемой автоматизированной информационной системе (АИС).

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

При описании конфигурации ПЭВМ пользователь может указать тип персональной ЭВМ, объем оперативной памяти, набор внешних носителей - жестких и гибких дисков, вид таблицы кодирования символьной информации (ASCII - основная или альтернативная), тип графического адаптера (IBM CGA/EGA/VGA) и некоторые другие параметры.

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

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

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

-    проектирование оверлеев;

-    виртуализация (размещение в оперативной памяти и на внешних носителях) системной ин формации;

-    вычисление размеров буферов индексных файлов.

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

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

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

Операционная оболочка АПИС (рис.1) включает в себя:

ГЕНЕРАТОР ПРИЛОЖЕНИЙ, обеспечивающий настройку системы на конфигурацию ПЭВМ и информационные потребности пользователя. Результат работы генератора приложений — настроенная на конкретные условия эксплуатации персональная ИС и описание структуры файлов и справочников пользовательских БД (словарь данных). Генератор приложений включает в себя модуль оптимизации структуры проектируемой персональной ИС. Этим модулем автоматически формулируется и решается задача оптимального использования оперативной памяти создаваемой персональной системой с целью минимизации времени отклика. Текст адаптированной персональной ИС генерируется с учетом результатов работы модуля оптимизации. Так, доступ к служебной информации может быть организован через внешние файлы или путем размещения этой информации в динамически выделяемых массивах оперативной памяти.

ГЕНЕРАТОР ПРОГРАММ КОНТРОЛЯ, позволяющий описывать необходимые виды контроля атрибутов С использованием конструкций типа меню и вопрос/ответ, не прибегая к программированию. Результат диалога пользователя с генератором программ контроля - кодированное описание алгоритмов контроля, записанное в виде текста программы на внутреннем системном языке контроля (ЯК) в файле на диске.

ГЕНЕРАТОР ЭКРАННЫХ ФОРМ, предоставляющий возможность проектировать и создавать экранные формы документов; ГЕНЕРАТОР ОТЧЕТОВ, позволяющий описывать формы отчетов на языке описания отчетов. Синтаксический анализатор автоматически осуществляет проверку правильности описания формы отчета и в случае обнаружения ошибки

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

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

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

-    уровня языка программирования третьего по коления: организации циклов, объявления пере менных, условных и безусловных переходов, сравнения, выбора и др.;

-    управления экраном и клавиатурой;

-    организации меню и работы с окнами;

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

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

Пример архитектуры персональной ИС, созданной путем настройки операционной оболочки АПИС на конкретные условия эксплуатации, приведен на рис.2. В системе предусмотрено три "входа" (три источника поступления документов в БД):

-    ручной ВВОД ДОКУМЕНТОВ (с использова нием экранных форм документов или запро граммированный пользователем на языке АПИС);

-    ИМПОРТ документов из внешних файлов в формате dBASE III Plus или ASCII;

-  ЗАГРУЗКА документов из последовательных файлов (текстов телеграмм, протоколов и др.). Этот режим обеспечивает возможность выбор ки фактографической информации из текстов документов, в том числе принимаемых из доку ментальных систем.

Следующие режимы предоставляют возможность визуализации и анализа информации, загруженной в БД (то есть являются "выходами" системы):

-    ПРОСМОТР документов БД (может осу ществляться в двух формах: документы про сматриваются в виде заполненных экранных форм, то есть в том же виде, в каком они вво дились в систему; вид представления информа ции программируется пользователем на языке АПИС);

-    ПОИСК в БД - документы, удовлетворяю щие поисковому условию, могут быть пред ставлены пользователю для просмотра в виде экранных форм или обработаны генератором отчетов;

-    результатом работы ГЕНЕРАТОРА ОТЧЕ ТОВ может быть иерархическая таблица либо графическое изображение (график, гистограм ма, круговая диаграмма). Результаты просмат риваются на экране терминала, выдаются на печать или записываются в текстовой файл;

-    все документы БД или документы, отобран ные в результате поиска, могут быть записаны во внешние файлы форматов dBASE HI Plus и ASCII в режиме ЭКСПОРТА документов.

Дружественный интерфейс

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

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

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

Атрибут представляет собой информационное поле, характеризующееся именем, типом и местоположением документа на экранной форме. АПИС поддерживает 4 числовых типа атрибутов: целое (байт), целое, длинное целое и действительное (в форме с фиксированной или с плавающей десятичной точкой), символьный тип (строка длиной до 255 символов), тип "текст" (комментарий) длиной до 32767 символов, а также 3 специальных типа: логический (истина/ложь), дата и ссылка.

Атрибуты логического типа могут принимать только два значения - ИСТИНА и ЛОЖЬ. Форма представления этих значений указывается пользователем при описании атрибутов документа БД АПИС. Значение атрибута типа "ссылка" содержит адрес документа в физической БД.

АПИС содержит гибкие средства проектирования пользовательского интерфейса для ввода документов в БД.

Стандартный ввод документов осуществляется с помощью экранных форм, структура которых описывается пользователем в процессе настройки операционной оболочки АПИС. При стандартном вводе документов на экран выдается первая страница видеоизображения формы. Если система находится в режиме ввода, то позиции атрибутов пусты; при редактировании документа позиции атрибутов заполнены значениями атрибутов документа БД. Пользователь, используя управляющие клавиши, может перемещаться по атрибутам документа, по страницам видеоизображения формы, вызывать значения атрибута по умолчанию и т.д. Ввод документа осуществляется путем заполнения значений атрибутов. Для удобства заполнения атрибутов предусмотрена возможность заполнения атрибута значением по умолчанию. Если предусмотрено только одно значение атрибута по умолчанию, то это значение заносится в позиции атрибута. Если предусмотрено несколько

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

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

Анализ документов базы данных

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

Поиск в БД

Процесс поиска в БД состоит из двух этапов: формирования поискового условия и собственно поиска информации в БД. Для формирования поискового условия (запроса к БД) применяется принцип Query-By-Example (QBE), где вместо стандартной таблицы QBE используется видеоизображение формы документа. Пользователю предоставляется возможность, используя клавиши управления курсором, указать атрибуты, которые будут задействованы в поисковом условии, и для каждого из них ввести условие сравнения (больше/меньше/не больше/не меньше/равно/не равно/в интервале/контекстный поиск). В одном поисковом условии может быть объединено не более 10 атрибутов со своими условиями сравнения.

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

АПИС обеспечивает возможность одновременной работы с несколькими связанными БД. Максимальное количество одновременно обрабатываемых БД - десять. В АПИС поддерживается два типа связей между атрибутами различных баз данных (файлов): физические и логические. Физически связанные БД (файлы) представляют собой средство реализации множественных полей (групп атрибутов). Один экземпляр множественного поля соответствует одному документу физически связанной БД. Логически связанные БД (файлы) используются для поддержки реляционных зависимостей вида "1:М" и "М:1" между атрибутами различных файлов. Логические связи вида "М:1" используются при контроле атрибутов по справочной БД. Если введенное значение атрибута не найдено в справочной БД, то пользователь имеет возможность откорректировать значение атрибута или добавить документ в справочную БД. Физические и логические связи обеспечивают обработку достаточно сложных запросов при поиске в БД и формирование отчетов многоуровневой иерархической структуры.

Генерация отчетов

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

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

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

Строки отчета и хвостовики могут содержать значения атрибутов и выражений. Под выражением понимается многочлен, или конструкция вида "ЕСЛИ ... ТО ... ИНАЧЕ ...". Многочлен состоит из переменных, констант, круглых скобок и знаков алгебраических операций

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

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

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

Оптимизация структуры персональных информационных систем

Разработчики СУБД стали уделять серьезное внимание вопросам оптимизации структуры создаваемых персональных ИС. Речь идет в основном о минимизации времени отклика системы. Эта задача решается в большинстве случаев следующими способами:

-    использованием более быстрых алгоритмов поиска, сортировки и выборки данных;

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

-    созданием компиляторов с внутреннего языка СУБД (заменой интерпретатора компилято ром).

Примерами систем, в которых использовались перечисленные способы уменьшения времени отклика, могут служить многочисленные аналоги популярной СУБД dBASE III Plus фирмы Ashton Tate [5]. Это СУБД "FoxBASE Plus" фирмы Software Inc., производительность которой в два-четыре раза выше производительности dBASE III Plus, псевдокомпилятор с языка dBASE "db Ill/Compiler" фирмы Word Tech Systems Inc., компилятор с языка dBASE "Clipper" фирмы Nantucket и множество других пакетов [4].

Разработчики СУБД Clipper 5.0 [6] наделили этот пакет средствами управления размером создаваемого загрузочного модуля за счет использования оверлеев.

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

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

Изложенный подход к построению персональных ИС имеет следующие преимущества.

•        Персональная ИС создается с ориентацией на конкретную конфигурацию ПЭВМ (объем оперативной памяти, тип графического адапте ра и таблицы кодирования символов - ASCII- таблицы).

•        Конфигурация персональной ИС задается пользователем. При генерации выполняемого кода системы в ее состав включаются модули только тех функциональных режимов, которые были указаны пользователем. Это обеспечива ет (наряду с функциональной полнотой) и кеиз- быточность генерируемого кода.

•        Оперативная память ПЭВМ используется оптимальным образом.

•        При настройке операционной оболочки АПИС полностью исключается необходимость программирования на алгоритмических языках и использования других программных средств (компиляторов, редакторов связей и т.п.) и ко манд MS DOS, что значительно снижает общие затраты на проектирование и создание персо нальных информационных систем.

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

Список литературу

1.      Ефремов И.А., Леонов А.А. Технология автоматизированного про ектирований персональный №£формациошшх систем ,■',■ Математические и программные методы проектирования информационных и управляю щих систем,- Пенм: ПДНТП, 1990.

2.      Ефремов И.А., Леонов А.А. Адаптивная персональная информацион ная система // Программное обеспечение ЭВМ: 3-я Междунар. н.-т. конф. -Тверь: НПО ЦПС, !99С.

3.      Between Llie Worksheets // PC Magazine, Dec.lSSe.

4.  Bidmcs.a C. Database: best buy // Which computer, December 1989, p. 52-«.

5.      Uskin M. dBASE III Plus, The Pockel Reference // McCraw-ШП, 1988.

6. Sherer P. Still WaiLing for Upgraded Databases ? Ц PC Week. 9 Nov. 1989.



http://swsys.ru/index.php?id=1334&lang=.&page=article


Perhaps, you might be interested in the following articles of similar topics: