Методические указания к работе.



ЛАБОРАТОРНАЯ РАБОТА № 5

Определение компонентов для построения диаграммы потоков данных ( DFD)

Цель работы:

· освоить назначение и принципы построения DFD - диаграммы потоков данных;

· научиться устанавливать внутренние ссылки;

· научиться производить детализацию диаграммы DFD.

Теоретические сведения

Методология структурного анализа потоков данных DFD (Data Flow Diagrams) основана на методах, ориентированных на потоки данных. Существуют различные графические нотации данной методологии. Наиболее известными из них являются нотация, предложенная Гейном и Сарсоном (так называемый метод Гейна–Сарсона) , и нотация, предложенная Йоданом и ДеМарко (метод Йодана–ДеМарко). В данной работе рассматривается методология DFD в нотации Гейна–Сарсона.

Основные понятия DFD-модели

Методология DFD является одной из методологий функционального моделирования предметной области, поэтому она имеет много общего с методологией IDEF0.

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

Аналогично IDEF0-методологии DFD-модель должна иметь единственные цель, точку зрения, субъект и точно определенные границы.

Однако если в IDEF0 дуги имеют различные типы и определяют отношения между блоками, то в DFD дуги отражают реальное перемещение данных от одной функции к другой.

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

Синтаксис DFD-диаграмм

Диаграммы являются основными рабочими элементами DFD-модели. Диаграммы отражают перемещение данных, их обработку и хранение.

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

 

Рисунок 6.12 – Функциональный блок DFD

Функциональные блоки на диаграмме нумеруются. Номер функционального блока отмечается в его правом верхнем углу с возможным использованием префикса А (Activity – работа) перед ним.

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

Хранилище данных отражает временное хранение промежуточных результатов обработки. Внешний вид блока, представляющего хранилище данных, иллюстрирует рисунок 6.13. Название хранилища базируется на использовании существительного.

 

Рисунок 6.13 – Хранилище данных

Хранилища данных на диаграмме нумеруются. Номер хранилища данных записывается слева с возможным префиксом D (Data store) перед ним.

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

Внешние сущности изображаются в соответствии с рисунке 6.14 и размещаются, как правило, по краям диаграмм. Название внешней сущности базируется на использовании существительного. Номер внешней сущности записывается в левом верхнем углу с возможным префиксом E (External) перед ним.

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

 

Рисунок 6.14 – Внешняя сущность

Дуги обозначают передвижение данных в моделируемой системе. Дуги могут начинаться и заканчиваться на любой их стороне.

В общем случае дуга представляет множество объектов (планы, машины, информация и т.п.). Основу названия дуги на IDEF0-диаграммах составляют существительные. Названия дуг называются метками.

Дуги на DFD-диаграмме изображаются линиями со стрелками. На DFD- диаграммах могут использоваться следующие типы дуг:

- однонаправленные сплошные – отражают направление потоков

объектов (данных);

- двунаправленные – сплошные – обозначают обмен данными между блоками;

- однонаправленные штриховые – обозначают управляющие потоки

между блоками.

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

 

Рис. 5.4. Потоки данных (стрелки)

 

В отличие от IDEF0, где система рассматривается как взаимосвязанные работы, DFD рассматривает систему как совокупность предметов.

Как и в IDEF0-методологии, дуги могут разветвляться и соединяться.

На рисунке 6.15 приведен пример DFD-диаграммы процесса выполнения лабораторной работы.

Синтаксис DFD -моделей

По аналогии с IDEF0-моделью DFD-модель представляет собой иерархически организованную совокупность диаграмм. Каждый из функциональных блоков диаграммы может быть декомпозирован на другой диаграмме. Функциональный блок и касающиеся его дуги определяют границу диаграммы. Эта диаграмма называется диаграммой-потомком. Декомпозируемый блок называется родительским блоком, а содержащая его диаграмма – родительской диаграммой. Название диаграммы-потомка совпадает с функцией родительского блока.


Рисунок 6.15 – DFD-диаграмма процесса выполнения лабораторной работы


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

Рисунок 6.17 представляет контекстную DFD-диаграмму процесса выполнения лабораторной работы. В отличие от контекстной IDEF0-диаграммы, контекстная DFD-диаграмма содержит внешние сущности

«Кафедра», «Студенты», «Методические пособия» и «Правила обучения». В остальном синтаксис этих диаграмм совпадает.

Общая функция DFD-модели записывается на контекстной диаграмме в виде названия функционального блока и совпадает с именем данной диаграммы. С контекстной диаграммой связывается цель модели и точка зрения.

Декомпозицией контекстной диаграммы, представленной на рисунке 6.17, является диаграмма, содержащаяся на рисунке 6.15.

Как и в IDEF0-методологии, дуги в DFD-моделях могут «входить в тоннель» между диаграммами. Синтаксис и семантика тоннелирования дуг соответствуют описанному для методологии IDEF0.

 

Разработанная DFD-модель со всеми уровнями структурной декомпозиции может быть представлена в виде диаграммы дерева узлов (рисунке 6.16).

Рисунок 6.16 – DFD-диаграмма дерева узлов



 

Рисунок 6.17 – Контекстная DFD-диаграмма процесса выполнения лабораторной работы

Методические указания к работе.

ОПИСАНИЕ ПРЕДМЕТНОЙ ОБЛАСТИ

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

При оформлении читательского билета нужно проверить, существует ли такой читатель в базе данных и, если не существует, внести его в базу данных и затем оформить читательский билет. Оформление читательского билета начинается с обращения читателя. В про­цессе оформления база данных клиентов может просматриваться и редактироваться. Билет должен включать как информацию о читателе, так и информацию о книге.

Для выполнения задания, необходимо запустить CASE-средство AllFusionProcessModeler и открыть диаграмму IDEF0 из прошлой лабораторной работы.

Из прошлой лабораторной работы мы имеем готовую диаграмму IDEF0.(Рис. 4)

 

Рисунок 4 – IDEF0 из прошлой лабораторной.

 

Для создания диаграммы DFDнадо декомпозировать блок “поиск книги” выделите этот блок и щелкните на панели по кнопке . В открывшемся окне диалога необходимо указать нотацию DFD и выбрать количество процессов на диаграмме 1 (Рис. 5).

Рисунок5 - Диалог декомпозиции диаграммы

После этого мы получаем декомпозированную, пустую диаграмму DFD(Рис. 6).

Рисунок 6 – пустая DFDдиаграмма.

Теперь нужно подписать наш блок: “Оформление читательского билета” (Рис. 7)

Рисунок 7 – Подписанный блок.

Теперь нам нужно определить сущность. Сущность представляет собой материальный объект или физическое лицо,выступающее как источник или приемник информации(в нашем случае это клиент).

Чтобы добавить сущность нужно выбрать на панели ExternalReferenceTool

После этого появится окошко ExternalReferenceи введите название сущности(Рис. 8)

Рисунок 7 – название сущности.

Затем перейдите на вкладку Objects которая находится наModelExplorer(браузер модели) (Рис. 9)

Рисунок 9 – Браузер модели.

Выберете сущность “Abonent” и перетащите на диаграмму.

Теперь нужно создать место хранения данных для этого выберете на панели DataStoreToolи щелкаем по рабочей области

В открывшемся окне вводим “Абоненты” и аналогично создайте еще 2 таблицы “База данных читательского билета” и “Фонд книг”.

Также переходим на вкладку Objectsи перетаскиваем все на рабочую область (Рис. 10).

Рисунок 10 – Рабочая область

Теперь нам нужно все соединить стрелками.

Соединяем нашу сущность “Abonent” и “Oformlenie chitatelskogo bileta” и подписываем стрелку как “Lichnaya iformaciya ” т.к. клиент будет передавать все свои личные данные, а затем менеджер будет вносить их в таблицы данных.

Теперь связываем “Ofrmlenie chitatelskogo bileta” с таблицей данных “BD chitatelskogo bileta” двойной стрелкой для этого вначале просто их соедините, а затем нажмите второй кнопкой мышки на стрелку и выберите "Style" в открывшемся окне выберите двойную стрелку. Двойная стрелка означает, что мы будем брать данные из базы и добавлять. Потом связываем таблицу“Fond knig” с “Oformlenie chitatelskogo bileta” стрелка будет только в в одну сторону т.к. мы будем только получать информацию о книгах.

После этого всего должна получиться готовая DFD диаграмма (рис. 10).

Рисунок 10 – Готовая DFDдиаграмма.


Дата добавления: 2021-07-19; просмотров: 71; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!