Архитектура программных средств

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

Иерархическая структура программ имеет ряд специфических свойств:

· вертикальная соподчиненность, заключающаяся в последова­тельном упорядоченном расположении взаимодействующих компо­нентов;

· право вмешательства и приоритетного воздействия на компо­ненты любых уровней;

· взаимозависимость действий компонент верхних уровней от реакций на воздействия и от функционирования компонент ниж­них уровней, информация о которых передается верхним уровням.

В результате в иерархических структурах ПС образуются два потока взаимодействий между компонентами разных уровней:

сверху вниз – ко­ор­динирующие и управляющие воздей­ствия верхних уровней;

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

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

Число уровней определяется объемом и сложностью ПС. С повышением иерархического уровня увеличи­ваются объем программ, реализующих компоненты каждого уров­ня, и количество обрабатываемых переменных. Одновременно со­вокуп­ности команд все более специализируются, и снижается воз­можность повторного применения компонентов в различных комби­нациях для решения аналогичных задач.

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

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

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

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

При разра­ботке серии однотипных версий ПС для некоторой прик­лад­ной области целесообразно выбрать и унифицировать внешний интер­фейс и операционную систему. Для эффективного управления разработкой программ необходимо стандартизировать и соблюдать ряд принципов и правил архитектурного построения ПС.

Наши рекомендации