Этап структурного планирования начинается с разбиения программы на четко определенные операции.
Затем определяются оценки продолжительности операций, и строится сетевая модель (сетевой график, стрелочная диаграмма), каждая дуга (стрелка) которой отображает работу.
Отношения упорядочения между операциями задается с помощью событий.
Событие определяется как момент времени, когда завершаются одни операции, и начинаются другие.
Начальная и конечная точки любой операции описываются, таким образом, парой событий, которые обычно называются начальным и конечным.
Операции, выходящие из некоторого события не могут начаться, пока не будут завершены операции входящие в это событие.
На рисунке 11.1 схематично изображена операция . Протекание операций во времени задается путем нумерации событий, причем номер начального события всегда меньше номера конечного события. Обозначим длительность операции через .
Правила построения сетевой модели
Правило 1. Каждая операция в сети представляется одной и только одной дугой (стрелкой). Ни одна операция не должна появляться в модели дважды.
Правило 2. Ни одна пара операций не должна определяться одинаковыми начальными и конечными событиями (рис. 11.2).
Возможность неоднозначного определения операций через события появляется в случае, когда две или большее количество операций допустимо выполнять одновременно.
В таких случаях между и конечным (началь
ным) событием или между и конечным (начальным) событием, вводится фиктивная операция, которая не требует ни затрат ресурсов ни времени.
На рис. 11.3 представлены все возможные варианты введения фиктивной операции. Фиктивная операция изображена штриховой дугой.
В программе операции и должны непосредственно предшествовать , а операции непосредственно предшествует только В (рис. 11.4).
Правило 3. При включении каждой операции в сетевую модель для обеспечения правильного упорядочения необходимо ответить на следующие вопросы:
а) Какие операции необходимо завершить непосредственно перед началом рассматриваемой операции?
б) Какие операции должны непосредственно следовать после завершения данной операции?
в) Какие операции могут выполняться одновременно с рассматриваемой операцией.
Пример 11.1
Построить сетевую модель, включающую операции: A, B, C, …, L, которая отображает следующие отношения упорядочения:
1. A, B, C – исходные операции программы, которые можно начинать одновременно.
2. A и B предшествуют D.
3. B предшествует E, F, H.
4. F и С предшествуют G.
5. E и H предшествуют I и J.
6. C, D, F и J предшествуют K.
7. K предшествует L.
8. I, G, L – завершающие операции программы.
Вариант сетевой модели представлен на рис. 11.5. Для реализации всех отношений упорядочения потребовалось ввести три фиктивных операции: .