- •1.Введение в системный анализ и моделирование
- •1.1.Введение
- •1.2. Предмет системного анализа
- •1.3. Многоаспектность строения и функционирования систем
- •1.4. Цель, задача, структура, система, системность
- •Исходная таблица состояний информационно-логической задачи.
- •1.5. Классификация систем. Большие и сложные системы.
- •1.6. Управление в системе и управление системой.
- •1.7 Выводы
- •Вопросы для самоконтроля
- •2.Теория графов и программно-целевой метод анализа предметных областей
- •2.1. Методы теории множеств в информационных классификациях
- •2.2 Обозначения теории графов
- •2.3. Семантические сети
- •2.4. Пример использования системного анализа предметной области
- •2.5. Программно-целевой подход в системных задачах
- •2.5.1.Этапы и область применения программно-целевого подхода
- •2.5.2.Алгоритм декомпозиции
- •2.5.2.1.Стадии анализа и синтеза
- •2.5.2.2. Метод структурного анализа
- •2.5.2.3. Методы декомпозиции
- •2.5.2.4. Требования, предъявляемые к декомпозиции.
- •2.5.2.5. Алгоритм декомпозиции
- •2.5.3.Агрегирование систем
- •2.5.3.1. Уровни агрегирования
- •2.5.3.2. Типы связей в системе
- •1.Связи взаимодействия (координации):
- •3.Связи преобразования:
- •2.5.3.3. Виды агрегирования
- •2.6. Выводы
- •Вопросы для самоконтроля.
- •7. Алгоритм декомпозиции.
- •3. Структурный подход к моделированию предметной области
- •3.1. Сущность структурного подхода
- •3.2. Методология функционального моделирования sadt
- •3.2.1. Технология структурного анализа и проектирования
- •3.2.2. Функциональная модель и ее состав
- •3.2.3. Иерархическая структура диаграмм.
- •3.2.4. Связи между функциями.
- •Типы связей и относительная их значимость.
- •Перечень типов связей и области применения.
- •3.3. Моделирование потоков данных
- •3.4. Моделирование данных
- •3.4.1. Case-метод Баркера
- •3.4.2. Методология idef1
- •3.5. Образец использования структурного подхода: фильмотека
- •3.5.1. Описание предметной области
- •3.5.2. Фазы проекта
- •Типы событий.
- •Матрица событий.
- •3.6. Выводы
- •Вопросы для самоконтроля
- •5. Моделирование потоков данных.
- •4.Объектно-ориентированная методология анализа и моделирования предметной области
- •4.1.Этапы развития uml и используемые методологии проектирования
- •4.1.1. Основные этапы развития uml.
- •4.1.2. Методология объектно-ориентированного программирования
- •4.1.3. Методология ооап
- •4.1.4. Особенности системного анализа и моделирования при проектировании информационных и программных систем
- •4.2. Базовые элементы языка uml
- •4.2.1. Общие сведения
- •4.2.2. Структура языка uml
- •4.2.3. Пакеты языка uml
- •4.2.4. Основные пакеты метамодели uml
- •4.2.4.1. Пакет «Основные элементы»
- •4.2.4.2. Пакет «Элементы поведения»
- •4.2.4.3. Пакет «Общие механизмы.
- •4.2.5. Особенности описания метамодели uml
- •4.2.6. Особенности изображения диаграмм uml
- •4.2.7. Примеры использования диаграмм
- •Interaction diagram (диаграмма взаимодействия)
- •5. Rational Rose и объектно-ориентированное проектирование
- •5.1. Функциональные особенности Rational Rose
- •5.2. Объектно-ориентированная методология анализа предметной области и моделирование бизнес-процессов
- •5.2.1. Средства и методы моделирования бизнес процессов
- •5.2.2. Пример моделирования предметной области
- •5.3. Выводы
- •Вопросы для самоконтроля.
- •1. Методология объектно-ориентированного программирования.
- •6. Методы анализа предметной области при нечетких условиях выбора решений
- •6.1. Нечеткая логика – математические основы
- •6.2. Основы нечеткого управления
- •Результаты анализа правил установки мощности калорифера.
- •6.3. Системы управления с нечеткой логикой
- •6.4. Выводы
- •Вопросы для самоконтроля
- •Нормативные источники
- •Обязательная литература
- •Рекомендуемая литература
- •Источники интернет
- •1.1.2.2 Осуществлять контроль качества обучения, в том числе посещаемости занятий, сроков их проведения, успеваемости и пр.
- •1.1.2.3 Организовать выполнение и защиту дипломных работ
- •1.1.3 Подвести итоги работ за год
- •1.2.2 Провести учебно–методическую работу в обеспечение выполнения учебного план
- •1.2.3 Выполнить учебный план
3.3. Моделирование потоков данных
В основу данной методологии (методологии Gane/Sarson) положена модель системы - реально существующей или проектируемой. По этой методологии модель определяется иерархией диаграмм потоков данных (ДПД или DFD), описывающих асинхронное преобразование информации от ее ввода в систему до выдачи пользователю. Диаграммы верхних уровней иерархии (контекстные диаграммы) определяют основные процессы или подсистемы с внешними входами и выходами. Они детализируются диаграммами нижнего уровня. Этот процесс создавая многоуровневой иерархии диаграмм продолжается, до достижения уровня декомпозиции, на котором процессы становятся элементарными без нужды в дальнейшей детализации.
Внешние сущности создают информационные потоки, доставляющие информацию к подсистемам и процессам. Последние преобразуют информацию и создают новые потоки, для ее передачи на следующие уровни, к накопителям данных или внешним потребителям информации.
Итак, основные компоненты диаграмм потоков данных суть:
внешние сущности;
системы/подсистемы;
процессы;
накопители данных;
потоки данных.
Внешние сущности.
Внешняя сущность - источник или приемник информации, например, заказчики, клиенты, поставщики, склад, персонал. Определение объекта или системы как внешней сущности указывает на ее положение вне анализируемой системы. При анализе ряд внешних сущностей можно перенести внутрь диаграммы системы и наоборот. Внешняя сущность обозначается квадратом (рис. 3.3.1.), расположенным "над" диаграммой и бросающим на нее тень для его выделения среди других обозначений:
|
Рис. 3.3.1. Внешняя сущность.
Системы и подсистемы.
При построении модели сложную систему можно представить в общем виде на контекстной диаграмме в виде единого целого, либо ее можно декомпозировать на ряд подсистем. Изображение подсистемы на диаграмме дано на рис. 3.3.2.
|
Рис. 3.3.2. Изображение подсистемы на диаграмме потоков данных.
Номер подсистемы нужен для ее идентификации, в поле имени дано наименование подсистемы в виде развернутого предложения.
Процессы.
Процесс есть преобразование входных потоков данных в выходные по определенному алгоритму. Физически преобразование можно реализовать по-разному: как отдел по обработке входных документов и выпуску отчетов, аппаратно реализованное логическое устройство, программа и т.д.
Изображение процесса на диаграмме потоков данных дано на рис. 3.3.3.
|
Рис. 3.3.3. Изображение процесса на диаграмме потоков данных.
Номер идентифицирует процесс. В поле имени наименование процесса именуется предложения с активным глаголом в неопределенной форме (вычислить, проверить, создать) и существительными в винительном падеже, например:
"Ввести сведения о клиентах";
"Выдать информацию о кредитной истории".
Понимание глаголов должно быть однозначно, а слова типа "модернизировать" или "обработать" требуют дальнейшего анализа. Поле физической реализации показывает, какое подразделение, аппарат или программа выполняет процесс.
Накопители данных.
Накопитель - абстрактный контейнер для хранения информации с произвольными функциями ее размещения и удаления. Физическая реализация накопителя может быть любой, его изображение на диаграмме потоков данных показано на рис. 3.3.4.
|
Рис. 3.3.4. Изображение накопителя данных на диаграмме потоков данных.
Идентифицикатор накопителя содержит букву "D" и произвольное число, его имя выбирается по наибольшей информативности для проектировщика.
Вообще накопитель - прообраз будущей базы данных, и описание хранящихся в нем данных должно быть связано с информационной моделью.
Потоки данных.
Поток данных определяет информацию, передаваемую от источника к приемнику через некоторое соединение. Физическая реализация потока может быть произвольной.
Поток данных на диаграмме изображается линией, направление потока показано стрелкой (рис. 3.3.5.). Поток имеет имя, отражающее его содержание.
|
Рис. 3.3.5. Изображение потока данных на диаграмме.
Иерархия диаграмм потоков данных.
Для иерархии диаграмм потоков данных (ДПД) сначала строятся контекстные диаграммы. В относительно простых системах строится одна диаграмма с топологией «звезда», где в центре находится главный процесс, соединенный с приемниками и источниками информации, играющими роль внешнего интерфейса системы.
Если в сложной системе оставить одну контекстную диаграмму, то в ней будет слишком много источников и приемников информации, что трудно отобразить на бумаге нормального формата, да и один главный процесс не отражает структуру распределенной системы. Признаки контекстной сложности:
порядка 10 и более внешних сущностей;
распределенная природа системы;
многофункциональность системы со сгруппированными подсистемами функций.
В сложных системах нужна иерархия контекстных диаграмм, когда диаграмма верхнего уровня содержит не один главный процесс, а набор подсистем, соединенных потоками данных. Диаграммы следующего уровня уточняют контекст и структуру подсистем.
Иерархией контекстных диаграмм дано взаимодействие основных функциональных подсистем между собой и с внешними объектами (источниками и приемниками информации) и потоками данных. Тем самым решается проблема определения функциональной структуры системы на ранних этапах ее проектирования.
После создания контекстных диаграмм полученную модель проверяют на полноту исходных данных об объектах системы и связность объектов (наличие информационных связей с другими объектами).
Каждая подсистема из контекстных диаграмм детализируется при помощи ДПД. Каждый процесс на ДПД, в свою очередь, тоже можно детализировать при помощи ДПД или миниспецификации.
При детализации соблюдают следующие правила:
балансировка - при детализации подсистемы или процесса новая диаграмма может обмениваться информацией только с теми внешними компонентами, с которыми информационно связана детализируемая подсистема на родительской диаграмме;
нумерация - детализация процессов сохраняет их иерархическую нумерацию. Так, процессы, детализирующие процесс 12, имеют номера 12.1, 12.2, 12.3 и т.д.
При построении иерархии ДПД к детализации процессов переходят после определения всех потоков и накопителей данных при помощи структур данных, которые могут содержать альтернативы (в структуру может входить один из перечисленных элементов), условные вхождения (данная компонента может отсутствовать в структуре) и итерации (вхождение любого количества элементов из диапазона).
Элемент данных может иметь тип (непрерывные или дискретные данные). Для непрерывных данных указывают единицу измерения, диапазон значений и точность представления. Для дискретных данных можно указать таблицу допустимых значений.
Миниспецификация процесса должна формулировать его основные функции так, чтобы дальше при реализации проекта, их можно было выполнить непосредственно. Завершение детализации процесса происходит по следующим критериям:
наличие у процесса 2-3 потоков входных и выходных данных;
возможность последовательного алгоритма преобразования данных;
выполнение процессом одной функции преобразования информации;
не более 20-30 строк для миниспецификации описания логики процесса.
По окончании построения модель системы верифицируют (проверяют на полноту и согласованность). В полной модели все элементы подробно описаны и детализированы.
В согласованной модели для всех потоков и накопителей данных выполняется правило сохранения информации: все поступающие данные должны быть приняты, а все принятые записаны.
