Основные сведения

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

Для слияния и разветвления моделей в BPwin используются стрелки вызова.

Для отщепления ветви от модели следует щелкнуть правой кнопкой мыши по декомпозированной работе, например «Изготовление деталей» (работа не должна иметь диагональной черты в левом верхнем углу) и выбрать во всплывающем меню пункт Split Model (рис. 4.1). В появившемся диалоге Split Options следует указать имя создаваемой модели, например «Изготовление деталей». После подтверждения расщепления в старой модели работа станет недекомпозированной (признак - диагональная черта в левом верхнем углу), будет создана стрелка вызова (рис. 4.2), причем ее имя будет совпадать с именем новой модели, и, наконец, будет создана новая модель, причем имя контекстной работы будет совпадать с именем работы, от которой была «оторвана» декомпозиция, т.е. «Изготовление деталей» (рис. 4.3).

 

Рис. 4.1. Выбор режима расчепления модели

 

Рис. 4.2. Модель с отщепленой работой «Изготовление деталей»

 

 

Рис. 4.3. Представление новой модели «Изготовление деталей» в браузере

Что бы произвести слияние моделей необходимо выполнить следующие условия:

- обе сливаемые модели должны быть открыты в BPwin;

- имя модели-источника, которое присоединяют к модели-цели, должно совпадать с именем стрелки вызова работы в модели-цели (рис. 4.4);

 

Рис. 4.4. Условия слияния моделей

 

- стрелка вызова должна исходить из недекомпозируемой работы (работа должна иметь диагональную черту в левом верхнем углу) (рисунок 4.5);

- имена контекстной работы подсоединяемой модели-источника и работы на модели-цели, к которой мы подсоединяем модель-источник, должны совпадать (рисунок 4.4);

- модель-источник должна иметь, по крайней мере, одну диаграмму декомпозиции.

 

Рис. 4.5. Стрелка вызова работы «Сборка изделия» модели − цели

Для слияния моделей необходимо выделить работу, с которой будет сливаться модель и правой кнопкой мыши вызвать контекстное меню. В контекстном меню выбрать пункт Megre Model.

 

Рис. 4.6. Выбор режима слияния моделей

Появляется диалог, в котором следует указать опции слияния модели (рис. 4.7). При слиянии моделей объединяются и словари стрелок и работ. В случае одинаковых определений возможна перезапись определений или принятие определений из модели-источника. То же относится к именам стрелок, хранилищам данных и внешним ссылкам.

 

Рис. 4.7. Диалог Continue with merge?

После подтверждения слияния (кнопка ОК) модель-источник подсоединяется к модели-цели, стрелка вызова исчезает, а работа, от которой отходила стрелка вызова, становится декомпозируемой – к ней подсоединяется диаграмма декомпозиции первого уровня модели-источника (рис. 4.8).

 

Рис. 4.8. Модель после слияния с моделью «Изготовление деталей»

Стрелки, касающиеся работы на диаграмме модели-цели, автоматически не мигрируют в декомпозицию, а отображаются как неразрешенные. Их следует тоннелировать вручную. На рис. 4.9 показано, как выглядят модели в окне Model Explorer после слияния. Стрелкой показано, что модель склеилась с работой.

 

Рис. 4.9 – Вид моделей в Model Explorer после слияния

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