Инженерия приложений и предметной области
Базисом инженерии программирования, основанного на использовании ПИК, является, как было сказано выше, прикладная инженерия и инженерия ПрО, которые базируются на методах накопления, поиска и использования готовых ПИК, программ, а также отдельных частей ПС многоразового применения.
Прикладная инженерия – это инженерия ПИК и процесс создания ПС из готовых компонентов и ПИК.
Инженерия ПрО ориентирована на создание архитектуры ПрО - каркаса (фреймворка), представленной ПИК, компонентами многоразового применения из семейства программ ПрО и их интерфейсов.
Основными этапами инженерии ПрО являются:
– анализ ПрО и выявление объектов и отношений между ними;
– определение области действий объектов ПрО;
– определение общих функциональных и изменяемых характеристик, построение модели характеристик, устанавливающей зависимость между различными членами семейства, а также в пределах членов семейства системы;
– создание базиса для производства конкретных программных членов семейства с механизмами изменчивости независимо от средств их реализации;
– подбор и подготовка компонентов многократного применения, описание аспектов выполнения задач ПрО;
– генерация отдельного домена, члена семейства и ПС в целом.
В основе генерации модели ПрО для семейства ПС лежит модель характеристик и набор компонентов реализации задач ПрО. Используя данную модель, знания о конфигурациях и спецификации компонентов участвующих в этом процессе, можно автоматизировано сгенерировать отдельный член семейства, а также ПО для всей ПрО.
Инженерия ПрО включает в себя следующие вспомогательные процессы:
– корректировка процессов для разработки решений на основе ПИК;
– моделирование изменчивости и зависимостей компонентов многоразового использования, фиксации их в модели характеристик и в справочнике информации об изменении моделей (объектных, Use Case и др.). Фиксация зависимостей между характеристиками модели избавляет разработчиков от некоторых конфигурационных операций, выполняемых, как правило, вручную;
– разработка инфраструктуры ПИК – описание, хранение, поиск, оценивание и объединение готовых ПИК;
– создание репозитария ПИК и компонентов многоразового использования в классе задач ПрО (рис.6.2);
– обеспечение безопасности, защиты данных, изменений;
– обеспечение синхронизации и взаимодействия компонентов и ПИК.
РЕПОЗИТАРИЙ
ПрО
Компоненты Новые компоненты Сервисы и
ПИК из семейства ПрО члены семейства ПС
Аспекты Аспекты взаимо-
безопасности, действия,
защиты, изменения синхронизации
ПИК компонентов
Рис.6.2. Структура репозитария в интегрированной среде ПрО
Архитектурное проектирование домена (Domain design) – это определение архитектуры домена на основе программных компонентов – специфичных активов/ ресурсов.
Aрхитектура домена – каркас для ПИК, активов и формально определенных интерфейсов должна согласовываться с моделью домена, стандартами организации и оцениваться на соответствие выбранной методологии архитектурного проектирования.
Технология доменной инженерии базируется на новом процессе в модели ЖЦ (ISO/IEC 12207) и включает в себя стандартизированные подпроцессы:
– формировання ресурсров (Asset provision) – разработка или приобретение ресурсов (активов), которые могут использоваться при компоновки нових программных систем или подсистем.
– разработка базы ресурсов (asset–based development), в основе которой лежит концепция повторного использования (software reuse) – ПИК, обеспечивающая компоновку программных продуктов домена;
– сопровождение ресурсов (Asset maintenance) – модификация и эволюция модели, архитектуры и продуктов домена за счет готовых ресурсов типа ПИК.
Данная технология нуждается в разработке методик и инструментов для эффективного ее выполнения, а также для генерации системы из ПИК и компонентов многоразового применения на основе спецификаций требований к системе.
В результате применения технологии доменной инженерии в софтверной организации будет создаваться, поддерживаться и развиваться архитектурный базис из множества ПИК, хранящийся в репозитарии и учитывающий общие и специфические особенности разных сторон деятельности в доменах.
Основным требованием к инженерии ПрО является обеспечение многоразового применения используемых решений для семейства ПС, а в инженерии приложений – производство (линейка) одиночной системы из ПИК по требованиям к ней.