УФИС 12-2. Практическая работа 3 Построение функциональных диаграмм idef0 и диаграмм потоков данных dfd
Скачать 0.54 Mb.
|
Практическая работа №3Построение функциональных диаграмм IDEF0 и диаграмм потоков данных DFD Цель: получение навыков создания и редактирования функциональных моделей в нотации IDEF0. Изучение основных характеристик и основ работы с DFD-моделями в графическом редакторе. Форма отчета: Функциональная диаграмма IDEF0 и диаграмма потоков данных DFD с описанием процесса построения диаграмм. Краткие теоретические сведения Функциональная диаграмма IDEF0 1. Основные сведения по методологии IDEF0 Модель в нотации IDEF0 представляет собой совокупность иерархически упорядоченных и взаимосвязанных диаграмм. Каждая диаграмма является единицей описания системы и располагается на отдельном листе. Цель моделирования. Модель не может быть построена без четко сформулированной цели. Пример цели: «Описать функциональность предприятия с целью написания спецификаций ИС». Точка зрения. Точку зрения можно представить как взгляд человека, который видит систему в нужном для моделирования аспекте. Как правило, выбирается точка зрения человека, ответственного за моделируемую работу в целом. Цель и точка зрения документируются. Основные элементы IDEF0-модели В основе методологии IDEF0 лежат 4 основных понятия: функциональный блок; интерфейсная дуга (стрелка); декомпозиция; глоссарий. Функциональный блок Функциональные блоки обозначают поименованные процессы, функции или задачи, которые происходят в течение определенного времени и имеют распознаваемые результаты. Графически функциональные блоки изображаются в виде прямоугольников. Все блоки должны быть названы и определены. Имя функционального блока должно быть выражено сочетанием отглагольного существительного, обозначающего процесс, или глаголом: Определение функционального блока заносится в глоссарий или словарь работ (Activity Dictionary). Все функциональные блоки модели нумеруются. Номер состоит из префикса и числа. Может использоваться префикс любой длины, но обычно используется префикс А. Контекстная (корневая) работа (функциональный блок) имеет номер А0. Интерфейсная дуга (стрелка – Arrow) Взаимодействие функциональных блоков с внешним миром и между собой описывается в виде интерфейсных дуг (стрелок). Стрелки представляют собой некую информацию и обозначаются существительными (например, «Заготовка», «Изделие») или именуемыми сочетаниями (например, «Готовое изделие»). Все стрелки должны быть определены. В IDEF0 различают типы стрелок. Каждая стрелка имеет свое расположение относительно функционального блока. Вход (Input) – материал или информация, которые используются или преобразуются работой для получения результата (выхода). Стрелка Input рисуется входящей в левую грань работы. Управление (Control) – правила, стратегии, процедуры или стандарты, которыми руководствуется работа. Каждая работа должна иметь хотя бы одну стрелку управления. Рисуется как входящая в верхнюю грань работы. Выход (Output) – материал или информация, которые производятся работой. Каждая работа должна иметь хотя бы одну стрелку выхода. Работа без результата не имеет смысла и не должна моделироваться. Изображается исходящей из правой грани работы. Механизм (Mechanism) – ресурсы, которые выполняют работу, например, персонал предприятия, станки, устройства и т.д. Рисуется как входящая в нижнюю грань работы. Декомпозиция Разбиение системы на крупные фрагменты – функции, функции – на подфункции и т.д. до конкретных процедур. Модель может содержать 4 типа диаграмм: контекстную (в каждой модели может быть только 1 контекстная диаграмма); декомпозиции; дерева узлов; только для экспозиции (FEO). Контекстная диаграмма является вершиной древовидной структуры диаграмм и представляет собой общее описание системы и ее взаимодействия с внешней средой. После описания системы в целом проводится разбиение ее на крупные фрагменты. Этот процесс называется функциональной декомпозицией, а диаграммы, которые описывают каждый фрагмент и взаимодействие фрагментов – диаграммами декомпозиции. После декомпозиции контекстной диаграммы проводится декомпозиция каждого большого фрагмента системы на более мелкие и т.д., до достижения нужного уровня подробности описания. Диаграмма дерева узлов показывает иерархическую зависимость работ, но не взаимосвязи между работами. Диаграммы для экспозиции (FEO) строятся для иллюстрации отдельных фрагментов модели, для иллюстрации альтернативной точки зрения либо для специальных целей. Все диаграммы имеют нумерацию. Контекстная диаграмма имеет номер А-0, декомпозиция контекстной диаграммы – номер А), остальные диаграммы-декомпозиции – номера по соответствующему узлу (например, А1, А2, А21 и т.д.). Диаграмма потоков данных DFD 1. Модель потоков данных DFD – data flow diagrams – диаграммы потоков данных – методология графического структурного анализа, описывающая внешние по отношению к системе источники и адресаты данных, логические функции, потоки данных и хранилища данных, к которым осуществляется доступ. Диаграмма потоков данных – один из основных инструментов структурного анализа и проектирования информационных систем, существовавших до широкого распространения UML. Для описания диаграмм DFD используются две нотации – Йордана (Yourdon) и Гейна-Сарсона (Gane-Sarson), отличающиеся синтаксисом. 2. Основные элементы информационной модели логического уровня Согласно DFD источники информации (внешние сущности) порождают информационные потоки (потоки данных), переносящие информацию к подсистемам или процессам. Те в свою очередь преобразуют информацию и порождают новые потоки, которые переносят информацию к другим процессам или подсистемам, накопителям данных или внешним сущностям – потребителям информации. При построении диаграмм различают элементы графической нотации, представленные в табл. 1. Таблица 1 – Элементы графической нотации DFD
Поток данных определяет информацию (материальный объект), передаваемую через некоторое соединение от источника к приемнику. Реальный поток данных может быть информацией, передаваемой по кабелю между двумя устройствами, пересылаемыми по почте письмами, магнитными лентами или дискетами, переносимыми с одного компьютера на другой и т. д. Каждый поток данных имеет имя, отражающее его содержание. Направление стрелки показывает направление потока данных. Иногда информация может двигаться в одном направлении, обрабатываться и возвращаться назад в ее источник. Такая ситуация может моделироваться либо двумя различными потоками, либо одним – двунаправленным. На диаграммах IDEF0 потоки данных соответствуют входам и выходам, но в отличие от IDEF0 стрелки потоков на DFD могут отображаться входящими и выходящими из любой грани внешней сущности, процесса или накопителя данных. Процесс (в IDEF0 – функция, работа) представляет собой преобразование входных потоков данных в выходные в соответствии с определенным алгоритмом. Каждый процесс должен иметь имя в виде предложения с глаголом в неопределенной форме (вычислить, рассчитать, проверить, определить, создать, получить), за которым следуют существительные в винительном падеже, например: «Ввести сведения о клиентах»; «Рассчитать допускаемую скорость»; «Сформировать ведомость допускаемых скоростей». Номер процесса служит для его идентификации и ставится с учетом декомпозиции. Вложенность процессов обозначается через точку. Преобразование информации может показываться как с точки зрения процессов, так и с точки зрения систем и подсистем. Если вместо имени процесса «Рассчитать допускаемую скорость» написать «Подсистема расчета допускаемых скоростей», тогда этот блок на диаграмме стоит рассматривать, как подсистему. Накопитель (хранилище) данных представляет собой абстрактное устройство для хранения информации, которую можно в любой момент поместить в накопитель и через некоторое время извлечь, причем способы помещения и извлечения могут быть любыми. Накопитель данных может быть реализован физически в виде ящика в картотеке, области в оперативной памяти, файла на магнитном носителе и т.д. Накопителю обязательно должно даваться уникальное имя и номер в пределах всей модели (всего набора диаграмм). Имя накопителя выбирается из соображения наибольшей информативности для разработчика. Например, если в качестве накопителей выступают таблицы проектируемой базы данных, тогда в качестве имен накопителей рекомендуется использовать имена таблиц. Таким образом, накопитель данных может представлять собой всю базу данных целиком, совокупность таблиц или отдельную таблицу. Такое представление накопителей в дальнейшем облегчит построение информационной модели системы. Внешняя сущность (терминатор) представляет собой материальный объект или физическое лицо, выступающие как источник или приемник информации (например, заказчики, персонал, программа, склад, инструкция). Внешние сущности на DFD по смыслу соответствуют управлению и механизмам, отображаемым на контекстной диаграмме IDEF0. Определение некоторого объекта, субъекта или системы в качестве внешней сущности указывает на то, что она находится за пределами границ проектируемой информационной системы. В связи с этим внешние сущности, как правило, отображаются только на контекстной диаграмме DFD. В процессе анализа и проектирования некоторые внешние сущности могут быть перенесены на диаграммы декомпозиции, если это необходимо, или, наоборот, часть процессов (подсистем) может быть представлена как внешняя сущность. Методика выполнения Функциональная диаграмма IDEF0 В качестве примера рассматривается процесс выполнения студентом курсовой работы (курсового проекта). Программное обеспечение «Ramus» предназначено для использования в проектах, в которых необходимо описание бизнес-процессов предприятия. «Ramus» поддерживает методологии моделирования бизнес-процессов IDEF0 и DFD, а также имеет ряд дополнительных возможностей, призванных удовлетворить потребности команд разработчиков систем управления предприятиями. «Ramus» обладает гибкими возможностями построения отчетности по графическим моделям, позволяющие создавать отчеты в форме документов, регламентирующих деятельность предприятия. Ramus Educational имеет достаточно интуитивный интерфейс пользователя, позволяющий быстро и просто создавать сложные модели. 1 Начало работы Запустите программу Ramus Educational. В появившемся окне предлагается создать новый проект или открыть уже существующий. После нажатия на кнопку «ОК» осуществляется запуск мастера проекта. На первом шаге (рис. 5) в соответствующие поля необходимо внести сведения об авторе, названии проекта и модели, а также выбрать тип нотации модели (IDEF0 или DFD). На втором шаге вводится название организации, использующей данный проект. На третьем – дается краткое описание будущего проекта. Четвертый шаг позволяет создать несколько основных классификаторов (в данном случае можно пропустить этот шаг). Так как модели процессов реальных предприятий могут содержать значительное количество объектов (документы, персонал, функции и т.д.), то в Ramus предусмотрена возможность упорядочено хранить информацию об этих объектах в виде системы классификаторов. Классификация объектов упрощает поиск и обработку информации об объектах модели, а также и об объектах непосредственно не представленных на диаграммах процессов, но относящихся к процессам предприятия. На пятом, заключительном, предлагается выбрать те из созданных классификаторов, элементы которых будут содержаться в перечне собственников процессов (пропустить данный шаг). При необходимости можно завершить работу мастера, нажав кнопку «Окончить». После завершения работы мастера, откроется рабочее пространство «Диаграммы», в котором можно приступить к рисованию графической модели (рис. 6). В верхней части приводятся сведения о проекте, введенные пользователем посредством мастера диаграмм. Программа Ramus Educational обладает гибким графическим интерфейсом, который можно настроить под нужды и предпочтения конкретного пользователя: ненужные окна можно закрыть/свернуть; можно менять их размеры и месторасположение; также можно группировать два и более окон в одном, при этом содержимое вложенных окон будет размещено на вкладках общего окна (данный функционал возможен не для всех комбинаций окон). Сохраните созданную модель, выбрав опцию меню «Файл» – «Сохранить как». 2 Создание контекстной диаграммы На панели инструментов выберите пиктограмму функции ( ) и мышью укажите месторасположение на рабочем пространстве. Дайте данному функциональному блоку имя «Выполнить курсовую работу». Для этого дважды щелкните внутри блока. Используя пиктограмму панели инструментов , создайте стрелки на контекстной диаграмме согласно Таблица 1. Таблица 2 – Контекстная диаграмма
В результате должна получиться контекстная диаграмма. 3 Создание диаграммы декомпозиции Выберите в палитре инструментов кнопку перехода на нижний уровень , в диалоговом окне «Создание новой диаграммы» установите количество функциональных блоков 7, укажите тип диаграммы (IDEF0) и нажмите кнопку ОК. Автоматически будет создана диаграмма первого уровня декомпозиции с перенесенными в нее потоками родительской диаграммы. Выделите первую работу (функциональный блок), затем двойным щелчком мыши или, выбрав в контекстном меню пункт «Редактировать активный элемент», откройте окно свойств и внесите имя работы. Повторите операцию для оставшихся работ. Выделив необходимый поток (стрелку) и, удерживая левую клавишу мыши, соедините его требуемым образом (через вход, управление, механизм или выход) с соответствующим функциональным блоком. В результате должна получиться детализирующая диаграмма. Диаграмма потоков данных DFD 1 Начало работы Запустите программу Ramus Educational. В появившемся окне предлагается создать новый проект или открыть уже существующий. После нажатия на кнопку «ОК» осуществляется запуск мастера проекта. На первом шаге в соответствующие поля необходимо внести сведения об авторе, названии проекта и модели, а также выбрать тип нотации модели (IDEF0 или DFD) – в данном случае – DFD. На втором шаге вводится название организации, использующей данный проект. На третьем – дается краткое описание будущего проекта. Четвертый шаг позволяет создать несколько основных классификаторов. На пятом, заключительном, предлагается выбрать те из созданных классификаторов, элементы которых будут содержаться в перечне собственников процессов. При необходимости можно завершить работу мастера, нажав кнопку «Окончить». После завершения работы мастера, откроется рабочее пространство «Диаграммы», в котором можно приступить к построению графической модели. На панели инструментов, в верхней части окна рабочего пространства программы, содержатся элементы диаграммы потоков данных в нотации Gane-Sarson. Сохраните созданную модель, выбрав опцию меню «Файл» – «Сохранить как». 2 Создание контекстной диаграммы На панели инструментов выберите инструмент создания процесса ( ) и мышью укажите месторасположение на рабочем пространстве нового процесса. Выделив процесс, выберите в контекстном меню опцию «Редактировать активный элемент». В появившемся диалоговом окне на вкладке «Название» присвойте процессу имя «Выполнить курсовую работу»; на вкладке «Тип функционального блока» укажите тип элемента – «Процесс». На панели инструментов выберите инструмент создания внешней сущности и мышью укажите произвольное ее месторасположение в области построения. В контекстном меню созданной внешней сущности выберите опцию «Редактировать активный элемент», на вкладке «Объект» нажмите «Задать DFD объект», после чего, в появившемся окне выделите классификатор «Преподаватель» и нажмите «ОК». Повторяя действия предыдущего шага, добавьте внешнюю сущность «Студенты». Выбра на панели инструментов элемент , создайте стрелки на контекстной диаграмме. В результате должна получиться контекстная диаграмма. 3 Создание диаграммы декомпозиции Выберите в палитре инструментов кнопку перехода на нижний уровень , в диалоговом окне «Создание новой диаграммы» установите количество функциональных блоков 3, укажите тип диаграммы (DFD) и нажмите кнопку ОК. Автоматически будет создана диаграмма первого уровня декомпозиции с перенесенными в нее потоками родительской диаграммы. Двойным щелчком мыши на одном из процессов, или, выбрав в контекстном меню процесса пункт «Редактировать активный элемент», откройте окно редактирования свойств и задайте процессу имя. Повторите операцию для оставшихся процессов. Добавьте недостающие классификаторы для задания DFD объектов хранилищам данным. Для этого в меню выберите Окна -> Показать окно -> Классификаторы. После этого нажмите на кнопку . Название классификатора можно ввести в созданную строку, дважды, медленно кликнув мышью по строке, или же нажав клавишу F2, предварительно выделив нужную строку мышью. Добавьте хранилища данных, воспользовавшись кнопкой палитры инструментов. Выделив необходимый поток (стрелку) и, удерживая левую клавишу мыши, соедините его требуемым образом с соответствующим процессом. В результате должна получиться детализирующая диаграмма. На основе описанных выше действий постройте диаграмму декомпозиций второго уровня для процесса «Оформить ПЗ». Задание практической работы По образцу построить диаграммы IDEF0 и DFD. Задание самостоятельной работы В соответствии с индивидуальным вариантом, построить диаграммы IDEF0 и DFD. Перечень индивидуальных вариантов приведен в приложении А. Отчет по практическому занятию выполняется в формате MS Word, который содержит экранные формы моделей согласно заданию. Требования к построению модели На контекстной диаграмме необходимо указать точку зрения и цель моделирования. Количество блоков любой декомпозиции не менее 3-х и не более 9. Количество декомпозиций – 3 уровня декомпозиции. Контрольные вопросы Каковы цели функционального моделирования? Назовите основные компоненты функциональной модели. Какие виды интерфейсных дуг различают в IDEF0? Для чего нужна цель и точка зрения? Что такое функциональный блок? Какие виды диаграмм может содержать функциональная модель? Каково назначение стандарта DFD? В чем основные отличия стандартов IDEF0 и DFD? Каким образом в MS Visio создается схема DFD? Какие для этого используются нотации? Какова роль основных элементов в стандарте DFD? Приложение АПеречень вариантов к практическим работам № 1-6 Создание экспертной информационной системы Разработка системы электронного документооборота Разработка электронного магазина для предприятия Разработка корпоративной сети предприятия Разработка информационной подсистемы учета выпуска продукции фермерского хозяйства Разработка информационной подсистемы автоматизированной обработки документов коммерческого предприятия Разработка подсистемы управления кадрами предприятия Разработка подсистемы учета операций по импорту товаров Разработка системы автоматизации учета расчетов за проживание в общежитии Разработка системы автоматизации учета реализации и затрат на доставку мебели Разработка подсистемы учета дебиторов банка Разработка информационной подсистемы интернет-магазина Разработка информационной подсистемы банкомата Разработка информационной системы по организации учебного процесса Разработка подсистемы регистрации командировочных удостоверений в информационной системе Разработка ИС автотранспортного предприятия Разработка ИС учета договоров и контроля за их исполнением Разработка ИС учета и оптимизации транспортных расходов на предприятии Разработка информационной подсистемы страховой фирмы Разработка ИС учета материальных ресурсов предприятия Разработка подсистемы автоматизации складского учета Разработка подсистемы автоматизации учета платежей по договорам Разработка подсистемы учета реализации товаров в оптовой торговле Разработка системы регистрации и обработки медицинской информации на примере тестов на артериальное давление и анализы крови Разработка ИС учета обмена валют Разработка информационной системы склада косметики и парфюмерии Разработка ИС учета запасов предприятия Разработка ИС ведения реестра акционеров в банке Разработка ИС кинотеатра Разработка ИС библиотеки Разработка ИС аэропорта Разработка ИС автовокзала |