Взаимосвязь моделей IDEFO и IDEF3
Обычно IDEF3 используется для детализации функциональных блоков IDEF0, не имеющих диаграмм декомпозиции IDEF0.
Рассмотрим пример. Пусть на диаграмме IDEF0 есть функциональный блок «Обработка операций с пластиковыми картами». При работе с пластиковой картой клиент не производит всех доступных ему при этом действий. Например, при оплате покупки не производится снятие наличных, при проверке баланса не изменяется состояние счета и т.п. Мы можем декомпозировать функциональный блок «Обработка операций с пластиковыми картами», создав дополнительные блоки для оплаты покупок, снятия наличных, проверки баланса и т.п. Вместо этого можно создать модели IDEF3 для каждого из этих действий.
Структурный анализ потоков данных
Рассмотрим основы методологии структурного анализа потоков данных.
Сущность структурного анализа потоков данных
Методология DFD (DFD — Data Flow Diagrams) или диаграмм потоков данных это методология описания системы позволяющая отражать такие характеристики, как движение объектов (потоки данных), хранение объектов (хранилища данных), источники и потребители объектов (внешние сущности).
Методология DFD является основным средством моделирования функциональных требований к проектируемой системе. С помощью DFD эти требования представляются в виде функциональных компонент (действий), связанных потоками данных. Главная цель такого представления - продемонстрировать, как каждый компонент преобразует свои входные данные в выходные, а также выявить отношения между этими процессами.
На рис. 5.25 приведены примеры диаграмм потоков данных. Стрелки в DFD показывают, как данные перемещаются от одного действия к другому.
Построение DFD-диаграмм в основном ассоциируется с разработкой ПО, поскольку нотация DFD изначально была разработана для этих целей.
Рис.5.25. Пример диаграмм DFD
Синтаксис и семантика диаграмм потоков данных
Функциональный блок DFD моделирует некоторую функцию. Функциональные блоки DFD изображаются в виде прямоугольников с округленными углами. Функциональные блоки DFD почти идентичны функциональным блокам IDEF0 и действиям IDEF3. Как и действия IDEF3, функциональные блоки DFD имеют входы и выходы, но не имеют управления и механизма исполнения, как IDEF0. В некоторых интерпретациях нотации
DFD механизмы исполнения IDEF0 моделируются как ресурсы и изображаются в нижней части прямоугольника (рис. 5.26).
Рис. 5.26. Функциональный блок DFD в нотации Гейна- Сарсона
Внешние сущности обеспечивают необходимые входы для системы и/или являются приемниками для ее выходов. Одна внешняя сущность может одновременно предоставлять входы (функционируя как поставщик) и принимать выходы (функционируя как получатель). Внешние сущности изображаются как прямоугольники (рис. 5.27).
Рис. 5.27. Обозначение внешней сущности
Нотация DFD включает обозначения для хранилищ данных. При моделировании производственных систем хранилищами данных служат места временного складирования, где хранится продукция. В информационных системах хранилища данных представляют любой механизм, который поддерживает хранение данных. На рис. 5.28 приведен пример обозначения хранилищ данных на DFD-диаграммах
Рис. 5.28. Обозначение хранилища данных на DFD-диаграмме
Стрелки описывают передвижение (поток) объектов от одной части системы к другой. Поскольку все стороны обозначающего функциональный блок DFD прямоугольника равнозначны (в отличие от IDEF0), стрелки могут начинаться и заканчиваться в любой части блока. В DFD также используются двунаправленные стрелки, которые нужны для отображения взаимодействия между блоками (рис. 5.29).
Рис. 5.29. Двунаправленный поток между блоком и внешней сущностью
Стрелки на DFD-диаграммах могут быть разбиты (разветвлены) на части, и при этом каждый получившийся сегмент может быть переименован таким образом, чтобы показать декомпозицию данных, переносимых данным потоком (рис. 5.30).
Рис. 5.30. Разветвление стрелки, иллюстрирующее декомпозицию данных
Рис. 5.31. Объединение потоков в один