Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Моделирование систем. Инструменты и возможности моделирования производственных систем. Методическое пособие

.pdf
Скачиваний:
0
Добавлен:
07.09.2026
Размер:
2 Мб
Скачать
☆
Наконец, приведем пример конкретной диаграммы нижнего
уровня – выполнение лабораторной работы (рис. 4.6).
4.4. Стандарт моделирования потоков данных DFD
Как указывалось в предыдущей части, при моделировании в системе SADT наряду с подмножеством IDEF0 для функци­онального моделирования информационных систем исполь­зуются и другие подмножества. Одной из таких альтернатив является методология диаграмм потоков данных (Data Flow Diagrams – DFD). В отличие от IDEF0, предназначенной для проектирования систем вообще, DFD предназначена для про­ектирования информационных систем и автоматизированных систем вообще. Обе эти методологии могут применяться как по отдельности, так и совместно – IDEF0 моделирует функци­ональность, DFD – потоки данных и информационную состав­ляющую.
Пример такого взаимодействия приводится на рис. 4.7.
Рис. 4.7. Совместная разработка ИС
Общая методология одинакова. В основе ее лежит разбиение более общих сущностей на более мелкие путем декомпозиции
31
диаграмм. Однако есть и существенные различия. Если в IDEF0 основными элементами являются функциональные блоки и дуги, то DFD, моделируя потоки данных и их преобразование в системе, оперирует такими понятиями, как:
• внешние сущности;
• системы и подсистемы;
• процессы;
• накопители данных;
• потоки данных.
Из приведенного перечня видно, что в DFD моделируется все процессы – от ввода информации в систему (внешняя сущность), ее асинхронной обработки и преобразования системами и про­цессами, накопления информации и до выдачи ее конечному по­требителю (тоже внешняя сущность).
Источники информации (внешние сущности) порождают ин­формационные потоки (потоки данных), переносящие инфор­мацию к подсистемам или процессам. Те, в свою очередь, пре­образуют информацию и порождают новые потоки, которые переносят информацию к другим процессам или подсистемам, накопителям данных или внешним сущностям — потребителям информации.
Соответственно, есть различия и в нотациях (системах знач­ков, используемых для построения диаграмм). В DFD традици­онно используются две различные нотации, соответствующие методам Йордона–ДеМарко и Гейна–Сэрсона. Эти нотации от­личаются друг от друга графическим изображением символов. Эти различия приводятся на рис. 4.8. Мы далее в примерах бу­дем использовать нотацию Гейна–Сэрсона. Она в нашей стра­не является основной в связи с широким использованием для моделирования системы BPWin. В целом можно утверждать, что DFD – это нотация, предназначенная для моделирования информационный систем с точки зрения хранения, обработки и передачи данных.
В соответствии с данным методом модель системы определя­ется как иерархия диаграмм потоков данных, описывающих асинхронный процесс преобразования информации от ее ввода в систему до выдачи потребителю.
32
Рис. 4.8. Основные нотации DFD
4.5. Состав диаграмм потоков данных
Приведем краткую характеристику элементов диаграмм по-
токов данных.
Внешняя сущность – это физическое лицо или материальный
объект, являющиеся источником или приемником информации, например персонал, поставщики, заказчики, клиенты, отдел про­даж, хранилища данных или любые носители информации. Внеш­ние сущности находятся за пределами границ анализируемой си­стемы. В процессе анализа некоторые внешние сущности могут быть перенесены внутрь диаграммы анализируемой системы, если это необходимо, или, наоборот, часть процессов может быть выне­сена за пределы диаграммы и представлена как внешняя сущность.
Внешняя сущность обозначается квадратом (рис. 4.9), распо-
ложенным над диаграммой и бросающим на нее тень для того,
33
чтобы можно было выделить этот символ среди других обозна­чений.
Рис. 4.9. Графическое изображение внешней сущности
При построении модели сложной системы она может быть представлена в самом общем виде на так называемой контекст­ной диаграмме в виде одной системы как единого целого либо может быть декомпозирована на ряд подсистем. Каждая внеш­няя сущность имеет префикс (обозначение в левом верхнем углу).
Подсистема (или система) на контекстной диаграмме изобра­жается так, как она представлена на рис. 4.10.
Рис. 4.10. Подсистема по работе с физическими лицами
(ГНИ — Государственная налоговая инспекция)
В отличие от функциональных блоков она изображается прямоугольником со скругленными углами и имеет четкую структуру. В отличие от функциональных блоков IDEF0 номер подсистемы указывается в верхней части и служит для ее иден­тификации. В центральной части – поле имени – вводится наи-
34
менование подсистемы в виде предложения с подлежащим и соответствующими определениями и дополнениями. Название работы строится по принципу: действие плюс объект, над кото­рым это действие производится. Например, если это подсистема продаж, то название будет «Продажа товара». Наконец, в ниж­ней части указывается, где эта система (подсистема) физически реализуется.
Процесс – это функция или последовательность действий, которые нужно предпринять, чтобы данные были обработаны, и представляет собой преобразование входных потоков данных в выходные в соответствии с определенным алгоритмом. Физи­чески процесс может быть реализован различными способами: это может быть подразделение организации (отдел), выполняю­щее обработку входных документов и выпуск отчетов, програм­ма, и т.д. В названиях нет строгой системы требований, как, например, в IDEF0, где нотации имеют жестко определенный синтаксис процессов, но вообще-то принято использовать гла­голы, т.е. «создать клиента» (а не «создание клиента») или «об­работать заказ» (а не «проведение заказа»). Изображение про­цессов на диаграмме потоков данных такое же, как у систем, что показано на рис. 4.11.
Рис. 4.11. Графическое изображение процесса
Номер процесса служит для его идентификации. В поле имени вводится наименование процесса в виде предложения с активным недвусмысленным глаголом в неопределенной фор­ме (вычислить, рассчитать, проверить, определить, создать, по­лучить), за которым следуют существительные в винительном падеже, например: «Ввести сведения о налогоплательщиках»,
35
«Выдать информацию о текущих расходах», «Проверить посту­пление денег».
Информация в поле физической реализации показывает, ка­кое подразделение организации, программа или аппаратное устройство выполняет данный процесс.
Есть разница в нумерации блоков в IDEF0 и DFD – в послед­нем случае они изображаются через точку. То есть, например, если в IDEF0 блок имеет номер А42, то в DFD он будет нумеро­ваться А4.2. Еще одно отличие – в диаграммах DFD процессы и подсистемы располагаются не по принципу «выше–ниже», до­минантности и подчиненности, а справа налево в хронологиче­ском порядке обработки информации.
Накопитель данных — это абстрактное устройство для хра­нения информации, которую можно в любой момент поместить в накопитель и через некоторое время извлечь, причем способы помещения и извлечения могут быть любыми. Это внутреннее хранилище данных для процессов в системе. Поступившие дан­ные перед обработкой и результат после обработки, а также про­межуточные значения или результаты обработки должны где-то храниться. Это и есть базы данных, таблицы или любой другой вариант организации и хранения данных.
Накопитель данных может быть реализован физически в виде микрофиши, ящика в картотеке, таблицы в оперативной памя­ти, файла на магнитном носителе и т.д. Накопитель информа­ции на диаграмме потоков данных изображается, как показано на рис. 4.12.
Рис. 4.12. Графическое изображение накопителя данных
На диаграммах накопители данных идентифицируются рас­положенными слева буквой «D» + число. На рисунке 4.12 это «D1» Отметим, что накопитель данных не обязательно находит­ся в системе, он может быть и внешней сущностью. В этом слу­чае он изображается как внешняя сущность. При построении на-
36
званий потоков обычно применяется правило указывать объект, над которым совершается действие, и его статус, например «То­вар отгруженный».
Поток данных – это информация, передаваемая через некото­рое соединение от источника к приемнику. Физически соедине­ние может быть произвольным, не обязательно это электронное соединение, но это и, например, бумажный документооборот. Поток данных на диаграмме изображается линией, оканчи­вающейся стрелкой, которая показывает направление потока (рис. 4.13).
Рис. 4.13. Изображение направления потока данных
Каждый поток данных имеет имя, отражающее его содер­жание. Имя, как правило, раскрывает сущность передаваемой информации (например, как на рис 4.13, – «Отчетность по по­доходному налогу»). И, в отличие от диаграмм IDEF0, где рас­положение стрелок-дуг строго регламентировано, потоки могут присоединяться к блокам в произвольном месте.
4.6. Построение иерархии диаграмм потоков данных
Методологически построение модели DFD совпадает с други­ми нотациями, но есть и серьезные различия. Связаны они с тем, что у каждого стандарта есть своя специфика, что и отражается и нотациях, и в методах построения диаграмм. Но также, как и в других методологиях, главная цель построения иерархии DFD заключается в том, чтобы сделать описание системы ясным, по­нятным и целостным на каждом уровне детализации.
37
Первым шагом при построении иерархии DFD является по­строение контекстных диаграмм. Обычно при проектировании относительно простых систем строится единственная контекст­ная диаграмма со звездообразной топологией, в центре кото­рой находится так называемый главный процесс, соединен­ный с приемниками и источниками информации, посредством которых с системой взаимодействуют пользователи и дру­гие внешние системы. Пример такой диаграммы приводится на рис. 4.14.
Рис. 4.14. Начальная контекстная диаграмма для библиотеки
Однако в некоторых случаях (например, наличие большого количества внешних сущностей (десять и более), распределен­ная природа системы, многофункциональность системы с уже сложившейся или выявленной группировкой функций в отдель­ные подсистемы) целесообразнее и нагляднее построить несколь­ко контекстных диаграмм с иерархией. При этом контекстная диаграмма верхнего уровня содержит не единственный главный процесс, а набор подсистем, соединенных потоками данных.
38
Контекстные диаграммы следующего уровня детализируют кон­текст и структуру подсистем. Затем все построенные диаграммы сводятся в одну диаграмму нулевого уровня.
Существует и альтернативный подход к разработке системы, обычно применяемый при создании программного обеспечения, называемый событийным разделением, в котором различные диаграммы DFD выстраивают модель системы. Вначале ло-
гическая модель строится как совокупность процессов и доку­ментирования того, что эти процессы должны делать. Затем с помощью модели окружения система описывается как взаи­модействующий с событиями из внешних сущностей объект. Модель окружения обычно содержит описание цели системы, одну контекстную диаграмму и список событий. Контекстная диаграмма содержит один блок, изображающий систему в це­лом, внешние сущности, с которыми система взаимодейству­ет (как минимум, одну внешнюю сущность и один блок), ссыл­ки и некоторые стрелки, импортированные из диаграмм IDEF0 и DFD. Следующий шаг – моделирование поведения. Эта модель показывает, как система обрабатывает события. Эта модель состоит из одной диаграммы, в которой каждый блок изобра­жает каждое событие из модели окружения, могут быть добав­лены хранилища для моделирования данных, которые необхо­димо запоминать между событиями. Потоки добавляются для связи с другими элементами, и диаграмма проверяется с точки зрения соответствия модели окружения.
Отметим, что поскольку в DFD-диаграммах изображается го­раздо больше объектов, чем, например, в JDEF0, то при постро­ении диаграмм следует придерживаться некоторых правил (под­черкнем, что правило – не закон, бывают исключения).
Правило первое – «Правило не больше 7». Размещать на каж­дой диаграмме от 3 до 6–7 процессов (аналогично SADT). По­скольку на каждой диаграмме присутствуют и другие объекты (внешние сущности, накопители данных), то диаграмма получа­ется сложной для понимания. Лучше потом добавить еще один уровень декомпозиции. Но и нельзя переборщить: если объектов меньше 3, то количество диаграмм неоправданно возрастает.
Правило второе: не загромождать диаграммы несуществен­ными на данном уровне деталями.
39
Правило третье – декомпозицию потоков данных осущест-
влять одновременно с декомпозицией процессов.
Правило четвертое – выбирать ясные, отражающие суть дела имена процессов и потоков, при этом стараться не использовать аббревиатуры.
Для иллюстрации действенности этих правил приведем при­мер из конкретного госзаказа по выработке алгоритма решения по оптимальной скорости движения составов на железной доро­ге. Начальная диаграмма приведена на рис. 4.15.
Рис. 4.15. Контекстная диаграмма допускаемых скоростей
Очевидно, что при подобной загроможденности диаграмм в них трудно разобраться даже IT-специалистам, не говоря о за­казчиках.
После построения контекстных диаграмм, полученную мо­дель следует проверить на полноту исходных данных об объ­ектах системы и изолированность объектов (отсутствие инфор-
40
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]