DFD (Data Flow Diagrams)

Содержание

Слайд 2

Компоненты логической модели

Компоненты логической модели

Слайд 3

Используется несколько систем обозначений для перечисленных элементов, наиболее известны нотация Йордана-ДеМарко

Используется несколько систем обозначений для перечисленных элементов, наиболее известны нотация Йордана-ДеМарко

(Yourdon-DeMarco) и нотация Гэйна-Сарсона (Gane-Sarson), обе предложенные в 1979 году
Слайд 4

Графическое отображение объектов DFD

Графическое отображение объектов DFD

Слайд 5

Контекстная диаграмма банковской задачи

Контекстная диаграмма банковской задачи

Слайд 6

Контекстная диаграмма системы с единственным процессом ОБСЛУЖИТЬ, идентифицирует внешние сущности КЛИЕНТ

Контекстная диаграмма системы с единственным процессом ОБСЛУЖИТЬ, идентифицирует внешние сущности КЛИЕНТ

и КОМПЬЮТЕР БАНКА, хранящей информацию о счетах всех клиентов.
Опишем потоки данных, которыми обменивается проек­тируемая система с внешними объектами:
Для банковского обслуживания клиенту необходимо предоставить системе свою КРЕДИТНУЮ КАРТУ для ав­томатического считывания с нее информации (ПАРОЛЬ, ЛИМИТ ДЕНЕГ, ДЕТАЛИ КЛИЕНТА), а также сообщить свои КЛЮЧЕВЫЕ ДАННЫЕ, а именно ПАРОЛЬ и ЗАПРОС НА ОБСЛУЖИВАНИЕ, т.е. требуемую ему Услугу (например, снятие со счета наличных денег). Банковское обслуживание с позиций клиента, в свою очередь, должно обеспечить следующее:
-     выдать СООБЩЕНИЕ, приглашающее клиента ввести КЛЮЧЕВЫЕ ДАННЫЕ;
-     выдать клиенту ДЕНЬГИ;
-     выдать клиенту ВЫПИСКУ по произведенному обслуживанию, включающую ВЫПИСКУ О ДЕНЬГАХ, ВЫПИСКУ ПО БАЛАНСУ и ВЫПИСКУ ПО ОПЕРАЦИИ, проведенной банком.
Контекстный процесс и КОМПЬЮТЕР БАНКА должны обмениваться следующей информацией:
-     ДАННЫЕ ПО СЧЕТУ клиента в банке;
-     ПРОТОКОЛ ОБСЛУЖИВАНИЯ, включающий информацию об ОБРАБОТАННОЙ ДОКУМЕНТАЦИИ, изымаемой ДЕНЕЖНОЙ СУММЕ и ДАННЫЕ ПО ИСТОРИИ ЗАПРОСА.
Контекстный процесс может быть детализирован DFD первого уровня. Эта диаграмма содержит 4 процесса и хранилище ДАННЫЕ КРЕДИТНОЙ КАРТЫ, которое изображено дважды на диаграмме с целью избежания пересечений линий потоков данных.
Слайд 7

Детализация процесса ОБСЛУЖИТЬ

Детализация процесса ОБСЛУЖИТЬ

Слайд 8

Процесс 1.1 (ПОЛУЧИТЬ ПАРОЛЬ) осуществляет прием и проверку пароля клиента и

Процесс 1.1 (ПОЛУЧИТЬ ПАРОЛЬ) осуществляет прием и проверку пароля клиента и

имеет на входе/выходе следующие потоки:
-     внешний выходной поток СООБЩЕНИЕ для информирования клиента о готовности принять пароль;
-     входной поток ВВЕДЕННЫЙ ПАРОЛЬ как элемент внешнего потока КЛЮЧЕВЫЕ ДАННЫЕ;
-     входной поток ПАРОЛЬ из хранилища ДАННЫЕ КРЕДИТНОЙ КАРТЫ для проверки вводимого клиентом пароля.
Процесс 1.2 (ПОЛУЧИТЬ ЗАПРОС НА ОБСЛУЖИВАНИЕ) осуществляет прием т проверку запроса клиента на проведение необходимой ему банковской операции и имеет на входе/выходе следующие потоки:
-     внешний выходной поток СООБЩЕНИЕ для информирования клиента о своей готовности принять запрос на обслуживание;
-     входной поток ЗАПРОС НА ОБСЛУЖИВАНИЕ как элемент внешнего потока КЛЮЧЕВЫЕ ДАН­НЫЕ;
-     входной поток ЛИМИТ ДЕНЕГ из хранилища ДАННЫЕ КРЕДИТНОЙ КАРТЫ для контроля наличия денег на счете клиента.
 Процесс 1.3 (ОБРАБОТАТЬ ЗАПРОС НА ОБСЛУ­ЖИВАНИЕ) имеет внешний входной поток ДАН­НЫЕ ПО СЧЕТУ (из внешней сущности КОМПЬЮТЕР БАНКА), входной поток ДЕТАЛИ КЛИЕНТА (из хранилища), а также внешние выходные потоки ВЫПИСКА, ДЕНЬГИ и ПРОТОКОЛ ОБСЛУЖИВАНИЯ.
Процесс 1.4 (ОБРАБОТАТЬ КРЕДИТНУЮ КАРТУ) осуществляет считывание информации с кредитной карты и имеет на входе внешний поток КРЕДИТНАЯ КАРТА, а на выходе поток ДАННЫЕ КРЕДИТНОЙ КАРТЫ. Отметим, что нет необходимости в идентификации по­следнего потока, т.к. идентифицировано соответствующее хранилище.
Процессы 1.1, 1.2 и 1.4 являются элементарными, поэтому нет необходимости в их детализации с помощью DFD уровня 2. Процесс 1.3 может быть детализирован с помощью DFD второго уровня как показано на следующем рисунке. Эта диаграмма содержит 4 элементарных процесса.
Слайд 9

Детализация процесса ОБРАБОТАТЬ ЗАПРОС НА ОБСЛУЖИВАНИЕ

Детализация процесса ОБРАБОТАТЬ ЗАПРОС НА ОБСЛУЖИВАНИЕ

Слайд 10

Процесс 1.3.1 (ОБРАБОТАТЬ ДОКУМЕНТАЦИЮ БАНКА) осуществляет обработку внутренней банковское документации по

Процесс 1.3.1 (ОБРАБОТАТЬ ДОКУМЕНТАЦИЮ БАНКА) осуществляет обработку внутренней банковское документации по

клиенту и имеет входной поток ДЕЛ ТАЛИ КЛИЕНТА и выходной поток ОБРАБОТАННАЯ ДОКУМЕНТАЦИЯ (часть внешнего потока ПРОТОКОЛ СДЕЛКИ).
Процесс 1.3.2 (РАСПЕЧАТАТЬ БАЛАНС КЛИЕНТА) выдает справку по истории счета клиента и по балансе клиента. Входные потоки - ДЕТАЛИ КЛИЕНТА и ДАННЫЕ ПО БАЛАНСУ (часть внешнего потока ДАННЫЕ ПО СЧЕТУ), выходные потоки - ВЫПИСКА ПО БАЛАНСУ (часть внешнего потока ВЫПИСКА) и ДАННЫЕ ПО ИСТОРИИ ЗАПРОСА (часть внешнего потока ПРОТОКОЛ ОБСЛУЖИВАНИЯ).
Процесс 1.3.3 (ПРИГОТОВИТЬ ДЕНЬГИ КЛИЕНТУ) обеспечивает выдачу наличных денег и информирова­ние компьютера банка об изъятых из банка деньгах. Он имеет входные потоки ДЕНЕЖНАЯ СУММА и ДЕТАЛИ КЛИЕНТА, и выходные потоки ДЕНЬГИ и ДЕНЕЖ­НАЯ СУММА (часть потока ПРОТОКОЛ ОБСЛУЖИ­ВАНИЯ).
Процесс 1.3.4 (РАСПЕЧАТАТЬ ОПЕРАЦИЮ КЛИЕНТА) выдает справку по истории счета и уведомление по проведенной операции. Входные потоки ДАННЫЕ ПО СЧЕТУ и ДЕТАЛИ КЛИЕНТА, выходные потоки - ВЫПИСКА ПО ОПЕРАЦИИ (часть потока ВЫПИС­КА) и ДАННЫЕ ПО ИСТОРИИ ЗАПРОСА (часть по­тока ПРОТОКОЛ ОБСЛУЖИВАНИЯ).
Слайд 11

Расширение реального времени

Расширение реального времени

Слайд 12

Расширение диаграммы, детализирующей контекстный процесс

Расширение диаграммы, детализирующей контекстный процесс

Слайд 13

Управляющий процесс 1.5 (УПРАВЛЕНИЕ ОБСЛУЖИВАНИЕМ), получив информацию о том, что кредитная

Управляющий процесс 1.5 (УПРАВЛЕНИЕ ОБСЛУЖИВАНИЕМ), получив информацию о том, что кредитная

карта введена (поток КРЕДИТНАЯ КАРТА), вызывает выполнение процесса 1.1 (поток А: ПОЛУЧИТЬ ПАРОЛЬ).
Получив информацию о введенном пароле (поток КОРРЕКТНЫЙ ПАРОЛЬ), процесс 1.5 информирует процесс 1.4 о необходимости удаления кредитной карты (поток: УДАЛЕННАЯ КРЕДИТНАЯ КАРТА) и с помощью потока Т: ОБЕСПЕЧИТЬ ТРЕБУЕМОЕ ОБСЛУЖИВАНИЕ вызывает выполнение процесса 1.2, затем процесса 1.3 (поток ТРЕБУЕМОЕ ОБСЛУЖИВАНИЕ).
Последний управляющие поток на детализирующей процесс 1.3 диаграмме расчленяется на 4 подпотока, каждый из которых вызывает выполнение процессов 1.3.1. – 1.3.4, соответственно.
Слайд 14

Расширение диаграммы, детализирующей процесс 1.3

Расширение диаграммы, детализирующей процесс 1.3

Слайд 15

Слайд 16

Слайд 17

Слайд 18

Слайд 19