- •Технология разработки программных продуктов
- •Оглавление
- •1. Спецификации и их роль в разработке программ
- •2. Основные принципы р-технологии
- •2.1. Графические структуры р-схем
- •2.2. Операции соединения графических структур
- •2.3. Дополнительные графические элементы р-схем
- •2.4. Использование р-схем в программах
- •2.5. Система инструментальной поддержки р-технологии
- •3. Метод структурного анализа
- •3.1. Диаграммы потоков данных
- •Словарь данных
- •3.3. Способы задания спецификаций процессов
- •Диаграммы сущность–связь
- •Диаграммы переходов–состояний
- •Структурные карты
- •Система инструментальной поддержки структурного анализа
- •Изучение основных принципов р–технологии
- •Содержание работы
- •Варианты заданий
- •Изучение основных управляющих конструкций р–схем
- •Содержание работы
- •Варианты заданий
- •Ознакомление с case–средством Easycase
- •Разработка диаграмм сущность–связь
- •308012, Г. Белгород, ул. Костюкова, 46
2.2. Операции соединения графических структур
Над описанными выше графическими структурами выполняются две конструктивные операции: последовательное соединение и вложенное соединение. При последовательном соединении структуры соединяются таким образом, что правая вершина предыдущей структуры сливается с левой вершиной последующей структуры. При вложенном соединении дуга, под которой происходит вложение, заменяется на эту же дугу и вкладываемую структуру. После выполнения этой дуги осуществляется вход во вложенную структуру. Выход из вложенной структуры осуществляется в правую точку к внешней по отношению к ней структуры.
Примеры последовательного и вложенного соединения структур приведены на рис. 4. При вложенном соединении, на этом рисунке, вложение второй структуры осуществляется во вторую дугу первой структуры.
Рис. 4. Операции соединения графических структур: а – последовательное соединение; б – вложенное соединение
2.3. Дополнительные графические элементы р-схем
Р-схемы могут содержать ряд дополнительных графических элементов, повышающих гибкость их применения. К ним относятся метки структур, надписи в конце дуги и специальные вершины.
При составлении спецификации иногда возникает необходимость передачи управления в начало, либо в конец структуры. Для этого используют метки и надписи в конце дуги. Любая структура может быть помечена меткой, которая записывается справа от начальной вершины этой структуры. На помеченную структуру можно перейти из любого места Р-схемы с помощью дуги, в которой указывается метка этой структуры. Метке предшествуют знаки "*" и "". Символ "*" означает переход в начало структуры (левая вершина), а символ "" – в конец структуры (правая вершина). Кроме того, эти знаки могут записываться и без меток. В этом случае символ "*" означает переход в начало всей Р-схемы, "" – в конец всей Р-схемы. Пример использования меток и надписей в конце дуги приведен на рис. 5, а.
Необходимо отметить, что с помощью таких дуг нельзя перейти на любую дугу внутри структуры, а также на структуру, находящуюся в другой Р-схеме. Этим они существенно отличаются от оператора GOTO, с помощью которого можно осуществить переход в любое место программы.
Специальные вершины позволяют записывать текст внутри начальной вершины структуры, придавая особую интерпретацию этой структуре. Пример применения специальной вершины, означающей, что данная структура описывает цикл "для" (for(i=1;i<10;i++) a[i]=0;) представлен на рис. 5, б.
Рис. 5. Пример использования дополнительных графических элементов Р-схем: а – метки и надписи в конце дуги; б – специальная вершина
2.4. Использование р-схем в программах
С помощью Р-схем можно задавать исполнительную часть программ, процедур и функций. При этом ориентированный граф заменяет управляющие структуры типа FOR, IF, WHILE, REPEAT, CASE и другие, кроме того исчезает необходимость в операторных скобках типа BEGIN – END. Ниже приведены фрагменты Р-схем, соответствующие основным управляющим конструкциям.
Последовательность действий |
o--------->o A; B |
Ветвление |
A o-------->o ! B ! ! ! !-------->! |
Полное ветвление |
A o---------->o ! B ! ! ! !---------->! C
|
Цикл с предусловием |
o==========o ! A ! !--------->! B |
Цикл с постусловием |
o--------->o ! B ! ! A ! !<---------!
|
Размеры одной Р-схемы как по горизонтали так и по вертикали могут значительно превышать размеры экрана дисплея. При разработке Р-схем обычно ограничиваются размерами листа печатного документа, так как изображение Р-схемы не допускает разрывов и переносов. Благодаря этому контролируется обозримость и логическая сложность задаваемого Р-схемой программного модуля.