SHPORA.net :: PDA | |
Main FAQ гуманитарные науки естественные науки математические науки технические науки Архитектура ПС архитектура ПС - это его строение как оно видно (или должно быть видно) из-вне его, т.е. представление ПС как системы, состоящей из некоторой совокупности взаимодействующих подсистем. В качестве таких подсистем выступают обычно отдельные программы. Разработка архитектуры является первым этапом борьбы со сложностью ПС, на котором реализуется принцип выделения относительно независимых компонент. Основные задачи разработки архитектуры ПС: - выделение программных подсистем и отображение на них внешних функций (заданных во внешнем описании) ПС; - определение способов взаимодействия между выделенными программными подсистемами. Различают следующие основные классы архитектур программных средств: - цельная программа; - комплекс автономно выполняемых программ; - слоистая программная система; - коллектив параллельно выполняемых программ. Цельная программа представляет вырожденный случай архитектуры ПС: в состав ПС входит только одна программа. Такую архитектуру выбирают обычно в том случае, когда ПС должно выполнять одну какую-либо ярко выраженную функцию и ее реализация не представляется слишком сложной. Естественно, что такая архитектура не требует какого-либо описания (кроме фиксации класса архитектуры), так как отображение внешних функций на эту программу тривиально, а определять способ взаимодействия не требуется (в силу отсутствия какого-либо внешнего взаимодействия программы, кроме как взаимодействия ее с пользователем, а последнее описывается в документации по применению ПС). Комплекс автономно выполняемых программ состоит из набора программ, такого, что: - на каждом слое ничего не известно о свойствах (и даже существовании) последующих (более высоких) слоев; - каждый слой может взаимодействовать по управлению (обращаться к компонентам) с непосредственно предшествующим (более низким) слоем через заранее определенный - интерфейс, ничего не зная о внутреннем строении всех предшествующих слоев; - каждый слой располагает определенными ресурсами, которые он либо скрывает от других слоев, либо предоставляет непосредственно последующему слою (через указанный интерфейс) некоторые их абстракции. |