1.2.2. Теоретические основы проектного управления
Для описания, анализа и оптимизации проектов наиболее подходящими оказались сетевые модели, представляющие из себя разновидность ориентированных графов.
В сетевой модели роль вершин графа могут играть события, определяющие начало и окончание отдельных работ, а дуги в этом случае будут соответствовать работам. Такую сетевую модель принято называть сетевой моделью с работами на дугах (Activities on Arrows, AoA). В то же время, возможно, что в сетевой модели роль вершин графа играют работы, а дуги отображают соответствие между окончанием одной работы и началом другой. Такую сетевую модель принято называть сетевой моделью с работами в узлах (Activities on Nodes, AoN).
Пусть множество A={a1, a2, a3, … an} – комплекс работ, выполнение которых требуется для решения определенной задачи, например, строительства дома. Тогда, если множество V={v1, v2, v3, … vm} будет представлять комплекс событий, возникающих в процессе выполнения комплекса работ, то сетевая модель будет задаваться ориентированным графом G=(V, A), в котором элементы множества V играют роль вершин, а элементы множества A – роль дуг, соединяющих вершины, причем каждой дуге ai можно поставить в однозначное соответствие пару вершин (vsi, vfi), первая из которых будет определять момент начала работы аi, а вторая – момент окончания этой работы. Такая сетевая модель будет сетевой моделью с работами на дугах.
Теперь пусть множество A={a1, a2, a3, … an} – по-прежнему будет рассматриваться как комплекс работ, выполнение которых требуется для решения определенной задачи, например, строительства дома. Тогда, если множество V={v1, v2, v3, … vm} будет представлять комплекс отношений предшествования-следования работ в процессе их выполнения, то сетевая модель будет задаваться ориентированным графом G=(A, V), в котором элементы множества A играют роль вершин, а элементы множества V – роль дуг, соединяющих вершины, причем каждой дуге vi можно поставить в однозначное соответствие пару вершин (asi, afi), первая из которых будет непосредственно предшествующей работой в данной паре, а вторая – непосредственно следующей. Такая сетевая модель будет сетевой моделью с работами в узлах.
Сетевая модель может быть представлена: 1) сетевым графиком, 2) в табличной форме, 3) в матричной форме, 4) в форме диаграммы на шкале времени. Как будет показано ниже, переход от одной формы представления к другой не составляет большого труда.
Преимущество сетевых графиков и временных диаграмм перед табличной и матричной формами представления состоит в их наглядности. Однако это преимущество исчезает прямо пропорционально тому, как увеличиваются размеры сетевой модели. Для реальных задач сетевого моделирования, в которых речь идет о тысячах работ и событий, вычерчивание сетевых графиков и диаграмм теряет всякий смысл.
Преимущество табличной и матричной формы перед графическими представлениями состоит в том, что с их помощью удобно осуществлять анализ параметров сетевых моделей; в этих формах применимы алгоритмические процедуры анализа, выполнение которых не требует наглядного отображения модели на плоскости.
Сетевым графиком называется полное графическое отображение структуры сетевой модели на плоскости.
Если сетевым графиком на плоскости отображается сетевая модель типа АоА, то однозначное представление должны получить все работы и все события модели. Однако структура сетевого графика модели АоА может быть более избыточна, чем структура самой отображаемой сетевой модели. Дело в том, что по правилам построения сетевого графика для удобства его анализа необходимо, чтобы два события были соединены только единственной работой, что в принципе не соответствует реальным обстоятельствам в окружающей нас действительности. Поэтому принято вводить в структуру сетевого графика элемент, которого нет ни в действительности, ни в сетевой модели. Этот элемент называется фиктивной работой. Таким образом, структура сетевого графика образуется из трех типов элементов (в отличие от структуры сетевой модели, где только два типа элементов):
• событий – моментов времени, когда происходит начало или окончание выполнения какой-либо работы (работ);
• работ – неделимых частей комплекса действий, необходимых для решения некоторой задачи;
• фиктивных работ – условных элементов структуры сетевого графика, используемых исключительно для указания логической связи отдельных событий.
Графически события изображаются кружками, разделенными на три равных сегмента (радиусами под углом в 120°); работы изображаются сплошными линиями со стрелками на конце, ориентированными слева направо; фиктивные работы изображаются пунктирными линиями со стрелками на конце, ориентированными слева направо. Пример сетевого графика модели АоА представлен ниже на рис. 1.2.1.
Отметим, что индексация работ производится рядом с соответствующими стрелками; фиктивные работы не индексируются; индексы событий проставляются в нижнем сегменте соответствующего кружка. Заполнение остальных сегментов рассматривается ниже.
Рис. 1.2.1. Пример сетевого графика модели AoA
Если сетевым графиком отображается модель типа AoN, то избыточности структуры удается избежать. Здесь нет необходимости вводить в качестве дополнительного структурного элемента фиктивные работы, поскольку отсутствуют те структурные элементы, которые они призваны обслуживать, а именно – события. В сетевом графике модели типа AoN есть только узлы (или вершины), которые обозначают работы и дуги (сплошные линии со стрелками, ориентированными слева направо), которые обозначают отношения предшествования-следования работ. Никаких событий и никаких фиктивных работ! Заметим, что в наиболее известной программе по проектному управлению Microsoft Project реализуется этот тип модели.
Здесь узлы сети, соответствующие работам, принято изображать прямоугольниками, поделенными на 5 секторов. В центральном секторе проставляется индекс (или записывается наименование работы). Заполнение остальных секторов рассматривается ниже. Пример сетевого графика для модели типа AoN представлен ниже на рис. 1.2.2.
Рис. 1.2.2.Пример сетевого графика модели типа АоN.
В табличной форме сетевая модель задается множеством {A, A(IP)}, где А – это множество индексов работ, а A(IP) множество комбинаций работ, непосредственно предшествующих работе А. Для рассматриваемого выше примера табличная форма сетевой модели будет такой, которая представлена в табл. 1.2.1.
Таблица 1.2.1. Табличная форма сетевой модели
Матричная форма описания сетевой модели задается в виде отношения между событиями (ei, ej), которое равно 1, если между этими событиями есть работа (либо реальная, либо фиктивная) и 0 – в противном случае. Матричная форма для описания сетевой модели из рассматриваемого выше примера приведена ниже в табл. 1.2.2.
Таблица 1.2.2. Матричная форма сетевой модели
Описание сетевой модели в форме временной диаграммы (или графика Ганта) предполагает размещение работ в координатной системе, где по оси абсцисс (X) откладывается время (t), а по оси ординат (Y) – работы. Точкой начала отсчета любой из работ будет момент окончания всех ее предшествующих работ. Если работе не предшествует ничто, то она откладывается от начала временной шкалы, т.е. с самого левого края диаграммы. На рис. 1.2.3 представлен график Ганта для сетевой модели по данным табл. 1.2.1 с добавлением информации о продолжительности выполнения работ.
Рис. 1.2.3. Диаграмма Ганта
Поскольку в сетевых графиках моделей типа АоА вершины соответствуют событиям, постольку эти элементы структуры обладают свойством “сшивания” предыдущих работ с последующими. Иными словами, любое событие наступает только тогда, когда закончены все предшествующие ему работы. С другой стороны, оно является предпосылкой для начала следующих за ним работ. Событие не имеет продолжительности и наступает мгновенно. В связи с этим предъявляются особые требования к его определению.
Так, каждое событие, включаемое в сетевой график, должно быть полно, четко и всесторонне определено, его формулировка должна включать результат всех непосредственно предшествующих ему работ. И пока не выполнены все работы, непосредственно предшествующие данному событию, не может наступить и само событие, а, следовательно, не может быть начата ни одна из работ, непосредственно следующих за ним. Более того, если то или иное событие наступило, то это означает, что могут быть немедленно и реально начаты работы, следующие за ним. Если же по какой- либо причине хотя бы одна из таких работ не может быть начата, следовательно, нельзя считать данное событие наступившим.
Различаются следующие разновидности событий сетевого графика модели АоА:
• исходное событие – результат, в отношении которого условно предполагается, что он не имеет предшествующих работ;
• завершающее событие – результат, в отношении которого предполагается, что за ним не следует ни одна работа; это и является конечной целью выполнения всего комплекса работ или решением задачи;
• промежуточное событие или просто событие. Это любой достигаемый результат в выполнении одной или нескольких работ, дающий возможность начать последующие работы;
• начальное событие – событие, непосредственно предшествующее данной конкретной работе;
• конечное событие – событие, непосредственно следующее за данной работой.
Временные параметры (или временные характеристики) сетевой модели являются главными элементами аналитической системы проектного управления. Именно для их определения и последующего улучшения выполняется вся подготовительная, вспомогательная работа по составлению сетевой модели проекта и ее последующей оптимизации.
Различают следующие временные параметры:
• продолжительность работ;
• раннее время начала работы;
• раннее время окончания работы;
• позднее время начала работы;
• позднее время окончания работы;
• раннее время наступления события;
• позднее время наступления события;
• продолжительность критического пути;
• резерв времени наступления события;
• полный резерв времени выполнения работы;
• свободный резерв времени выполнения работы;
• независимый резерв времени выполнения работы.
Продолжительность работы (ti) – календарное время, которое занимает выполнение работы.
Раннее время начала работы (ESTi) – наиболее ранний из возможных сроков начала выполнения работы.
Раннее время окончания работы (EFTi) – равно раннему времени начала работы плюс ее продолжительность.