РазрПрогрПрилож / 1.Предпроектное обследование-IDEF0 / IDEF0(лаб.работа) / 17(ЛР).Дерево узлов. Отчеты BPWin — 3
Ключевые слова: функциональная модель, методология IDEF0, CASE-средства, предметная область, декомпозиция, проверка синтаксиса, дерево узлов Node Tree, каркас диаграммы.
Методические указания к лабораторной работе
Цель: получить практические навыки моделирования предметной области.
Времявыполнения: 2 часа.
Диаграмма дерева узлов и FEO
Диаграмма дерева узлов показывает иерархию работ в модели и позволяет рассмотреть всю модель целиком, но не показывает взаимосвязи между работами.
Процесс создания модели работ является итерационным, следовательно, работы могут менять свое расположение в дереве узлов многократно.
Чтобы не запутаться и проверить способ декомпозиции, следует после каждого изменения создавать диаграмму дерева узлов. Впрочем, BPwin имеет мощный инструмент навигации по модели — Model Explorer, который позволяет представить иерархию работ и диаграмм в удобном и компактном виде, однако составляющей стандарта IDEF0.
Для создания диаграммы дерева узлов следует выбрать в меню пункт Diagram/Add Node Tree. Возникает диалог формирования диаграммы дерева узлов Node Tree Definition (рис.).
Рис. Выбор команды для формирования диаграммы дерева узлов
Рис. Диалог настройки диаграммы дерева узлов (шаг 1)
Рис. Диалог настройки диаграммы дерева узлов (шаг 2)
В диалоге Node Tree Definition следует указать глубину дерева — Number of Levels (по умолчанию — 3) и корень дерева (по умолчанию — родительская работа текущей диаграммы).
По умолчанию нижний уровень декомпозиции показывается в виде списка, остальные работы — в виде прямоугольников. Для отображения всего дерева в виде прямоугольников следует выключить опцию Bullet Last Level. При создании дерева узлов следует указать имя диаграммы, поскольку, если в нескольких диаграммах в качестве корня на дереве узлов использовать одну и ту же работу, все эти диаграммы получат одинаковый номер (номер узла + постфикс N, например AON) и в списке открытых диаграмм (пункт меню Window) их можно будет различить только по имени.
Диаграммы «только для экспозиции» (FEO) часто используются в модели для иллюстрации других точек зрения, для отображения отдельных деталей, которые не поддерживаются явно синтаксисом IDEF0. Диаграммы FEO позволяют нарушить любое синтаксическое правило, поскольку по сути являются просто картинками — копиями стандартных диаграмм и не включаются в анализ синтаксиса.
Для создания диаграммы FEO следует выбрать пункт меню Diagram/Add FEO Diagram. В возникающем диалоге Add New FEO Diagram следует указать имя диаграммы FEO и тип родительской диаграммы (рис.).
Рис. Диалог создания FEO-диаграммы
Новая диаграмма получает номер, который генерируется автоматически (номер родительской диаграммы по узлу + постфикс F, например A1F).
В процессе лабораторной работы следует сформировать дерево узлов Node Tree (рис.). На сформированном отчете Node Tree наглядно видно количество уровней декомпозиции построенной функциональной модели и отношение между родительскими и дочерними диаграммами.
Рис. Дерево узлов Node Tree
Каркас диаграммы
Диаграммы декомпозиции с граничными рамками называются каркасом диаграммы.
Каркас содержит заголовок (верхняя часть рамки) и подвал (нижняя часть). Заголовок каркаса используется для отслеживания диаграммы в процессе моделирования. Нижняя часть используется для идентификации и позиционирования в иерархии диаграммы.
Смысл элементов каркаса приведен в таблицах.
Значения полей каркаса задаются в диалоге Diagram Properties (меню Diagram /Diagram Properties) — рис.
Создание отчетов в BPwin
BPwin имеет мощный инструмент генерации отчетов. Отчеты по модели вызываются из пункта меню Report. Всего имеется семь типов отчетов. В процессе выполнения лабораторной работы построить:
- Model Report. Включает информацию о контексте модели — имя модели, точку зрения, область, цель, имя автора, дату создания и др.
- Diagram Report. Отчет по конкретной диаграмме. Включает список объектов (работ, стрелок, хранилищ данных, внешних ссылок и т. д.).
- Diagram Object Report. Наиболее полный отчет по модели. Может включать полный список объектов модели (работ, стрелок с указанием их типа и др.) и свойства, определяемые пользователем.
- Activity Cost Report. Отчет о результатах стоимостного анализа.
- Arrow Report. Отчет по стрелкам. Может содержать информацию из словаря стрелок, информацию о работе-источнике, работе-назначении стрелки и информацию о разветвлении и слиянии стрелок.
- Data Usage Report. Отчет о результатах связывания модели процессов и модели данных
- Model Consistency Report. Отчет, содержащий список синтаксических ошибок модели.
Таблица. Поля заголовка каркаса (слева направо)
Поле | Смысл |
Used At | Используется для указания на родительскую работу в случае, если на текущую диаграмму ссылались посредством стрелки вызова |
Autor, Date, Rev, Project | Имя создателя диаграммы, дата создания и имя проекта, в рамках которого была создана диаграмма. REV-дата последнего редактирования диаграммы |
Notes 123456789 10 | Используется при проведении сеанса экспертизы. Эксперт должен (на бумажной копии диаграммы) указать число замечаний, вычеркивая цифру из списка каждый раз при внесении нового замечания |
Status | Статус отображает стадию создания диаграммы, отображая все этапы публикации |
Working | Новая диаграмма, кардинально обновленная диаграмма или новый автор диаграммы |
Draft | Диаграмма прошла первичную экспертизу и готова к дальнейшему обсуждению |
Recommended | Диаграмма и все ее сопровождающие документы прошли экспертизу. Новых изменений не ожидается |
Publication | Диаграмма готова к окончательной печати и публикации |
Reader | Имя читателя (эксперта) |
Date | Дата прочтения (экспертизы) |
Context | Схема расположения работ в диаграмме верхнего уровня. Работа, являющаяся родительской, показана темным прямоугольником, остальные – светлым. На контекстной диаграмме (А-0) показана надпись ТОР. В левом нижнем углу показывается номер по узлу родительской диаграммы: |
Источник
1.5.3 Дерево узлов (функций)
Разработанная модель IDEF0 со всеми уровнями структурной декомпозицией может быть представлена на единственной диаграмме в виде дерева узлов (функций), дополняющего перечень узлов. Для изображения этого дерева нет стандартного формата. Единственное требование состоит в том, что вся иерархия узлов модели должна быть представлена наглядно и понятно. Пример дерева функций показан на рисунке 15 [6].
Рисунок 15 – Диаграмма дерева функций
1.6 Построение диаграмм idef0
1.6.1 Правила построения диаграмм idef0
При построении диаграммы в нотации IDEF0 необходимо придерживаться следующих правил [1] [2]:
1) в составе модели должна присутствовать контекстная диаграмма А-0, которая содержит только один блок. Номер единственного блока на контекстной диаграмме А-0 должен быть 0;
2) блоки на диаграмме должны располагаться по диагонали – от левого верхнего угла диаграммы до правого нижнего в порядке присвоенных номеров. Блоки на диаграмме, расположенные вверху слева «доминируют» над блоками, расположенными внизу справа. Расположение блоков на листе диаграммы отражает авторское понимание доминирования. Таким образом, топология диаграммы показывает, какие функции оказывают большее влияние на остальные;
3) неконтекстные диаграммы должны содержать не менее трех и не более шести блоков. Эти ограничения поддерживают сложность диаграмм на уровне, доступном для чтения, понимания и использования. Диаграммы с количеством блоков менее трех вызывают серьезные сомнения в необходимости декомпозиции родительской функции. Диаграммы с количеством блоков более шести сложны для восприятия читателями и вызывают у автора трудности при внесении в нее всех необходимых графических объектов и меток;
4) каждый блок неконтекстной диаграммы получает номер, помещаемый в правом нижнем углу; порядок нумерации – от верхнего левого к нижнему правому блоку (номера от 1 до 6);
5) каждый блок, подвергнутый декомпозиции, должен иметь ссылку на дочернюю диаграмму; ссылка (например, узловой номер, С-номер или номер страницы) помещается под правым нижним углом блока;
6) имена блоков (выполняемых функций) и метки стрелок должны быть уникальными. Если метки стрелок совпадают, это значит, что стрелки отображают тождественные данные;
7) при наличии стрелок со сложной топологией целесообразно повторить метку для удобства ее идентификации;
8) следует обеспечить максимальное расстояние между блоками и поворотами стрелок, а также между блоками и пересечениями стрелок для облегчения чтения диаграммы. Одновременно уменьшается вероятность перепутать две разные стрелки;
9) блоки всегда должны иметь хотя бы одну управляющую и одну выходную стрелку, но могут не иметь входных стрелок;
10) если одни и те же данные служат и для управления, и для входа, вычерчивается только стрелка управления. Этим подчеркивается управляющий характер данных и уменьшается сложность диаграммы;
11) максимально увеличенное расстояние между параллельными стрелками облегчает размещение меток, их чтение и позволяет проследить пути стрелок (рисунок 16);
Рисунок 16 – Расстояние между параллельными стрелками
12) стрелки связываются (сливаются), если они представляют сходные данные и их источник не представлен на диаграмме (рисунок 17);
Рисунок 17 – Слияние стрелок
13) обратные связи по управлению должны быть показаны как «вверх и над» (рисунок 9в). Обратные связи по входу должны быть показаны как «вниз и под» (рисунок 9г). Так же показываются обратные связи посредством механизма (рисунок 9д). Таким образом, обеспечивается показ обратной связи при минимальном числе линий и пересечений;
14) циклические обратные связи для одного и того же блока изображаются только для того, чтобы их выделить. Обычно обратную связь изображают на диаграмме, декомпозирующей блок. Однако иногда требуется выделить повторно используемые объекты (рисунок 18);
Рисунок 18 – Циклические обратные связи для одного блока
15) стрелки объединяются, если они имеют общий источник или приёмник, или они представляют связанные данные. Общее название лучше описывает суть данных. Следует минимизировать число стрелок, касающихся каждой стороны блока, если, конечно, природа данных не слишком разнородна (рисунок 19);
Рисунок 19 – Минимизация числа стрелок для каждой стороны блока
16) если возможно, стрелки присоединяются к блокам в одной и той же позиции. Тогда соединение стрелок конкретного типа с блоками будет согласовываться, и чтение диаграммы упростится (рисунок 20);
Рисунок 20 – Присоединение стрелок к блокам в одной и той же позиции
17) при соединении большого числа блоков необходимо избегать необязательных пересечений стрелок (рисунок 21). Следует минимизировать число петель и поворотов каждой стрелки (рисунок 22);
Рисунок 21 – Минимизация необязательных пересечений стрелок
Рисунок 22 – Минимизация числа петель и поворотов каждой стрелки
18) блоки (функции) являются сопряжёнными через среду, если они имеют связи с источником, генерирующим данные, без конкретного определения отношения отдельной части данных к какому-либо блоку (рисунок 23а);
а) – сопряжение функций через среду; б) – сопряжение функций через запись
Рисунок 23 – Разновидности сопряжений функции
19) две или более функций являются сопряжёнными через запись, если они связаны с набором данных и не обязательно зависят от того, представлены ли все возможные интерфейсы как сопряжение через среду. Тип интерфейса, показанный на рисунке 23б, предпочтителен, поскольку определяются отношения конкретных элементов данных к каждому блоку;
20) необходимо использовать (где это целесообразно) выразительные возможности ветвящихся стрелок (рисунок 8).
Источник