Декомпозиция системы. Построение иерархической структуры системы. Разложение программного комплекса на уровни.
Способ управления сложными системами был известен ещё в древности. При проектировании сложной программной системы необходимо разделять её на всё меньшие и меньшие подсистемы, каждую из которых можно совершенствовать независимо. В самом деле, декомпозиция вызвана сложностью программирования системы, поскольку именно эта сложность вынуждает делить пространство состояний системы. Декомпозицию системы можно разделить на два основных вида: Ø алгоритмическая декомпозиция; Ø объектно-ориентированная декомпозиция. Алгоритмическая декомпозиция. Большинство из нас формально обучено структурному проектированию «сверху вниз», и мы воспринимаем декомпозицию как обычное разделение алгоритмов, где каждый модуль системы выполняет один из этапов общего процесса. Разделение по алгоритмам концентрирует внимание на порядке происходящих событий. Объектно-ориентированная декомпозиция. Всегда можно предположить, в том числе и в нашем случае, что у любой задачи существует альтернативный способ декомпозиции системы. Хотя обе декомпозиции решают одну и туже задачу, но они делают это разными способами. Во второй декомпозиции мир представлен совокупностью автономных действующих объектов, которые взаимодействуют друг с другом, чтобы обеспечить поведение системы, соответствующее более высокому уровню. Каждый объект обладает своим соответствующим поведением, и каждый из них моделирует некоторый объект реального мира. С этой точки зрения объект является вполне осязаемой вещью, которая демонстрирует вполне определённое поведение. Объекты что-то делают, и мы можем, послав им сообщение, просить их выполнить то-то или то-то.
Однако мы не можем сконструировать сложную систему одновременно двумя способами, тем более что эти способы, по сути, ортогональны. Мы должны начать разделение системы либо по алгоритмам, либо по объектам, а затем, используя полученную структуру, попытаться рассмотреть проблему с другой точки зрения. Опыт показывает, что полезнее начинать с объектной декомпозиции. Такое начало помогает лучше справиться с приданием организованности сложности программных систем. Объектная декомпозиция имеет несколько достаточно важных преимуществ перед алгоритмической декомпозицией: - Объектная декомпозиция уменьшает размер программных систем за счёт повторного использования общих механизмов, что приводит к существенной экономии выразительных средств. - Объектно-ориентированные системы более гибкие и проще эволюционируют со временем, потому что их схемы базируются на устойчивых промежуточных формах. - Объектная декомпозиция существенно снижает риск при создании сложной программной системы, так как она развивается из меньших систем, в которых мы уже уверены. - Объектная декомпозиция помогает нам разобраться в сложной программной системе, предлагая нам разумные решения относительно выбора подпространства большого пространства состояний. На рисунке 1 показана декомпозиция объекта проектирования.
6 8 11 14 7 9 12 15 10 13
Рис.1. Декомпозиция объекта проектирования.
0.- Тонкостенная железобетонная оболочечная конструкция. 1.- Подсистема исследования состояния спокойствия.
2.- Подсистема проверки на наличие дефекта. 3.- Подсистема исследования напряженно-деформированного состояния от различных нагрузок. 4.- Подсистема проверки оболочки на прочность в упругом состоянии. 5.- Подсистема расчёта околоарматурных напряжений. 6.- Процедура исследования бездефектного околоарматурного состояния. 7.- Процедура исследования конструкции с околоарматурным состоянием. 8.- Процедура исследования напряженно-деформированного состояния от температурной нагрузки. 9.- Процедура исследования напряженно-деформированного состояния от поверхностной нагрузки. 10.- Процедура исследования напряженно-деформированного состояния от комбинированной нагрузки. 11.- Процедура расчёта деформированных сред и выражения углов поворота нормали. 12.- Процедура соотношения упругости при поверхностных и температурных нагрузках. 13.- Процедура получения уравнения равновесия. 14.- Процедура расчёта физико-механических характеристик. 15.- Процедура расчёта В-сплайнов для получения точного решения. На рисунке 2 показано разложение на уровни программного комплекса.
Рис.2. Разложение программного комплекса на уровни.
Воспользуйтесь поиском по сайту: ©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...
|