Главное
Диаграмма потоков данных (DFD) показывает движение информации в системе с помощью четырех компонентов: внешних сущностей, процессов, накопителей данных и потоков данных.
Схемы DFD понятны как техническим, так и нетехническим специалистам, поэтому одинаково полезны маркетологам, бизнес-аналитикам и инженерам-программистам.
В отличие от блок-схемы, DFD не содержит потока управления, то есть в ней нет правил принятия решений, условий или циклов.
Уровни диаграмм потоков данных идут от Уровня 0 (контекстная диаграмма) к Уровню 1 и Уровню 2, добавляя детализацию на каждом этапе.
Логический DFD описывает, что делает система, а физический DFD — как система реализована или будет реализована.
Вы можете создать DFD онлайн с помощью редактора диаграмм потоков данных Lucidchart, вручную, с помощью Lucid AI или по готовому шаблону.
Когда вы создаете и оптимизируете системы в работе, диаграмма потоков данных (DFD) помогает визуализировать движение информации и выявить неэффективные участки. Она также позволяет согласовать между участниками понимание того, как на самом деле выполняются процессы.
В этом руководстве рассмотрены определение, история, символы, правила и уровни DFD. Вы также узнаете разницу между логическими и физическими DFD и о том, как создать диаграмму за считанные минуты.
Что такое диаграмма потоков данных?
Диаграмма потоков данных отражает движение информации в любом процессе или системе. В ней используются определенные символы (прямоугольники, круги, стрелки) и короткие текстовые метки. Вместе они показывают точки входа и выхода данных, места хранения и маршруты между ними.
Эффективный DFD позволяет наглядно передать то, что было бы сложно объяснить словами. Он подходит как для технической, так и для нетехнической аудитории — от разработчика до генерального директора. Диаграммы варьируются от простых набросков от руки до детальных многоуровневых схем.
Поскольку DFD делает поведение системы наглядным, команды используют его для диагностики причин сбоев и «узких мест».

История диаграмм потоков данных
Нотация DFD опирается на теорию графов и выросла из методов структурного анализа и проектирования середины 1970-х годов. Ларри Константин впервые предложил этот подход, опираясь на модели вычисления графов потоков данных Дэвида Мартина и Джеральда Эстрина.
Затем Эд Йордон популяризировал диаграммы потоков данных, и вместе с Константином подробно описал подход к структурному проектированию в их книге 1979 года «Structured Design». Концепция структурного проектирования и метод DFD получили широкое признание в программной инженерии и бизнесе.
Том ДеМарко, Крис Гейн и Триш Сарсон развили этот метод дальше. В различных сочетаниях они разработали символы и нотации, которые используются в DFD и по сей день.
Какие символы используются в DFD?
В DFD используются четыре основных компонента/символа: внешние сущности, процессы, накопители данных и потоки данных. Перед началом работы полезно ознакомиться со стандартными условными обозначениями диаграмм потоков данных, но имейте в виду, что нотация может незначительно отличаться в разных системах.

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

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

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

Поток данных: маршрут, по которому данные перемещаются между сущностями, процессами и накопителями; обозначается стрелкой с кратким названием данных, например «платежные реквизиты».
Правила создания DFD
Несколько правил помогают сохранить точность и читаемость DFD. Следуйте им, чтобы каждый элемент логически связывался с остальной частью системы.
Каждый процесс должен иметь как минимум один вход и один выход.
Каждый накопитель данных должен иметь хотя бы один входящий и один исходящий поток данных.
Данные, хранящиеся в системе, должны проходить через процесс.
Каждый процесс должен вести к другому процессу или накопителю данных.
В отличие от блок-схемы, DFD не имеет потока управления. В нем нет правил принятия решений, условий или циклов, поэтому он отражает перемещение данных, а не порядок выполнения шагов.
Каковы уровни диаграммы потоков данных?
Уровни диаграмм потоков данных нумеруются как 0, 1 и 2, а иногда расширяются до Уровня 3 и далее. Каждый уровень добавляет детализацию, переходя от беглого обзора к детальному представлению отдельных процессов.
DFD Уровень 0
Также называемый контекстной диаграммой, Уровень 0 показывает всю систему как один высокоуровневый процесс и его связи с внешними сущностями. Он дает заинтересованным сторонам быстрое общее представление.

DFD Уровень 1
Уровень 1 разбивает единый процесс на основные функции системы. Он показывает, как эти функции обмениваются данными друг с другом и с внешними сущностями.

DFD Уровень 2
Уровень 2 погружается на шаг глубже в элементы Уровня 1, детализируя подпроцессы внутри функции. Переход к Уровням 3 и 4 возможен, но встречается редко, а достаточно подробный DFD может помочь разработчикам в написании псевдокода.

Распространенные примеры и варианты применения диаграмм потоков данных
Примеры диаграмм потоков данных охватывают множество ролей, поскольку эта нотация подходит как для технической, так и для нетехнической работы. Диаграмма потоков данных в программной инженерии, например, отлично сочетается со специализированным ПО для создания диаграмм DFD.
Программная инженерия: моделирование того, как приложение обрабатывает, хранит и перемещает данные перед написанием кода.
Бизнес-анализ: документирование текущих процессов для выявления неэффективности и проектирования улучшенного будущего состояния.
Реинжиниринг бизнес-процессов: моделирование существующих рабочих процессов для их переработки и повышения производительности.
Гибкая разработка (Agile): предоставление кросс-функциональным командам общей визуальной основы при планировании.
Проектирование структуры системы: показ того, как компоненты обмениваются информацией в рамках крупной архитектуры.
В чем разница между DFD и UML?
DFD показывает, как данные перемещаются по системе, тогда как UML — это язык моделирования, используемый в объектно-ориентированном проектировании ПО для более детального структурного представления. Если в проекте применяется UML, роль DFD обычно берет на себя диаграмма деятельности (activity diagram).
В чем разница между логическим и физическим DFD?
Логический DFD показывает основные потоки данных, необходимые бизнесу для работы, независимо от технологий. Физический DFD показывает, как система реализована (или будет реализована), включая файлы, оборудование и программное обеспечение.

Сравнение логических и физических DFD помогает командам разделить бизнес-требования и техническую реализацию. Большинство проектов выигрывают от создания обоих вариантов.
Как создать диаграмму потоков данных?
Начните с шаблона, затем добавьте и соедините четыре основных компонента, пока диаграмма не станет отражать вашу систему. Вы можете создать ее онлайн за несколько минут и дорабатывать по мере погружения в детали.
Выберите начальный масштаб и уровень, начиная с контекстной диаграммы Уровня 0.
Добавьте внешние сущности, которые отправляют или получают данные.
Добавьте процессы, преобразующие эти данные.
Добавьте накопители данных, хранящие информацию для последующего использования.
Соедините все элементы подписанными потоками данных.
При необходимости детализируйте высокоуровневые процессы до Уровня 1 и Уровня 2.
Пошаговое руководство см. в полной инструкции о том, как создать диаграмму потоков данных.





