Файл: Учебник Рекомендовано Федеральным государственным учреждением.pdf

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 08.11.2023

Просмотров: 795

Скачиваний: 16

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
частей, каждая из которых, в свою очередь, строится из частей меньшего размера. Процесс продолжается до тех пор, пока самые небольшие части станут доступны для восприятия и понимания.
Это означает, что сложную программную систему нужно разделять
(декомпозировать) на небольшие подсистемы и рассматривать их независимо друг от друга.
4 .2 . Структурны й под ход в м оделирован ии
п редм етн ой обл асти
4.2.1. Сущность структурного подхода
Сущность структурного подхода к разработке ИС заключается в ее декомпозиции (разбиении) на автоматизируемые функции: система разбивается на функциональные подсистемы, которые в свою очередь делятся на подфункции, подразделяемые на задачи, и т. д. Процесс разбиения продолжается вплоть до конкретных процедур. При этом автоматизируемая система сохраняет целост­
ное представление, в котором все составляющие компоненты взаимоувязаны. При разработке системы «снизу-вверх» от отдель­
ных задач ко всей системе целостность теряется, возникают про­
блемы при информационной стыковке отдельных компонентов.
Структура проектируемой системы должна быть таковой, что­
бы все взаимодействие между ее подсистемами укладывалось в ограниченные стандартные рамки:
— каждая подсистема должна инкапсулировать свое содержимое
(скрывать его от других подсистем);
— каждая подсистема должна иметь четкий интерфейс с други­
ми подсистемами.
Инкапсуляция дает возможность рассматривать структуру каж­
дой подсистемы независимо от других подсистем. Интерфейсы позволяют строить систему более высокого уровня, рассматривая каждую подсистему как единое целое.
Все наиболее распространенные методологии структурного подхода базируются на следующих принципах:
— принцип «разделяй и властвуй» — решение сложных проблем путем их разбиения на множество меньших независимых задач, легких для понимания и решения;
— принцип иерархического упорядочивания — организация составных частей проблемы в иерархические древовидные струк­
туры с добавлением новых деталей на каждом уровне.
В структурном анализе используют группы средств, иллюстри­
рующих функции, выполняемые системой, и отношения между
данными. Каждой группе средств соответствуют определенные виды моделей (диаграмм), наиболее распространенными среди которых являются следующие:
— SADT (Structured Analisis and Design Technique — метод струк­
турного анализа и проектирования) — модели и соответствующие диаграммы;
— DFD (Data Flow Diagrams) — диаграммы потоков данных;
— ERD (Entity-Relationship Diagrams) — диаграммы «сущность- связь» (модель данных).
Перечисленные модели в совокупности дают полное описание
ИС независимо от того, является ли она существующей или вновь разрабатываемой. Состав диаграмм в каждом конкретном случае зависит от необходимой полноты описания системы.
4.2.2. Методология функционального
моделирования SADT
Методология SADT является методологией функционального моделирования бизнес-процессов. Метод SADT поддерживается
Министерством обороны США, которое было инициатором раз­
работки стандарта IDEF01. Метод SADT представляет собой со­
вокупность правил и процедур, предназначенных для построения функциональной модели объекта какой-либо предметной области.
Функциональная модель отображает функциональную структуру объекта, т.е. производимые им действия и связи между этими действиями. Результатом применения методологии SADT являет­
ся модель, которая состоит из диаграмм, фрагментов текстов и глоссария, имеющих ссылки друг на друга.
Методология SADT может использоваться:
— для моделирования широкого круга систем и определения требований и функций;
— для разработки системы, которая удовлетворяет этим требо­
ваниям и реализует эти функции.
SADT может быть использована в существующих системах:
— для анализа функций, выполняемых системой;
— для указания механизмов, посредством которых они осущест­
вляются.
Диаграммы — главные компоненты модели. Функции системы и интерфейсы представлены на диаграммах как блоки и дуги.
Место соединения дуги с блоком определяет тип интерфейса.
Управляющая информация входит в блок сверху, в то время как
1 IDEF0
— методология функционального моделирования (представление
бизнес-системы в виде взаимосвязанных функций). Фактически это целое се­
мейство методологий от
IDEF0
до
IDEF14.
95

информация, которая подвергается обработке, показана с левой стороны блока, а результаты выхода показаны с правой стороны.
Механизм (человек или автоматизированная система), который осуществляет операцию, представлен дугой, входящей в блок снизу (рис. 4.1).
Одна из наиболее важных особенностей методологии SADT — постепенное введение все больших уровней детализации по мере создания диаграмм, отображающих модель.
Построение SADT-модели начинается с изображения всей системы в вице простейшей компоненты — одного блока и дуг, обозначающих интерфейсы с функциями вне системы. Посколь­
ку единственный блок характеризует всю систему как единое целое, имя, указанное в блоке, является общим. Это верно и для интерфейсных дуг — они также представляют полный набор внешних интерфейсов системы в целом.
Затем блок, который характеризует систему как единый модуль, детализируется на другой диаграмме с помощью нескольких бло­
ков, соединенных интерфейсными дугами. Эти блоки отражают основные подфункции исходной функции. Данная декомпозиция выявляет полный набор подфункций, каждая из которых дана как блок, границы которого определены интерфейсными дугами.
Каждая из этих подфункций может быть декомпозирована по­
добным образом для более детального изображения. Во всех слу­
чаях каждая подфункция может содержать только те элементы, которые входят в исходную функцию. Кроме того, модель не может опустить какие-либо элементы, т.е. как уже отмечалось, родитель­
ский блок и его интерфейсы обеспечивают контекст. К нему нельзя ничего добавить, и из него не может быть ничего удале­
но.
Модель SADT представляет собой серию диаграмм с сопрово­
дительной документацией, разбивающих сложный объект на со­
ставные части в виде блоков. Детали каждого из основных блоков показаны в виде блоков на других диаграммах. Каждая детальная диаграмма является декомпозицией блока из более общей диа-
Управление
Механизм
Имя функции
Результаты
Исходные данные
Рис. 4.1. Функциональный блок и интерфейсные дуги
96

Правила приема
и зачисления студентов
Заявления, документы
об образовании, паспорта,
страховые свидетельства,
ИНН и т.д.
Прием и зачисление
абитуриентов
Отчеты по приему
и зачислению студентов
АО
И нформационная
система
Приемная
комиссия
Рис. 4.2. Функциональная диаграмма начального уровня
граммы. На каждом шаге декомпозиции более общая диаграмма называется родительской для более детальной диаграммы.
Дуги, входящие в блок и выходящие из него на диаграмме верхнего уровня, являются теми же самыми, что и дуги, входящие в диаграмму нижнего уровня и выходящие из нее, потому что блок и диаграмма представляют одну и ту же часть системы.
Стрелки, приходящие с родительской диаграммы или уходящие на нее, нумеруют, используя символы и числа. Символ обознача­
ет тип связи: I — входные, С — управляющие, М — механизмы,
R — результаты. Число — номер связи по соответствующей сто­
роне родительского блока, считая сверху вниз и слева направо.
Все диаграммы связывают друг с другом иерархической нумера­
цией блоков: первый уровень — АО, следующий — Al, А 2,..., All,
А12, А13 и т.д., где «А1» — номер родительского блока, а «1» — номер конкретного субблока родительского блока. Детализацию завер­
шают при получении функций, назначение которых хорошо по­
нятно как заказчику, так и разработчику. Эти функции описыва­
ют, используя естественный язык или псевдокоды. В процессе построения иерархии диаграмм фиксируют всю уточняющую информацию и строят словарь данных, в котором определяют структуры и элементы данных, показанных на диаграммах. Таким образом, в результате получают спецификацию, которая состоит из иерархии функциональных диаграмм, описаний функций ниж­
него уровня и словаря, имеющих ссылки друг на друга.
На SADT-диаграммах не указаны явно ни последовательность, ни время. Обратные связи, итерации, продолжающиеся процессы и перекрывающиеся (по времени) функции могут быть изобра­
жены также с помощью дуг. Обратные связи могут выступать в виде комментариев, замечаний, исправлений и т.д.
Приведем пример построения функциональной диаграммы для информационной системы приема и зачисления студентов. Диа­
грамма, показанная на рис. 4.2, является диаграммой верхнего
97


Правила
приема и зачисления
студентов
Приемная
Информационная
комиссия
система
АО
Рис. 4.3. Функциональная диаграмма нулевого уровня (более подробный вариант)
Лицензии,
свидетельство
об аккредитации
А1
Рис. 4.4. Функциональная диаграмма первого уровня — «Прием и оформление документов»
уровня. На ней хорошо видно, что является исходными данными для системы, и получения каких результатов мы ожидаем. На функциональной диаграмме нулевого уровня (рис. 4.3) родитель­
ский блок АО разбивается на функциональные блоки Al, А2, АЗ,
А4. В свою очередь блок А1 может быть представлен на функцио­
нальной диаграмме первого уровня как четыре дочерних блока
All, А12, А13, А14 (рис. 4.4).
4.2.3. Диаграммы потоков данных DFD
Диаграмма потоков данных (DFD) состоит из узлов обработ­
ки данных, средств хранения данных и внешних по отношению к используемой диаграмме источников или потребителей дан­
ных.
Диаграмма потоков данных является основным средством мо­
делирования функциональных требований к системе — проекти­
руемой или реально существующей. В основе модели лежат по­
нятия внешней сущности, процесса, хранилища (накопителя данных) потока данных. Источники информации (внешние сущ­
ности) порождают информационные потоки (потоки данных), переносящие информацию к подсистемам или процессам. Те, в свою очередь, преобразуют информацию и порождают новые потоки, которые переносят информацию к другим процессам или подсистемам, накопителям данных или внешним сущностям — потребителям информации.
Для изображения диаграмм потоков данных традиционно ис­
пользуют два вида нотаций: нотацию Йордана и нотацию Гейна-
Сарсона (табл. 4.1).
Внешняя сущность — это материальный предмет или физиче­
ское лицо, представляющее собой источник или приемник ин­
формации, — заказчики, персонал, поставщики, клиенты, склад.
Определение некоторого объекта или системы в качестве внешней сущности указывает на то, что она находится за пределами границ анализируемой информационной системы. В процессе анализа некоторые внешние сущности могут быть перенесены внутрь, если это необходимо, или, наоборот, часть процессов информационной системы может быть вынесена за пределы диаграммы и представ­
лена как внешняя сущность.
При построении модели сложной информационной системы она может быть представлена в самом общем виде на так назы­
ваемой контекстной диаграмме как одна система, т. е. единое целое, либо может быть декомпозирована на ряд подсистем.
Номер подсистемы служит для ее идентификации. В поле име­
ни вводится наименование подсистемы в виде предложения
100


Т а б л и ц а 4.1
Понятие
Нотация Йордана
Нотация Гейна-Сарсона
Внешняя сущ­
ность
Наименование
Номер
Наименование
Система, подсис­
1   ...   5   6   7   8   9   10   11   12   ...   19

тема или
процесс
'
Наименование \
L
Номер
Ш
Г
Номер
^
Наименование
Механизм
V
J
Накопитель
данных
Наименование
№ Наименование
Поток
Наименование
Наименование
с подлежащим и соответствующими определениями и дополне­
ниями.
Процесс представляет собой преобразование входных потоков данных в выходные в соответствии с определенным алгоритмом.
Физически процесс может быть реализован различными спосо­
бами: это может быть подразделение организации (отдел), вы­
полняющее обработку входных документов и формирование от­
четов, программа, аппаратно реализованное логическое устрой­
ство и т.д. Номер процесса служит для его идентификации. В поле имени вводится наименование процесса, при этом использование таких глаголов, как «обработать», «модернизировать» или «отре­
дактировать», означает, как правило, недостаточно глубокое по­
нимание данного процесса и требует дальнейшего анализа. Ин­
формация в поле физической реализации показывает, какое подразделение организации, программа или аппаратное устрой­
ство выполняет данный процесс.
Накопитель данных представляет собой абстрактное устрой­
ство для хранения информации, которую можно в любой момент поместить в накопитель и через некоторое время извлечь, причем
101
способы помещения и извлечения могут быть любыми. Накопи­
тель данных может быть реализован физически в виде ящика в картотеке, таблицы в оперативной памяти, файла на магнитном носителе и т.д.
Накопитель данных в общем случае является прообразом базы данных, и описание хранящихся в нем данных должно быть увя­
зано с информационной моделью.
Поток данных определяет информацию, передаваемую через некоторое соединение от источника к приемнику. Реальный поток данных может быть информацией, передаваемой по кабелю между двумя устройствами, пересылаемыми по почте письмами, магнитными лентами или дискетами, переносимыми с одного компьютера на другой и т.д. Каждый поток данных имеет имя, отражающее его содержание.
Построение иерархии диаграмм потоков данных начинают с контекстной диаграммы, которая определяет общий вид системы.
На такой диаграмме описывают интерфейс системы с внешним миром, т.е. показывают, как разрабатываемая система будет взаимодействовать с потребителями и источниками информации.
Обычно начальная контекстная диаграмма имеет форму звезды.
Рис. 4.5. Начальная контекстная диаграмма (диаграмма нулевого
уровня) в нотации Йордана для АИС «Склад оптовой торговли»
102