Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ТКП_Лаб_рус_08.doc
Скачиваний:
1
Добавлен:
01.05.2025
Размер:
312.83 Кб
Скачать

Диаграммы потоков данных

Диаграммы потоков данных DFD (Data Flow Diagrams) - являются основным средством моделирования функциональных требований к проектируемой системе. С их помощью эти требования разбиваются на функциональные компоненты (процессы), связанные потоками данных и представляются в виде графа. Главная цель таких средств - продемонстрировать, как каждый процесс преобразует свои входные данные в выходные, а также выявить отношения между этими процессами.

Для изображения DFD традиционно используют следующую нотацию (см. табл. 2).

Важную роль в модели играет специальный вид DFD - контекстная диаграмма, которая моделирует систему наиболее общим образом (на самом высоком уровне абстракции). Контекстная диаграмма моделирует (отражает) интерфейс связи системы с внешним миром, а именно ‑ информационные потоки между системами и внешними сущностями, с которыми она должна быть связана. Она идентифицирует внешние сущности, а также, как правило, единственный процесс, отражающий главную цель или природу системы. Каждый проект имеет только одну контекстную диаграмму (0-го уровня).

Детализация DFD осуществляется на основе процессов: каждый процесс раскрывается с помощью DFD нижнего уровня или спецификации процесса.

DFD первого уровня строится как декомпозиция процесса контекстной диаграммы. Диаграмма первого уровня имеет множество процессов с номерами, которые используются при дальнейшей декомпозиции. Процесс первого уровня декомпозиции содержит процессы 1.1, 1.2, 1.3, ... . При переходе на следующий уровень добавляется индекс - 1.1.1, 1.1.2, ... и т.д.

Таблица 2 - Обозначения на диаграмме потоков данных

Наименование и назначение элемента

Обозначение

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

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

Имя

Имя



Процесс - продуцирует выходные потоки из входных в соответствии с действием, задаваемым именем процесса.

Имя процесса - содержит глагол в неопределенной форме с последующим дополнением (например, ‘‘Вычислить максимальную высоту ’’).

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

Имя

номер

Хранилище (накопитель данных) - позволяет на определенных участках определять данные, которые будут сохраняться в памяти между процессами. Фактически это ‘‘срезы’’ потоков данных во времени.

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

Имя хранилища - идентифицирует его содержание и является существительным.

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

Имя

Внешняя сущность (терминатор) - представляет сущность вне контекста системы, являющуюся источником или приемником системных данных.

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

Имя

Рекомендации для построения иерархии DFD:

  • целесообразно на каждой диаграмме рассматривать от 3 до 6-7 процессов;

  • не загромождать диаграмму несущественными на данном уровне деталями;

  • декомпозицию потоков производить параллельно декомпозиции процессов (одновременно);

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

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

  • пользоваться простейшей диаграммной техникой;

  • отделять управляющие структуры (т.е. процессы) от обрабатывающих процессов, локализовать управляющие структуры.