Требования к IDEF0 модели

Методология функционального моделирования IDEF0 – это технология описания системы в целом как множества взаимосвязанных действий или функций. При этом функции системы исследуются независимо от объектов, которые обеспечивают их выполнение.

IDEF0 модель ПО должна включать:

- Название модели;

- Цель модели;

- Точку зрения;

- Список данных – указать  данные, которые относятся к входам, выходам, управлению, механизмам;

- Список функций – иерархический список функций  (не менее 4-х функций первого уровня) в виде:

Название функции проектируемой системы – А0.

Название функции (первого уровня) – А1.

             Название функции (второго уровня) - А11.

             Название функции А12.

             Название функции А13.

Название функции – А2.

             Название функции А21.

             Название функции А22.

             Название функции А23.

Словарь данных – создается для упрощения понимания создаваемой модели и исключения неоднозначности трактования модели;

Описание функциональных блоков;

Диаграммы модели:

1. Контекстная диаграмма А-0 (диаграмма верхнего уровня) с описанием цели системы и точки зрения модели (пример на рис. 1);

2. Диаграмма декомпозиции А0 (пример на рис. 2);

3. Диаграмма декомпозиции некоторого функционального блока диаграммы А0 (пример на рис 3);

4. Диаграмма дерева узлов (пример на рис. 4).

Диаграммы должны быть выполнены на специальном бланке либо вручную, либо с использованием BPWin (рис.2, 3).  Функции и данные, отображаемые на диаграммах, должны быть описаны (рекомендуется выполнить также при помощи BPWin).

Краткая справка по синтаксису IDEF0 диаграмм*

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

 

 

Рисунок1. Контекстная диаграмма А-0 системы «Экспериментальный цех механообработки». Функция (цель) системы – Изготовить деталь.


 

 

 

Рисунок 2. Диаграмма декомпозиции А0

 

 


Функциональные блоки на диаграммах изображаются прямоугольниками. Блок представляет функцию или активную часть системы, поэтому названиями блоков служат глаголы или глагольные обороты. Например, названиями блоков диаграммы «Выполнить задание» (рис. 2) являются: определить степень выполнения задания, выбрать инструменты, подготовить рабочее место, обработать на станке и собрать (рис. 3).

В отличие от других графических методов структурного анализа каждая сторона блока имеет особое, вполне определенное назначение. Левая сторона блока предназначена для входов, верхняя - для управления, правая - для выходов, нижняя - для механизмов. Такое обозначение отражает определенные системные принципы: входы преобразуются в выходы, управление ограничивает или предписывает условия выполнения преобразований, механизмы показывают, кто, что и как выполняет функция. Например, четвертый блок диаграммы «Выполнить задание» может быть интерпретирован следующим образом: детали, сырье и брак, обрабатываются на станке и собираются в результаты обработки с использованием оборудованного рабочего места.

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

Наиболее доминирующий блок обычно размещается в верхнем левом углу диаграммы, а наименее доминирующий - в правом нижнем углу. В результате получается «ступенчатая» схема, подобная представленной на рис. 3 для блоков 1,2,3. Расположение блоков на странице отражает авторское определение доминирования. Таким образом, топология диаграммы показывает, какие функции оказывают большее влияние на остальные.

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

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


Рисунок 3. Диаграмма декомпозиции А2 «Выполнить задание»

 


материалы (например, сырье и заготовки), инструменты (например, набор инструментов), рабочие чертежи (например, чертежи и указания), рабочую среду (например, оборудованное рабочее место) и управленческую информацию (например, статус задания). Однако в системном анализе вместо термина «объекты» часто употребляют термин «данные».

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

Между объектами и функциями возможны четыре отношения: вход, управление, выход, механизм. Каждое из этих отношений изображается дугой, связанной с определенной стороной блока. Дуги кодируются: код состоит из латинской буквы I, C, O, M и числа (рис. 2, 3). По соглашению левая сторона блока предназначена для входных дуг, верхняя сторона - для управленческих дуг, правая сторона - для выходных дуг, нижняя сторона - для дуг механизмов. Таким образом, стороны блока чисто графически сортируют объекты, изображаемые касающимися блока дугами.

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

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

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

Обратная связь по управлению и обратная связь по входу являются более сложными, поскольку они представляют итерацию или рекурсию. А именно выходы из одной функции влияют на будущее выполнение других функций, что впоследствии влияет на исходную функцию. Обратная связь по управлению возникает тогда, когда выход некоторого блока влияет на блок с большим доминированием. Рассмотрим для примера диаграмму «Изготовить нестандартную деталь» на рис. 2. Функция управлять выполнением задания ограничивает действие функции контролировать качество выполнения с помощью чертежа, в котором указаны разрешенные допуски. Кроме того, дуга штамп «принято», являющаяся выходом блока контролировать качество выполнения, организует работу блока управлять выполнением задания, поскольку именно штамп «принято» указывает, что задание завершено. Таким образом, штамп «принято» влияет на будущую деятельность блока управлять выполнением задания, поэтому соответствующая дуга направлена назад. Связь по входной обратной связи имеет место тогда, когда выход одного блока становится входом другого блока с большим доминированием. Например, задания, отвергнутые функцией контролировать качество выполнения, отсылаются на вход блока выполнить задание в качестве брака.

Связи «выход-механизм» встречаются нечасто и представляют особый интерес. Они отражают ситуацию, при которой выход одной функции становится средством достижения цели для другой. Например, на рис. 3. представлена функция   подготовить рабочее место, имеющая выход оборудованное рабочее место, который, в свою очередь, является механизмом для блока обработать на станке и собрать. Это означает, что оборудованное рабочее место необходимо для того, чтобы начать процесс обработки. А в этом случае дуга механизма обозначает строго последовательную взаимосвязь: приготовления должны быть завершены до начала работы. Поэтому связи «выход-механизм» характерны при распределении источников ресурсов (например, требуемые инструменты, обученный персонал, физическое пространство, оборудование, финансирование, материалы).

Дуга  редко изображает один объект. Обычно она символизирует набор объектов. Например, дуга, именуемая рабочий комплект, отражает техническое задание, чертеж, план-график, некоторое сырье и заготовки. Так как дуги представляют наборы объектов, они могут иметь множество начальных точек (источников) и конечных точек (назначений). Поэтому дуги могут разветвляться и соединяться различными сложными способами. Вся дуга или ее часть может выходить из одного или нескольких блоков и заканчиваться в одном или нескольких блоках, как, например, дуга принятое задание на рис. 3. Отметим, как различные компоненты дуги принятое задание следуют в другие блоки диаграммы: штамп «принято» является управляющей информацией для блока управлять выполнением задания, в то время как принятое, но незаконченное задание является входом в блок выполнить задание.

Разветвления дуг, изображаемые в виде расходящихся линий, означают, что все содержимое дуг или его часть может появиться в каждом ответвлении дуги. Дуга всегда помечается до разветвления, чтобы дать название всему набору. Кроме того, каждая ветвь дуги может быть помечена или не помечена в соответствии со следующими правилами:

– непомеченные ветви содержат все объекты, указанные в метке дуги перед разветвлением (т.е. все объекты принадлежат этим ветвям);

– ветви, помеченные после точки разветвления, содержат все объекты или их часть, указанные в метке дуги перед разветвлением (т.е. каждая метка ветви уточняет, что именно содержит ветвь).

Например, на диаграмме «Изготовить нестандартную деталь» дуга принятое задание включает несколько объектов и разветвляется в нескольких направлениях. Дуга штамп "принято " влияет на блок управлять выполнением, задания; принятое, но незаконченное задание идет в блок выполнить задание для следующей обработки, а деталь с биркой идет в блок управлять выполнением задания для окончательной проверки и поставки.

Слияние дуг в SADT, изображаемое как сходящиеся вместе линии, указывает, что содержимое каждой ветви идет на формирование метки для дуги, являющейся результатом слияния исходных дуг. После слияния результирующая дуга всегда помечается для указания нового набора объектов, возникшего после объединения. Кроме того, каждая ветвь перед слиянием может помечаться или не помечаться в соответствии со следующими правилами:

- непомеченные ветви содержат все объекты, указанные в общей метке дуги после слияния (т.е. все объекты исходят из всех ветвей);

- помеченные перед слиянием ветви содержат все или некоторые объекты из перечисленных в общей метке после слияния (т.е. метка ветви ясно указывает, что содержит ветвь).

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






Дерево узлов

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

 

 

Рисунок 4. Дерево узлов


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: