C = g(B) = g(f(A)) (1)
Функциональная связность
Моделирование потоков данных (процессов). В основе данной методологии
(методологии Gane/Sarson) лежит построение модели анализируемой ИС -
проектируемой или реально существующей. В соответствии с методологией
модель системы определяется как иерархия диаграмм потоков данных (ДПД или
DFD), описывающих асинхронный процесс преобразования информации от ее ввода
в систему до выдачи пользователю. Диаграммы верхних уровней иерархии
(контекстные диаграммы) определяют основные процессы или подсистемы ИС с
внешними входами и выходами. Они детализируются при помощи диаграмм нижнего
уровня. Такая декомпозиция продолжается, создавая многоуровневую иерархию
диаграмм, до тех пор, пока не будет достигнут такой уровень декомпозиции,
на котором процесс становятся элементарными и детализировать их далее
невозможно.
Источники информации (внешние сущности) порождают информационные
потоки (потоки данных), переносящие информацию к подсистемам или процессам.
Те в свою очередь преобразуют информацию и порождают новые потоки, которые
переносят информацию к другим процессам или подсистемам, накопителям данных
или внешним сущностям - потребителям информации. Таким образом, основными
компонентами диаграмм потоков данных являются:
внешние сущности;
системы/подсистемы;
процессы;
накопители данных;
потоки данных.
Внешние сущности. Внешняя сущность представляет собой материальный
предмет или физическое лицо, представляющее собой источник или приемник
информации, например, заказчики, персонал, поставщики, клиенты, склад.
Определение некоторого объекта или системы в качестве внешней сущности
указывает на то, что она находится за пределами границ анализируемой ИС. В
процессе анализа некоторые внешние сущности могут быть перенесены внутрь
диаграммы анализируемой ИС, если это необходимо, или, наоборот, часть
процессов ИС может быть вынесена за пределы диаграммы и представлена как
внешняя сущность. Внешняя сущность обозначается квадратом (рисунок 15),
расположенным как бы "над" диаграммой и бросающим на нее тень, для того,
чтобы можно было выделить этот символ среди других обозначений:
[pic]
Внешняя сущность
Системы и подсистемы. При построении модели сложной ИС она может быть представлена в самом общем виде на так называемой контекстной диаграмме в виде одной системы как единого целого, либо может быть декомпозирована на ряд подсистем.
Подсистема (или система) на контекстной диаграмме изображается следующим образом (рисунок 16).
[pic]
Подсистема
Номер подсистемы служит для ее идентификации. В поле имени вводится наименование подсистемы в виде предложения с подлежащим и соответствующими определениями и дополнениями.
Процессы. Процесс представляет собой преобразование входных потоков данных в выходные в соответствии с определенным алгоритмом. Физически процесс может быть реализован различными способами: это может быть подразделение организации (отдел), выполняющее обработку входных документов и выпуск отчетов, программа, аппаратно реализованное логическое устройство и т.д.
Процесс на диаграмме потоков данных изображается, как показано на рисунке 17.
[pic]
Процесс
Номер процесса служит для его идентификации. В поле имени вводится
наименование процесса в виде предложения с активным недвусмысленным
глаголом в неопределенной форме (вычислить, рассчитать, проверить,
определить, создать, получить), за которым следуют существительные в
винительном падеже, например:
"Ввести сведения о клиентах";
"Выдать информацию о текущих расходах";
"Проверить кредитоспособность клиента".
Использование таких глаголов, как "обработать", "модернизировать" или
"отредактировать" означает, как правило, недостаточно глубокое понимание
данного процесса и требует дальнейшего анализа.
Информация в поле физической реализации показывает, какое подразделение организации, программа или аппаратное устройство выполняет данный процесс.
Накопители данных. Накопитель данных представляет собой абстрактное устройство для хранения информации, которую можно в любой момент поместить в накопитель и через некоторое время извлечь, причем способы помещения и извлечения могут быть любыми. Накопитель данных может быть реализован физически в виде микрофиши, ящика в картотеке, таблицы в оперативной памяти, файла на магнитном носителе и т.д. Накопитель данных на диаграмме потоков данных изображается, как показано на рисунке 18.
[pic]
Накопитель данных
Накопитель данных идентифицируется буквой "D" и произвольным числом.
Имя накопителя выбирается из соображения наибольшей информативности для
проектировщика.
Накопитель данных в общем случае является прообразом будущей базы данных и описание хранящихся в нем данных должно быть увязано с информационной моделью.
Поток данных определяет информацию, передаваемую через некоторое соединение от источника к приемнику. Реальный поток данных может быть информацией, передаваемой по кабелю между двумя устройствами, пересылаемыми по почте письмами, магнитными лентами или дискетами, переносимыми с одного компьютера на другой и т.д.
Поток данных на диаграмме изображается линией, оканчивающейся стрелкой, которая показывает направление потока (рисунок 19). Каждый поток данных имеет имя, отражающее его содержание.
[pic]
Поток данных
Построение иерархии диаграмм потоков данных. Первым шагом при построении иерархии ДПД является построение контекстных диаграмм. Обычно при проектировании относительно простых ИС строится единственная контекстная диаграмма со звездообразной топологией, в центре которой находится так называемый главный процесс, соединенный с приемниками и источниками информации, посредством которых с системой взаимодействуют пользователи и другие внешние системы.
Если же для сложной системы ограничиться единственной контекстной диаграммой, то она будет содержать слишком большое количество источников и приемников информации, которые трудно расположить на листе бумаги нормального формата, и кроме того, единственный главный процесс не раскрывает структуры распределенной системы. Признаками сложности (в смысле контекста) могут быть: наличие большого количества внешних сущностей (десять и более); распределенная природа системы; многофункциональность системы с уже сложившейся или выявленной группировкой функций в отдельные подсистемы.
Для сложных ИС строится иерархия контекстных диаграмм. При этом контекстная диаграмма верхнего уровня содержит не единственный главный процесс, а набор подсистем, соединенных потоками данных. Контекстные диаграммы следующего уровня детализируют контекст и структуру подсистем.
Иерархия контекстных диаграмм определяет взаимодействие основных функциональных подсистем проектируемой ИС как между собой, так и с внешними входными и выходными потоками данных и внешними объектами (источниками и приемниками информации), с которыми взаимодействует ИС.
Разработка контекстных диаграмм решает проблему строгого определения функциональной структуры ИС на самой ранней стадии ее проектирования, что особенно важно для сложных многофункциональных систем, в разработке которых участвуют разные организации и коллективы разработчиков.
После построения контекстных диаграмм полученную модель следует проверить на полноту исходных данных об объектах системы и изолированность объектов (отсутствие информационных связей с другими объектами).
Для каждой подсистемы, присутствующей на контекстных диаграммах, выполняется ее детализация при помощи ДПД. Каждый процесс на ДПД, в свою очередь, может быть детализирован при помощи ДПД или миниспецификации. При детализации должны выполняться следующие правила: правило балансировки - означает, что при детализации подсистемы или процесса детализирующая диаграмма в качестве внешних источников/приемников данных может иметь только те компоненты (подсистемы, процессы, внешние сущности, накопители данных), с которыми имеет информационную связь детализируемая подсистема или процесс на родительской диаграмме; правило нумерации - означает, что при детализации процессов должна поддерживаться их иерархическая нумерация. Например, процессы, детализирующие процесс с номером 12, получают номера 12.1, 12.2, 12.3 и т.д.
Миниспецификация (описание логики процесса) должна формулировать его основные функции таким образом, чтобы в дальнейшем специалист, выполняющий реализацию проекта, смог выполнить их или разработать соответствующую программу.
Миниспецификация является конечной вершиной иерархии ДПД. Решение о завершении детализации процесса и использовании миниспецификации принимается аналитиком исходя из следующих критериев: наличия у процесса относительно небольшого количества входных и выходных потоков данных (2-3 потока); возможности описания преобразования данных процессом в виде последовательного алгоритма; выполнения процессом единственной логической функции преобразования входной информации в выходную; возможности описания логики процесса при помощи миниспецификации небольшого объема (не более 20-30 строк).
При построении иерархии ДПД переходить к детализации процессов следует только после определения содержания всех потоков и накопителей данных, которое описывается при помощи структур данных. Структуры данных конструируются из элементов данных и могут содержать альтернативы, условные вхождения и итерации. Условное вхождение означает, что данный компонент может отсутствовать в структуре. Альтернатива означает, что в структуру может входить один из перечисленных элементов. Итерация означает вхождение любого числа элементов в указанном диапазоне. Для каждого элемента данных может указываться его тип (непрерывные или дискретные данные). Для непрерывных данных может указываться единица измерения (килограммы, рубли и т.п.), диапазон значений, точность представления и форма физического кодирования. Для дискретных данных может указываться таблица допустимых значений.
После построения законченной модели системы ее необходимо верифицировать (проверить на полноту и согласованность). В полной модели все ее объекты (подсистемы, процессы, потоки данных) должны быть подробно описаны и детализированы. Выявленные недетализированные объекты следует детализировать, вернувшись на предыдущие шаги разработки. В согласованной модели для всех потоков данных и накопителей данных должно выполняться правило сохранения информации: все поступающие куда-либо данные должны быть считаны, а все считываемые данные должны быть записаны.
Методология IDEF. Метод IDEF1, разработанный Т.Рэмей (T.Ramey),
основан на подходе П.Чена и позволяет построить модель данных,
эквивалентную реляционной модели в третьей нормальной форме. В настоящее
время на основе совершенствования методологии IDEF1 создана ее новая версия
- методология IDEF1X. IDEF1X разработана с учетом таких требований, как
простота изучения и возможность автоматизации. IDEF1X-диаграммы
используются рядом распространенных CASE-средств (в частности, ERwin,
Design/IDEF).
Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17