суббота, 22 ноября 2014 г.

Интеграция человека из составных частей

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

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

Из-за отделения спецификаций от реализаций в процессе проектирования
все физические иерархии у нас в модели содержат только один уровень декомпозиции. На нижнем уровне всех физических декомпозиций находятся спецификации составных частей. Вот так это выглядит в "Структурном представлении" браузера модели на примере физической декомпозиции человека на части тела.


То же самое имеем для частей тела человека. Например, для руки видим следующее в "Структурном представлении" браузера модели.

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

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


Далее интегрируем части тела человека, аналогичным образом подставляя вместо спецификаций частей тела их реализации. Создаем новый блок для интеграции человека с названием "Человек - Реализация". Наследуем его от блока "Человек - Части тела". Этот блок определяет физическую архитектуру человека и является блоком-спецификаций архитектуры. От него новый блок наследует все части тела: голова, левая рука, .... и определенные ранее связи между частями. На диаграмме ниже показана частичная интеграция. Переопределены типы частей только для левой и правой руки. 


Теперь давайте посмотрим как выглядит блок "Человек-Реализация", в котором мы интегрировали части тела и отделы руки, в "Структурном представлении" браузера модели MagicDraw. В этом представлении отображаются все уровни иерархии частей блоков. В браузере видно, что типы для левой и правой руки были переопределены на "Рука - Реализация". Так как блок "Рука - Реализация" содержит вложенные части, то в браузере для левой и правой руки человека отображаются их составные части: плечо, скелет, кровоснабжение. Также видно что на следующем уровне детализации для плеча, предплечья, кисти также переопределены типы на соответствующие реализации. Для этих частей в браузере отображаются подсистемы и компоненты нижнего уровня, например, мышцы: бицепс, трицепс, плечевая мышца.


На основе блока модели "Человек - Реализация" (который выступает в роли индекса для документа) мы можем опубликовать документ, содержащий детальную спецификацию всех частей и отделов тела человека, их интерфейсов.


Комментариев нет:

Отправить комментарий