- •Особенности структурного анализа и проектирования информационных систем
- •Введение
- •1. Построение моделей бизнес-процессов по стандарту idef0
- •1.1. Примитивы стандарта idef0
- •1.2. Виды ресурсов стандарта idef0 и их взаимосвязь
- •1.3. Особенности построения моделей по стандарту idef0
- •1.4. Пример декомпозиции процесса
- •1.5. Пример построения диаграмм idef0
- •1.7. Особенности создания диаграмм в программах bpWin и Ramus
- •1.6. Работа с тоннелями
- •1.8. Именование объектов в bpWin
- •1.9. Решение проблем с кодировкой и автоматической проверкой
- •1.10. Варианты заданий по построению моделей бизнес-процессов
- •1.11. Контрольные вопросы
- •1.12. Варианты тестовых заданий по контролю знаний в сфере построения моделей бизнес-процессов
- •2. Построение диаграмм потоков данных
- •2.1. Общие особенности методологии dfd
- •2.2. Внешние сущности
- •2.3. Системы и подсистемы
- •2.4. Процессы
- •2.5. Накопители данных
- •2.6. Потоки данных
- •2.7. Построение иерархии диаграмм потоков данных
- •2.8. Пример построения диаграммы потоков данных в программе bpwin
- •2.9. Особенности построения диаграмм dfd в программе Ramus
- •2.9.1. Создание новой диаграммы, работа с примитивами, классификаторами, особенности декомпозиции
- •2.9.2. Подробный пример построения диаграммы dfd
- •2.10. Варианты заданий по построению диаграмм потоков данных
- •2.11. Контрольные вопросы
- •2.12. Варианты тестовых заданий по контролю знаний в сфере построения диаграмм потоков данных
- •3. Проектирование реляционных баз данных посредством стандарта idef1x
- •3.1. Особенности построения структуры баз данных
- •3.2. Виды связей между таблицами
- •3.3. Особенности стандарта idef1x
- •3.4. Особенности построения схем idef1x в программе ErWin
- •3.4.1. Общие особенности программы ErWin
- •3.4.2. Работа с панелью инструментов и сущностями
- •3.4.3. Работа со связями между таблицами
- •3.5. Особенности построения схем idef1x в программе dbDesigner
- •3.5.1. Особенности работы с программой
- •3.5.2. Необходимые для работы кнопки панели инструментов
- •3.5.3. Настройка внешнего вида схем под стандарт idef1x
- •3.5.4. Работа с таблицами
- •3.5.5. Связи между таблицами
- •3.5.6. Удаление объектов схемы
- •3.5.7. Пример схемы idef1x в dbDesigner
- •3.6. Варианты заданий по построению схем реляционных баз данных
- •3.6. Контрольные вопросы
- •3.7. Варианты тестовых заданий по контролю знаний в сфере построения схем баз данных
- •4. Проектирование диалога с пользователем посредством транзитивных сетей
- •4.1. Проектирование диалога с пользователем
- •4.2. Простая транзитивная сеть
- •4.3. Рекурсивная транзитивная сеть
- •4.4. Подсеть, не связанная с рекурсией
- •4.5. Проектирование конкурентного диалога
- •4.6. Особенности построения транзитивных сетей в программе Dia
- •4.6.1. Подготовка новой панели под создание транзитивных сетей
- •4.6.2. Основные моменты построения транзитивных сетей в программе Dia
- •4.6.3. Пример построения транзитивной сети в программе Dia
- •4.7. Варианты заданий по построению логики диалога с пользователем
- •4.8. Контрольные вопросы
- •4.9. Варианты тестовых заданий по контролю знаний в сфере построения логики диалога пользователя с системой
- •Литература
- •Особенности структурного анализа и проектирования информационных систем
4.3. Рекурсивная транзитивная сеть
Основным признаком необходимости построения такой сети является наличие подсетей. Для рекурсивной подсети характерны все характеристики основной сети, а отличие состоит в том, что в подсеть можно попасть из различных состояний основной сети, а затем вернуться в состояние, явившееся точкой входа в подсеть. Причем, если в сети существует состояние, являющееся входом в рекурсивную подсеть, то рекурсивная подсеть автоматически запускается, то есть не существует действия пользователя, которое ведет в рекурсивную подсеть. Пусть рассматриваемая ранее система должна иметь архив, то есть возможность просматривать данные, полученные ранее. Запросы отправляются в архив из состояний 5 и 8 (Если данные редактируются, то вход в подсеть из состояния 5 сети на рисунке 4.3. Если данные просматриваются – то из состояния 8), а просмотреть архив можно из любого состояния.
Рис. 4.6. Описание структуры подсети
На схеме, отображенной на рисунке 4.3, рекурсивная подсеть явно не отображается. Когда подсеть отработала, то происходит возврат в состояние входа в подсеть сети на рисунке 4.3, и автомат, изображенный на рисунке 4.3, продолжает работу.
В рекурсивной подсети на рисунке 4.6 состояния пронумерованы в соответствии с номерами состояний, из которых происходит вход из основной сети в подсеть (Состояния 5 и 8 в данном случае являются входными для рекурсивной подсети). Остальные состояния (Не относящиеся к начальным и конечным) в подсети номеруются цифрой и буквой. Цифра играет роль порядкового номера состояния, а буква – порядкового номера подсети. Например, если есть большая сеть, то в первой подсети состояния нумеруются 1а, 2а, 3а …, во второй подсети 1б, 2б, 3б … и т.д.
4.4. Подсеть, не связанная с рекурсией
Помимо рекурсивных подсетей, существуют подсети, не связанные с рекурсией. По сути, такая подсеть является подавтоматом, причем переход в нее может быть либо только по действию пользователя, либо по действию пользователя и автоматически. После срабатывания такого подавтомата не происходит возврата в состояния, являющиеся входом в подсеть, если вход в подсеть не был автоматическим. Объект продолжает свое дальнейшее движение по сети после отработки подавтомата.
Нумеруются состояния подсети, не связанной с рекурсией, также как и рекурсивные подсети, за исключением того, что в ней отсутствуют номера состояний из сети более высокого уровня (В случае, если вход в подсеть инициирован действием пользователя).
Графически подсеть, не связанная с рекурсией, обозначается прямоугольником с закругленными углами. Подсеть, не связанная с рекурсией, явно отображается на диаграмме и считается составным состоянием.
4.5. Проектирование конкурентного диалога
Работу транзитивной сети нужно рассматривать как передвижение единственной метки из одного состояния в другое, то есть система в каждый момент времени находится в единственном состоянии. Поэтому недостатком использования сетей перехода (простых и транзитивных) является слабая возможность отражения конкурентного диалога.
Конкурентный диалог характерен для систем, которые можно описать более чем одним состоянием одновременно. Наиболее часто конкурентный диалог возникает при проектировании различных настроек.
Пример. Для настройки используются 2 переключателя (курсив, подчеркивание). Нажатие каждого из них переводит систему в противоположное состояние, то есть для 2 переключателей потребовалось 4 состояния, а если задавать еще 1 переключатель, то потребовалось бы 8 состояний.
Граф переходов:
Рис. 4.7. Вариант логики диалога с пользователем
Если настройка системы потребовала n переключателей, то состояний будет 2n. Эта задача может решаться через две транзитивные сети.
Рис. 4.8. Вариант логики диалога с пользователем
