Основы IDEF0-моделирования

Основы IDEF0-моделирования

Для полного описания системы требуется набор IDEF0-диаграмм, образующих IDEF0-модель.

Контекстная диаграмма верхнего уровня

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

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

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

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

Узловые номера

Узловые номера используются для того, чтобы указать положение диаграммы в иерархии модели. Например, диаграмма с узловым номером А21 детализирует блок 1 на диаграмме А2. Подобным же образом, А2 детализирует блок 2 на диаграмме АО, которая является самой полной диаграммой модели.

Все узловые номера графических диаграмм начинаются с буквы "A". Исходная для данной модели контекстная диаграмма имеет узловой номер А-0. Если создается более укрупненная контекстная диаграмма, в которую описываемая система входит в качестве подсистемы, то она нумеруется как А-1. Этот процесс может, если необходимо, продолжаться вверх по иерархии и дальше, однако А-0 остается вершиной конкретной модели.

Для дополнений к графическим диаграммам используются другие узловые номера. Номера для текстовых диаграмм содержат букву "Т" и соответствуют узловому номеру диаграммы, с которой они связаны (например, А2Т текстовая диаграмма для графической диаграммы А2). Узловые номера для глоссария содержат букву "G" (например, A1G). Узловые номера FEO-диаграмм содержат букву "F" (например, A2F).

ICOM-коды

IDEF0 требует, чтобы все внешние дуги диаграммы были согласованы по числу и наименованию (но не обязательно по расположению) с дугами, касающимися декомпозированного блока родительской диаграммы. Для этих целей принята система обозначений. Схема кодирования дуг ICOM (от слов: Input, Control, Output, Mechanism) позволяет точно идентифицировать и проверить связи по дугам между диаграммами.

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

Дуги, "помещенные в тоннель"

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

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

С-номер диаграммы

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

Пример. Сообщение о том, что третий вариант автор с инициалами КВВ заменяет шестым, будет записано в виде С-номера в правом нижнем углу диаграммы: КВВ006 (КВВ00З).

Для ведения системы С-номеров создается так называемый реестр, в котором приводится последовательный список С-номеров (начиная с номера 000) и соответствующие им имена диаграмм.

Правила построения диаграмм

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

Контекстные диаграммы должны иметь номер узла вида А-п, где п больше или равен нулю.

Модель должна включать контекстную диаграмму А-0, содержащую только один блок, имеющий номер 0.

Неконтекстная диаграмма должна иметь не менее трех (но не более шести) блоков.

Каждый блок на неконтекстной диаграмме следует пронумеровать внутри в нижнем правом углу (от 1 до 6)

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

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

Блок должен иметь ноль или большее количество входных дуг.

Блок должен иметь ноль или большее количество дуг механизма (не ссылочных).

Блок должен иметь ноль или одну дугу ссылки.

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

Рекомендуется максимально увеличить расстояние между параллельными дугами, оставляя больше места для меток. Это помогает зрительно определять количество дуг и прослеживать их пути.

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

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

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

Рекомендуется объединять дуги с общими источником или приемником, если они представляют связанные данные. Общее название лучше описывает суть данных

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

Следует минимизировать число петель и поворотов каждой дуги

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

Обратные связи по входу следует рисовать "вниз и под". Это позволит показать обратные потоки данных при минимальном числе линий и пересечений, а также собрать все входные дуги в нижней левой части диаграммы

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

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

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

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

Длинную дугу следует помечать дважды.

Дополнительные диаграммы

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

Текстовые диаграммы

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

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

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

Глоссарии

Глоссарий набор определений объектов (данных) и функций, представленных на диаграмме.

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

Поясняющие диаграммы

Поясняющие диаграммы FEO в виде рисунков применяемые с целью дополнительных пояснений к модели.

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

Указатель диаграмм и узлов

IDEF0-модель представляет собой согласованный и упорядоченный комплект документов, что обеспечивается организацией диаграмм в соответствии с порядком нумерации узлов: первый узел А-0, второй А0, третий А1, четвертый All и т.д. Полная IDEF0-модель обычно читается двумя способами:

обзорное чтение, когда читаются все диаграммы верхнего уровня, прежде чем перейти к диаграммам следующего. Это называется чтением "в ширину";

детальное чтение, когда читают отдельную ветвь дерева вплоть до диаграмм самого нижнего уровня. Это называется чтением "в глубину".

Чтобы помочь читателям правильно двигаться по древовидному набору диаграмм, разработаны дополнительные средства, в частности, указатели диаграмм и узлов. Они представляют собой списки узлов или диаграмм (по типу оглавления), определяющих содержание модели. В указателе диаграмм перечисляются все диаграммы модели, приводятся в отдельной строке название и номер узла каждой диаграммы. Указатель узлов содержит перечень всех блоков модели, причем в каждой отдельной строке записываются название и номер узла соответствующего блока. Соответствующая диаграмма имеет узловой номер с буквой "N", например, AON.

Процесс моделирования в IDEF0 включает в себя:

сбор информации об исследуемом объекте;

документирование полученной информации и представление ее в виде модели;

уточнение модели посредством итеративного рецензирования.

Сбор информации об исследуемом объекте

Сбор и изучение информации должны проводиться на всех этапах исследования объекта.

Можно назвать следующие способы получения сведений об изучаемой системе:

чтение документации;

наблюдение за работой системы; н

опрос с помощью анкет большой группы специалистов;

беседа с экспертами, обладающими соответствующим опытом и необходимыми сведениями о системе;

использование той информации, которой уже владеет автор;

построение гипотетического описания с последующим обращением к экспертам с просьбой помочь приблизить полученное описание к действительности.

Анкетирование

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

Анкеты рассылаются руководителям структурных подразделений и должны содержать графы для фамилии и должности анкетируемого. Отдельно излагается просьба приложить шаблоны документов, с которыми работают сотрудники соответствующего подразделения. Список вопросов необходимо ограничить (не более 15 - 20), а вся анкета не должна занимать более двух листов.

Пример анкеты.

Наименование подразделения.

ФИО руководителя подразделения, номер его телефона.

Координаты контактного лица (к кому в отсутствие или при занятости руководителя можно обращаться).

Основные функции подразделения.

Информация, поступающая из других подразделений (заявки, запросы, отчеты и т.п.).

Информация, передаваемая в другие подразделения.

Какая информация формируется ("рождается") в подразделении?

С какими внешними предприятиями (банк, заказчик, поставщик и т.п.) взаимодействует подразделение и какой информацией обменивается?

Физическое представление информационных потоков и хранилищ (документ, дискета, сеть, журнал, картотека и т.п.).

Документы, поступающие от руководства, готовящиеся для руководства.

Штатная структура и квалификация кадров.

Техническое оснащение подразделения (компьютеры, сеть, модем)

Подпись.

Просьба приложить:

Положение о подразделении.

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

Интервьюирование

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

Интервью это беседа с каким-либо лицом с целью сбора информации по рассматриваемому вопросу.

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