Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
УМЛ new.doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
478.21 Кб
Скачать

23. Этап реализации.

Задачами фазы реализации являются:

  • Планирование необходимой на каждой итерации сборки системы. При использовании инкрементного подхода к разработке система реализуется посредством последовательности малых управляемых шагов.

  • Распределение системы путем отображения исполняемых компонентов на узлы модели размещения.

  • Реализация классов и подсистем.

  • Покомпонентное тестирование с последовательной сборкой компонентов в исполняемые модули с дальнейшим тестированием целостности.

Важной особенностью создания программного продукта является его пошаговое (инкрементное) построение небольшими управляемыми шагами. Каждый шаг вызывает некоторые проблемы, связанные со сборкой и тестированием. Результат каждого шага называется билд (Build). Это исполняемая версия системы. По сути билд – это часть функциональности, соответствующая варианту использования и/или варианту его реализации.

Каждый билд тестируется до создания нового билда. Преимущества инкрементного подхода:

  • Исполняемая версия может быть создана на ранней стадии работ. Можно сразу начинать тестирование сборки и показывать результаты работы.

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

  • Тестирование сборки обычно более тщательное, чем полные тесты системы.

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

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

Инженер по компонентам отвечает за исходные тексты компонентов, за реализацию классов и подсистем. Что точно понимается под компонентом, зависит от среды реализации. Компонент – это физический контейнер для элементов модели (подсистем и классов). Наиболее распространенные виды компонентов: исполняемый модуль - программа, готовая к запуску; файл с исходным текстом программы (или вспомогательный файл); таблица реляционной базы данных. Компоненты предоставляют те же интерфейсы, что и элементы моделей, реализацией которых они являются. Между компонентами может существовать зависимость компиляции, показывающая, в какой очередности компоненты следует скомпилировать для получений работоспособной программы.

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

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

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