Разработчикам информационных систем хорошо известен BPwin - CASE-средство фирмы Computer Associates. BPwin предназначен для автоматизации ранних, наиболее важных этапов создания информационных систем - анализа и проектирования. BPwin позволяет создавать модели процессов и поддерживает три стандарта (нотации) моделирования - IDEF0, DFD и IDEF3. На основе каждой из этих трех нотаций можно рассмотреть различные стороны деятельности предприятия.

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

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

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

BPwin является уникальным инструментом, позволяющим создавать модель, содержащую диаграммы всех трех нотаций одновременно. Он позволяет эффективно манипулировать моделями - сливать и расщеплять их, а также документировать модели посредством генерации отчетов. Интеграция BPwin с другими инструментальными средствами Computer Associates (инструментом моделирования данных ERwin, системой объектного моделирования Paradigm Plus и системой управления моделями и их хранения ModelMart) делает его незаменимым при реализации крупных программных проектов.

BPwin был разработан фирмой Logic Works. В 1998 году она слилась с компанией PLATINUM Technology, а годом позже PLATINUM Technology, в свою очередь, была поглощена компанией Computer Associates. Хотя в период реорганизации формально новые версии не выпускались, за последние два года вышли три дополнения к версии BPwin 2.5 (Service Pack 1, Service Pack 2 и Service Pack 3), в которых не только были исправлены ошибки и недочеты, но и значительно расширилась функциональность.

Недавно Computer Associates объявила о выходе новой версии BPwin - 4.0. Бета-версия этого инструментального средства позволяет оценить новшества, которые ожидают разработчиков.

Прежде всего в BPwin 4.0 появилось два новых типа диаграмм - диаграммы Swim Lane и организационные диаграммы (Organization Charts).

Диаграммы Swim Lane используют методологию Process Flow Network и могут быть добавлены в модель, содержащую диаграммы IDEF3. Эти диаграммы иллюстрируют несколько параллельных потоков, что позволяет отобразить процесс вместе с другими, зависящими от него процессами, как параллельные потоки на одной диаграмме (рис. 1). Кроме того, на диаграммах Swim Lane можно указать роли исполнителей работ и таким образом более качественно задокументировать ответственность исполнителей. Так, в примере на рис. 1 созданы роли «Тестировщик», «Сборщик» и «Специалист по программному обеспечению». Горизонтальные линии разделяют работы, относящиеся к роли, изображенной в левой части диаграммы.

Роли должны быть предварительно созданы в словаре Role Dictionary или описаны как UDP (User Defined Property - свойства, определенные пользователем. - Прим. ред.) типа Text List. Каждой роли можно дать подробное описание и связать с ней пиктограмму (импортировав графический bmp-файл). Пиктограмма может быть отображена на диаграмме Swim Lane или на организационной диаграмме.

Для создания новой диаграммы Swim Lane необходимо выбрать пункт меню Diagram | Add Swim Lane Diagram и в диалоге Swim Lane Diagram Wizard указать свойства диаграммы.

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

В новой версии существенно улучшены диаграммы деревьев узлов (Node Tree): теперь можно отображать деревья узлов с ортогональными линиями (рис. 3) и редактировать свойства работ непосредственно на указанных диаграммах.

Улучшен навигатор модели (Model Explorer). Он выполнен в стиле навигатора модели в ERwin Examiner (об ERwin Examiner см. на CD-ROM, прилагаемом к КомпьютерПресс, № 1’2001. - Прим. ред.). В окне Model Explorer появились три закладки: в одной показывается иерархия работ, в другой - иерархия диаграмм, в третьей - неиспользуемые работы (рис. 4). Добавить работу в диаграмму из Model Explorer можно методом drag-and-drop.

Вследствие существенного расширения аппарата словарей в BPwin 4.0 можно поддерживать словари для следующих объектов:

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

В BPwin 4.0 сохранены все возможности генерации отчетов, имевшиеся в версии 2.5. В новую версию включен генератор отчетов в стиле аналогичного инструмента ERwin 3.5 (рис. 5). Генератор отчетов (Report Template Builder, RTB) позволяет быстро и эффективно создавать новые шаблоны отчетов и экспортировать отчеты в текстовый формат (.CSV), в форматы HTML и RTF.

Кроме того, в новую версию включены следующие изменения:

  • изменен интерфейс диалогов установки таких свойств объектов, как шрифт, цвет, роли, стили и т.д.;
  • появилась возможность изменения свойств страницы для отдельной диаграммы (Diagram Page Setup), а также верхнего и нижнего колонтитула диаграммы (Diagram Headers and Footers);
  • имеется синхронизация с моделью данных (BPX - BPwin-to-ERwin и EAX - ERwin-to-BPwin), созданной в ERwin 4.0;
  • обновлен интерактивный обучающий модуль (Online Tutorial);
  • появилась возможность выделения группы объектов и работы с ними;
  • на диаграммах DFD теперь можно ассоциировать сущности и атрибуты с хранилищами данных;
  • объекты модели можно изображать на диаграммах в виде рисунков и в нестандартной нотации (рис. 6).

В BPwin 4.0 стал возможен экспорт модели в систему имитационного моделирования Arena (Systems Modeling Corp). Имитационное моделирование позволяет строить модели, учитывающие время выполнения функций. Полученную модель можно «проиграть» во времени и получить статистику происходящих процессов, как если бы это было в реальности. В имитационной модели изменения процессов и данных ассоциируются с событиями. «Проигрывание» модели заключается в последовательном переходе от одного события к другому. Обычно имитационные модели строятся для поиска оптимального решения в условиях ограничения по ресурсам, в случае когда другие математические модели оказываются слишком сложными. BPwin не имеет собственных инструментов, позволяющих создавать имитационные модели, однако в версии 2.5 имелась возможность экспортировать модель IDEF3 в систему имитационного моделирования BPSimulator (того же производителя). В настоящее время фирмой Systems Modeling Corp вместо BPSimulator выпускается более совершенный инструмент имитационного моделирования - Arena. Экспорт модели процессов в Arena позволит аналитикам более качественно производить реорганизацию деятельности предприятий и оптимизировать производственные процессы.

В целом новая версия BPwin 4.0 имеет по сравнению с предыдущей более удобный интерфейс и предоставляет разработчикам и аналитикам значительно больше возможностей для моделирования бизнес-процессов.

Бета-версию BPwin 4.0 можно найти на нашем CD-ROM.

КомпьютерПресс 3"2001

Рабочее место BPwin выполнено в виде рабочего стола, состояще­го из нескольких окон. На рабочем столе размещены:

  • меню;
  • стандартная панель инструментов;
  • панель инструментов «ModelMart»;
  • дерево модели;
  • область для рисования;
  • панель инструментов BPwin ;
  • статусная строка.

Панель меню BPwin соответствует стандартам Windows и обеспе­чивает доступ ко всем функциям BPwin. Приведем некоторые из них:

печать - чтобы открыть окно печати, на панели меню выберите «File», затем «Print»;

масштаб - на панели меню выберите «View», затем измените масштаб изображения для активной диаграммы или для всех диа­грамм в модели на тот, который вам нужен.

Как и любая другая панель инструментов BPwin, стандартная па­нель может быть расположена в любой точке экрана или находиться в любом месте в области диаграммы. Вы можете также показывать или скрывать ее, используя функцию «View» на панели меню.

Дерево модели

Дерево модели BPwin (рис. 6.5) - мощный инструмент, который используется для просмотра структуры модели и изменения любых объектов диаграмм в открытой модели BPwin . Одновременно работая с несколькими моделями, можно рассматривать все диаграммы или только активные при свернутой и развернутой структуре иерархиче­ского дерева . Для любой используемой методологии перечень исследуемых моделей дает полное представление о всей модели. С исполь­зованием дерева можно также выполнять задачи моделирования. Вы можете показывать и скрывать дерево модели, используя кнопки «Model Explorer». Когда дерево модели активно, оно находится в раздвигающемся окне слева, а активная диаграмма - в правом.

Дерево модели используется для:

  • просмотра разных моделей, построенных с использованием раз­личных методологий моделирования;
  • переключения режимов просмотра диаграмм или действий;
  • немедленного перехода к просмотру или работе с соответствующей диаграммой в рабочем пространстве BPwin посредством v щелчка мышью на названии диаграммы или действия;
  • просмотра действий и объектов диаграммы согласно уровням декомпозиции;
  • редактирования имени модели, диаграммы или действия посредством двойного щелчка мышью на соответствующем названии;
  • просмотра соответствующей объекту FEO-диаграммы, Node Tree или родственной диаграммы посредством щелчка мышью на названии объекта диаграммы в иерархическом дереве.

Область для рисования

Область для рисования - это большая площадь справа от главного окна BPwin , в котором расположено дерево модели. Она состоит из трех областей:

  • заголовок;
  • область для рисования ;
  • название.

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

Панель инструментов BPwin

Панель инструментов BPwin содержит инструменты для рисова­ния объектов в диаграмме BPwin. Эти инструменты могут быть разме­щены в любой стороне экрана или находиться где-то в области диа­граммы. Вы можете показывать или скрывать панель инструментов, используя функцию «View» на панели меню. В BPwin существует три разных панели инструментов - по числу поддерживаемых програм­мой методологий (рис. 6.6).

IDEF0 IDEF3 DFD

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

Построение контекстных диаграмм

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

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

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

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

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

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

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

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

Для создания контекстной диаграммы необходимо сначала соз­дать новую модель, выбрав пункт «New» в меню «File». В появившем­ся диалоге необходимо набрать имя модели и выбрать ее тип. Этот диалог также отображается при запуске BPwin .

После создания модели можно задать ее параметры. Список свойств модели - это диалог, в котором можно задать такие парамет­ры, как полное наименование модели, ее словесное описание и состоя­ние, в котором находится модель, например «в работе» или «для публикации» (рис. 6.7)

Декомпозиция

Декомпозиционное разложение модели используется в моделиро­вании бизнес-процессов, для того чтобы дать более подробное описа­ние блоков. Каждое из этих действий может в свою очередь быть де­композировано. При каждой декомпозиции блока создается новая диаграмма. Число декомпозиций не ограничено и полностью зависит от уровня сложности, который необходимо показать в модели. Обра­тите внимание на кружок на рис. 6.8 Если действие не было декомпозирова­но, в верхнем левом углу блока будет по­являться символ «листа». После деком­позиции данного блока символ «листа» исчезнет.

Как декомпозировать блоки с ис­пользованием BPwin ? Это можно сделать двумя способами. В диаграмме нужно выбрать действие, которое необходимо декомпозировать. Для этого выберите необходимый ин­струмент в наборе BPwin или в дереве модели, затем щелкните на дей­ствии, которое нужно декомпозировать. Выбранное меню содержит команду декомпозиции. В появившемся диалоге необходимо задать требуемые тип и число подблоков. При декомпозиции блока BPwin создает новую диаграмму, которая является диаграммой разложения родительской диаграммы. Заметьте, что новые действия не связаны между собой и не поименованы - это ваша следующая задача. Вы должны задать взаимодействие между блоками и «привязать» к но­вым блокам стрелки, которые автоматически унаследованы от роди­тельской диаграммы.

Имя блока и другие его свойства вводятся в закладке «Name» спи­ска свойств блока. Для вывода свойств блока на экран достаточно два­жды щелкнуть мышью на блоке.

Следующим шагом при создании диаграммы должно быть соеди­нение всех использованных на диаграмме блоков с помощью стрелок, представляющих входы, результаты работы, средства управления и механизмы. Для этого достаточно соединить исходящую точку стрел­ки с точкой ее окончания. Окончанием стрелки может быть как одна из сторон функциональных блоков, так и граница диаграммы. BPwin автоматически выделяет допустимые окончания для создаваемых стрелок. Для рисования стрелки необходимо выбрать инструмент «стрелка» из комплекта инструментов.

Задание имени стрелки производится в закладке «Name» диалога свойств стрелок. Для вызова этого диалога достаточно дважды щелк­нуть мышью на нужной стрелке.

Если стрелка заканчивается на границе диаграммы BPwin , она по­мечается туннелем из квадратных скобок. Аналогично помечаются стрелки в родительской диаграмме, если в диаграмме декомпозиции удаляется перенесенная из нее стрелка. Квадратный туннель на начале стрелки указывает, что стрелка «не решена» в пределах иерархии мо­дели (не имеется никакой другой стрелки с таким же именем в любой другой диаграмме модели). Для поддержания целостности модели не­обходимо корректировать стрелки, помеченные «туннелями» из квад­ратных скобок, одним из следующих способов:

  • преобразованием в туннель из круглых скобок;
  • добавлением новой стрелки, соединяющей соответствующий блок с границей диаграммы;
  • созданием внешней ссылки (ссылки на объект, не описанный в данной модели) в соответствии с методологией IDEF0 ;
  • созданием ссылки на блок, расположенный на другой диаграмме.

В любой момент работы с диаграммой существует возможность добавления на нее новых блоков с использованием инструмента «Activity box Tool» панели инструментов. Для добавления блока сле­дует щелкнуть на этом инструменте, а затем - на диаграмме в том месте, где необходимо расположить новый блок. После того как до­полнительный блок создан, вы можете связать его стрелками с други­ми блоками и задать его название и другие свойства.

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

Перемещение любых объектов на диаграмме осуществляется с по­мощью их «захвата» мышью и перемещения в новое место. При пере­мещении блоков одновременно перемещаются и связанные с ними стрелки. Функциональные блоки могут также быть перемещены меж­ду диаграммами с использованием команд «Cut/Paste» из меню «Edit». Номера блокам диаграммы BPwin присваиваются автоматически. При изменении взаимного расположения блоков могут меняться и их но­мера.

Изменение размеров объектов диаграммы может быть сделано перемещением их границ. Для запрета изменения размеров объектов используют вкладку «Layout» диалога ввода свойств модели.

Если включен просмотр дерева модели, существует возможность просмотра модели как дерева диаграмм или дерева функцио­нальных блоков. Вершина дерева модели имеет кнопку переклю­чения «Diagrams/Activities» для отображения соответственно де­рева диаграмм или дерева действий. Дерево диаграмм открывается по умолчанию при запуске BPwin . Дерево моделей BPwin исполь­зует специальный набор графических символов для представле­ния диаграмм и действий в пределах дерева объектов. Вы можете использовать это дерево, чтобы переключиться на соответствующие модель, диаграмму или действие для выполнения редактиро­вания.

Оформление моделей

Использование цветовой палитры. В диаграмме BPwin вы мо­жете выбрать цветовую гамму для действий, стрелок и текстовых бло­ков. Использовать цвет на диаграммах не обязательно, но это может быть полезным для:

  • выделения недостаточно проработанных моментов;
  • выделения внесенных изменений;
  • отображения похожих по смыслу объектов.

Изменение цвета блоков диаграммы осуществляется с использо­ванием цветового редактора (рис. 6.9). Чтобы изменить цвет объекта, необходимо:

  • щелкнуть правой кнопкой мыши на объекте, выбрать в появив­шемся меню пункт «Color editor»;
  • выбрать необходимый цвет объекта из предложенной палитры.

Выбор атрибутов шрифта. Атрибуты шрифта, такие, как тип, размер и стиль, могут использоваться для выделения или группировки функциональных блоков (рис. 6.10). Для изменения шрифта сле­дует:

  • щелкнуть правой кнопкой мыши на объекте, выбрать в появив­шемся меню пункт «Font editor»;
  • выбрать необходимый шрифт и, при необходимости, задать его атрибуты.

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

Оформление стрелок . Использование стилей применяемых в диаграмме стрелок важно для целостности и удобочитаемости созда­ваемых диаграмм IDEF0. Вы можете изменять вид стрелок, устанав­ливая их толщину, форму и цвет. Цвет стрелки выбирается с использо­ванием редактора цветов, как описано выше. Толщина стрелок также может быть изменена, что применяется для выделения отдельных процессов на диаграмме. Для изменения толщины стрелки необхо­димо:

  • щелкнуть правой кнопкой мыши на стрелке и выбрать в меню пункт «Style editor»;
  • выбрать необходимую толщину стрелки в разделе «Thickness».

Следует обратить внимание на форму стрелки, которая определе­на в соответствии с используемой методологией. Стрелки типа «Relational» не описаны в методологии IDEF0, но могут использовать­ся, если строгое следование IDEF0 не обязательно. Диалог выбора ви­да и оформления стрелки приведен на рис. 6.11

.

Ветвление и объединение стрелок

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

Названия стрелок отображаются автоматически и могут быть пе­ремещены с помощью мыши. Для соединения стрелки с ее названием может быть использован инструмент «Squiggle» с панели инструмен­тов IDEF0 или IDEF3.

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

  • выбрать инструмент «Text» и щелкнуть мышью на том месте диа­граммы, где необходимо разместить пояснения;
  • в появившемся текстовом окне следует ввести текст пояснения.

К текстовым блокам применимы все описанные выше инструмен­ты оформления.

Опции отображения

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

В этом же меню производится на­стройка рабочего места BPwin. Напри­мер, можно отобразить или скрыть стандартную панель инструментов, па­нель инструментов «ModelMart», па­нель инструментов «BPwin », дерево модели и строку состояния. Также об­ратите внимание на пункт меню «Zoom», позволяющий изменять мас­штаб просматриваемых диаграмм. Этот пункт дублирует инструмент «Zoom» стандартной панели инструментов.

Другие виды диаграмм IDEF0

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

В этом разделе будет рассмотрено создание двух типов моделей:

  • диаграммы «только для представления» (For Exposition Only - FEO);
  • древовидные диаграммы.

При правильном использовании эти типы диаграмм упрощают до­кументирование моделей.

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

  • задаваемого разработчиком имени;
  • идентификатора вида AxF, где х - исходная диаграмма, а символ F показывает, что диаграмма имеет тип FEO.

FEO-диаграммы добавляются в модель с использованием пункта «FEO diagram» меню «Insert». В диалоге «Create New FEO Diagram» выберите один из следующих типов диаграммы для копирования:

  • если Вы выбираете «Context», просто напечатайте имя новой диа­граммы в поле «Name»;
  • если Вы выбираете «Decomposition», активизируется выпадаю­щий список «Copy From», показывающий все диаграммы деком­позиции в модели.

После нажатия ОК FEO-диаграмма будет создана и отображена на рабочем столе BPwin.

Так же как и для любой другой диаграммы, вы можете открыть диалог ввода свойств FEO-диаграммы.

Создание древовидных диаграмм (Node Tree Diagrams). Древо­видные диаграммы используются для отображения структуры модели в целом. В них, как правило, вершина (самый верхний узел) соответст­вует диаграмме контекстного уровня. Однако в качестве вершины мо­жет быть использован любой функциональный блок модели, при этом его подблоки будут показаны в качестве ветвей дерева.

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

Древовидные модели нумеруются по шаблону AxN, аналогично диаграммам FEO.

Древовидные диаграммы добавляются в модель с использованием пункта «Node tree» меню «Insert».

При этом выводится диалог «Node tree definition», в котором зада­ются:

  • функциональный блок вершины;
  • количество отображаемых уровней;
  • параметры форматирования.

После нажатия ОК древовидная диаграмма создается и высвечи­вается на рабочем столе BPwin .

Открытие древовидных и FEO-диаграмм

Древовидные и FEO-диаграммы объединяются под названием «родственные» диаграммы. Они не отражаются непосредственно в де­реве модели, однако последнее может быть использовано для их от­крытия. Для этого нужно, во-первых, переключить дерево модели в режим «Diagram view», а затем щелкнуть правой кнопкой мыши на на­звании диаграммы. При этом BPwin выдаст соответствующий список родственных диаграмм. Для их открытия можно также использовать инструмент «Sibling diagram tool» на панели инструментов BPwin.

Разбиение и объединение моделей

Разбиение моделей в BPwin используется, как правило, для воз­можности коллективной разработки моделей. Единая модель может быть разделена на части, чтобы позволить нескольким разработчикам создавать собственные функциональные блоки модели. По заверше­нии разработки разделенная на части модель может быть объединена в одну для отображения бизнес-процесса в целом. При разбиении мо­делей на две каждая из них поддерживает собственный набор функ­циональных блоков, стрелок и других объектов BPwin .

Разбиение модели . Для его осуществления необходимо придер­живаться следующего алгоритма:

  • определите часть модели, которую необходимо отделить;
  • щелкните правой кнопкой мыши на выбранном функциональном блоке;
  • выберите пункт меню «Split model»;
  • в диалоге «Split options» введите имя, соответствующее имени функционального блока, что позволит впоследствии объединить модель ;
  • включите опцию «Copy entire dictionaries», чтобы скопировать словари объектов в отделяемую часть модели;
  • нажмите ОК.

В дереве модели будет создана и отображена новая модель. Обра­тите внимание на следующие моменты:

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

После создания новой модели можно использовать диалог ввода свойств модели для определения свойств созданной модели.

Объединение моделей . По завершении разработки разделенных моделей BPwin позволяет объединить их в одну. Для объединения мо­делей должны выполняться следующие условия:

  • название стрелки связи должно соответствовать названию импор­тируемой модели;
  • название функционального блока в контекстной диаграмме им­портируемой модели должно соответствовать названию аналогич­ного функционального блока в основной модели.

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

После открытия основной и импортируемой модели нужно:

  • щелкнуть правой кнопкой мыши на функциональном блоке основ­ной модели, к которому нужно импортировать данные;
  • выбрать из меню пункт «Merge Model»;
  • диалог «Continue with merge?» подтверждает, что именно вы хоти­те объединить и позволяет задать опции объединения . По завершении объединения дерево модели обновляется для отра­жения изменений в основной модели.

1. Создание модели процессов в BPwin

1.1. Инструментальная среда BPwin


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

Рис. 1.1. Интегрированная среда разработки модели BPwin 2.5


При запуске BPwin по умолчанию появляется основная панель инструментов, палитра инструментов (вид которой зависит от выбранной нотации) и, в левой части, навигатор модели - Model Explorer (рис. 1.1).

Функциональность панели инструментов доступна из основного меню Bpwin (табл. 1.1).


Таблица 1.1. Описание элементов управления основной панели инструментов Bpwin2.5

Элемент управления Описание Соответствующий пункт меню
Создать новую модель File/New
Открыть модель File/Open
Сохранить модель File/Save
Напечатать модель File/Print
Выбор масштаба View/Zoom
Масштабирование View/Zoom
Проверка правописания Tools/Spelling
Включение и выключение навигатора модели Model Explorer View/Model Explorer
Включение и выключение дополнительной панели инструментов работы с ModelMart ModelMart

При создании новой модели возникает диалог, в котором следует указать, будет ли создана модель заново, или она будет открыта из файла либо из репозитория ModelMart, внести имя модели и выбрать методологию, в которой будет построена модель (рис. 1.2).

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

Рис. 1.2. Диалог создания модели


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

Установка цвета и шрифта объектов. Пункты контекстного меню Font Editor и Color Editor вызывают соответствующие диалоги для установки шрифта (в том числе его размера и стиля) и цвета объекта. Кроме того, BPwin позволяет установить шрифт по умолчанию для объектов определенного типа на диаграммах и в отчетах. Для этого следует выбрать меню Tools/Default Fonts, после чего появляется каскадное меню, каждый пункт которого служит для установки шрифтов для определенного типа объектов:

Context Activity - работа на контекстной диаграмме;

Context Arrow - стрелки на контекстной диаграмме;

Decomposition Activity - работы на диаграмме декомпозиции;

Decomposition Arrow - стрелки на диаграмме декомпозиции;

NodeTree Text - текст на диаграмме дерева узлов;

Frame User Text - текст, вносимый пользователем в каркасе диаграмм;

Frame System Text - системный текст в каркасе диаграмм;

Text Blocks - текстовые блоки;

Parent Diagram Text - текст родительской диаграммы;

Parent Diagram Title Text - текст заголовка родительской диаграммы;

Report Text - текст отчетов.


1.2. Методология IDEF0

1.2.1. Принципы построения модели IDEF0


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

Наиболее удобным языком моделирования бизнес-процессов является IDEF0, предложенный более 20 лет назад Дугласом Россом (SoftTech, Inc.) и называвшийся первоначально SADT - Structured Analysis and Design Technique. (Подробно методология SADT излагается в книге Дэвида А. Марка и Клемента Мак-Гоуэна "Методология структурного анализа и проектирования SADT"M.:Meтaтexнoлoгия, 1993.) В начале 70-х годов вооруженные силы США применили подмножество SADT, касающееся моделирования процессов, для реализации проектов в рамках программы ICAM (Integrated Computer-Aided Manufacturing). В дальнейшем это подмножество SADT было принято в качестве федерального стандарта США под наименованием IDEF0. Подробные спецификации на стандарты IDEF можно найти на сайте http://www.idef.com .

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

Под моделью в IDEF0 понимают описание системы (текстовое и графическое), которое должно дать ответ на некоторые заранее определенные вопросы.

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

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

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

Цель моделирования (Purpose). Модель не может быть построена без четко сформулированной цели. Цель должна отвечать на следующие вопросы:

Почему этот процесс должен быть замоделирован?

Что должна показывать модель?

Что может получить читатель?

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

Точка зрения (Viewpoint). Хотя при построении модели учитываются мнения различных людей, модель должна строиться с единой точки зрения. Точку зрения можно представить как взгляд человека, который видит систему в нужном для моделирования аспекте. Точка зрения должна соответствовать цели моделирования. Очевидно, что описание работы предприятия с точки зрения финансиста и технолога будет выглядеть совершенно по-разному, поэтому в течение моделирования важно оставаться на выбранной точке зрения. Как правило, выбирается точка зрения человека, ответственного за моделируемую работу в целом. Часто при выборе точки зрения на модель важно задокументировать дополнительные альтернативные точки зрения. Для этой цели обычно используют диаграммы FEO (For Exposition Only), которые будут описаны в дальнейшем.

IDEF0-модель предполагает наличие четко сформулированной цели, единственного субъекта моделирования и одной точки зрения. Для внесения области, цели и точки зрения в модели IDEF0 в BPwin следует выбрать пункт меню Edit/Model Properties, вызывающий диалог Model Properties (рис. 1.3). В закладке Purpose следует внести цель и точку зрения, а в закладку Definition - определение модели и описание области.

Рис. 1.3. Диалог задания свойств модели


В закладке Status того же диалога можно описать статус модели (черновой вариант, рабочий, окончательный и т. д.), время создания и последнего редактирования (отслеживается в дальнейшем автоматически по системной дате). В закладке Source описываются источники информации для построения модели (например, "Опрос экспертов предметной области и анализ документации"). Закладка General служит для внесения имени проекта и модели, имени и инициалов автора и временных рамок модели - AS-IS и ТО-ВЕ.

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

Следует указать на распространенную ошибку при создании модели AS-IS - это создание идеализированной модели. Примером может служить создание модели на основе знаний руководителя, а не конкретного исполнителя работ. Руководитель знаком с тем, как предполагается выполнение работы по руководствам и должностным инструкциям и часто не знает, как на самом деле подчиненные выполняют рутинные работы. В результате получается приукрашенная, искаженная модель, которая несет ложную информацию и которую невозможно в дальнейшем использовать для анализа. Такая модель называется SHOULD_BE (как должно бы быть).

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

Иногда текущая AS-IS и будущая ТО-ВЕ модели различаются очень сильно, так что переход от начального к конечному состоянию становится неочевидным. В этом случае необходима третья модель, описывающая процесс перехода от начального к конечному состояния системы, поскольку такой переход - это тоже бизнес-процесс.

Результат описания модели можно получить в отчете Model Report. Диалог настройки отчета по модели вызывается из пункта меню Report/Model Report. В диалоге настройки следует выбрать необходимые поля, при этом автоматически отображается очередность вывода информации в отчет (рис. 1.4).

Рис. 1.4. Отчет по модели


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

Модель может содержать четыре типа диаграмм:

Контекстную диаграмму (в каждой модели может быть только одна контекстная диаграмма);

Диаграммы декомпозиции;

Диаграммы дерева узлов;

Диаграммы только для экспозиции (FEO).

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

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

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


1.2.2. Работы (Activity)


Работы обозначают поименованные процессы, функции или задачи, которые происходят в течение определенного времени и имеют распознаваемые результаты. Работы изображаются в виде прямоугольников. Все работы должны быть названы и определены. Имя работы должно быть выражено отглагольным существительным, обозначающим действие (например, "Изготовление детали", "Прием заказа" и т.д.). Работа "Изготовление детали" может иметь, например, следующее определение: "Работа относится к полному циклу изготовления изделия от контроля качества сырья до отгрузки готового упакованного изделия". При создании новой модели (меню File/New) автоматически создается контекстная диаграмма с единственной работой, изображающей систему в целом (рис. 1.5).

Рис. 1.6. Редактор задания свойств работы


Для внесения имени работы следует щелкнуть по работе правой кнопкой мыши, выбрать в меню Name Editor и в появившемся диалоге внести имя работы. Для описания других свойств работы служит диалог Activity Properties (рис. 1.6).

Рис. 1.5. Пример контекстной диаграммы


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

Возникает диалог Activity Box Count (рис. 1.7), в котором следует указать нотацию новой диаграммы и количество работ на ней. Остановимся пока на нотации IDEF0 и щелкнем на ОК. Появляется диаграмма декомпозиции (рис. 1.8). Допустимый интервал числа работ 2-8. Декомпозировать работу на одну работу не имеет смысла: диаграммы с количеством работ более восьми получаются перенасыщенными и плохо читаются. Для обеспечения наглядности и лучшего понимания моделируемых процессов рекомендуется использовать от трех до шести блоков на одной диаграмме.

Рис. 1.7. Диалог Activity Box Count


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

на палитре инструментов, а затем по свободному месту на диаграмме.

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

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

Рис. 1.8. Пример диаграммы декомпозиции


Каждая из работ на диаграмме декомпозиции может быть в свою очередь декомпозирована. На диаграмме декомпозиции работы нумеруются автоматически слева направо. Номер работы показывается в правом нижнем углу. В левом верхнем углу изображается небольшая диагональная черта, которая показывает, что данная работа не была декомпозирована. Так, на рис. 1.9 работа "Сборка изделия" имеет номер 3 и не была еще декомпозирована. Работа "Контроль качества" (номер 4) имеет нижний уровень декомпозиции.

Рис. 1.9. Пример декомпозируемых работ


1.2.3. Стрелки (Arrow)


Взаимодействие работ с внешним миром и между собой описывается в виде стрелок. Стрелки представляют собой некую информацию и именуются существительными (например, "Заготовка", "Изделие", "Заказ").

В IDEF0 различают пять типов стрелок:

Вход (Input) - материал или информация, которые используются или преобразуется работой для получения результата (выхода). Допускается, что работа может не иметь ни одной стрелки входа. Каждый тип стрелок подходит к определенной стороне прямоугольника, изображающего работу, или выходит из нее. Стрелка входа рисуется как входящая в левую грань работы. При описании технологических процессов (для этого и был придуман IDEF0) не возникает проблем определения входов. Действительно, "Сырье" на рис. 1.5 - это нечто, что перерабатывается в процессе "Изготовление изделия" для получения результата. При моделировании ИС, когда стрелками являются не физические объекты, а данные, не все так очевидно. Например, при "Приеме пациента" карта пациента может быть и на входе и на выходе, между тем качество этих данных меняется. Другими словами, в нашем примере для того, чтобы оправдать свое назначение, стрелки входа и выхода должны быть точно определены с тем, чтобы указать на то, что данные действительно были переработаны (например, на выходе - "Заполненная карта пациента"). Очень часто сложно определить, являются ли данные входом или управлением. В этом случае подсказкой может служить то, перерабатываются/изменяются ли данные в работе или нет. Если изменяются, то скорее всего это вход, если нет - управление.

Управление (Control) - правила, стратегии, процедуры или стандарты, которыми руководствуется работа. Каждая работа должна иметь хотя бы одну стрелку управления. Стрелка управления рисуется как входящая в верхнюю грань работы. На рис. 1.5 стрелки "Задание"и "Чертеж" - управление для работы "Изготовление изделия". Управление влияет на работу, но не преобразуется работой. Если цель работы - изменить процедуру или стратегию, то такая процедура или стратегия будет для работы входом. В случае возникновения неопределенности в статусе стрелки (управление или вход) рекомендуется рисовать стрелку управления.

Выход (Output) - материал или информация, которые производятся работой. Каждая работа должна иметь хотя бы одну стрелку выхода. Работа без результата не имеет смысла и не должна моделироваться. Стрелка выхода рисуется как исходящая из правой грани работы. На рис. 1.5 стрелка "Готовое изделие" является выходом для работы "Изготовление изделия".

Механизм (Mechanism) - ресурсы, которые выполняют работу, например персонал предприятия, станки, устройства и т. д. Стрелка механизма рисуется как входящая в нижнюю грань работы. На рис. 1.5 стрелка "Персонал предприятия" является механизмом для работы "Изготовление изделия". По усмотрению аналитика стрелки механизма могут не изображаться в модели.

Вызов (Call) - специальная стрелка, указывающая на другую модель работы. Стрелка вызова рисуется как исходящая из нижней грани работы. На рис. 1.5 стрелка "Другая модель работы" является вызовом для работы "Изготовление изделия". Стрелка вызова используется для указания того, что некоторая работа выполняется за пределами моделируемой системы. В BPwin стрелки вызова используются в механизме слияния и разделения моделей.

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

Для внесения граничной стрелки входа следует:

Щелкнуть по кнопке с символом стрелки

в палитре инструментов перенести курсор к левой стороне экрана, пока не появится начальная штриховая полоска;

Щелкнуть один раз по полоске (откуда выходит стрелка) и еще раз в левой части работы со стороны входа (где заканчивается стрелка);

Вернуться в палитру инструментов и выбрать опцию редактирования стрелки

Щелкнуть правой кнопкой мыши на линии стрелки, во всплывающем меню выбрать Name Editor и добавить имя стрелки в закладке Name диалога IDEF0 Arrow Properties.

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

Имена вновь внесенных стрелок автоматически заносятся в словарь (Arrow Dictionary).

Рис. 1.10. Диалог IDEF0 Arrow Properties


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

Рис. 1.11. Фрагмент диаграммы декомпозиции с ICOM -кодами (I1, С1 и С2)

BPwin вносит ICOM-коды автоматически. Для отображения ICOM-кодов следует включить опцию Show ICOM codes на закладке Presentation диалога Model Properties (меню Edit/Model Properties).

Рис. 1.12. Словарь стрелок


Словарь стрелок редактируется при помощи специального редактора Arrow Dictionary Editor, в котором определяется стрелка и вносится относящийся к ней комментарий (рис. 1.12). Словарь стрелок решает очень важную задачу. Диаграммы создаются аналитиком для того, чтобы провести сеанс экспертизы, т. е. обсудить диаграмму со специалистом предметной области. В любой предметной области формируется профессиональный жаргон, причем очень часто жаргонные выражения имеют нечеткий смысл и воспринимаются разными специалистами по-разному. В то же время аналитик - автор диаграмм должен употреблять те выражения, которые наиболее понятны экспертам. Поскольку формальные определения часто сложны для восприятия, аналитик вынужден употреблять профессиональный жаргон, а, чтобы не возникло неоднозначных трактовок, в словаре стрелок каждому понятию можно дать расширенное и, если это необходимо, формальное определение.

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

Несвязанные граничные стрелки (unconnected border arrow). При декомпозиции работы входящие в нее и исходящие из нее стрелки (кроме стрелки вызова) автоматически появляются на диаграмме декомпозиции (миграция стрелок), но при этом не касаются работ. Такие стрелки называются несвязанными и воспринимаются в BPwin как синтаксическая ошибка.

Рис. 1.13. Пример несвязанных стрелок


На рис. 1.13 приведен фрагмент диаграммы декомпозиции с несвязанными стрелками, генерирующийся BPwin при декомпозиции работы "Изготовление изделия" (см. рис. 1.5). Для связывания стрелок входа, управления или механизма необходимо перейти в режим редактирования стрелок, щелкнуть по наконечнику стрелки и щелкнуть по соответствующему сегменту работы. Для связывания стрелки выхода необходимо перейти в режим редактирования стрелок, щелкнуть по сегменту выхода работы и затем по стрелке.

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

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

Связь по входу (output-input), когда стрелка выхода вышестоящей работы (далее - просто выход) направляется на вход нижестоящей (например, на рис. 1.14 стрелка "Детали" связывает работы "Изготовление деталей" и "Сборка изделия").

Рис. 1.14. Связь по входу


Связь по управлению (output-control), когда выход вышестоящей работы направляется на управление нижестоящей. Связь по управлению показывает доминирование вышестоящей работы. Данные или объекты выхода вышестоящей работы не меняются в нижестоящей. На рис. 1.15 стрелка "Чертеж" связывает работы "Создание чертежа детали" и "Изготовление детали"), при этом чертеж не претерпевает изменений в процессе изготовления деталей.

Рис. 1.15. Связь по управлению


Обратная связь по входу (output-input feedback), когда выход нижестоящей работы направляется на вход вышестоящей. Такая связь, как правило, используется для описания циклов. На рис. 1.16 стрелка "Дрек" связывает работы "Переработка сырья" и "Контроль качества", при этом выявленный на контроле брак направляется на вторичную переработку.

Рис. 1.16. Обратная связь по входу


Обратная связь по управлению (output-control feedback), когда выход нижестоящей работы направляется на управление вышестоящей (стрелка "Рекомендации", рис. 1.17). Обратная связь по управлению часто свидетельствует об эффективности бизнес - процесса. На рис. 1.17 качество изделия может быть повышено путем непосредственного регулирования процессами изготовления деталей и сборки изделия в зависимости от результата (выхода) работы "Контроль качества"

Рис. 1.17. Обратная связь по управлению

Связь выход-механизм (output-mechanism), когда выход одной работы направляется на механизм другой. Эта взаимосвязь используется реже остальных и показывает, что одна работа подготавливает ресурсы, необходимые для проведения другой работы (рис. 1.18).

Явные стрелки. Явная стрелка имеет источником одну-единственную работу и назначением тоже одну-единственную работу.

Рис. 1.18. Связь выход-механизм


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

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

Рис. 1.19. Пример именования разветвляющейся стрелки


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

Рис. 1.20. Другой пример именования разветвляющейся стрелки

Недопустима ситуация, когда стрелка до разветвления не именована, а после разветвления не именована какая-либо из ветвей. BPwin определяет такую стрелку как синтаксическую ошибку (рис. 1.21).

Рис. 1.21. Пример неверного именования разветвляющейся стрелки


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

Тоннелирование стрелок. Вновь внесенные граничные стрелки на диаграмме декомпозиции нижнего уровня изображаются в квадратных скобках и автоматически не появляются на диаграмме верхнего уровня (рис. 1.22).

Рис. 1.22. Неразрешенная (unresolved) стрелка


Для их "перетаскивания" наверх нужно сначала выбрать кнопку

на палитре инструментов и щелкнуть по квадратным скобкам граничной стрелки. Появляется диалог Border Arrow Editor (рис. 1.23).

Рис. 1.23. Диалог Border Arrow Editor


Если щелкнуть по кнопке Resolve Border Arrow, стрелка мигрирует на диаграмму верхнего уровня, если по кнопке Change To Tunnel - стрелка будет затоннелирована и не попадет на другую диаграмму. Тоннельная стрелка изображается с круглыми скобками на конце (рис. 1.24).

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

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

Рис. 1.24. Типы тоннелирования стрелок


1.2.4. Нумерация работ и диаграмм


Все работы модели нумеруются. Номер состоит из префикса и числа. Может быть использован префикс любой длины, но обычно используют префикс А. Контекстная (корневая) работа дерева имеет номер АО. Работы i декомпозиции АО имеют номера А1, А2, A3 и т. д. Работы декомпозиции нижнего уровня имеют номер родительской работы и очередной порядковый номер, например работы декомпозиции A3 будут иметь номера А31, А32, АЗЗ, А34 и т. д. Работы образуют иерархию, где каждая работа может иметь одну родительскую и несколько дочерних работ, образуя дерево. Такое дерево называют деревом узлов, а вышеописанную нумерацию - нумерацией по узлам. Имеются незначительные варианты нумерации, которые i можно настроить в закладке Presentation диалога Model Properties (меню Edit/Model Properties).

Диаграммы IDEF0 имеют двойную нумерацию. Во-первых, диаграммы имеют номера по узлу. Контекстная диаграмма всегда имеет номер А-0, декомпозиция контекстной диаграммы - номер А0, остальные диаграммы декомпозиции - номера по соответствующему узлу (например, Al, A2, А21, А213 и т. д.). BPwin автоматически поддерживает нумерацию по узлам, т. е. при проведении декомпозиции создается новая диаграмма и ей автоматически присваивается соответствующий номер. В результате проведения экспертизы диаграммы могут уточняться и изменяться, следовательно, могут быть созданы различные версии одной и той же (с точки зрения ее расположения в дереве узлов) диаграммы декомпозиции. BPwin позволяет иметь в модели только одну диаграмму декомпозиции в данном узле. Прежние версии диаграммы можно хранить в виде бумажной копии либо как FEO-диаграмму. (К сожалению, при создании FEO-диаграмм отсутствует возможность отката, т. е. можно получить из диаграммы декомпозиции FEO, но не наоборот.) В любом случае следует отличать различные версии одной и той же диаграммы. Для этого существует специальный номер - C-number, который должен присваиваться автором модели вручную. C-number - это произвольная строка, но рекомендуется придерживаться стандарта, когда номер состоит из буквенного префикса и порядкового номера, причем в качестве префикса используются инициалы автора диаграммы, а порядковый номер отслеживается автором вручную, например МСВ00021.


1.2.5. Диаграммы дерева узлов и FEO


Диаграмма дерева узлов показывает иерархию работ в модели и позволяет рассмотреть всю модель целиком, но не показывает взаимосвязи между работами (стрелки) (рис. 1.25). Процесс создания модели работ является итерационным, следовательно, работы могут менять свое расположение в дереве узлов многократно. Чтобы не запутаться и проверить способ декомпозиции, следует после каждого изменения создавать диаграмму дерева узлов. Впрочем, BPwin имеет мощный инструмент навигации по модели -Model Explorer, который позволяет представить иерархию работ и диаграмм в удобном и компактном виде, однако этот инструмент не является составляющей стандарта IDEF0.

Рис. 1.25. Диаграмма дерева узлов


Для создания диаграммы дерева узлов следует выбрать в меню пункт Insert/Node Tree. Возникает диалог формирования диаграммы дерева узлов Node Tree Definition (рис. 1.26).

Рис. 1.26. Диалог настройки диаграммы дерева узлов


В диалоге Node Tree Definition следует указать глубину дерева - Number of Levels (по умолчанию 3) и корень дерева (по умолчанию - родительская работа текущей диаграммы). По умолчанию нижний уровень декомпозиции показывается в виде списка, остальные работы - в виде прямоугольников. Для отображения всего дерева в виде прямоугольников следует выключить опцию Bullet Last Level. При создании дерева узлов следует указать имя диаграммы, поскольку, если в нескольких диаграммах в качестве корня на дереве узлов использовать одну и ту же работу, все эти диаграммы получат одинаковый номер (номер узла + постфикс N, например AON) и в списке открытых диаграмм (пункт меню Window) их можно будет различить только по имени.

Диаграммы "только для экспозиции" (FEO) часто используются в модели для иллюстрации других точек зрения, для отображения отдельных деталей, которые не поддерживаются явно синтаксисом IDEF0. Диаграммы FEO позволяют нарушить любое синтаксическое правило, поскольку по сути являются просто картинками - копиями стандартных диаграмм и не включаются в анализ синтаксиса. Например, работа на диаграмме FEO может не иметь стрелок управления и выхода. С целью обсуждения определенных аспектов модели с экспертом предметной области может быть создана диаграмма только с одной работой и одной стрелкой, поскольку стандартная диаграмма декомпозиции содержит множество деталей, не относящихся к теме обсуждения и дезориентирующих эксперта. Но если FEO используется для иллюстрации альтернативных точек зрения (альтернативный контекст), рекомендуется все-таки придерживаться синтаксиса IDEF0. Для создания диаграммы FEO следует выбрать пункт меню Insert/FEO Diagram. В возникающем диалоге Create New FEO Diagram следует указать имя диаграммы FEO и тип родительской диаграммы (рис. 1.27).

Рис. 1.27. Диалог создания FEO-диаграммы


Новая диаграмма получает номер, который генерируется автоматически (номер родительской диаграммы по узлу + постфикс F, например A1F).


1.2.6. Каркас диаграммы


На рис. 1.28 показан типичный пример диаграммы декомпозиции с граничными рамками, которые называются каркасом диаграммы.

Рис. 1.28. Пример диаграммы декомпозиции с каркасом


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

Смысл элементов каркаса приведен в табл. 1.2 и 1.3.


Таблица 1.2. Поля заголовка каркаса (слева направо)

Поле Смысл
Used At Используется для указания на родительскую работу в случае, если на текущую диаграмму ссылались посредством стрелки вызова
Autor, Date, Rev, Prpject Имя создателя диаграммы, дата создания и имя проекта, в рамках которого была создана диаграмма. REV-дата последнего редактирования диаграммы
Notes 123456789 10 Используется при проведении сеанса экспертизы. Эксперт должен (на бумажной копии диаграммы) указать число замечаний, вычеркивая цифру из списка каждый раз при внесении нового замечания
Status Статус отображает стадию создания диаграммы, отображая все этапы публикации
Working Новая диаграмма, кардинально обновленная диаграмма или новый автор диаграммы
Draft Диаграмма прошла первичную экспертизу и готова к дальнейшему обсуждению
Recommended Диаграмма и все ее сопровождающие документы прошли экспертизу. Новых изменений не ожидается
Publication Диаграмма готова к окончательной печати и публикации
Reader Имя читателя (эксперта)
Date Дата прочтения (экспертизы)
Context Схема расположения работ в диаграмме верхнего уровня. Работа, являющаяся родительской, показана темным прямоугольником, остальные – светлым. На контекстной диаграмме (А-0) показана надпись ТОР. В левом нижнем углу показывается номер по узлу родительской диаграммы:

Таблица 1.3. Поля подвала каркаса (слева направо)


Значения полей каркаса задаются в диалоге Diagram Properties (меню Edit/Diagram Properties) - рис. 1.29.

Рис. 1.29. Диалог Diagram Properties


1.2.7. Слияние и расщепление моделей


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

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

Обе сливаемые модели должны быть открыты в Bpwin.

Имя модели-источника, которое присоединяют к модели-цели, должно совпадать с именем стрелки вызова работы в модели-цели (рис. 1.30).

Стрелка вызова должна исходить из недекомпозируемой работы (работа должна иметь диагональную черту в левом верхнем углу) (рис. 1.31).

Имена контекстной работы подсоединяемой модели-источника и работы на модели-цели, к которой мы подсоединяем модель-источник, должны совпадать (рис. 1.30).

Модель-источник должна иметь по крайней мере одну диаграмму декомпозиции.

Рис. 1.30. Условия слияния моделей


Для слияния моделей нужно щелкнуть правой кнопкой мыши по работе со стрелкой вызова в модели-цели и во всплывающем меню выбрать пункт Merge Model.

Рис. 1.31. Стрелка вызова работы "Сборка изделия" модели-цели


Появляется диалог, в котором следует указать опции слияния модели (рис. 1.32). При слиянии моделей объединяются и словари стрелок и работ. В случае одинаковых определений возможна перезапись определений или принятие определений из модели-источника. То же относится к именам стрелок, хранилищам данных и внешним ссылкам. (Хранилища данных и внешние ссылки - объекты диаграмм потоков данных, DFD, будут рассмотрены ниже.)

Рис. 1.32. Диалог Continue with merge?


После подтверждения слияния (кнопка OK) модель-источник подсоединяется к модели-цели, стрелка вызова исчезает, а работа, от которой отходила стрелка вызова, становится декомпозируемой - к ней подсоединяется диаграмма декомпозиции первого уровня модели-источника. Стрелки, касающиеся работы на диаграмме модели-цели, автоматически не мигрируют в декомпозицию, а отображаются как неразрешенные. Их следует тоннелировать вручную. На рис. 1.33 показано, как выглядят модели в окне Model Explorer после слияния.

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

Разделение моделей производится аналогично. Для отщепления ветви от модели следует щелкнуть правой кнопкой мыши по декомпозированной работе (работа не должна иметь диагональной черты в левом верхнем углу) и выбрать во всплывающем меню пункт Split Model. В появившемся диалоге Split Options следует указать имя создаваемой модели. После подтверждения расщепления в старой модели работа станет недекомпозированной (признак - диагональная черта в левом верхнем углу), будет создана стрелка вызова, причем ее имя будет совпадать с именем новой модели, и, наконец, будет создана новая модель, причем имя контекстной работы будет совпадать с именем работы, от которой была "оторвана" декомпозиция.

Рис. 1.33. Вид моделей в Model Explorer после слияния. Выделены модель-источник, и присоединенная ветвь модели-цели



В реальных диаграммах к каждой работе может подходить и от каждой может отходить около десятка стрелок. Если диаграмма содержит 6-8 работ, то она может содержать 30-40 стрелок, причем они могут сливаться, разветвляться и пресекаться. Такие диаграммы могут стать очень плохо читаемыми. В IDEF0 существуют соглашения по рисованию диаграмм, которые призваны облегчить чтение и экспертизу модели. Некоторые из этих правил BPwin поддерживает автоматически, выполнение других следует обеспечить вручную.

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

Следует максимально увеличивать расстояние между входящими или выходящими стрелками на одной грани работы. Если включить опцию Line Drawing: Automatically space arrows на закладке Layout диалога Model Properties (меню Edit/Model Properties), BPwin будет располагать стрелки нужным образом автоматически.

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

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

Обратные связи по входу рисуются "нижней" петлей, обратная связь по управлению - "верхней" (см. рис. 1.15, 1.17). BPwin автоматически рисует обратные связи нужным образом. Его можно "обмануть", но лучше этого не делать.

Циклические обратные связи следует рисовать только в случае крайней необходимости, когда подчеркивают значение повторно используемого объекта. Принято изображать такие связи на диаграмме декомпозиции. BPwip не позволяет создать циклическую обратную связь за один прием. Если все же необходимо изобразить такую связь, следует сначала создать обычную связь по входу, затем разветвить стрелку, направить новую, ветвь обратно ко входу работы-источника и, наконец, удалить старую ветвь стрелки выхода (рис. 1.34).

Рис. 1.34. Пример обратной циклической связи


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

Рис. 1.35. Минимизация пересечений и поворотов стрелок

Если нужно изобразить связь по входу, необходимо избегать "нависания" работ друг над другом. В этом случае BPwin изображает связи по входу в виде петли, что затрудняет чтение диаграмм (рис. 1.36).

Рис. 1.36. Пример правильного (справа) и неправильного (слева) расположения работ при изображении связи по входу


1.2.9. Проведение экспертизы


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

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

Все коммуникации при создании модели контролируются библиотекарем. Он ответственен за прохождение папок и архивирование диаграмм модели. После создания диаграмма посылается библиотекарю для помещения в архив.

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

Читатель рецензирует папку и записывает свои комментарии. Замечания вносятся в диаграмму по определенным правилам. Если читатель решил внести замечание, он должен указать номер замечания, затем внести текст замечания и в каркасе диаграммы в разделе Notes зачеркнуть цифру, соответствующую номеру замечания (рис. 1.37).

Рис. 1.37. Внесение замечаний в диаграмму


После рецензирования папки возвращаются библиотекарю. Библиотекарь должен обеспечивать проведение рецензирования в срок. Затем папки регистрируются и направляются автору.

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

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

После прохождения нескольких циклов число замечаний обычно уменьшается и диаграмма становится стабильной. В процессе изменения диаграмма может менять свой статус, который должен быть отражен в каркасе (см. табл. 1.2). Когда автор считает, что диаграмма уже достаточно проработана и достигла уровня "Recommended", он пересылает ее на утверждение в комитет технического контроля, где она проходит окончательную экспертизу. После внесения замечаний и окончательных изменений диаграмма (или набор диаграмм) окончательно утверждается, получает статус "Publication" и может быть распечатана и распространена среди участников проекта.


1.3. Создание отчетов в BPwin


BPwin имеет мощный инструмент генерации. Отчеты по модели вызываются из пункта меню Report. Всего имеется семь типов отчетов:

Model Report. Этот отчет уже упоминался в 1.2.1. Он включает информацию о контексте модели - имя модели, точку зрения, область, цель, имя автора, дату создания и др.

Diagram Report. Отчет по конкретной диаграмме. Включает список объектов (работ, стрелок, хранилищ данных, внешних ссылок и т. д.).

Diagram Object Report. Наиболее полный отчет по модели. Может включать полный список объектов модели (работ, стрелок с указанием их типа и др.) и свойства, определяемые пользователем.

Activity Cost Report. Отчет о результатах стоимостного анализа. Будет рассмотрен ниже.

Arrow Report. Отчет по стрелкам. Может содержать информацию из словаря стрелок, информацию о работе-источнике, работе-назначении стрелки и информацию о разветвлении и слиянии стрелок.

DataUsage Report. Отчет о результатах связывания модели процессов и модели данных. (Будет рассмотрен ниже.)

Model Consistency Report. Отчет, содержащий список синтаксических ошибок модели.

Синтаксические ошибки IDEF0 с точки зрения BPwin разделяются на три типа:

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

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

Третий тип ошибок BPwin позволяет допустить, но детектирует их. Полный их список можно получить в отчете Model Consistency Report. Это единственный неопциональный отчет в BPwin. Список ошибок может содержать, например, неименованные работы и стрелки (unnamed arrow, unnamed activity), несвязанные стрелки (unconnected border arrow), неразрешенные стрелки (unresolved (square tunneled) arrow connections), работы, не имеющие по крайней мере одной стрелки выхода и одной стрелки управления (Activity "Сборка блоков" has no Control, Activity "Сборка блоков" has no Output), и т. д. Пример отчета Model Consistency Report приведен на рис. 1.38.

Рис. 1.38. Отчет Model Consistency Report


При выборе пункта меню, который соответствует какому-либо отчету, появляется диалог настройки отчета. Для каждого из семи типов отчетов он выглядит по-своему. Рассмотрим типичный диалог Arrow Report (рис. 1.39).

Рис. 1.39. Диалог Arrow Report


Раскрывающийся список Standart Reports позволяет выбрать один из стандартных отчетов. Стандартный отчет - это запоминаемая комбинация переключателей, флажков и других элементов управления диалога. Для создания собственного стандартного отчета необходимо задать опции отчета, ввести имя отчета в поле списка выбора и щелкнуть по кнопке New. BPwin сохраняет информацию о стандартном отчете в файле BPWINRPT.INI. Все определения этого файла доступны из любой модели. Единственное ограничение - свойства, определяемые пользователем (User-Defined Properties). Они сохраняются в виде указателя и поэтому доступны только из "родной" модели. Стандартный отчет можно изменить (кнопка Update) или удалить(кнопка Delete).

В правом верхнем углу диалога находится группа управляющих элементов для выбора формата отчета. Доступны следующие форматы:

Labeled - отчеты включают метку поля, затем, в следующей строке, печатается содержимое поля;

Fixed Column - каждое поле печатается,в собственной колонке;

Tab-Comma Delimited - каждое поле печатается в собственной колонке. Колонки разделяются знаком табуляции или запятыми;

DDE Table - данные передаются по DDE приложению, например MS Word или Excel;

RPTwin - отчет создается в формате Platinum RPTwin - специализированного генератора отчетов, который входит в поставку BPwin.

Опция Ordering (на отчете по стрелкам отсутствует) сортирует данные по какому-либо значению.

Опция Multi-Valued Format регулирует вывод полей в отчете при группировке данных:

Repeating Group - детальные данные объединяются в одно поле, между значениями вставляется +.

Filled - дублирование данных для каждого заголовка группы;

Header (опция по умолчанию) - печатается заголовок группы, затем -детальная информация.


1.4. Стоимостный анализ (ЛВС) и свойства, определяемые пользователем (UDP)


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

BPwin предоставляет аналитику два инструмента для оценки модели -стоимостный анализ, основанный на работах (Activity Based Costing, ABC), и свойства, определяемые пользователем (User Defined Properties, UDP). ABC является широко распространенной методикой, используемой международными корпорациями и государственными организациями (в том числе Департаментом обороны США) для идентификации истинных движителей затрат в организации.

Стоимостный анализ представляет собой соглашение об учете, используемое для сбора затрат, связанных с работами, с целью определить общую стоимость процесса. Стоимостный анализ основан на модели работ, потому что количественная оценка невозможна без детального понимания функциональности предприятия. Обычно ABC применяется для того, чтобы понять происхождение выходных затрат и облегчить выбор нужной модели работ при реорганизации деятельности предприятия (Business Process Reengineering, BPR). С помощью стоимостного анализа можно решить такие задачи, как определение действительной стоимости производства продукта, определение действительной стоимости поддержки клиента, идентификация работ, которые стоят больше всего (те, которые должны быть улучшены в первую очередь), обеспечение менеджеров финансовой мерой предлагаемых изменений т. д.

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

ABC включает следующие основные понятия:

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

Рис. 1.40. Иллюстрация терминов ABC


движитель затрат - характеристики входов и управлений работы ("Сырье", "Чертеж", рис. 1.40), которые влияют на то, как выполняется и как долго длится работа;

центры затрат, которые можно трактовать как статьи расхода.

При проведении стоимостного анализа в BPwin сначала задаются единицы измерения времени и денег. Для задания единиц измерения следует вызвать диалог Model Properties (меню Edit/Model Properties), закладка ABC Units (рис. 1.41).

Если в списке выбора отсутствует необходимая валюта (например, рубль), ее можно добавить. Символ валюты по умолчанию берется из настроек Windows. Диапазон измерения времени в списке Unit of measurment достаточен для большинства случаев - от секунд до лет.

Рис. 1.41. Настройка единиц измерения валюты и времени


Затем описываются центры затрат (cost centers). Для внесения центров затрат необходимо вызвать диалог Cost Center Editor (меню Edit/ABC Cost Centers (рис. 1.42).

Каждому центру затрат следует дать подробное описание в окне Definition. Список центров затрат упорядочен. Порядок в списке можно менять при помощи стрелок, расположенных справа от списка. Задание определенной последовательности центров затрат в списке, во-первых, облегчает последующую работу при присвоении стоимости работам, а во-вторых, имеет значение при использовании единых стандартных отчетов в разных моделях. Хотя, как было указано в 1.2.5, BPwin сохраняет информацию о стандартном отчете в файле BPWINRPT.INI, информация о центрах затрат и UDP сохраняется в виде указателей, т. е. хранятся не названия центров затрат, а их номера. Поэтому, если нужно использовать один и тот же стандартный отчет в разных моделях, списки центров затрат должны быть в них одинаковы.

Рис. 1.42. Диалог Cost Center Editor


Для задания стоимости работы (для каждой работы на диаграмме декомпозиции) следует щелкнуть правой кнопкой мыши по работе и на всплывающем меню выбрать Cost Editor (рис. 1.43). В диалоге Activity Cost указывается частота проведения данной работы в рамках общего процесса (окно Frequency) и продолжительность (Duration). Затем следует выбрать в списке один из центров затрат и в окне Cost задать его стоимость. Аналогично назначаются суммы по каждому центру затрат, т. е. задается стоимость каждой работы по каждой статье расхода. Если в процессе назначения стоимости возникает необходимость внесения дополнительных центров затрат, диалог Cost Center Editor вызывается прямо из диалога Activity Cost соответствующей кнопкой.

Рис. 1.43. Задание стоимости работ в диалоге Activity Cost


Общие затраты по работе рассчитываются как сумма по всем центрам затрат. При вычислении затрат вышестоящей (родительской) работы сначала вычисляется произведение затрат дочерней работы на частоту работы (число раз, которое работа выполняется в рамках проведения родительской работы), затем результаты складываются. Если во всех работах модели включен режим Compute from Decompositions, подобные вычисления автоматически проводятся по всей иерархии работ снизу вверх (рис. 1.44).

Рис. 1.44. Вычисление затрат родительской работы


Этот достаточно упрощенный принцип подсчета справедлив, если работы выполняются последовательно. Встроенные возможности BPwin позволяют разрабатывать упрощенные модели стоимости, которые тем не менее оказываются чрезвычайно полезными при предварительной оценке затрат. Если схема выполнения более сложная (например, работы производятся альтернативно), можно отказаться от подсчета и задать итоговые суммы для каждой работы вручную (Override Decompositions). В этом случае результаты расчетов с нижних уровней декомпозиции будут игнорироваться, при расчетах на верхних уровнях будет учитываться сумма, заданная вручную. На любом уровне результаты расчетов сохраняются независимо от выбранного режима, поэтому при выключении опции Override Decompositions расчет снизу вверх производится обычным образом.

Для проведения более тонкого анализа можно воспользоваться специализированным средством стоимостного анализа EasyABC (ABC Technology, Inc.). BPwin имеет двунаправленный интерфейс с EasyABC. Для экспорта данных в EasyABC следует выбрать пункт меню File/Export/Node Tree , задать в диалоге Export Node Tree необходимые настройки и экспортировать дерево узлов в текстовый файл (.txt). Файл экспорта можно импортировать в EasyABC. После проведения необходимых расчетов результирующие данные можно импортировать из EasyABC в BPwin. Для импорта нужно выбрать меню File/Import/Costs и в диалоге Import Activity Costs выбрать необходимые установки.

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

Внешний осмотр - стоимость 50 руб.;

Пробное включение - стоимость 150 руб.;

Испытание на стенде - стоимость 300 руб.

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

300 руб. (Испытание на стенде)*8 +150 руб. (Пробное включение) *4 +

50 руб. (Внешний осмотр) *2 = 3100 руб.

Если проводить работы в возрастающем по стоимости порядке, то стоимость, затраченная на получение готового изделия составит:

50 руб. (Внешний осмотр) *8 +150 руб. (Пробное включение) *4 + + 300 руб. (Испытание на стенде) *2 = 1600 руб.

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

Рис. 1.45. Фрагмент диаграммы декомпозиции работы "Контроль качества"


Результаты стоимостного анализа наглядно представляются на специальном отчете BPwin - Activity Cost Report (меню Report/Activity Cost Report). Отчет позволяет документировать имя, номер, определение и стоимость работ, как суммарную, так и раздельно по центрам затрат (рис. 1.46).

Рис. 1.46. Диалог настройки отчета по стоимости работ


Результаты отображаются и непосредственно на диаграммах. В левом нижнем углу прямоугольника работы может показываться либо стоимость (по умолчанию), либо продолжительность, либо частота проведения работы. Настройка отображения осуществляется в диалоге Model Properties (меню Edit/Model Properties), закладка Display, ABC Data, ABC Units.

АВС позволяет оценить стоимостные и временные характеристики системы. Если стоимостных показателей недостаточно, имеется возможность внесения собственных метрик - свойств, определенных пользователем (User Defined Properties, UDP). UDP позволяют провести дополнительный анализ, хотя и без суммирующих подсчетов.

Для описания UDP служит диалог User-Defined Property Name Editor (меню Edit/UDP Definition) (рис. 1.47). В верхнем окне диалога вносится имя UDP, в списке выбора Datatype описывается тип свойства. Имеется возможность задания 18 различных типов UDP, в том числе управляющих команд и массивов, объединенных по категориям. Для внесения категории следует задать имя категории в окне New Category/Member и щелкнуть по кнопке Add Category. Для присвоения свойства категории необходимо выбрать UDP из списка, затем категорию из списка категорий и щелкнуть по кнопке Update. Одна категория может объединять несколько свойств, в то же время одно свойство может входить в несколько категорий. Свойство типа List может содержать массив предварительно определенных значений. Для определения области значений UDP типа List следует задать значение свойства в окне New Category/Member и щелкнуть по кнопке Add Member. Значения из списка можно редактировать и удалять.

Рис. 1.47. Диалог описания UDP


Например, категория "Загрязнение окружающей среды" может объединять свойство "загрязнение воды" типа Real Number и свойство "загрязнение воздуха" типа Integer List с предварительно определенной областью значений (1, 2, 3, 4, 5).

Каждой работе можно поставить в соответствие набор UDP. Для этого следует щелкнуть правой кнопкой мыши по работе и выбрать пункт меню UDP Editor. В закладке UDP Values диалога IDEF0 Activity Properties можно задать значения UDP. Свойства типа List отображаются списком выбора, который заполнен предварительно определенными значениями. Свойства типа Command могут иметь в качестве значения командную строку, которая выполняется при нажатии на кнопку!!!. Например, свойство "Спецификации" категории "Дополнительная документация" может иметь значение "C:\MSOffice97\Office\WINWORD.EXE sped.doc".

Кнопка Categories служит для задания фильтра по категориям UDP. По умолчанию в списке показываются свойства всех категорий,

Результат задания проанализировать в отчете Diagram Object Report (меню Report/Diagram Object Report) (рис. 1.48).

Рис. 1.48. Диалог настройки отчета Diagram Object Report


В левом нижнем углу диалога настройки отчета показывается список UDP. С помощью кнопки Activity Categories можно установить фильтр по категориям.


1.5. Дополнение созданной модели процессов диаграммами DFD и Workflow (IDEF3)

1.5.1. Диаграммы потоков данных (Data Flow Diagramming)


Диаграммы потоков данных (Data flow diagramming, DFD) используются для описания документооборота и обработки информации. Подобно IDEF0, DFD представляет модельную систему как сеть связанных между собой работ. Их можно использовать как дополнение к модели IDEF0 для более наглядного отображения текущих операций документооборота в корпоративных системах обработки информации. DFD описывает:

функции обработки информации (работы);

документы (стрелки, arrow), объекты, сотрудников или отделы, которые учавствуют в обработке информации;

таблицы для хранения документов (хранилище данных, data store).

В Bpwin для построения диаграмм потоков данных используется нотация Гейна-Сарсона.

Для того чтобы дополнить модель IDEF0 диаграммой DFD, нужно в процессе декомпозиции в диалоге Activity Box Count “кликнуть” по радио-кнопке DFD. В палитре инструментов на новой диаграмме DFD появляются новые кнопки:

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

Рис. 1.49. Пример диаграммы DFD


В отличие от стрелок IDEF0, которые представляют собой жесткие взаимосвязи, стрелки DFD показывают, как объекты (включая данные) двигаются от одной работы к другой. Это представление потоков совместно с хранилищами данных и внешними сущностями делает модели DFD более похожими на физические характеристики системы - движение объектов (data flow), хранение объектов (data stores), поставка и распространение объектов (external entities) (рис. 1.49).

В отличие от IDEF0, где система рассматривается как взаимосвязанные работы, DFD рассматривает систему как совокупность предметов. Контекстная диаграмма часто включает работы и внешние ссылки. Работы обычно именуются по названию системы, например "Система обработки информации". Включение внешних ссылок в контекстную диаграмму не отменяет требования методологии четко определить цель, область и единую точку зрения на моделируемую систему.

Работы. В DFD работы представляют собой функции системы, преобразующие входы в выходы. Хотя работы изображаются прямоугольниками со скругленными углами, смысл их совпадает со смыслом работ IDEF0 и IDEF3. Так же как работы IDEF3, они имеют входы и выходы, но не поддерживают управления и механизмы, как IDEF0.

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

Стрелки (Потоки данных). Стрелки описывают движение объектов из одной части системы в другую. Поскольку в DFD каждая сторона работы не имеет четкого назначения, как в IDEF0, стрелки могут подходить и выходить из любой грани прямоугольника работы. В DFD также применяются двунаправленные стрелки для описания диалогов типа "команда-ответ" между работами, между работой и внешней сущностью и между внешними сущностями (рис. 1.50).

Рис. 1.50. Внешняя сущность


Хранилище данных. В отличие от стрелок, описывающих объекты в движении, хранилища данных изображают объекты в покое (рис. 1.51).

Рис. 1.51. Хранилище данных


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

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

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

Альтернативным подходом является подход, популярный при создании программного обеспечения, называемый событийным разделением (event partitioning), в котором различные диаграммы DFD выстраивают модель системы. Во-первых, логическая модель строится как совокупность работ и документирования того, что они (эти работы) должны делать.

Затем модель окружения (environment model) описывает систему как объект, взаимодействующий с событиями из внешних сущностей. Модель, окружения обычно содержит описание цели системы, одну контекстную диаграмму и список событий. Контекстная диаграмма содержит один прямоугольник работы, изображающий систему в целом, и внешние сущности, с которыми система взаимодействует.

Наконец, модель поведения (behavior model) показывает, как система обрабатывает события. Эта модель состоит из одной диаграммы, в которой каждый прямоугольник изображает каждое событие из модели окружения. Хранилища могут быть добавлены для моделирования данных, которые необходимо запоминать между событиями. Потоки добавляются для связи с другими элементами, и диаграмма проверяется с точки зрения соответствия модели окружения.

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

Нумерация объектов. В DFD номер каждой работы может включать префикс, номер родительской работы (А) и номер объекта. Номер объекта -это уникальный номер работы на диаграмме. Например, работа может иметь номер А.12.4. Уникальный номер имеют хранилища данных и внешние сущности независимо от их расположения на диаграмме. Каждое хранилище данных имеет префикс D и уникальный номер, например D5. Каждая внешняя сущность имеет префикс Е и уникальный номер, например Е5.


1.5.2. Метод описания процессов IDEF3


Наличие в диаграммах DFD элементов для описания источников, приемников и хранилищ данных позволяет более эффективно и наглядно описать процесс документооборота. Однако для описания логики взаимодействия информационных потоков более подходит IDEF3, называемая также workflow diagramming - методологией моделирования, использующая графическое описание информационных потоков, взаимоотношений между процессами обработки информации и объектов, являющихся частью этих процессов. Диаграммы Workflow могут быть использованы в моделировании бизнес-процессов для анализа завершенности процедур обработки информации. С их помощью можно описывать сценарии действий сотрудников организации, например последовательность обработки заказа или события, которые необходимо обработать за конечное время. Каждый сценарий сопровождается описанием процесса и может быть использован для документирования каждой функции.

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

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

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

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

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

Диаграммы. Диаграмма является основной единицей описания в IDEF3. Важно правильно построить диаграммы, поскольку они предназначены для чтения другими людьми (а не только автором).

Единицы работы - Unit of Work (UOW). UOW, также называемые работами (activity), являются центральными компонентами модели. В IDEF3 работы изображаются прямоугольниками с прямыми углами и имеют имя, выраженное отглагольным существительным, обозначающим процесс действия, одиночным или в составе фразы, и номер (идентификатор); другое имя существительное в составе той же фразы обычно отображает основной выход (результат) работы (например, "Изготовление изделия"). Часто имя существительное в имени работы меняется в процессе моделирования, поскольку модель может уточняться и редактироваться. Идентификатор работы присваивается при создании и не меняется никогда. Даже если работа будет удалена, ее идентификатор не будет вновь использоваться для других работ. Обычно номер работы состоит из номера родительской работы и порядкового номера на текущей диаграмме.

Связи. Связи показывают взаимоотношения работ. Все связи в IDEF3 однонаправлены и могут быть направлены куда угодно, но обычно диаграммы IDEF3 стараются построить так, чтобы связи были направлены слева направо. В IDEF3 различают три типа стрелок, изображающих связи, стиль которых устанавливается через меню Edit/Arrow Style:

Старшая (Precedence) - сплошная линия, связывающая единицы работ (UOW). Рисуется слева направо или сверху вниз. Показывает, что работа-источник должна закончиться прежде, чем работа-цель начнется.

Отношения (Relational Link)

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

Потоки объектов (Object Flow)

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

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

Отношение показывает, что стрелка является альтернативой старшей стрелке или потоку объектов в смысле задания последовательности выполнения работ - работа-источник не обязательно должна закончиться, прежде чем работа-цель начнется. Более того, работа-цель может закончиться прежде, чем закончится работа-источник (рис. 1.52).

Рис. 1.52. Временная диаграмма выполнения работ


Перекрестки (Junction). Окончание одной работы может служить сигналом к началу нескольких работ, или же одна работа для своего запуска может ожидать окончания нескольких работ. Перекрестки используются для отображения логики взаимодействия стрелок при слиянии и разветвлении или для отображения множества событий, которые могут или должны быть завершены перед началом следующей работы. Различают перекрестки для слияния (Fan-in Junction) и разветвления (Fan-out Junction) стрелок. Перекресток не может использоваться одновременно для слияния и для разветвления. Для внесения перекрестка служит кнопка - (добавить в диа-1рамму перекресток -Junction) в палитре инструментов. В диалоге Junction Type Editor необходимо указать тип перекрестка.

Смысл каждого типа приведен в табл. 1.4.


Таблица 1.4. Типы перекрестков

Обозначение Наименование Смысл в случае слияния стрелок (Fan-in Junction) Смысл в случае разветвления стрелок (Fan-oat Junction)
Asynchronous AND Все предшествующие процессы должны быть завершены Все следующие процессы должны быть запущены
Synchronous AND Все предшествующие процессы завершены одновременно Все следующие процессы запускаются одновременно
Asynchronous OR Один или несколько предшествующих процессов должны быть завершены Один или несколько следующих процессов должны быть запущены
Synchronous OR Один или несколько предшествующих процессов завершены одновременно Один или несколько следующих процессов запускаются одновременно
XOR Только один предшествующий процесс завершен Только один следующий процесс запускается
(Exclusive OR)

Все перекрестки на диаграмме нумеруются, каждый номер имеет префикс J. Можно редактировать свойства перекрестка при помощи диалога Definition Editor. В отличие от IDEF0 и DFD в IDEF3 стрелки могут сливаться и разветвляться только через перекрестки.

-(добавить в диаграмму объект ссылки - Referent) в палитре инструментов. Объект ссылки изображается в виде прямоугольника, похожего на прямоугольник работы. Имя объекта ссылки задается в диалоге Referent (пункт всплывающего меню Name Editor), в качестве имени можно использовать имя какой-либо стрелки с других диаграмм или имя сущности из модели данных. Объекты ссылки должны быть связаны с единицами работ или перекрестками пунктирными линиями. Официальная спецификация IDEF3 различает три стиля объектов ссылок - безусловные (unconditional), синхронные (synchronous) и асинхронные (asynchronous). BPwin поддерживает только безусловные объекты ссылок. Синхронные и асинхронные объекты ссылок, используемые в диаграммах переходов состояний объектов, не поддерживаются.


При внесении объектов ссылок помимо имени следует указывать тип объекта ссылки. Типы объектов ссылок приведены в табл. 1.5.


Таблица 1.5. Типы объектов ссылок

Тип объекта ссылки Цель описания
OBJECT Описывает участие важного объекта в работе
GOTO Инструмент циклического перехода (в повторяющейся последовательности работ), возможно на текущей диаграмме, но не обязательно. Если все работы цикла присутствуют на текущей диаграмме, цикл может также изображаться стрелкой, возвращающейся на стартовую работу. ; GOTO может ссылаться на перекресток
UOB (Unit of behavior) . Применятся, когда необходимо подчеркнуть множественное использование какой-либо работы, но без цикла. Например, работа "Контроль качества" может быть использована в Процессе "Изготовления изделия" несколько раз, после каждой единичной операции. Обычно этот тип ссылки не используется для моделирования автоматически запускающихся работ
NOTE Используется для документирования важной информации, относящейся к каким-либо графическим объектам на диаграмме. NOTE является альтернативой внесению текстового объекта в диаграмму
ELAB (Elaboration) Используется для усовершенствования графиков или их более детального описания. Обычно употребляется для детального описания разветвления и слияния стрелок на перекрестках

Декомпозиция работ. В IDEF3 декомпозиция используется для детализации работ. Методология IDEF3 позволяет декомпозировать работу многократно, т. е. работа может иметь множество дочерних работ. Это позволяет в одной модели описать альтернативные потоки. Возможность множественной декомпозиции предъявляет дополнительные требования к нумерации работ. Так, номер работы состоит из номера родительской работы, версии декомпозиции и собственного номера работы на текущей диаграмме (рис. 1.54).

Рис. 1.54. Номер единицы работы (VOW)


Рассмотрим процесс декомпозиции диаграмм IDEF3, включающий взаимодействие автора (аналитика) и одного или нескольких экспертов предметной области.

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

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

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

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

Поскольку разные фрагменты модели IDEF3 могут быть созданы разными группами аналитиков в разное время, IDEF3 поддерживает простую схему нумерации работ в рамках всей модели. Разные аналитики оперируют разными диапазонами номеров, работая при этом независимо. Пример выделения диапазона приведен в табл.1.6.


Таблица 1.6. Диапазоны номеров работ


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

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

В результате дополнения диаграмм IDEF0 диаграммами DFD и IDEF3 может быть создана смешанная модель, которая наилучшим образом описывает все стороны деятельности предприятия (рис. 1.55). Иерархию работ в смешанной модели можно увидеть в окне Model Explorer. Работы в нотации IDEF0 изображаются зеленым цветом, IDEF3 - желтым, DFD - синим.

Рис. 1.55. Представление смешанной модели в окне Model Explorer


1.5.3. Имитационное моделирование


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

Рис. 1.56. Пример имитационной модели


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

Рис. 1.57. Фрагмент диаграммы IDEF3, соответствующий имитационной модели с рис. 1.56


Имитационная модель включает следующие основные элементы:

Источники и цели (Bourses и Destinations). Источники - это элементы, от которых в модель поступает информация или объекты. По смыслу они близки к понятиям "внешняя ссылка" на DFD-диаграМмах или "объект ссылки" на диаграммах IDEF3. Скорость поступления данных или объектов от источника обычно задается статистической функцией. Цель - это устройство для приема информации или объектов.

Очереди (Queues). Понятие очереди близко к понятию хранилища данных на DFD-диаграммах - это место, где объекты ожидают обработки. Времена обработки объектов (производительность) в разных работах могут быть разными (например, "Загрузка из бункера", "Наполнение", "Закупорка", см. рис. 1.56, 1.57). В результате перед некоторыми работами могут накапливаться объекты, ожидающие своей очереди. Часто целью имитационного моделирования является минимизация количества объектов в очередях. Тип очереди в имитационной модели может быть конкретизирован. Очередь может быть похожа на стек - пришедшие последними в очередь объекты первыми отправляются на дальнейшую обработку (LIFO: last-in-first-out). Альтернативой стеку может быть последовательная обработка, когда первыми на дальнейшую обработку отправляются объекты, пришедшие первыми (FIFO: first -in-first-out). Могут быть заданы и более сложные алгоритмы обработки очереди.

Оборудование (Facilities). Оборудование - это аналог работ в модели процессов. В имитационной модели может быть задана производительность оборудования.

BPwin не имеет собственных инструментов, позволяющих создавать имитационные модели, однако можно экспортировать модель IDEF3 в специализированное средство создания таких моделей - BPSimulator 3.0 (производитель - Systems Modeling Corporation, http://www.sm.com).

Для экспорта модели в BPSimulator необходимо настроить ODBC-источник и подготовить модель к экспорту. Для подготовки модели необходимо настроить свойства, определяемые пользователем UDP, специально включенные в BPwin для целей экспорта. Соответствующие UDP описаны в файле sinudps.bpl, который находится в директории samples/bpsim и является шаблоном модели, предназначенной для экспорта. Для использования этих свойств необходимо слить словари модели - шаблона sinudps.bpl и текущей модели. Задание соответствующих UDP (диалог IDEF3 Activity Properties, закладка UDP Values, см. рис. 1.58) позволяет автоматически установить значения и свойства объектов имитационной модели в BPSimulator.

Рис. 1.58. Диалог задания свойств, определяемых пользователем для экспорта в BPSimulator


Для экспорта модели IDEF3 в BPSimulator следует выбрать меню File/Export/в BPSimulator. Экспорт осуществляется через файл MS Excel (.xls). Для импорта данных в BPSimulator необходимо открыть новую модель и импортировать соответствующий файл.

Для того, чтобы написать название процесса, функции или задачи, выполняемой проектируемой системой нужно два раза щелкнуть мышкой по первому функциональному блоку с номером А0, поя-вившемуся после создания новой модели. После чего появится диа-логовое окно Activity Properties, где будет предложено написать на-звание функционального блока (Рис.7).

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

Рис.7.Окно свойств функционального блока 9

Также в этом диалоговом окне можно установить вид, стиль и размер шрифта надписи функционального блока, используя вкладку Font. Для функциональной декомпозиции этого блока следует перейти в область модели, встать на появившееся название первого функционального блока и вызвать меню по нажатию правой кнопки мышки (Рис.8).

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

Допустимый интервал числа функций 3-6. Число блоков на диаграмме в дальнейшем можно будет изменить (добавить недостающие или удалить лишние).

Рис.9. Выбор количества функциональных блоков 10

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

Рис.10. Первый уровень декомпозиции

Функциональные блоки второго уровня декомпозиции имеют номера А1, А2, А3, А4, А5. При декомпозиции каждого из них бло-ки на следующем уровне декомпозиции будут иметь номера соот-ветственно А11, А12, А21, А22, А31, А32 и т.д. в зависимости от номера декомпозируемого функционального блока.

2. Работа со стрелками

Стрелки представляют собой некую информацию и именуются существительными.

В основе методологии IDEF0 лежат следующие правила:

    функциональный блок (функция) преобразует Входы в Выходы (т.е. входную информацию в выходную), Управление определяет, когда и как это преобразование может или должно произойти Исполнители (механизм) непосредственно осуществляют это преобразование (Рис.11);

    с дугами связаны надписи (или метки) на естественном языке, описывающие данные, которые они представляют;

    дуги показывают, как функции между собой взаимосвязаны, как они обмениваются данными и осуществляют управление друг другом;

    выходы одной функции могут быть Входами, Управлением или Исполнителями для другой;

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

Рис.11. Виды связей в функциональной модели

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

Чтобы создать стрелку входа следует подвести курсор к левой стороне рабочей области, пока не появится черная полоса, затем щелкнуть по этой полосе и подвести курсор к функциональному блоку с правой стороны пока не появится черная стрелка затем щелкнуть по ней (Рис.12).

Рис.12. Пример создания стрелок

Аналогично рисуются стрелки выхода, управления и исполнения функции. Для того, чтобы назвать стрелку необходимо дважды по ней щелкнуть, в результате появится диалоговое окно Arrow Properties, где в поле Arrow Name следует ввести название стрелки (Рис.13).

Рис.13. Окно создания названий стрелок

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

Рис.14. Пример несвязных стрелок

Для связывания стрелок с функциональными блоками следует сначала щелкнуть по наконечнику стрелки, а затем по соответст-вующему сегменту функционального блока (сверху – если связывается стрелка, обозначающая «управление», снизу – если связывается стрелка исполнения (механизма) функции и т.д.). Стрелки, появляющиеся на каком-то определенном уровне де-композиции и служащие для связи между функциональными блоками называются внутренними. Для того, чтобы нарисовать внутреннюю стрелку следует щелкнуть по выходу одного, а затем по входу другого функционального блока (Рис.15).

Рис.15. Пример внутренних стрелок

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

Рис.16. Пример неразрешенных стрелок

Стрелки, нарисованные на диаграмме декомпозиции нижнего уровня изображаются в квадратных скобках (Рис.16) и не появляются на диаграмме верхнего уровня. Такие стрелки называются неразрешенными и воспринимаются программой как синтаксическая ошибка. Следует либо перетащить эту стрелку на верхний уровень диаграммы, либо затоннелировать стрелку и тогда она не будет восприниматься как ошибка и не попадет на другую диаграмму. Для этого следует щелкнуть по квадратным скобкам неразрешен-ной стрелки правой кнопкой мышки и вызвать диалоговое окно, показанное на рисунке 17 и выбрать пункт Arrow Tunnel.

Рис.17. Окно редактирования стрелок

Если Вы хотите, чтобы новая стрелка попала «наверх», следу-ет выбрать пункт меню Resolve it to border arrow. Если же Вы хоти-те оставить стрелку только на текущем уровне диаграммы, тогда следует выбрать пункт меню Change it to resolved rounded tunnel. Тоннельная стрелка изображается с круглыми скобками.

CA ERwin Data Modeler
Тип CASE
Разработчик Computer Associates
Операционная система Windows
Последняя версия CA ERwin Data Modeler 9 (16 октябрь 2012)
Лицензия Shareware , $3900
Сайт erwin.com/products/data-…

AllFusion ERwin Data Modeler (ранее ERwin ) - CASE -средство для проектирования и документирования баз данных , которое позволяет создавать, документировать и сопровождать базы данных, хранилища и витрины данных. Модели данных помогают визуализировать структуру данных, обеспечивая эффективный процесс организации, управления и администрирования таких аспектов деятельности предприятия, как уровень сложности данных, технологий баз данных и среды развертывания.

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

AllFusion ERwin Data Modeler (ERwin) позволяет наглядно отображать сложные структуры данных. Удобная в использовании графическая среда системы упрощает разработку базы данных и автоматизирует множество трудоёмких задач, уменьшая сроки создания высококачественных и высокопроизводительных транзакционных баз данных и хранилищ данных. Продукт улучшает коммуникацию организации, обеспечивая совместную работу администраторов и разработчиков баз данных, многократное использование модели, а также наглядное представление комплексных активов данных в удобном для понимания и обслуживания формате.

История развития

Программы ERwin, BPwin и OOwin были разработаны компанией Logic Works . Название BPwin сложилось из сокращения BP (англ. business process ) и суффикса win , отражавшего ориентацию на графические операционные системы.

В 1998 году компания Logic Works была поглощена фирмой Platinum Technology . Та в свою очередь, всего через год, в 1999 году была куплена Computer Associates (CA).

Значительного успеха на рынке достигла версия программы BPwin 4.0, которая была выпущена на стыке XX и XXI веков.

Последняя версия программного обеспечения получила название CA ERwin Process Modeler 7.3 и вошла в объединённый пакет CA ERwin Modeling Suite .

В России от версии к версии издаются книги по работе с программой и CASE-технологиям. Этой тематике были посвящены книги следующих авторов: Д. Марка, С. Маклакова, А. Вендрова, Г. Калянова, В. Дубейковского.

Критика

Программное решение BPwin вызывает серьёзные нарекания многих пользователей. Основным недостатком является отсутствие развития функциональности, позволяющей переносить спроектированные процессы в среду исполнения. Также нарекание вызывает неудобство интерфейса - отсутствие отмены/повтора, сложность поиска способа выполнения многих простых операций.