Методы и средства инженерии программного обеспечения

       

Метод анализа и оценки PERT


Параллельно с разработкой CPM, в военно-морских силах США был создан (фирма "Буз, Аллен & Гамильтон")  метод анализа и оценки программ PERT (Program Evaluation and Review Technique) для реализации проекта разработки ракетной системы "Polaris", объединяющей около 3800 подрядчиков с числом операций более  60 тыс. [6].  

Применение  метода PERT позволяло точно знать руководству данной программы, что нужно делать в каждый момент времени и какой исполнитель это делает, а также определять вероятность своевременного завершения отдельных операций. Руководство программой создания ракетной системы  оказалось настолько успешным, что проект удалось завершить на два года раньше запланированного срока.

Метод PERT представляется сетевыми диаграммами с  вершинами-событиями, а  работа – в виде линии между двумя событиями,  отображающими начало и конец данной работы. В целом расхождения между этими двумя методами сетевого представления  графа работ являются  незначительными. Однако этот метод, в отличие от CMP,  учитывает возникающие неопределенности во времени  выполнения каждой операции.

Представление более сложных связей между работами для задания  узлов графа в виде  вершина-событие является более сложным и потому  этот метод реже используется на практике.

В этом методе возможное время выполнения операций оценивается с помощью трех оценок:

– оптимистичной (О),

– пессимистической (P),

– вероятностной  (B).

А далее вычисляется по формуле:   (О+4В+П)/6, c   указанием его  на сетевом графике.

Для уменьшения провалов проектов используются  и другие  аналитические методы  и усовершенствованные языки разработки систем.  Как показывает опыт, "продвинутые" технологии решают вопросы успешного создания проекта с учетом факторов, которые уменьшают его провал [3]:

1. Проект начинать с правильного шага.

2. Поддержка темпа работы.

3. Обеспечение прогресса   и  правильных решений.



4. Посмертный анализ  завершенного  проекта.


 

1). Проект начинать с правильного шага. К правильному шагу относится  формирование команды  разработчиков из хороших специалистов, в  том  числе  не более 20%  звезд,   наиболее приспособленных для хорошей работы  над  проектом (много  звезд - создание конфликтов). В команду входят надежные разработчики  с  совместимыми  характерами  и рабочими привычками. Звезды  решают  сложные   вопросы,   разрабатывают   более    ответственные алгоритмы и  проводят  техническое  обучение  остальных членов команды. Для уточнения всех  особенностей проекта разработчики  садятся  за стол переговоров с  заказчиком и составляют взаимно приемлемый документ.

Следующий шаг -  это  создание среды  для  эффективной работы  и  уменьшения вероятности возникновения конфликтов. Продуктивной среда  для работы команды являются:  белые  стены  мест  встреч для формальных и неформальных переговоров, личные рабочие места  и  современные лицензионные компьютерные средства.

2).  Поддержка темпа работы состоит в:

–        уменьшении   текучести кадров;

–        контроле качества выполняемых работ; 

–        управлении процессом разработки, а не людьми.

Текучесть кадров –  проблема   программной индустрии,  так  как  перемещение  или уход отдельного  специалиста, вынуждает других членов группы к трудоемкой работе, связанной с изучением незаконченных и   не полностью документированных программ. Большой промежуток времени между  уходом  специалиста  и  нахождением  замены  может привести к краху отдельных частей проекта.

Контроль качества  необходимое условие создания качественного проекта. Им   занимаются  с самого начала разработки  проекта,  устанавливая   процедуры  проверки  качества, а также  используя разработчиков, которые  могут создавать высококачественный продукт.

Управление процессом разработки. Исполнители должны  пользоваться   свободой  для прихода на работу в нефиксированное время и в нестрогой  одежде.Требуется управлять разработкой, подвергая критике результаты  труда, а не режим работы.

 

3. Поддержка прогресса и правильных решений. Программа отличается   от других продуктов тем, что ее нельзя пощупать. Разработка программы  начинается с концептуальной модели, а результаты ее применения влияют на получение продукта. Для поддержки прогресса,  как  правило,  выбирается технологии с необходимым  экономическим и  технологическим анализом, который отвечает требованиям рынка и важности компании.

 

4. Посмертный анализ. Это изучение  своих ошибок при реализации предыдущего проекта, чтобы не   повторить их в новом проекте. Так как каждая команда  и  фирма имеет   свои  особенности,  которые влияют на процесс разработки, то при  анализе  можно выделить    закономерности , которые  влияют  на получение  результатов.


Содержание раздела