Обзор моделей анализа и синтеза модульных систем обработки данных
Системы обработки данных (СОД) различного класса и назначения представляет собой совокупность прикладного программного обеспечения, базы данных, общесистемного программного обеспечения, реализуемые на основе вычислительной системы, с целью решения некоторого прикладного приложения по обработке данных или управлению. Основными задачами проектирования системы обработки данных является синтез прикладного программного обеспечения и базы данных, при этом последние, до настоящего времени, разрабатываются часто используя опыт и знания конкретных разработчиков. В настоящее время разработаны формализованные методы проектирования прикладных программ и базы данных, системы автоматизации их проектирования, системы автоматизации процессов разработки программ. Исследования показали, что при разработке формализованные моделей и методов проектирования систем обработки данных, задачи, как правило, формулируются в виде задач дискретного программирования трудоемкость и сложность решения которых общеизвестна. В связи с этим возникает необходимость разработки принципиально новых подходов, постановок и методов решения, обеспечивающие эффективное решение задач проектирования информационного и прикладного программного обеспечения. Вместе с тем при разработке сложных информационных систем эти инструментарии не всегда обеспечивают качество и сокращение длительности разработки проектов. Поэтому возникает необходимость разработки формализованных моделей и методов проектирования прикладного программного обеспечения и базы данных систем обработки данных. Одним из направлений такого подхода является разработка моделей и методов анализа и синтеза модульных и типовых модульных систем обработки данных.
В рамках этого направления рассмотрим известные подходы анализа и проектирование систем обработки данных. Для разработки формализованных методов необходимо провести анализ предметной области, для которой разрабатываются системы обработки данных. В результате анализа систем обработки данных выделяются множество функциональных задач и процедур обработки данных, множество информационных элементов, необходимых и достаточных для решения множества задач системы, а так же взаимосвязи между информационными элементами и процедурами обработки данных в процессе решения задач по обработке данных. В ряде случаев в процессе анализа оцениваются и выделяются такие количественные характеристики, как размеры информационных элементов и процедур, частоты функционирования программных модулей и функциональных задач, средние времена обращения к массивам базы данных и другие [14, 16, 18, 21, 24]. Уточним некоторые понятия. Под функциональной задачей понимается последовательность процедур обработки данных и используемых ими входной информации (информации элементов) для решения приложения, необходимого для управления или принятие решения. Под процедурой обработки данных понимается любая математическая или логическая операция, либо сложная комбинация указанных операций, приводящая к формированию результата на основе заданных исходных данных. Информационным элементом (атрибут) называется наименование минимальной неделимой информации, значения которой используется в качестве исходных данных процедурами обработки либо являются результатом их обработки. Рассмотрим методы анализа систем обработки данных реального времени (СОД РВ), которые могут быть использованы при анализе систем других классов. Процедуры обслуживания заявок в системах обработки данных реального времени (СОД РВ) неоднозначно определяются требуемым множеством выходных информационных элементов и детерминированной технологией их получения, а зависят от времени поступлении заявки на обработку, состава и взаимосвязей необходимых для ее обслуживания задач и от текущего состояния информационной базы, определяющего альтернативные возможности обработки данных. Для исследование этих возможностей необходим совместный анализ множество требований, предъявляемых поступающими на обработку заявками, используемых для их обслуживания задач обработки данных, алгоритмов их решения и используемых массивов. Для анализа структур информационных потоков и технологии обработки данных в СОД РВ используется совокупность взаимосвязанных матричных и графовых моделей, обеспечивающих формальный анализ технологий обработки данных как отдельной задачи СОД РВ, так и множества задач в целом [25-30, 33,38]
Обобщенной формой представления взаимосвязей информационных элементов, процедур и информационных элементов при решении задач являются технологические матрицы сложности и достижимости, которые затем преобразуются в интегрированный граф обработки данных. Построение единого интегрированного графа осуществляется путем выполнения операции «наложения» технологических графов и заключается в совмещении идентичных уровней каждого графа и идентичных вершин на каждом уровне. В результате формируется интегрированный граф, которому соответствует матрица, полученная путем логического сложения технологических матриц. Рассмотрим указанные процедуры анализа более подробно, так как они являются общими для модульных систем обработки данных любого класса. Построение и структуризация технологических графов решение отдельных задач обработки данных реального времени осуществляется следующим образом. Пусть задано множество задач СОД РВ . Технологии решения каждой задачи соответствует направленный граф , где множество вершин графа, отражающих информационные элементы задачи ; - множество отношений между информационными элементами . Каждому графу соответствует квадратная бинарная матрица смежности размера . Элемент матрицы равен 1, если элементы и графа связаны отношениями , и равен 0 в противном случае.
Структурированный граф взаимосвязей информационных элементов задачи, преобразованный к виду, не содержащему циклов обработки, называется скелетным графом задачи . Он состоит из ряда уровней или непересекающихся подмножеств вершин, каждая из которых является выходным результатом обработки предыдущего уровня или подмножества информационных элементов. С использованием графа определяется множество процедур обработки данных, необходимых для решения задач . Для каждой упорядоченной пары элементов определим подмножества
.
Затем определим на множестве декартово произведение . Пара элементов связано с процедурой , если она принадлежит отношению . Совокупность процедур задачи образует множество . Полное множество процедур анализируемого множества задач определяется путем объединения . Для определения в задаче входных, промежуточных и выходных данных, последовательности их получения и контуров обратной связи, а также анализа взаимосвязей в системе введено понятие матрицы достижимости. Под матрицей достижимости понимается квадратная бинарная матрица, проиндексированная одинаковым образом по обеим осям множеством информационных элементов . Элемент достижим из элемента , если на графе можно указать направленный путь от вершины к вершине (либо ),
Матрица определяется на основе матрицы . При этом они связаны булевым уравнением
Анализ структур обработки данных для каждой задачи СОД и определение необходимой последовательности получение информационных элементов упрощается, если элементы построенной матрицы достижимости упорядочить по уровням (этапом) их обработки. Получение матрицы методом свертки циклов позволяет уменьшить ее размерность, облегчить анализ и синтез структуры решение как отдельных задач системы, так и функционирования всей СОД РВ. Процесс построения матриц достижимости значительно упрощается, если проектировщик представляет информацию не о парных отношениях «информационный элемент – информационный элемент», а информацию о существовании направленного пути (путей) между парами информационных элементов.
Взаимосвязь между процедурами обработки данных при обслуживании каждой заявки СОД РВ, наборами входных и промежуточных данных удобно представлять с помощью таблицы инциденции обработки множеств запросов , которая представляет собой матрицу вида
В матрице каждая строка отображает процедуру обработки, а каждый столбец – использование всеми процедурами при решении задачи рассматриваемого информационного элемента. В строке содержится информация о множестве входных и выходных данных, связанных с анализируемой процедурой. Анализ столбцов позволяет выявить входные и выходные информационные элементы рассматриваемой задачи . Элементы являются входными при решении задачи, если столбец матрицы содержит единственную, отличную от нуля запись . Если -й столбец содержит запись , то соответствующий ему элемент является выходным. Технологической матрицей смежности при решении задачи назовем квадратную бинарную матрицу, проиндексированную по обеим осям множествами . Матрица имеет четыре подматрицы: с размерами . Нулевые элементы подматрицы соответствует элементам, равным -1 в матрице , а не нулевые элементы подматрицы соответствует элементам, равным +1 в транспонированной матрице . Таким образом, элемент матрицы равен 1, если элемент является входным для процедуры , и элемент равен 1, если элемент является входным при решении задачи. В противном случае элементы в позициях и равны 0. Единичный элемент в позиции , подматрицы соответствует наличию единичных элементов в позиции подматрицы и в позиции подматрицы , , что равносильно существованию информационного элемента , который является входным для процедуры , и выходным для процедуры при решении задачи. Для удобство формального описания будет считать, что главная диагональ подматрицы заполнена единичными записями. Используя матрицу , можно определить матрицу , которая содержит подматрицы , проиндексированы соответственно: . Подматрица удовлетворяет соотношению , где -целое положительное число, не больше числа элементов при решении задачи, т.е. . Матрица содержит единичные элементы в позиции , если процедура входит в последовательность процедур, необходимую для получения элемента при решении задачи. В противном случае запись в позицию подматрицы равна нулю. Подматрица определяется соотношением и содержит единичный элемент в позиции , если элемент является входным для последовательности процедур, в состав в которых входит процедура . В противном случае элемент равен 0. Подматрица является матрицей достижимости процедур обработки данных при решении задачи и удовлетворяет соотношению
.
Единичная запись в позиции подматрицы соответствует наличию направленного пути в графе технологии решения задачи от процедуры к процедуре . Построение единого интегрированного графа осуществляется путем выполнения операции «наложения» графов и заключается в совмещении идентичных уровней каждого графа и идентичных вершин на каждом уровне. В результате формируется интегрированный граф , которому соответствует матрица смежности , , , полученная путем логического сложения матриц :
.
Анализ структур полученного интегрированного графа позволяет на заключительном этапе анализа определить следующие общесистемные требования к обслуживанию заявок в СОД РВ: множество требуемых задач обработки данных для обслуживания одного типа заявок и базовые задачи для каждого типа, взаимосвязи между заявками по решаемым задачам и между задачами по используемым процедурам и данным, рациональную дисциплину обслуживания заявок и оценку требуемой производительности вычислительной системы для заданной дисциплины обслуживания. В качестве моделей описания и анализа задач обработки данных при создании типовых модульных СОД также используется аналогичная совокупность графовых и матричных моделей. Методика анализа и структуризация исходной для синтеза системы типовых модулей СОД информации базируется на последовательном преобразовании матричных и графовых моделей алгоритмов решения задач обработки данных, содержащих всю необходимую информацию о взаимосвязях и отношениях между различными элементами отдельных задач. При формировании полного структурированного графа технологии решения задачи учитывается наличие в алгоритмах решения задач обработки данных циклических участков и альтернативных вариантов обработки, процедур обновления информационных элементов и процедур принятия решений. Полный структурированный граф и соответствующие ему матрицы смежности и достижимости позволяют описывать алгоритмы решения задач обработки данных в целом и отдельные их части с заданной степенью детализации [31,32,34,39,40] Рост числа решаемых и диалоге задач в составе модульных СОД их сложности, повышение требований к своевременности, достоверности и полноте представляемой информации обусловливает необходимость дальнейшего усовершенствования методологии проектирования СОД которая должна учитывать не только особенности “человеческого фактора”, но и требование по обеспечению максимальной эффективности использования технического, программного и информационного обеспечения диалоговых систем (ДС) и их типизации. На стадии предпроектного анализа ДС необходимо выполнить комплекс работ, основной из которых также является анализ решаемых пользователями задач, технологии их решения, определения требований пользователей к эффективности и качеству решения задач [40]. На этой стадии определяется необходимый набор процедур реализации комплекса диалоговых задач и требуемой для их решения информации. Для представления результатов изучения и анализа задач пользователей и технологии их решения используется модификации описанных выше формализованных методов представления результатов этого изучения. Определение процедур обработки данных, анализ и структуризацию каждой диалоговой задачи целесообразно осуществлять с использованием дополнительной совокупности матричных и графовых моделей, обеспечивающих подготовку локальных сценариев (ЛС) диалога и других исходных данных, необходимых для технического проектирования оптимальных ДС [41]. Локальные сценарии диалога строятся на основе описанных пользователями (средствами языка описания задач – ЯОЗ) схем их решения, которые дополняют формами представления результатов проектирования систем. Схема решения каждой задачи представляется в виде совокупности взаимосвязанных таблиц решений (ТР), описывающих последовательность и содержание шагов диалога пользователя с ДС при решении задачи, используемую при этом информацию, а также требования пользователя к характеристикам процесса обработки запросов, выдаваемых на каждом шаге диалога. Совокупность таблиц решений однозначным образом отображается в граф локального сценария диалога (ГЛС). Каждая вершина ГЛС соответствует одной ТР, а направленные дуги – взаимосвязям между таблицами. Каждому ГЛС ставятся в соответствие матрица смежности и матрица достижимости, отражающие структуру и взаимосвязь узлов графа. При помощи матриц для облегчения последующего анализа локальных сценариев диалога производиться упорядочение ГЛС, в ходе которого узлы графа распределяются по уровням их прохождения и процессе решения задача. При наличии контуров на уровнях ГЛС осущестиляется их свертка, что приводит к сокращению размерности и упрощению матриц смежности и достижимости графа. На основе упорядоченного таким образом ГЛС с помощью языка ГЕРТ сетей могут быть определны такие характеристики ГЛС диалога, как условная вероятность завершения решения задачи в заданном узле графа, обладающей свойством аддитивности на дугах графа. С учетом результатов анализа требований пользователей и локальных сценариев диалога формируетсся сценарий ДС в целом путем операции «наложения» упорядоченных узлов на каждом уровне. Для формализации, упорядочения и анализа сценария диалога всей системы также используется совокупность взаимосвязанных матричных и графовых моделей и методы оценки ГЕРТ-сетей. На этой стадии производится проверка корректности описания схем решения задач и соответсвия характеристик функционирования ДС построенному сценарию системы и требованиям пользователей к эфективности и качеству задач. Выявление неточностей и противоречий в описании схем решения задач и в заданных требованиях к эффективности и качеству их решения на стадии предпроектного анализат ДС до реализации этапов проектирования, отладки и внедрения системы позволяет свести к миниму затраты на исправление ошибок, тестирование и, следовательно, сократит общие затраты на реализацию ДС. Качественные изменения в структуре современных модульных СОД связаны с широким внедрением сетей ЭВМ, систем управления локальными и распределенными базами данных, а также новейших систем передачи данных. Процедура формального анализа предметной области пользователей банков данных также основана на использовании совокупности графовых и матричных моделей, обеспечивающих структуризацию предметной области пользователя,выявление дублирующих информационных элементов и избыточных взаимосвязей, формирование графов информационных структур, выделение ключей и атрибутов, и направлена на посторение рацональных канон ических стуктур баз данных. Анализ в процессе проектирования распределенных баз данных (РБД) в модульных системах включает четыре взаимосвязанных этапа предпроектный анализ предметных областей пользователей, анализ предметных областей пользователей и построение внешних моделей, построение обобщенной внешней модели и построение канонической структуры РБД. Результатом анализа предметных областей пользователей является построение канонической структуры РБД, которая отражает наиболее существенные характеристики и устойчивые свойства данных и отношений между ними и является инвариантной по отношению к аппаратным и программным средствам ее реализации [35, 36, 37]. В результате анализа определяется также целосообразность применения методов типизации, обеспечивается формирование обобщенной внешней модели (ОВМ), проектирование канонической структуры РБД и выделеные на ней множества типовых и специфических сегментов данных. Выделенные сегменты данных и их характеристики используются при синтезе логической структуры РБД, логических и физических структур локальных БД. Целесообразность применения методов типизации при проектировании РБД определяется уровнем информационной и процедурной общности внешних моделей предметной области пользователей. Внешняя модель предметной области пользователя включает описание характеристик информационных элементов и отношений между информационными элементами и процедурами. Для унификации групповых информационных элементов, входящих в структуру внешней модели предметной области отдельного пользователя, выделенное множество групповых информационных элементов проверяется на семантическую связность и возможность удаления дублированных информационных элементов в группах. Результатом выполнения процедур нормализации внешней модели предметной области пользователя является каноническая структура, т.е. структура, которая представляет собой минимальную концептуальную схему и отражает наиболее существенные свойства и характерные особенности предметных областей пользователей. В процессе анализа модульных СОД широко используется аппарат сетей Петри [42]. Задачи анализа систем обработки данных, решаемых при помощи временных сетей Петри с разноцветными маркерами, включают задачи определения возможности и корректности реализацим любой функциональной задачи пользователя или заданного множества таких задач, возможности многократного использования процедур обработки данных выявления тупиковых ситуаций при совместной обработке информационных элементов. С использованием сетей Петри проводитсятакже анализ механизмов защиты в системах обработки данных [42, 43]. Предложенные методы анализа реализуются в совокупности с методами формализованного представления результатов анализа и позволяют с помощью набора стандартных форм документов представить полученную информацию в виде, удобном для дальнейшего использования в процессе синтеза модульных систем обработки данных. Рассмотрим методы синтеза модульных систем обработки данных разного назначения. Информационно-справочные системы. Синтез модульных СОД на этапе технического проектирования включает оптимальной выбор состава модулей програмного обеспечения и информационных массивов, содержания межмодульного интерфейса, структуры системы обработки данных в целом, формализуемой в виде фунциональной блок-схемы, с учетом заданных технико-экономических характеристик фунционирования разрабатываемой системы. Для оптимизации процесса проектирования системы мспользуетя критерий минимума сложности межмодульного интерфейса. Оптимизация эксплуатационных характеристик может быть осуществлена в зависимости от конкретных обстоятельств по одному из следующих критеров: минумум времени обмена между оперативной и внешней памятью, снижение технологической сложности алгоритмов обработки данных, что является обобщением показателя «транспортного фактора» при реализации алгоритмов решения функциональных задач, предложенного Лангефорсом. Кроме того, для информационных систем существенным является максимум инфармационной производительности и обеспечение достоверности обработки данных [14-21, 30, 31, 44-60]. Поставленные задачи синтеза модульных блок-схем обработки данных сформулированы как задачи нелинейного целочисленного програмирования. Для их решения предложены алгоритмы, основанные на схеме «ветвей и границ» и использующие основные особенности модульног проектирования. Автоматизированные система реального времени. При разработке ряда систем управления предусматривается высокая оперативность решения задач переработки информации и управления, что обеспечивает требуемое время реакции но отдельные состояния (в том числе и случайные) в управляемых, позволяющие эффективно воздействовать на ход их протекания. Автоматизированные системы, в которых обеспечивается данное требование, получили название автоматированных систем обработки данных реального времени (СОД РВ). Рассмотрим методы синтеза оптимальных модульных систем обработки данных реального времени [25-30, 38, 54-66]. Основные особенности постановки задачи синтеза программного и информационного обеспечения СОД РВ на этапе их технического проектирования заключаются в необходимости учитывать характеристики и параметры входных потоков на выдачу сообщений, характеристики и параметры обработки и обелуживания заявок различных типов, общую загрузку различными заявками управляющей ЭВМ и систем передачи данных внешними абонентами, структуру и обьем памяти для заявок различных типов дисциплины распределения вычислительных ресурсов и использования памяти при приеме и выдаче сообщений. Учёт особенностей проектирования СОД РВ достигается введением в разработанные модели параметров, определяющих законы поступления заявок на обработку, дисциплины обслуживания и приоритетность заявок, взаимосвязи между заявками по решеаемым задачам. Можно выделить следующие основные задачи модулного построения программного и информационного обеспечения СОД РВ: синтез оптимальных модульных СОД РВ с бесприоритетным обслуживанием заявок в режиме разделения времени на однопроцессорных ЭВМ, синтез систем РВ с приоритетным обслуживанием заявок в ОС реального времени на однопроцессорных ЭВМ, синтез оптимальных модульных СОД РВ на многопроцессорных ЭВМ. Специфичной при решении задач синтеза оптимальных СОД РВ с бесприоритетным обслуживанием заявок является однородность входного потока заявок и слабая информационная и временная взаимосвязь между заявками и их обслуживанием. При синтезе СОД РВ с приоритетным обслуживанием заявок необходимо учитывать разнообразие входных заявок различных типов, характеризующихся различной интенсивностью поступления, приоритетностью обслуживания [31, 67]. Требования пользователей на время обслуживания заявок значительно жестче по сравнению с задачами бесприорететного обслуживания, что требует размещения в оперативной памяти ряда программных процедур и данных, необходимых для обслуживания отдельных заявок. Взаимосвязи между заявками по составу решаемых задач в таких системах, как правило, весьма существенны. Повышение эффективности решения данных задач осуществляется в основном за счет сокращения числа и времени обмена между уровнями памяти обслуживании заявок [55, 67, 68]. Решение задач синтеза оптимальных СОД РВ с мультипроцессорным обслуживанием предполагает сокращение не только времени обмена между уровнями памяти, но и среднего процессорного времени решения задач за счет параллельной реализации процедур, модулей или заявок в целом [58, 59, 61, 65, 66]. Задачи синтеза модульных СОД РВ этапе технического проектирования включают также оптимальный выбор состава модулей программного обеспечения и информационных массивов, содержания межмодульного интерфейса, структуры СОД РВ в целом, формализуемой в виде функционнальной блок-схемы с учётом заданных технико-экономических характеристик функционирования разрабатываемой системы. Основным требованием к результатам синтеза системы является максимально высокий уровень обслуживания требований пользователей за счет оптимального использования вычислительных ресурсов. При синтезе модульных СОД РВ исследуются различные характиристики производительности СОД РВ, коэффициент готовности обслуживания заявок пользователей, затраты пользователей при эксплутации системы и др. В зависимости от содержательной постановки задачи для проектируемой системы в качестве критерия оптимальности синтеризируемой системы используется одна из пречисленных СОД РВ бесприоритетным обслуживанием заявок в режиме разделения времени и с приоритетным обслуживанием заявок используются критерии максимума производительности СОД РВ и максимум коэффициентов готовности системы, а в задачах синтеза оптимальных модульных СОД РВ использующих мультипроцессорное обслуживание, определяющей характеристикой являются затраты пользователей в процессе эксплуатации системы. В качестве основных ограничений при решении задач синтеза СОД РВ используются ограничения на время обслуживания и на устойчивость режима функционирования системы в целом. К дополнительным ограничениям относятся ограничения на состав процедур и программных модулей, объем оперативной памяти, состав и объем информационных массивов, степень дублирования процедур и информационных элементов в СОД РВ и др. Рассмотрим задачу синтеза оптимальной структуры программного и информационного обеспечения СОД РВ по критерию максимальной производительности системы в режиме разделения времени в процессе обслуживания входных потоков на решение задач. Задача формулируется следующим образом:
,
при ограничениях на: время обслуживание -й заявки для заданного алгоритма организации очереди ;
устойчивость режима функционирования системы
;
общее число дублируемых процедур
;
число процедур в составе модуля
;
число информационных элементов в составе массива базы данных
,
дублирование информационных элементов в массивах
;
однородность включения процедур в программные модули
;
общее число информационных элементов, используемых модулями задач
.
Переменные и обозначения в данной постановке определены следующим образом:
где - булевая матрица взаимосвязей задач и процедур обработки данных, и - матрицы взаимосвязей информационных элементов с процедурами обработки данных соответственно при считывании и записи:
Переменные и определяют взаимосвязи системы разрабатываемых модулей задачи с отдельными информационными элементами и массивами инф
Воспользуйтесь поиском по сайту: ©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...
|