Основными идеями функционально-ориентированной CASE-технологии являются идеи структурного анализа и проектирования информационных систем. Они заключаются в следующем:
1) декомпозиция всей системы на некоторое множество иерархически подчиненных функций.
2)
2) представление всей информации в виде графической нотации. Систему всегда легче понять, если она изображена графически.
В качестве инструментальных средств структурного анализа и проектирования выступают следующие диаграммы:
• BFD (Bussiness Function Diagram) - диаграмма бизнес-функций (функциональные спецификации);
• ERD (Entity Relationship Diagram) - ER-модель данных предметной области (информационно-логические модели «сущность-связь»);
• SSD (System Structure Diagram) - диаграмма структуры программного приложения.
Диаграммы функциональных спецификаций позволяют представить общую структуру ИС, отражающую взаимосвязь различных задач (процедур) в процессе получения требуемых результатов. Основными объектами BFD являются:
• Функция - некоторое действие информационной системы, необходимое для решения экономической задачи;
• Декомпозиция функции - разбиение функции на множество подфункций.
Изображение объектов диаграммы иерархии функций представлено в табл. 16.1 в нотациях:
• Йодана (Yourdon);
• Гейна - Сарсона (Gane - Sarson);
• SADT (Structured Analysis and Design Technique);
• SAG (Software AG).
В качестве примера рассмотрим фрагмент диаграммы иерархии функций в нотации SAG (рис. 16.2) для задачи аналитического учета товаров на складе.
Как видно из рис. 16.2, одной из функций аналитического учета товаров на складе является организация товародвижения. Далее эта функция декомпозируется на следующие подфункции: приемка товара; отпуск товара; ведение БД «Движение товаров»; инвентарный контроль.
Рис. 16.2. Фрагмент диаграммы иерархии функций для задачи аналитического учета товаров на складе
Диаграммы потоков данных (ДПД), как правило, жестко ориентированы на какую-либо технологию обработки данных и отражают передачу информации от одной функции к другой в рамках заданной технологии обработки. В узлах диаграммы потоков данных (прямоугольниках) отражаются процедуры, а стрелками между узлами показываются потоки данных (над стрелками задаются имена передаваемых/используемых единиц информации - документов, экранных форм, файлов).
Рассмотрим основные понятия диаграммы потоков данных.
ДПД - показывает внешние по отношению к системе источники данных и адресатов, которые принимают информацию от системы, а также идентифицируют хранилища данных (накопители данных), к которым осуществляется доступ системы. Каждая логическая функция системы (бизнес-функция) описывается своей ДПД. Причем эта ДПД может иерархически детализировать функцию на ее подфункции.
Определим основные объекты ДПД и их графические изображения в различных нотациях (табл. 16.2).
Потоки данных - являются механизмами, которые показывают передачу информации от одного процесса к другому. На схемах они обычно отражаются направленной стрелкой, которая показывает направление движения информации или материалов (могут отражаться материальные потоки).
Процесс - его функция состоит в преобразовании входной информации в выходную. Имя процесса всегда должно содержать глагол в неопределенной форме с последующим дополнением (например, «нарисовать форму»).
Хранилище информации - позволяет на определенных участках ДПД сохранить в памяти данные между процессами. Хранилище не обязательно представлено магнитным носителем (например, папка бумаг). Имя хранилища должно идентифицировать его, а также его содержимое, выражается существительным.
Внешняя сущность (источник/приемник данных) - представляет некоторый объект вне системы, являющийся внешним объектом.
Контекстная диаграмма - самый верхний процесс (ТОР-уровень) декомпозиции системы, который отражает общие представления о системе. В контекстной диаграмме есть 1 процесс, с которым связаны внешние сущности.
Далее контекстная диаграмма декомпозируется на основные процессы, которые происходят в системе. Каждый основной процесс может быть декомпозирован на более мелкие процессы. При иерархическом построении ДПД каждый процесс более низкого уровня нужно соотнести с процессом более высокого уровня. Обычно для этого используют механизм наследования узлов.
Целью построения иерархически взаимосвязанных ДПД является необходимость сделать требования к системе ясными на каждом уровне детализации. Для этого надо пользоваться следующими рекомендациями:
• на каждом уровне представлять 3 - 6 процессов и не более;
• не загромождать диаграмму несущественными моментами на данном уровне детализации;
• декомпозицию процессов и потоков вести параллельно;
• выбирать ясные, отражающие суть объектов, имена для всех объектов ДПД;
• однократно определять функционально идентичные процессы (в других местах просто ссылаться на этот процесс);
• использовать ДПД для процессов, которые можно с помощью них описать.
Пример контекстной диаграммы и диаграмм 1-го уровня в нотации SADT для задачи аналитического учета товаров на складе приведен на рис. 16.3.
Как видно из рисунка, на уровне контекстной диаграммы показаны основная цель построения ДПД и потоки информации, необходимые для ее достижения. В дальнейшем контекстная диаграмма детализируется на первом уровне, где отражаются основные функции, которые взаимосвязаны информационными потоками.
Диаграммы переходов состояний (ДПС) моделируют поведение системы во времени в зависимости от происшедших событий (нажатая клавиша, дата отчетного периода и т.д.). Такие диаграммы позволяют осуществить декомпозицию управляющих процессов, происходящих в системе, и описать отношение между управляющими потоками. С помощью ДПС можно моделировать последующее функционирование системы исходя из предыдущих и текущего состояний.