Иерархическая структура проектных спецификаций и иерархические уровни проектирования

 

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

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

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

Список иерархических уровней в каждом приложении может быть специ­фичным, но для большинства приложений характерно следующее наиболее круп­ное выделение уровней:

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

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

· микроуровень, на котором проектируют отдельные детали и элементы машин и приборов.

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

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

Неопределенность и нечеткость исходных данных при нисходящем проектировании (так как еще не спроектированы компоненты) или исходных требований при восходящем проектировании (поскольку ТЗ имеется на всю систему, а не на ее части) обусловливают необходимость прогнозирования недостающих данных с последующим их уточнением, т. е. последовательного приближения к окончательному решению (итерационность проектирования).

Наряду с декомпозицией описаний на иерархические уровни применяют разделение представлений о проектируемых объектах на аспекты.

Аспект описания (страта)описание системы или ее части с некоторой оговоренной точки зрения, определяемой функциональными, физическими или иного типа отношениями между свойствами и элементами.

Различают функциональный, информационный, структурный и поведенчес­кий (процессный) аспекты.

· Функциональное описание относят к функциям сис­темы и чаще всего представляют его функциональными схемами.

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

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

· Поведенческое описание характеризует процессы функционирования (алгорит­мы) системы и (или) технологические процессы создания системы.

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

Отметим, что в общем случае выделение страт может быть неоднознач­ным. Так, помимо указанного подхода очевидна целесообразность выделения таких аспектов, как функциональное (разработка принципов действия, струк­турных, функциональных, принципиальных схем), конструкторское (определе­ние форм и пространственного расположения компонентов изделий), алгорит­мическое (разработка алгоритмов и программного обеспечения) и технологическое (разработка технологических процессов) проектирование си­стем. Примерами страт в случае САПР могут служить также рассматривае­мые далее виды обеспечения автоматизированного проектирования.