Метод описания процессов idef3. Методология моделирования процессов IDEF3. Основные вопросы Понятие динамического моделирования Методология IDEF3 Основные элементы динамической модели
Формат IDEF3 применяется для описания бизнес-процессов в виде потоков операций (работ). Условные обозначения формата IDEF3 представлены в следующих таблицах 4 и 5.
Операции (работы) обозначают преобразования потоков материальных, финансовых ресурсов и информации (документов, файлов). Операции изображаются прямоугольниками со сплошными границами и прямыми углами, при этом нижняя часть прямоугольника отделена сплошной линией.
Каждая операция имеет название и номер. Название операции выражается глаголом или отглагольным существительным. Номер операции используется для ее идентификации в модели. Стрелки связей обозначают взаимосвязи между выполняемыми операциями, которые могут выражаться через связь операций посредством потока объектов или последовательность выполнения операций во времени.
Связь между операциями, выраженная как последовательность выполнения во времени может быть двух видов: 1) старшая связь; 2) связь-отношение.
Рис.5. - Контекстная диаграмма процесса подготовки документа в нотации IDEF0
Рис.6. - Диаграмма процесса подготовки документа в нотации IDEF0
Таблица 4. - Условное обозначение связей и потоков в IDEF3 диаграммах
Таблица 5. - Условные обозначения и описание элементов формата IDEF3
Старшая связь показывает, что для начала работы одной операции необходимо завершение выполнения другой. Старшая связь изображается однонаправленной сплошной стрелкой с одним наконечником.
Связь-отношение показывает, что для выполнения операции нет необходимости в завершении выполнения другой операции. необходимо только начать выполнение этой операции. Связь-отношение изображается однонаправленной пунктирной стрелкой с одним наконечником.
Стрелки изображаются вертикальными и горизонтальными отрезками прямых с одним или двумя наконечниками конце, пересекающиеся под прямым углом и сопряженные дугами. Стрелки соединяются с прямоугольниками, изображающими операции следующим образом:
1) концы стрелок должны касаться внешней стороны прямоугольника, но не пересекать ее;
2) стрелки должны подсоединяться к прямоугольнику на его сторонах, присоединение в углах не допускается;
3) в отличие от IDEF0-диаграмм, стрелки могут подходить и исходить из любых граней прямоугольников.
Объект модели типа «перекресток» используется для отображения логики взаимодействия стрелок при слиянии и разветвлении или для отображения множества событий, которые могут или должны быть завершены перед началом выполнения следующей операции. Перекрестки используются для обозначения следующих ситуаций: окончание реализации одной операции может служить сигналом к началу выполнения нескольких операций, или же одна операция для своего запуска может ожидать окончания выполнения нескольких операций. Стрелки могут сливаться и разветвляться только через перекрестки. В таблице 6 приводятся типы используемых перекрестков.
Таблица 6. - Описание типов перекрестков EDF3 диаграмм
Перекресток изображается квадратом, с двойной правой или левой границей. Правила создания перекрестков:
На одной диаграмме IDEF3 может быть создано несколько перекрестков различных типов.
Каждому перекрестку для слияния должен предшествовать перекресток для разветвления.
Перекресток для слияния «И» не может следовать за перекрестком для разветвления типа синхронного или асинхронного «ИЛИ».
Перекресток для слияния «И» не может следовать за перекрестком для разветвления типа исключающего «ИЛИ».
Перекресток для слияния типа исключающего «ИЛИ» не может следовать за перекрестком для разветвления типа «И».
Перекресток, имеющий одну стрелку на одной стороне, должен иметь более одной стрелки на другой.
1) участия важного объекта в выполнении операции;
2) циклов выполнения операций;
3) частоты выполнения операций;
При построении диаграмм в IDEF3 используется принцип декомпозиции. В результате декомпозиции образуется иерархическая структура диаграмм IDEF3.
Родительская диаграмма, расположенная на вершине иерархической структуры диаграмм, должна быть либо диаграммой IDEF0, либо диаграммой DFD. В случае, если IDEF3 диаграммы не дополняют IDEF0 модель или DFD модель, а являются самостоятельной моделью, то на указанной родительской диаграмме верхнего уровня должна быть обозначена цель моделирования и точка зрения создателя модели.
Правила построения диаграмм IDEF3 включают:
На вершине дерева декомпозиции диаграмм должна находится либо контекстная диаграмма в нотации IDEF0 с указанием цели моделирования и точки зрения, либо IDEF0 или DFD диаграмма (в случае если IDEF3-диаграммы дополняют модель в нотации IDEF0 или DFD).
Рекомендуется стрелки, обозначающие связи направлять либо слева направо, либо сверху вниз.
Диаграммы должны содержать не менее трех и не более 8 операций.
Каждая операция имеет свой уникальный номер и имя.
Связь через потоки объектов должна иметь имя, которое является уникальным.
Старшая связь и связи-отношения могут иметь имя, которые также должны быть уникальными. Уникальным именем должны обладать объекты ссылок.
Каждому перекрестку присваивается уникальный номер.
При наличии стрелок со сложной топологией целесообразно повторить имя для удобства ее идентификации.
Каждая операция, не имеющая декомпозиции, помечается небольшой диагональной чертой, расположенной в левом верхнем углу прямоугольника, изображающего эту операцию.
Дочерняя диаграммы (описания и сценарии) должны иметь один вход. Один выход должна иметь дочерняя диаграмма-описание.
Стрелки должны сливать и разветвляться через перекрестки.
При соединении большого числа прямоугольников необходимо избегать необязательных пересечений стрелок. Следует минимизировать число петель и поворотов каждой стрелки.
Следует обеспечить максимальное расстояние между прямоугольниками и поворотами стрелок, а также между прямоугольниками и пересечениями стрелок для облегчения чтения диаграммы. Одновременно уменьшается вероятность перепутать две разные стрелки.
В случаях сложных диаграмм рекомендуется использовать различные цвета или «уровни» для прямоугольников и стрелок, позволяющие показывать или распечатывать только часть схемы и добиваться её большей наглядности.
Диаграммы должны быть декомпозированы до уровня, на котором присутствуют операции обработки конкретных документов (или совокупности документов).
В ссылках на операции обработки документов должны быть указания на обрабатываемые документы.
Примеры диаграмм процесса в нотации IDEF3 представлены на Рис.7- Рис. 10:
Рис. 7. - Диаграмма IDEF3 процесса сбора и проверки информации
Рис. 8. - Диаграмма IDEF3 процесса обработки полученной информации
Рис. 9. - Диаграмма IDEF3 процесса анализа проекта документа
Рис. 10. - Диаграмма IDEF3 процесса согласования и утверждения документа
IDEF3 - способ описания процессов с использованием структурированного метода, позволяющего эксперту в предметной области представить положение вещей как упорядоченную последовательность событий с одновременным описанием объектов, имеющих непосредственное отношение к процессу.
IDEF3 является технологией, хорошо приспособленной для сбора данных, требующихся для проведения структурного анализа системы.
В отличие от большинства технологий моделирования бизнес-процессов, IDEF3 не имеет жестких синтаксических или семантических ограничений, делающих неудобным описание неполных или нецелостных систем. Кроме того, автор модели (системный аналитик) избавлен от необходимости смешивать свои собственные предположения о функционировании системы с экспертными утверждениями в целях заполнения пробелов в описании предметной области. На рис. 3.1 изображен пример описания процесса с использованием методологии IDEF3 .
IDEF3 также может быть использован как метод проектирования бизнес-процессов. IDEF3-моделирование органично дополняет традиционное моделирование с использованием стандарта методологии IDEF0 . В настоящее время оно получает все большее распространение как вполне жизнеспособный путь построения моделей проектируемых систем для дальнейшего анализа имитационными методами. Имитационное тестирование часто используют для оценки эксплуатационных качеств разрабатываемой системы. Более подробно методы имитационного анализа будут рассмотрены ниже.
Рис.3.1 Описание процесса в методологии IDEF3
Синтаксис и семантика моделей IDEF3
Основой модели IDEF3 служит так называемый сценарий бизнес-процесса, который выделяет последовательность действий или подпроцессов анализируемой системы. Поскольку сценарий определяет назначение и границы модели, довольно важным является подбор подходящего наименования для обозначения действий. Для подбора необходимого имени применяются стандартные рекомендации по предпочтительному использованию глаголов и отглагольных существительных, например «обработать заказ клиента» или «применить новый дизайн».
Сценарий для большинства моделей должен быть документирован. Обычно это название набора должностных обязанностей человека, являющегося источником информации о моделируемом процессе.
Также важным для системного аналитика является понимание цели моделирования - набора вопросов, ответами на которые будет служить модель, границ моделирования - какие части системы войдут, а какие не будут отображены в модели, и целевой аудитории - для кого разрабатывается модель.
Диаграммы
Как и в любой рассматриваемой в этой книге технологии моделирования действий, главной организационной единицей модели IDEF3 является диаграмма. Взаимная организация диаграмм внутри модели IDEF3 особенно важна в случае, когда модель заведомо создается для последующего опубликования или рецензирования, что является вполне обычной практикой при проектировании новых систем. В этом случае системный аналитик должен позаботиться о таком информационном наполнении диаграмм, чтобы каждая из них была самодостаточной и в то же время понятной пользователю.
Единица работы. Действие
Аналогично другим технологиям моделирования действие, или в терминах IDEF3 «единица работы» (Unit of Work - UOW), - другой важный компонент модели. Диаграммы IDEF3 отображают действие в виде прямоугольника. Как уже отмечалось, действия именуются с использованием глаголов или отглагольных существительных, каждому из действий присваивается уникальный идентификационный номер. Этот номер не используется вновь даже в том случае, если в процессе построения модели действие удаляется. В диаграммах IDEF3 номер действия обычно предваряется номером его родителя (рис. 3.2)
Рис. 3.2. Изображение и нумерация действия в диаграмме IDEF3
Связи
Связи выделяют существенные взаимоотношения между действиями. Все связи в IDEF3 являются однонаправленными, и хотя стрелка может начинаться или заканчиваться на любой стороне блока, обозначающего действие, диаграммы IDEF3 обычно организуются слева направо таким образом, что стрелки начинаются на правой и заканчиваются на левой стороне блоков. В табл. 3.1 приведены три возможных типа связей.
Связь типа «временное предшествование» . Как видно из названия, связи этого типа показывают, что исходное действие должно полностью завершиться, прежде чем начнется выполнение конечного действия. Связь должна быть поименована таким образом, чтобы человеку, просматривающему модель, была понятна причина ее появления. Во многих случаях завершение одного действия инициирует начало выполнения другого, как показано на рис. 3.3. В этом примере автор должен принять рекомендации рецензентов, прежде чем начать вносить соответствующие изменения в работу.
Изображение |
Название |
Назначение |
Временнбе предшествование (Temporal precedence) |
Исходное действие должно завершиться, прежде чем конечное действие сможет начаться |
|
Объектный поток (Object flow) |
Выход исходного действия является входом конечного действия. Из этого, в частности, следует, что исходное действие должно завершиться, прежде чем конечное действие сможет начаться |
|
Нечеткое отношение (Relationship) |
Вид взаимодействия между исходным и конечным действиями задается аналитиком отдельно для каждого случая использования такого отношения |
Таблица 2.1
Рис. 3.3. Связь типа “временное предшествование” между действиями 1 и 2.
Связь типа «объектный поток» . Одна из наиболее часто встречающихся причин использования связи типа «объектный поток» заключается в том, что некоторый объект, являющийся результатом выполнения исходного действия, необходим для выполнения конечного действия. Обозначение такой связи отличается от связи временного предшествования двойной стрелкой. Наименования потоковых связей должны четко идентифицировать объект, который передается с их помощью. Временная семантика объектных связей аналогична связям предшествования, это означает, что порождающее объектную связь исходное действие должно завершиться, прежде чем конечное действие может начать выполняться.
Связь типа «нечеткое отношение». Связи этого типа используются для выделения отношений между действиями, которые невозможно описать с использованием предшественных или объектных связей. Значение каждой такой связи должно быть определено, поскольку связи типа «нечеткое отношение» сами по себе не предполагают никаких ограничений. Одно из применений нечетких отношений - отображение взаимоотношений между параллельно выполняющимися действиями. Наиболее часто нечеткие отношения используются для описания специальных случаев связей предшествования, например для описания альтернативных вариантов временного предшествования.
Соединения
Завершение одного действия может инициировать начало выполнения сразу нескольких других действий или, наоборот, определенное действие может требовать завершения нескольких других действий до начала своего выполнения. Соединения разбивают или соединяют внутренние потоки и используются для описания ветвления процесса:
- разворачивающие соединения используются для разбиения потока. Завершение одного действия вызывает начало выполнения нескольких других;
- сворачивающие соединения объединяют потоки. Завершение одного или нескольких действий вызывает начало выполнения другого действия.
В табл. 2.2 объединены три типа соединений .
Графическое обозначение |
Название |
Правила инициации |
|
Соединение «и» |
Разворачивающее |
Каждое конечное действие обязательно инициируется |
|
Сворачивающее |
Каждое исходное действие обязательно должно завершиться |
||
Соединение «эксклюзивное "или"» |
Разворачивающее |
Одно и только одно конечное действие инициируется |
|
Сворачивающее |
Одно и только одно исходное действие должно завершиться |
||
Соединение «или» |
Разворачивающее |
Одно или несколько конечных действий инициируются |
|
Сворачивающее |
Одно или несколько исходных действий должны завершиться |
Таблица 3.2
Примеры разворачивающих и сворачивающих соединений приведены на рис. 3.4
Рис. 3.4 Два вида соединений
«И»-соединения. Соединения этого типа инициируют выполнение конечных действий. Все действия, присоединенные к сворачивающему «и»-соединению, должны завершиться, прежде чем начнется выполнение следующего действия. На рис. 3.5 после обнаружения
Рис. 3.5 “И” – cоединения
пожара инициируются включение пожарной сигнализации, вызов пожарной охраны, и начинается тушение пожара. Запись в журнал производится только тогда, когда все три перечисленных действия завершены.
Соединение «эксклюзивное "или "». Вне зависимости от количества действий, связанных со сворачивающим или разворачивающим соединением «эксклюзивное «или», инициировано будет только одно из них, и поэтому только оно будет завершено перед тем, как любое действие, следующее за сворачивающим соединением «эксклюзивное «или», сможет начаться. Если правила активации соединения известны, они обязательно должны быть документированы либо в его описании, либо пометкой стрелок, исходящих из разворачивающего соединения, как показано на рис. 3.6
На рис. 3.6 соединение «эксклюзивное «или» используется для отображения того факта, что студент не может одновременно быть направлен на лекции по двум разным курсам.
Рис. 3.6 Соединение «эксклюзивное “или” »
Соединение «или» предназначено для описания ситуаций, которые не могут быть описаны двумя предыдущими типами соединений. Аналогично связи нечеткого отношения соединение «или» в основном определяется и описывается непосредственно системным аналитиком.
Указатели
Указатели - это специальные символы, которые ссылаются на другие разделы описания процесса. Они используются при построении диаграммы для привлечения внимания пользователя к каким-либо важным аспектам модели.
Указатель изображается на диаграмме в виде прямоугольника, похожего на изображение действия. Имя указателя обычно включает его тип (например, ОБЪЕКТ, UOB и т.п.) и идентификатор (табл. 3.3).
Тип указателя |
Назначение |
ОБЪЕКТ (OBJECT) |
Для описания того, что в действии принимает участие какой-либо заслуживающий отдельного внимания объект |
Для реализации цикличности выполнения действий. Указатель ССЫЛКА может относиться и к соединению |
|
ЕДИНИЦА ДЕЙСТВИЯ (Unit of Behavior - UOB) |
Для многократного отображения на диаграмме одного и того же действия. Например, если действие «Подсчет наличных» выполняется несколько раз, в первый раз оно создается как действие, а последующие его появления на диаграмме оформляются указателями UOB |
ЗАМЕТКА (NOTE) |
Для документирования любой важной информации общего характера, относящейся к изображенному на диаграммах. В этом смысле ССЫЛКА служит альтернативой методу помещения текстовых заметок непосредственно на диаграммах |
УТОЧНЕНИЕ (Elaboration - ELAB) |
Для уточнения или более подробного описания изображенного на диаграмме. Указатель УТОЧНЕНИЕ обычно используется для описания логики ветвления у соединений |
Таблица 3.3
Декомпозиция действий
Действия в IDEF3 могут быть декомпозированы или разложены на составляющие для более детального анализа. Метод IDEF3 позволяет декомпозировать действие несколько раз, что обеспечивает документирование альтернативных потоков процесса в одной модели.
Для корректной идентификации действий в модели с множественными декомпозициями схема нумерации действий расширяется и наряду с номерами действия и его родителя включает в себя порядковый номер декомпозиции. Например, в номере действия 1.2.5: 1 - номер родительского действия, 2 - номер декомпозиции, 5 - номер действия.
Требования IDEF3 к описанию бизнес-процессов
В этом разделе мы рассмотрим построение IDEF3-диаграммы на основании выраженного в текстовом виде описания процесса. Предполагается, что в построении диаграммы принимают участие ее автор (в основном как системный аналитик) и один или несколько экспертов предметной области, представляющие описание процесса.
Определение сценария, границ моделирования, точки зрения
Для экспертов предметной области, подготавливающих описание моделируемого процесса, должны быть документированы границы моделирования, чтобы им была понятна необходимая глубина и полнота требуемого от них описания. Кроме того, если точка зрения аналитика на процесс отличается от точки зрения эксперта, это должно быть ясно и подробно обосновано.
Вполне возможно, что эксперты не смогут сделать приемлемое описание без их формального опроса автором модели. В таком случае автор должен заранее подготовить перечень вопросов таким же образом, как журналист для интервью.
Определение действий и объектов
Результатом работы экспертов обычно является текстовый документ, описывающий интересующий аналитика круг вопросов. В дополнение к нему может прилагаться письменная документация, позволяющая определить природу изучаемого процесса. Вне зависимости от того, является ли информация текстовой или вербальной, она анализируется и разделяется частями речи для идентификации списка действий (глаголы и отглагольные существительные), составляющих процесс, и объектов (имена существительные), участвующих в процессе.
В некоторых случаях возможно создание графической модели процесса при участии экспертов. Такая модель может быть разработана после сбора всей необходимой информации, что позволяет не отнимать время экспертов на детали форматирования получающихся диаграмм.
Поскольку модели IDEF3 могут одновременно разрабатываться несколькими командами, IDEF3 поддерживает простую схему резервирования номеров действий в модели. Каждому аналитику выделяется уникальный диапазон номеров действий, что обеспечивает их независимость друг от друга. В табл. 3.4 номера действий выделяются каждому аналитику большими блоками. В этом примере аналитик 1 полностью использовал данный ему вначале диапазон номеров и дополнительно получил второй.
Таблица 3.4
Последовательность и параллельность
Если модель создается после проведения интервью, аналитик должен принять решение по построению иерархии участвующих в модели диаграмм, например, насколько подробно будет детализироваться каждая отдельно взятая диаграмма. Если последовательность или параллельность выполнения действий окончательно не ясна, эксперты могут быть опрошены вторично (возможно, с использованием черновых вариантов незаконченных диаграмм) для получения недостающей информации. Важно, однако, различать предполагаемую (появляющуюся из-за недостатка информации о связях) и явную (указанную в описании эксперта) неясности.
Выводы. IDEF3 - это способ описания бизнес-процессов, который нужен для описания положения вещей как упорядоченной последовательности событий с одновременным описанием объектов, имеющих непосредственное отношение к процессу. IDEF3 хорошо приспособлен для сбора данных, требующихся для проведения структурного анализа системы. Кроме того, IDEF3 применяется при проведении стоимостного анализа поведения моделируемой системы.
Что отражает модель IDEF3? В общем случае, процесс – это упорядоченная последовательность действий. Следовательно, процессная модель IDEF3 позволяет: Отразить последовательность процессов Показать логику взаимодействия элементов системы. Цель IDEF3 Цель IDEF3 - дать возможность аналитикам описать ситуацию, когда процессы выполняются в определенной последовательности, а также объекты, участвующие совместно в одном процессе.
Единицы работ Единица работ (UOW, Unit of Work) является центральным компонентом модели. Номер работы является уникальным, присваивается при ее создании и не меняется никогда Словосочетание с отглагольным существительным, изображающим действие (выполнение, изготовление,…) Или Инфинитив глагола (изготовить продукцию)
Связи Связи показывают взаимоотношения работ. Связи однонаправлены и могут быть направлены куда угодно Обычно диаграммы рисуют таким образом, чтобы связи были направлены слева направо Различают 3 типа связей: Старшая стрелка Стрелка отношений Поток объектов.
Связь «старшая стрелка» Связь типа «временное предшествование» - Precedence Соединяет единицы работ Показывает, что работа-источник должна быть закончена прежде, чем начнется работа-цель ´ ´
Стрелка отношений Связь типа нечеткое отношение - Relational Изображается в виде пунктирной линии, используется для изображения связи между единицами работ, а также между единицами работ и объектами ссылок ´ 1.2 ´
Перекрестки (соединения) Используются для отображения логики взаимодействия стрелок при их слиянии или разветвлении, для отображения множества событий, которые могут или должны быть завершены перед началом следующей работы. Различают перекрестки для слияния и разветвления стрелок. Перекрестки не могут быть одновременно использованы для слияния и разветвления стрелок. Все перекрестки на диаграммах нумеруются, каждый номер имеет префикс J. В отличие от других методологий (IDEF0, DFD) стрелки могут сливаться или разветвляться только через перекрестки.
Типы перекрестков Обозна- чение Наименов ание Смысл в случае слияния стрелок Смысл в случае разветвления стрелок Асинхрон- ное «И» Все предшествующие процессы должны быть завершены Все последующие процессы должны быть запущены Синхрон- ное «И» Все предшествующие процессы должны быть завершены одновременно Все последующие процессы запускаются одновременно Асинхрон- ное «ИЛИ» Один или несколько предшествующих процессов должны быть завершены Один или несколько следующих процессов должны быть запущены
Типы перекрестков Обозна- чение Наименов ание Смысл в случае слияния стрелок Смысл в случае разветвления стрелок Синхронн ое «ИЛИ» Один или несколько предшествующих процессов должны быть завершены одновременно Один или несколько следующих процессов должны быть запущены одновременно Эксклюзи вное (исключа ющее) «ИЛИ» Только один предшествующий процесс должен быть завершен Только один следующий процесс запускается
Типы объектов ссылок Тип объекта ссылок Назначение 1. ObjectИспользуется для описания того, что в действии принимает участие какой-либо заслуживающий отдельного внимания объект 2. Ссылка GOTO Используется для реализации цикличности выполнения действий. Этот объект также может относиться к перекрестку 3. Единица действий UOB (Unit of Behavior) Используется для многократного отображения на диаграмме одного и того же действия, но без цикла
Типы объектов ссылок Тип объекта ссылок Назначение 4. Заметка (Note) Используется для документирования какой-либо важной информации общего характера, относящейся к изображаемому на диаграммах. Служит альтернативой методу помещения текстовых заметок непосредственно на диаграммах 5. Уточнение Elaboration (ELAB) Для уточнения или более подробного описания изображаемого на диаграмме. Обычно используется для детального описания разветвления или слияния стрелок на перекрестках
Декомпозиция работ в IDEF3 В IDEF3 декомпозиция используется для детализации работ. Методология IDEF3 позволяет декомпозировать работу многократно, т.е. работа может иметь множество дочерних работ. альтернативные потоки Это позволяет в одной модели описать альтернативные потоки. Возможность множественной декомпозиции предъявляет дополнительные требования к нумерации работ
Пример построения модели IDEF Получение задания Подбор литературы Выполнение разделов к/р Посещение консультаций Оформление пояснит. записки Защита OBJECT/ Преподаватель Примечание Примечание: Обратите внимание на нумерацию единиц работ. Родительской является работа с собственным номером 1. Она декомпозируется первый раз, следовательно, версия декомпозиции = 1, далее следует собственный номер единицы работ в рамках модели (2-7). Выполним декомпозицию контекстной диаграммы: & J1 & J2
Пример построения модели IDEF Написание теор.части Выполнение расчетов Построение графиков Оформление ELAB/ Если есть ошибки в расчетах – внесение исправлений Выполним декомпозицию UOW 4 – «Выполнение разделов к/р» & J3 & J4 Х J5 Х J6
Пример построения модели IDEF3 сценария Продекомпозируем повторно контекстную диаграмму (в виде сценария IDEF3 для выполнения курсовой работы по «Информатике и программированию») Получение задания Построение блок-схемы Математическое моделирование Написание программы Тестирование и отладка Оформление поясн. записки GOTO/ При обнаружении ошибок при тестировании возврат к & J7 & J8
Изученные понятия Динамическое моделирование Методология IDEF3 Единица работ (UOW) Связь (старшая стрелка, нечеткое отношение, поток объектов) Перекресток ((а)синхронное «И», «ИЛИ», эксклюзивное «ИЛИ») Объект ссылок (Object, GOTO, UOB, ELAB, Note) Декомпозиция работ
Нотация IDEF3 - важнейшая после IDEF0 и предназначена для описания потоков работ (Work Flow Modeling). В течение длительного
времени IDEF3 широко использовалась для создания моделей бизнес-процессов организации на нижнем уровне - при описании работ, выполняемых в подразделениях и на рабочих местах. Следует отметить, что эта нотация была взята за основу при создании методики описания процессов ARIS еЕРС - «расширенной цепочки процесса, управляемого событиями». Предлагаем читателю ознакомиться с нотацией IDEF3 как классическим вариантом Work Flow, а затем перейти к рассмотрению более новых схем моделирования процессов.
Основные графические объекты модели, используемые в IDEF3, - четырехугольники и стрелки. Первые служат для описания функций (работ, процессов), вторые - для отражения в модели последовательности выполнения функций во времени либо последовательности выполнения функций, обусловленной потоком материальных ресурсов. Прежде чем перейти к нотации IDEF3, рассмотрим следующий пример. На рис. 2.18 представлено два варианта возможного описания потока работ.
Вариант 1 на рис. 2.18 показывает, что вначале выполняется функция 1. После ее завершения одновременно осуществляются функции 2 и 3. Стрелки в этом случае показывают, как завершение одной функции влияет на начало выполнения другой.
Вариант 2 построен по-другому. Начало выполнения функций здесь обусловлено поступлением на вход материальных ресурсов (вход функции 1), окончание - выходом материальных ресурсов (выход функции I). Потоки ресурсов определяют начало выполнения следующих функций процесса (функций 2 и 3).
В чем недостатки способов описания процессов, представленных на рис. 2.18? В том, что построенные таким образом схемы процессов невозможно прочитать однозначно. Функции 2 и 3 могут выполняться не одновременно, например, в ситуации, когда потребуется осуществить одну из двух. В этом случае выбранный способ описания процесса не позволит понять, какой вариант развития событий реализуется на самом деле. Если на структурных моделях верхнего уровня (IDEF0) синхронность и условные переходы не важны, то на уровне Work Flow эти данные весьма существенны для реальной работы и должны отражаться в модели. Вернемся к нотации IDEF3.
Рис. 2.18. Описание потоков работ
Длительность выполнения функций (график Ганта)
Alt="" />
потоком материальных объектов
Чтобы избежать неоднозначности описания, в нотации IDFE3 определены дополнительные объекты, служащие для отображения возможных вариантов ветвления и слияния потоков работ, реализующихся при определенных условиях. Указанные объекты являются логическими символами трех видов: логического «И»; логического «ИЛИ»;
-¦ исключающего логического «ИЛИ».
Виды объектов нотации IDEF3 и их назначение представлены в табл. 2.2.
Табл. 2.2. Виды объектов нотации IDEF3 и их назначение
1 | Модель работы (U0W) | Объект служит для описания функций (процедур, работ), выполняемых подразделениями/сотрудниками предприятия | | 1 | |
||
2 | Объект ссылки {Referent) | Объект, используемый для описания ссылок на другие диаграммы модели, циклические переходы в рамках одной модели, различные комментарии к функциям и перекресткам | | | |
||
3 | Логич« т оператор «Иgt; | Оператор, позволяющий описать ветвление и слияние процесса. Оператор показывает, что после выполнения функции начинается выполнение всех последующих функций | | amp; | |
||
4 | огоческии оператор lt;ИЛ1 | Оператор, позволяющий описать ветвление и слияние процесса. Оператор показывает, что после выполнения функции начинается выполнение какой-то одной или всех последующих функций | | О | |
||
5 | Логический оператор исключаю щее lt; ИЛИ» | Оператор, позволяющий описать ветвление и слияние процесса. Оператор показывает, что после выполнения функции начинает выполняться только одна из всех последующих функций | | X | |
||
6 | Стрелка предше- ствовани | Соединяет последовательно выполняемые функции | > |
||||
7 | Стрелка отношения | Используется для привязки объектов-комментариев к функциям | >> |
||||
8 | Стрелка потока объектов, | Показывает поток объектов от одной функции к другой | > |
В отличие от нотации IDEF0, в нотации IDEF3 стороны четырехугольника, изображающего функцию (работу, процесс), не используются для привязки входов различного типа. Более того, в четырехугольник может входить и выходить только одна стрелка. В противном случае правила построения диаграмм в IDEF3 будут нарушены.
На рис. 2.19 показан пример применения логического оператора «И». Процесс начинается с функции, после которой стоит знак этого оператора, - перекресток. За перекрестком процесс разветвляется и одновременно начинает выполнять следующие две функции. Когда они выполнены, происходит слияние стрелок процесса при помощи значка «И». Это означает, что последняя функция процесса начинает выполняться тогда, когда закончено выполнение двух предыдущих функций.
На рис. 2.20 представлена модель с логическим оператором «ИЛИ». Такой оператор означает, что после выполнения первой функции процесса могут произойти три события: 1) выполняется функция 2; 2) выполняется функция 3; 3) выполняются функции 2 и 3 одновременно.
Рис. 2.19. Модель процесса с оператором «И»
Рис. 2.20. Модель с оператором «ИЛИ»
Рис. 2.21 иллюстрирует применение логического символа исключающего «ИЛИ». В данном случае после выполнения функции 1 может начаться выполнение либо функции 2, либо функции 3. Далее после выполнения какой-либо из этих функций мы снова попадаем на перекресток исключающего «ИЛИ». Функция 4 будет выполнена либо после окончания функции 2, либо функции 3.
Рис. 2.21. Модель с оператором исключающего «ИЛИ»
/>
В нотации IDEF3 логические операторы могут быть синхронными и асинхронными. На рис. 2.22 показана разница между синхронным и асинхронным «И».
Рис. 2.22. Модель с оператором логического «И»
При декомпозиции процессов в IDEF3 не происходит мигрирования и туннелирования стрелок. Аналитик должен сам заботиться о связности моделирования процесса, корректности декомпозиции
(если данная функция не предусмотрена программным продуктом, в котором он работает). Возможный пример декомпозиции процесса из нотации IDEF0 (рис. 2.15) на процесс в нотации IDEF3 показан на рис. 2.23. Обратим внимание, что функция «Получить вспомогательное сырье на складе» инициируется поступлением утвержденного графика производства. Этот факт отражен входящей стрелкой «График производства». Также на диаграмме процесса показана стрелка «Вспомогательное сырье». Такое ее представление - нарушение нотации описания. Но, вообще говоря, таким приемом можно пользоваться, не забывая при этом менять тип стрелки на стрелку с двумя наконечниками, отображающую поток объектов (материальных ресурсов или информации).
На рис. 2.24 приведен пример бизнес-процесса в нотации IDEF3 под названием «Обработать заявку клиента». Рассматриваемый процесс - часть более общего процесса «Сбыт готовой продукции». Процесс начинается с поступления заявки клиента, которую обрабатывает функция «Выполнить учет заказа в системе». По ходу ее реализации данные заказа клиента регистрируются в системе автоматизации (например, в файле Excel). Затем менеджер отдела сбыта осуществляет проверку на соответствие номенклатуре (функция «Выполнить анализ на соответствие номенклатуре»). Результатом этого могут быть два события: «Заказ соответствует номенклатуре изделий, производимых организацией» или «Заказ не соответствует номенклатуре изделий». Для отражения этих событий в модели процесса используется логический оператор исключающего «ИЛИ». После этого логического оператора процесс ветвится. В случае несоответствия заказа номенклатуре выполняется нижняя ветка процесса, а именно функции «Уведомить клиента о невозможности выполнения заказа» и «Внести заказ клиента в статистику неудовлетворенного спроса».
В случае если заказ клиента соответствует номенклатуре, мы начинаем движение по верхней ветке процесса. Выполняется функция «Согласовать заявку с ПЭО». К ней привязан ссылочный объект «Согласовать с ПЭО в случае соответствия заявки номенклатуре». Планово-экономический отдел организации (ПЭО) анализирует заказ и делает вывод о его реализуемости.
Рис. 2.23. Пример модели процесса в стандарте IDEF3
alt="" />
alt="" />
alt="" />
Например, может сложиться ситуация нехватки производственных мощностей из-за ремонтов, несоответствия величины заказа экономически обоснованным размерам партии и т. п. В этом случае мы снова попадаем на нижнюю ветку процесса, при этом используется логический оператор «ИЛИ». Он служит для объединения возможных входов в функцию «Уведомить клиента о невозможности заказа».
Если ПЭО считает заказ выполнимым, то проводится детальный расчет себестоимости выполнения - определяется его цена и возможные сроки выполнения (функция «Рассчитать себестоимость, цену и возможные сроки выполнения заказа»). Далее указанные выше расчетные цифры согласовываются с клиентом - выполняется функция «Согласовать условия поставки с клиентом».
Снова возможны два варианта - используется оператор логического исключающего «ИЛИ». Если клиента не устраивают финансовые условия, он отказывается от заказа, который мы вносим в статистику неудовлетворенного спроса (нижняя ветка процесса). Если клиент готов работать на наших условиях, то процесс заканчивается. Выходом процесса служат «Согласованная заявка клиента» и данные по рассчитанным параметрам заказа (на схеме процесса не показаны).
Обратите внимание, что описанный выше процесс приводится далее в виде модели в нотации ARIS еЕРС, так что читатель может сравнить возможности двух нотаций по описанию одного и того же процесса.
Анализ процесса, представленного на рис. 2.24, наводит на мысль о том, что нотацию IDEF3 целесообразно применять в случае относительно простых процессов на нижнем уровне декомпозиции, то есть на уровне рабочих мест. В этом случае схема процесса может служить основой для создания документов, регламентирующих работу исполнителей. Очевидно, что процесс в нотации IDEF3 «плоский». При помощи этой нотации достаточно сложно создавать комбинированные модели, в которых бы сочетались описания потоков работ и процессы управления ими. Этот факт становится в особенности очевидным при сравнении описаний процессов в нотации IDEF3 и IDEF0. Более подробную информацию о правилах создания моделей в нотации IDEF3 можно найти в .
Модель в нотации IDEF0 позволяет получить общее представление о функциях , выполняемых моделируемой системой, и связях между функциями, действиями.
Модель в нотации IDEF3 позволяет проследить логику взаимодействия процессов, функций . Техника IDEF3 является частью структурного анализа.
Можно сначала построить функциональную модель в нотации IDEF0, проведя исследования предметной области. Затем, используя полученные знания о предметной области, построить отдельную модель в нотации IDEF3.
А можно создать смешанную модель , дополняя по мере необходимости функциональную модель в нотации IDEF0 диаграммами в нотации IDEF3. Также можно дополнять модель DFD диаграммами в нотации IDEF3.
В каждом конкретном случае моделирования системы принимается решение о необходимости построения каждого вида модели.
Основная цель нотации IDEF3 — дать аналитикам возможность описать ситуацию , когда процессы (действия) выполняются в определенной последовательности, а также описать объекты , участвующие совместно в одном процессе.
В отличие от IDEF0 нотация IDEF3 не ограничивает автора модели (аналитика) чрезмерно жесткими рамками синтаксиса и семантики, что удобно для описания неполных или не целостных систем, особенно если аналитик плохо знает предметную область. Но нужно иметь в виду, что модель может получиться неполной или противоречивой.
Основной организационной единицей описания в IDEF3 является диаграмма .
Важна взаимная организация диаграмм внутри модели, также важно правильно построить каждую из диаграмм, поскольку они предназначены для чтения другими людьми (а не только автором). В целом методика построения модели, рекомендации по построению диаграмм аналогичны тем, которые применяются при моделировании в нотации IDEF0.
Как и при моделировании в нотации IDEF0 сначала опрашиваются эксперты предметной области, определяется цель моделирования — набор вопросов, на которые будет отвечать модель, точка зрения , границы моделирования , с учетом глубины и широты — какие объекты войдут, а какие не будут отображены в модели.
При изучении предметной области составляются списки кандидатов на действия (работы) , составляющих процесс, и кандидатов на объекты , участвующих в процессе, обозначающих результат выполнения работ.
Рассмотрим основные символы .
Единица или работа, действие
В IDEF3 действия изображаются прямоугольниками с прямыми углами (рис. 9.1). Действия имеют имя , выраженное отглагольным существительным или глаголом , одиночным или в составе фразы с другим именем существительным, обычно отображающим основной выход (результат) работы, например , "Создание файла". Все действия должны быть названы и определены.
Рис. 9.1. Символ действие в IDEF3
Каждому действию присваивается уникальный номер (идентификатор ), который никогда не меняется. В отличие от имени действия, которое в процессе уточнения и редактирования модели может меняться. Даже если действие будет удалено, его идентификатор не должен вновь использоваться для других действий. Обычно номер действия состоит из номера родительского действия и порядкового номера на текущей диаграмме.
Нотация IDEF3 позволяет декомпозировать (детализировать) действие много- кратно, т.е. включить в одну модель альтернативные описания процессов. Поэтому в номере действия стоит и порядковый номер декомпозиции родительского действия (рис. 9.1).
Действия имеют входы и выходы , но не поддерживают управления и механизмы, как функции в нотации IDEF0.
Связи
Связи показывают существенные взаимоотношения между действиями. Все связи в IDEF3 однонаправлены, могут начинаться и заканчиваться на любой стороне блока. Обычно диаграммы IDEF3 стараются построить так, чтобы связи были направлены слева направо, сверху вниз .
В IDEF3 различают три типа стрелок , изображающих связи(табл. 9.1).
Таблица 9.1
Типы связей
Изображение |
Название |
Назначение |
Временное предшествование |
Сплошная стрелка, связывающая единицы работ. Показывает, что работа-источник должна полностью закончиться прежде, чем работа-цель начнется. Во многих случаях завершение одного действия инициирует начало выполнения дру-гого. Связь именуют так, чтобы была понятна причина ее появления. Например, прежде чем найти вхождение текста в документе, необходимо его ввести (рис. 9.2). Временная шкала выполнения действий показана на рис. 9.3. Вертикальными линиями показано начало и окончание действий. Время окончания А1.1.1 и время начала А1.1.2 может совпадать, может не совпадать |
|
Объектный поток |
Стрелка с двумя наконечниками. Применяется для описания того, что результатом выполнения исходного действия является некоторый объект , который необходим для выполнения конечного действия. Временная семантика объектных связей аналогична связям предшествования. Связь именуют так, чтобы четко определить передающийся объект. Например, файл является результатом выполнения действия А1.1.3 (рис. 9.4) |
|
Нечеткое отношение |
Пунктирная линия. Используется, когда невозможно описать связи с использованием предшественных или объектных связей. Значение такой связи должно быть четко определено с помощью названия и описания стрелки, так как связи такого типа сами по себе не предполагают никаких ограничений. Применение нечетких отношений: отображение задержки между действиями; отображение взаимоотношений между параллельно выполняющимися действиями. На рис. 9.5 показано нечеткое отношение между действиями "Вывод пользователю сообщения об ошибке" и "Обработка ошибки" |
Рис. 9.2. Связь "временное предшествование" между действиями А1.1.1 и А1.1.2
Рис. 9.3. Временная шкала выполнения действий для рис. 9.2
Рис. 9.4. Объектная связь между действиями А1.1.3 и А1.1.4
Рис. 9.5. Связь "нечеткое отношение"
Нечеткое отношение является альтернативой временному предшествованию и объектному потоку в смысле задания последовательности выполнения работ — работа-источник не обязательно должна закончиться, прежде чем работа-цель начнется. Более того, работа-цель может закончиться прежде, чем закончится работа-источник.
Рассмотрим пример нечеткого отношения (рис. 9.6), альтернативного предшественной связи, приведенной на рис. 9.2.
Рис. 9.6. Альтернативная связь предшествования
В этом примере в соответствии с порядком действий, показанным на рис. 9.7, поиск вхождения текста в документе начинается по мере ввода текста, т.е. до непосредственного окончания ввода текста. Данный вид поиска используется в справочных системах.
Рис. 9.7. Альтернативная временная шкала выполнения действий для рис. 9.6
Необходимо четко документировать временные ограничения между действиями, соединенными нечетким отношением.
Рассмотрим другую возможную временную шкалу для того же примера нечеткого отношения (рис. 9.8).
Рис. 9.8. Вариант альтернативной временной шкалы для рис. 9.6
В этом случае поиск вхождения текста будет начат после получения первых букв искомого текста, но закончится до того, как все буквы будут введены, это означает, что поиск будет выполнен неверно.
Оба варианта альтернативной временной шкалы могут иметь место, поэтому корректная интерпретация нечеткого отношения должна быть документирована в модели.
Соединения или перекрестки (Junction)
Окончание одного действия может служить сигналом к началу нескольких действий, или же одно действие для своего запуска может ожидать окончания нескольких действий.
Перекрестки используются для отображения логики взаимодействия стрелок при слиянии и разветвлении . В табл. 9.2 приведены возможные типы перекрестков.
В отличие от IDEF0 и DFD в IDEF3 стрелки могут сливаться и разветвляться только через перекрестки .
Различают перекрестки для слияния и разветвления стрелок. Перекресток не может использоваться одновременно для слияния и для разветвления.
Различают синхронные и асинхронные соединения . Используются для изображения соответственно синхронных действий, т.е. начинающихся и заканчивающихся одновременно, и для изображения асинхронных действий.
Все перекрестки на диаграмме нумеруются, каждый номер имеет префикс J .
Таблица 9.2
Типы перекрестков
Обо-значение |
Наименование |
Смысл в случае слияния стрелок (сворачивающее соединение) |
Смысл в случае разветвления стрелок (разворачивающее соединение) |
Асинхронное соединение "И" |
Все предшествующие работы должны быть обязательно завершены, прежде чем начнется выполнение следующей работы |
Все следующие работы должны быть обязательно запущены |
|
Синхронное соединение "И" |
Все предшествующие работы должны быть завершены одновременно |
Все следующие работы должны быть запущены одновременно |
|
Асинхронное соединение "ИЛИ" |
Одна или несколько предшествующих работ должны быть завершены |
Одна или несколько следующих работ должны быть запущены |
|
Синхронное соединение "ИЛИ" |
Одна или несколько предшествующих работ должны быть завершены одновременно |
Одна или несколько следующих работ должны быть запущены одновременно |
|
Соединение "эксклюзивное "ИЛИ" |
Только одна предшествующая работа должна быть завершена, прежде чем сможет начаться следующая работа |
Только одна следующая работа должна быть запущена |
Если правила активизации соединения известны, они обязательно должны быть документированы либо в его описании, либо названием стрелок, исходящих из разворачивающего соединения или входящих в сворачивающее соединение.
В примере на рис.
9.9 выполняется ввод параметров окружности с клавиатуры, если пользователь использует клавиатуру, указание параметров с помощью мыши — при использовании мыши. И то, и другое действие выполняются при частичном вводе параметров, как с клавиатуры, так и при помощи мыши. Подобное описание вносится в свойства перекрестка.
Парность соединений . Все соединения на диаграммах должны быть парными, т.е. любое разворачивающее соединение должно иметь парное себе сворачивающее соединение, хотя типы соединений не обязательно должны совпадать. На рис. 9.10, а разворачивающее соединение "И" имеет парное сворачивающее соединение "ИЛИ".
Однако если нет необходимости строго придерживаться нотации IDEF3 при построении диаграмм, то в них могут присутствовать и фрагменты, показанные на рис. 9.10, б - в .
Синхронное разворачивающее соединение не обязательно должно иметь парное себе синхронное сворачивающее соединение, так как начинающиеся одновременно действия вовсе не должны оканчиваться одновременно. Также возможны ситуации синхронного окончания асинхронно начавшихся действий.
Рис. 9.9. Пример использования соединения "ИЛИ"
Комбинации соединений . Соединения могут комбинироваться для создания более сложных ветвлений (рис. 9.11, 9.12). Комбинации соединений следует использовать с осторожностью, так как перегруженные ветвлением диаграммы сложны для восприятия.
Рис. 9.10. Фрагменты диаграмм в нотации IDEF3
Рис. 9.12. Вариант диаграммы декомпозиции действия "Редактирование изображений с помощью примитивов"
в модели "Деятельность пользователя ПЭВМ при работе с графическими изображениями" в нотации IDEF3
На рис. 9.11 показано важное для данной модели отношение между действием "Копирование файла" и объектом "Содержимое дисков".
Объект ссылки изображается в виде прямоугольника , похожего на прямоугольник работы. В качестве имени можно использовать имя какой-либо стрелки, процесса, действия с других диаграмм или имя сущности из модели данных.
Кроме имени следует указывать тип объекта ссылки (табл. 9.3).
Таблица 9.3
Типы объектов ссылок
Цель описания |
|
Описывает участие важного объекта в действии |
|
Инструмент циклического перехода (в повторяющейся последовательности действий), переход возможен как на действие текущей диаграммы, так и на действие любой другой, но не обязательно. Если все действия цикла присутствуют на текущей диаграмме, цикл может также изображаться стрелкой, возвращающейся на стартовое действие. ССЫЛКА может ссылаться и на перекресток |
|
ЕДИНИЦА ДЕЙСТВИЯ |
Применяется для многократного отображения на диаграмме одного и того же действия, т.е. действия, которое используется в процессе несколько раз, но не в цикле. В этом случае в первый раз действие создается как единица работы, а последующие его появления на диаграмме оформляются объектами ЕДИНИЦА ДЕЙСТВИЯ |
Используется для документирования важной информации общего характера, относящейся к изображенному на диаграмме. ЗАМЕТКА является альтернативой внесению текстового объекта в диаграмму |
|
УТОЧНЕНИЕ |
Используется для уточнения или более детального описания изображенного на диаграмме. Обычно употребляется для детального описания логики ветвления у соединений |
В нотации IDEF3 информация в модель может вноситься различными способами. Это позволяет аналитику отображать информацию в удобном в данный момент виде.
Например, логика взаимодействия единиц работ может быть отображена графически в виде комбинации перекрестков, что может занять значительное место на диаграмме, затруднит расположение работ. Поэтому та же информация может быть отображена в виде объекта ссылки УТОЧНЕНИЕ.
Сеансы экспертизы
Сеансы экспертизы проводятся после каждого сеанса декомпозиции. Найденные несоответствия исправляются, и только после прохождения экспертизы без замечаний приступают к следующему сеансу декомпозиции.