Модели IDEF0. IDEF0 сочетает в себе небольшую по объему графическую нотацию (она содержит только два обозначения: блоки и стрелки) со строгими и четко определенными рекомендациями, предназначенными для построения качественной и понятной модели системы.
Методология IDEF0 представляет собой комплект, имеющий содержание, глоссарий, определения и другие элементы, характерные для подобных аналитических инструментов.
Первый шаг при построении модели IDEF0 заключается в определении назначения модели – набора вопросов, на которые должна отвечать модель. Набор вопросов можно сравнить с предисловием, в котором раскрывается назначение книги.
Границы моделирования предназначены для обозначения ширины охвата предметной области и глубины детализации и являются логическим продолжением уже определенного назначения модели. Как читающий модель, так и непосредственно ее автор должны понимать степень детальности ответов на поставленные в назначении модели вопросы.
Следующим шагом указывается предполагаемая целевая аудитория, для нужд которой создается модель. От этого зависит уровень детализации, с которым должна создаваться модель. Перед построением модели необходимо иметь представление о том, какие сведения о предмете моделирования уже известны, какие дополнительные материалы и/или техническая документация для понимания модели могут быть необходимы для целевой аудитории, какие язык и стиль изложения являются наиболее подходящими.
Под точкой зрения понимается перспектива, с которой наблюдалась система при построении модели. Точка зрения выбирается таким образом, чтобы учесть уже обозначенные границы моделирования и назначение модели. Однажды выбранная точка зрения остается неизменной для всех элементов модели. При необходимости могут быть созданы другие модели, отображающие систему с других точек зрения. Приведем несколько примеров точек зрения при построении моделей: клиент, поставщик, владелец, редактор.
Действия. В IDEF0 действием называется функция, которая обрабатывает или переводит входные параметры (сырье, информацию и т. п.)
в выходные. Поскольку модели IDEF0 моделируют систему как множество иерархических (вложенных) функций, в первую очередь должна быть определена функция, описывающая систему в целом, – контекстная функция. Функции изображаются на диаграммах как поименованные прямоугольники или функциональные блоки. Имена функций в IDEF0 подбираются по правилам, сходным с правилами наименования действий в IDEF3, – с использованием глаголов или отглагольных существительных. Важно подбирать имена так, чтобы они отражали систему с точки зрения, выбранной для моделирования.
Выше IDEFO-модели определялись как иерархическое множество вложенных блоков. Любой блок может быть декомпозирован на составляющие его блоки. Декомпозицию часто ассоциируют с моделированием «сверху вниз», однако это не совсем верно. Функциональную декомпозицию корректнее определять как моделирование «снаружи внутрь», при котором мы рассматриваем систему наподобие луковицы, с которой последовательно снимаются слои.
Границы и связи. Описание любого блока должно как минимум включать описание объектов, которые блок создает в результате своей работы («выход»), и объектов, которые блок потребляет или преобразует («вход»).
В IDEF0 также моделируются управление и механизмы исполнения. Под управлением понимаются объекты, воздействующие на способ, которым блок преобразует вход в выход. Механизм исполнения – объекты, которые непосредственно выполняют преобразование входа в выход, но остаются неизменными.
Для типизации категорий информации на IDEF0-диаграммах используется аббревиатура ICOM, означающая возможные типы стрелок:
I (Input) – вход – то, что потребляется в ходе выполнения процесса;
С (Control) – управление – ограничения и инструкции, влияющие на ход выполнения процесса;
О (Output) – выход – то, что является результатом выполнения процесса;
М (Mechanism) – исполняющий механизм – то, что используется для выполнения процесса, но остается неизменным;
Вызов (Call) – специальная стрелка, указывающая на другую модель работы.
На рис. 3.2 представлены четыре стандартных типа стрелок в IDEF0, каждый из которых соединяется с определенной стороной функционального блока.
Для названия стрелок, как правило, употребляются имена существительные. Как и в случае с функциональными блоками, присвоение имен всем стрелкам на диаграмме является необходимым условием для понимания сути изображенного.
Рис. 3.2. Типы стрелок функционального блока
Стрелки входа. Вход представляет собой сырье или информацию, потребляемую или преобразуемую функциональным блоком для производства выхода. Стрелки входа всегда направлены в левую сторону прямоугольника, обозначающего в IDEF0 функциональный блок. Наличие входных стрелок на диаграмме не является обязательным, так как возможно, что некоторые блоки ничего не преобразуют и не изменяют. Примером блока, не имеющего входа, может служить «принятие решения руководством», где анализируется несколько факторов, но ни один из них непосредственно не преобразуется и не потребляется в результате принятия какого-либо решения.
Стрелки управления отвечают за регулирование того, как и когда выполняется функциональный блок. Так как управление контролирует поведение функционального блока для обеспечения создания желаемого выхода, каждый функциональный блок должен иметь как минимум одну стрелку управления. Стрелки управления всегда входят в функциональный блок сверху.
Управление часто существует в виде правил, инструкций, законов, политики, набора необходимых процедур или стандартов. Влияя на работу блока, оно само остается неизменным. Может оказаться, что целью функционального блока является как раз изменение того или иного правила, инструкции, стандарта и т. п. В этом случае стрелка, содержащая соответствующую информацию, должна рассматриваться не как управление, а как вход функционального блока.
Управление можно рассматривать как специфический вид входа. Когда неясно, относить ли стрелку к входу или к управлению, предпочтительно относить ее к управлению до момента, пока неясность не будет разрешена.
Стрелки выхода. Выход – это продукция или информация, получаемая в результате работы функционального блока. Каждый блок должен иметь как минимум один выход. Действие, которое не имеет никакого четко определяемого выхода, желательно не моделировать вообще.
При моделировании непроизводственных предметных областей выходами, как правило, являются данные, в каком-либо виде обрабатываемые функциональным блоком. В этом случае важно, чтобы названия стрелок входа и выхода были достаточно различимы по своему смыслу. Например, блок «Прием пациентов» может иметь стрелку «Данные о пациенте» как на входе, так и на выходе. В такой ситуации входящую стрелку можно назвать «Предварительные данные о пациенте», а исходящую – «Подтвержденные данные о пациенте».
Стрелки механизма исполнения. Механизмы являются ресурсом, который непосредственно исполняет моделируемое действие. С помощью механизмов исполнения могут моделироваться: ключевой персонал, техника и/или оборудование. Стрелки механизма исполнения могут отсутствовать в случае, если оказывается, что они не являются необходимыми для достижения поставленной цели моделирования.
Стрелка вызова рисуется как исходящая из нижней грани работы. Используется для указания того, что некоторая работа выполняется за пределами моделируемой системы.
Комбинированные стрелки. В IDEF0 существует пять основных видов комбинированных стрелок: выход – вход; выход – управление; выход – механизм исполнения; выход – обратная связь на управление; выход – обратная связь на вход.
Стрелка выход – вход применяется, когда один из блоков должен полностью завершить работу перед началом работы другого блока. Так, на рис. 3.3 определено, что очередному выполнению заявки должно предшествовать действие по ее принятию с определением позиции заявки.
Рис. 3.3. Комбинация стрелок выход – вход
Стрелка выход – управление отражает ситуацию преобладания одного блока над другим, когда один блок управляет работой другого. На рис. 3.4 выбор организационной процедуры влияет на внутренние регламенты предприятия.
Рис. 3.4. Комбинированная стрелка выход – управление
Стрелки выход – механизм исполнения встречаются реже и отражают ситуацию, когда выход одного функционального блока применяется в качестве инструментария для работы другого блока. На рис. 3.5 зажим, используемый для закрепления детали, должен быть собран для того, чтобы выполнить сборку детали.
Рис. 3.5. Комбинированная стрелка выход – механизм исполнения
Обратные связи на вход и на управление применяются в случаях, когда зависимые блоки формируют обратные связи для управляющих ими блоков. На рис. 3.6 получаемая от брокеров информация о текущих биржевых курсах применяется для корректирования стратегии игры на бирже.
Рис. 3.6. Комбинированная стрелка выход – обратная связь на управление
Стрелка выход – обратная связь на вход обычно применяется для описания циклов повторного выполнения чего-либо (рис. 3.7).
Рис. 3.7. Комбинированная стрелка выход – обратная связь на вход
Разъединение и соединение стрелок. Выход функционального блока может использоваться в нескольких других блоках. Фактически чуть ли не главная ценность IDEF0 заключается в том, что эта методология помогает выявить взаимозависимости между блоками системы. Соответственно, IDEF0 предусматривает как разъединение, так и соединение стрелок на диаграмме. Разъединенные на несколько частей стрелки могут иметь наименования, отличающиеся от наименования исходной стрелки. Исходная и разъединенные (или объединенные) стрелки в совокупности называются связанными. Такая техника обычно применяется для того, чтобы отразить использование в процессе только части сырья или информации, обозначаемой исходной стрелкой (рис. 3.8).
Рис. 3.8. Разъединенная на две части и переименованная стрелка
Аналогичный подход применяется по отношению к объединенным стрелкам.
Туннели
Понятие связанных стрелок используется для управления уровнем детализации диаграмм. Если одна из стрелок диаграммы отсутствует на родительской диаграмме (например, ввиду своей несущественности для родительского уровня) и не связана с другими стрелками той же иаграмммы, точка входа или выхода этой стрелки на диаграмме обозначается туннелем. Туннельная стрелка изображается с круглыми скобками на конце. На рис. 3.7, например, стрелка «отремонтированный ПК» – важный механизм исполнения для данной диаграммы, но, возможно, она более нигде не применяется в модели.
Туннель в данном случае используется как альтернатива загромождению родительских диаграмм стрелками, несущественными для их уровня.
Туннели используются для отражения ситуации, когда стрелка, присутствующая на родительской диаграмме, отсутствует в диаграмме декомпозиции соответствующего блока. На рис. 3.9 показаны непроработанные туннели, определяющие значения входящих и выходящих стрелок для данных процессов, активных только на этом уровне детализации.
Рис. 3.9. Пример применения туннеля
Непроработанный туннель отображается квадратными скобками на конце стрелки. Наличие такого туннеля говорит о незаконченности разрабатываемой модели (уровня модели) и является синтаксической ошибкой моделирования.
3.2. Построение моделей IDEF0
В этом разделе мы рассмотрим методику построения IDEF0-моделей более подробно.
Диаграммы
На рис. 3.10 типовая IDEF0-диаграмма показана вместе с находящейся на ее полях служебной информацией, которая состоит из хорошо выделенных верхнего и нижнего колонтитулов (заголовка и «подвала»). Элементы заголовка используются для отслеживания процесса создания модели. Элементы «подвала» отображают наименование модели, к которой относится диаграмма, и показывают ее расположение относительно других диаграмм модели.
Рис. 3.10. IDEF0-диаграмма со служебной информацией на полях
Все элементы колонтитулов диаграммы приведены в табл. 3.1, 3.2. Таким образом, каждая новая версия диаграммы будет иметь новое значение поле C-Number. Оно состоит из инициалов автора и последовательного уникального идентификатора, например SDO005. При публикации эти номера могут быть заменены стандартными номерами страниц.
Если диаграмма замещает собой другую, номер заменяемой диаграммы может быть заключен в скобки – SDO005 (SDO004). Это обеспечивает хранение истории изменений всех диаграмм модели.
Таблица 3.1
Дата: 2019-03-06, просмотров: 318.