Діаграми потоків даних (Data Flow Diagrams)

Діаграми потоків даних (Data Flow Diagrams) показують, звідки надходять дані, які види діяльності обробляють дані, і чи зберігаються або використовуються вихідні результати іншою діяльністю або зовнішнім суб'єктом.

Діаграми потоків даних (Data Flow Diagrams) це одна з методик BABOK v3 (розділ 10.13)

Опис Діаграми потоків даних (Data Flow Diagrams) в BABOKv3 (10.13.2)

Діаграми потоків даних (Data Flow Diagrams) відображають перетворення даних. Вони корисні для зображення системи, заснованої на транзакціях, та ілюструють межі фізичної, логічної або ручної системи.

Діаграми потоків даних (Data Flow Diagrams) ілюструє рух і перетворення даних між зовнішніми об'єктами (сутностями) і процесами. Вихідні дані одного зовнішнього об'єкта або процесу є вхідними для іншого. Діаграма потоків даних також ілюструє тимчасові або постійні сховища (так звані сховища даних або термінатори), де дані зберігаються в системі або організації. Визначені дані повинні бути описані в Словнику даних (Data Dictionary).

Діаграми потоків даних (Data Flow Diagrams) можуть складатися з декількох рівнів абстракції. Діаграма найвищого рівня - це контекстна діаграма, яка представляє всю систему. Контекстні діаграми показують систему в цілому, як механізм перетворення із зовнішнім середовищем як джерелом або споживачем даних.

Рисунок 10.13.1: Нотація контекстної діаграми Гейна-Сарсона

Наступний рівень діаграм потоків даних - це діаграми рівня 1. Діаграми рівня 1 ілюструють процеси, пов'язані з системою, з відповідними вхідними даними, вихідними перетвореними даними та сховищами даних.

Малюнок 10.13.2: Діаграма 1-го рівня Нотація Йодана

Наступні рівні діаграми потоків даних (рівень 2, рівень 3 і так далі) розбивають основні процеси з діаграми рівня 1. Діаграми рівня 1 корисні для того, щоб показати внутрішній поділ роботи і дані, які циркулюють між розділами, а також збережені дані, що використовуються кожним з розділів. Кожен з розділів може бути декомпонований далі, якщо це необхідно. Зовнішні елементи залишаються незмінними, а додаткові потоки та сховища визначаються.

Логічні діаграми потоків даних представляють майбутній або основний стан - тобто, які перетворення повинні відбутися незалежно від поточних фізичних обмежень. Фізичні діаграми потоків даних моделюють всі сховища даних, принтери, форми, пристрої та інші прояви даних. Фізична діаграма може показувати як поточний стан, так і те, як він буде реалізований.

Елементи Діаграми потоків даних (Data Flow Diagrams) в BABOKv3 (10.13.3)

Зовнішні сутності (сутність, джерело, одержувач) / Externals (Entity, Source, Sink)

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

Зовнішній - це об'єкт, який знаходиться за межами системи, що аналізується.

Зовнішні об'єкти є джерелами та/або пунктами призначення (поглиначами) даних. Кожен екстернал повинен мати принаймні один потік даних, що йде до нього або виходить від нього. Зовнішні об'єкти зображуються за допомогою іменника в прямокутнику і зустрічаються на діаграмах контекстного рівня, а також на нижчих рівнях абстракції.

Сховище даних (Data Store)

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

Кожне сховище даних повинно мати принаймні один потік даних, що надходить до нього або виходить з нього. Сховище даних зображується у вигляді двох паралельних ліній або у вигляді незамкненого прямокутника з міткою.

Процес (Process)

Процес (Process) може бути ручною або автоматизованою діяльністю, що виконується з бізнес-ціллю. Процес перетворює дані на результат. Стандарти іменування процесу повинні містити дієслово та іменник.

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

Потік даних (Data Flow)

Рух даних між зовнішнім середовищем, процесом і сховищем даних представлений потоками даних. Потоки даних пов'язують процеси між собою. Кожен потік даних з'єднується з процесом або виходить з нього (перетворення даних).

Потоки даних показують входи і виходи кожного процесу. Кожен процес перетворює вхідні дані на вихідні. Потоки даних зображуються у вигляді лінії зі стрілкою між процесами. Потік даних називається іменником.

Малюнок 10.13.3: Нотація діаграми потоків даних Гейна-Сарсона
Малюнок 10.13.4: Діаграма потоку даних Нотація Йодана

Міркування щодо використання Діаграми потоків даних (Data Flow Diagrams) в BABOKv3 (10.13.4)

Сильні сторони Діаграми потоків даних (Data Flow Diagrams)

  • Може використовуватися як метод виявлення процесів і даних або як метод верифікації функціональних декомпозицій чи моделей даних.
  • Є чудовим способом визначення обсягу системи та всіх систем, інтерфейсів і користувацьких інтерфейсів, які з нею пов'язані. Дозволяє оцінити зусилля, необхідні для вивчення роботи.
  • Більшість користувачів вважають ці діаграми потоків даних відносно простими для розуміння.
  • Допомагає виявити дубльовані елементи даних або неправильно застосовані елементи даних.
  • Ілюструє зв'язки з іншими системами.
  • Допомагає визначити межі системи.
  • Може використовуватися як частина системної документації.
  • Допомагає пояснити логіку потоку даних у системі.

Обмеження Діаграми потоків даних (Data Flow Diagrams)

  • Використання діаграм потоків даних для великомасштабних систем може стати складним і важким для розуміння зацікавленими сторонами.
  • Різні методи позначення з різними символами можуть створити проблеми з документацією.
  • Не ілюструє послідовність дій.
  • Трансформації даних (процеси) мало говорять про процес або зацікавлену сторону.

Якщо стаття була для вас корисна підпишіться на розсилку або на мій телеграм канал.