Методы и средства инженерии программного обеспечения



         

Общесистемный подход к проектированию архитектуры системы - часть 4


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

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

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

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

Основными рекомендациями для декомпозиции сложной системы на компоненты или модули являются:

–  четкое определение цели и возможность  проверки их  выполнимости;

–  обязательное определение  входные и выходные данных;

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

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


Содержание  Назад  Вперед