В отличие от методологии IDEF0, рассматривающей систему как множество взаимопересекающихся действий, в названиях объектов
DFD-диаграмм преобладают имена существительные. Контекстная
DFD-диаграмма часто состоит из одного функционального блока и нескольких внешних сущностей. Функциональный блок на этой диаграмме обычно имеет имя, совпадающее с именем всей системы (рисунок 23).
Рисунок 23 – Контекстная DFD-диаграмма
Функциональный блок DFD моделирует некоторую функцию, которая преобразует какое-либо сырье в какую-либо продукцию (или, в терминах IDEF, вход в выход). Хотя функциональные блоки DFD и изображаются в виде прямоугольников с закругленными углами, они почти идентичны функциональным блокам IDEF0 и действиям IDEF3. Как и действия IDEF3, функциональные блоки DFD имеют входы и выходы, но не имеют управления и механизма исполнения как IDEF0.
В то время, как потоки данных представляют объекты в процессе их передвижения, хранилища данных моделируют их во всех ос
тальных состояниях. При моделировании производственных систем хранилищами данных служат места временного складирования, где хранится продукция на промежуточных стадиях обработки. В информационных системах хранилища данных представляют любой механизм, который поддерживает хранение данных для их промежуточной обработки. На рисунке 25 приведен пример обозначения хранилищ данных на DFD-диаграмме.Стрелки описывают передвижение (поток) объектов от одной части системы к другой. Поскольку все стороны обозначающего функциональный блок DFD прямоугольника равнозначны, стрелки могут начинаться и заканчиваться в любой части блока. В DFD также используются двунаправленные стрелки, которые нужны для отображения взаимодействия между блоками. Стрелки на DFD-диаграммах могут быть разветвлены или объединены, и при этом каждый получившийся сегмент может быть переименован таким образом, чтобы показать декомпозицию данных, переносимых рассматриваемым потоком.
Диаграммы DFD можно строить с использованием подхода, аналогичного структурному методу анализа и проектирования, применяемому в IDEF0. Вначале строится модель физической реализации реальной системы, которая используется пользователями в настоящее время. Затем создается логическая модель текущего состояния системы для моделирования основных требований существующей системы. После этого создается новая логическая модель для отражения основных параметров предлагаемой разрабатываемой системы. Наконец, создается новая физическая модель, реализующая логическую модель новой системы.
В настоящее время при разработке информационных систем завоевывает все большую популярность альтернативный подход, известный как разделение событий, в котором для моделирования системы строится несколько моделей DFD. Вначале строится логическая модель, отображающая систему как набор действий и описывающая, что должна делать система.
Затем строится модель окружения, описывающая систему как объект, отвечающий на события, порождаемые внешними сущностями. Такая модель обычно состоит из описания назначения системы, одной диаграммы контекстного уровня и списка событий. Контекстная диаграмма содержит один функциональный блок, представляющий систему в целом, и внешние сущности (окружения), с которыми система взаимодействует.
На заключительном этапе создается модель поведения, показывающая, как система обрабатывает те или иные события. Эта модель начинается с единственной диаграммы с одним функциональным блоком на каждый ответ системы на событие, описанное в модели окружения. Хранилища данных в модели поведения используются для моделирования данных, которые должны сохраняться в промежутках между обработкой событий.
В DFD каждый номер функционального блока может включать в себя префикс, номер родительской диаграммы и собственно номер объекта (рисунок 26). Номер объекта уникальным образом идентифицирует функциональный блок на диаграмме. Номер родительской диаграммы и номер объекта в совокупности обеспечивают уникальную идентификацию каждого блока модели.
Уникальные номера присваиваются также каждому хранилищу данных и каждой внешней сущности вне зависимости от расположения объекта на диаграмме.
Рисунок 26 – Компоненты номера функционального блока DFD
Итак, диаграммы потоков данных (DFD) обеспечивают удобный способ описания передаваемой информации как между частями моделируемой системы, так и между системой и внешним миром. Это качество определяет область применения DFD - они используются для создания моделей информационного обмена организации, например, моделей документооборота. Кроме того, различные вариации DFD широко применяются при построении корпоративных информационных систем.
Цель: выполнить первичное описание модели, определить цель, точку зрения, границы, создать контекстную диаграмму A-0 и диаграмму ее декомпозиции A0.
5.1.1 Порядок выполнения работы
5.1.1.1 Получить у преподавателя IDEF0-модель, которая будет воссоздаваться в течение работы.
5.1.1.2 Запустить BPWin.
5.1.1.3 Создать новую модель File New Model. После этого откроется контекстная диаграмма A-0, содержащая единственный IDEF0-блок A0. Этот блок A0 изображает функцию всей описываемой системы в целом.
Описать систему, построить ее модель – значит выполнить декомпозиции блока A0 с необходимой степенью детализации. Декомпозиция проводится по правилам методологии IDEF0: каждый блок-функция представляется диаграммой, содержащей набор взаимосвязанных блоков-функций, описывающих работу родительского блока. Однако, стратегия декомпозиции (неформальная часть методологии) определяется основными параметрами модели: целью моделирования, точкой зрения и границами модели, которые определяет аналитик – разработчик модели.
5.1.1.4 Определить параметры модели.
Чтобы построить правильную IDEF-модель, необходимо в первую очередь сформулировать и указать цель моделирования (Purpose), границы (Scope) и точку зрения (Viewpoint). Эти важнейшие параметры могут модифицироваться в процессе работы, однако работать над моделью без их определения крайне неэффективно и малорезультативно, т.е. аналитик всегда должен четко знать цель, границы модели и точку зрения, актуальные на данный момент. Чтобы документировать эти параметры, необходимо воспользоваться редактором свойств контекстной диаграммы Editor Model Definition.
Этот редактор состоит из двух форм для ввода информации о модели:
1) «Project Name» – название проекта, для которого разрабатывается модель;
2) «Definition» – определение модели;
3) «Scope» – «границы» модели;
4) «Viewpoint» – точка зрения;
5) «Status» – степень завершенности модели (начинают с «Wor-king»);
Эта информация будет отображаться на IDEF-бланке.
6) «Time frame» – если описывается система «как есть», нужно выбрать «AS-IS», если же описывается желаемое в будущем состоянии системы, то «TO-BE»;
7) «Model Name» – название модели;
8) Кнопка «More...» позволяет увидеть второй экран редактора;
9) «Purpose» – цель построения модели;
10) «Source» – источники информации для модели;
11) «Author name» и «Initials» – имя и инициалы автора проекта.
Цель и точка зрения должны быть написаны в левом нижнем углу контекстной диаграммы. Для этого после того, как введена информация в редактор «Model definition», нужно выбрать инструмент Т (Text tool), указать место на диаграмме, где будет размещаться текст. Появится диалоговое окно, предлагающее ввести текст для отображения (normal text block) или показать цель (purpose), или точку зрения (viewpoint).