438 Глава 9
Применение аппарата нейронных и байесовских сетей для оценивания затрат
в настоящее время ограничено лишь экспериментальными исследованиями [2].
9.1.7. Динамические методы
Динамические методы используют предположение о том, что факторы,
влияющие на стоимость и продолжительность проекта (например, опыт разработ-
чиков, исходные требования, необходимость обучения и др.), изменяются на про-
тяжении разработки (т.е. являются динамическими). Это существенно отличает ди-
намические методы от других методов оценивания.
В основе методов лежит классический аппарат имитационного моделирова-
ния систем. Графически имитационная модель представляется в виде модифициро-
ванной сети (переменные величины в узлах которой определяют характеристики
проекта (процессов, продуктов, ресурсов), используемых для моделирования) с по-
ложительными и отрицательными циклами обратной связи [2], а математически
описывается системой дифференциальных уравнений первого порядка. Так, дина-
мическая модель, предложенная в [16], позволяет предсказывать изменения стои-
мости, потребности в персонале и продолжительности в течение разработки проек-
та на основании первоначальных значений этих оценок. Эта модель была примене-
на также для оценки влияния на затраты наличия повторно используемого ПО.
В [2] отмечено, что динамические методы хороши для планирования и кон-
троля, но их трудно настраивать (калибровать).
9.1.8. Неформальные эмпирические методы
К неформальным эмпирическим методам оценивания трудозатрат, получив-
шим распространение благодаря популярности методологии Extreme Programming
(глава 11), можно отнести метод Planning Game.
Это неформальный метод планирования проекта, основанный на итератив-
ном выполнении комбинации действий - экспертного оценивания текущего состоя-
ния проекта и идентификации той области проекта и задач в ней, которые должны
быть решены в первую очередь [17].
В процессе планирования принимают участие все члены команды проекта
(как заказчики (пользователи), так и разработчики), которые вовлекаются в обсуж-
дение требований к ПС, облекаемых в форму так называемых «пользовательских
историй» (“user stories”). Функциональные аспекты этих историй описывают заказ-
чики, а разработчики оценивают требуемые усилия на их реализацию и риски.
Область проекта, для которой выполняется текущее планирование, устанав-
ливается перечислением тех историй, программная поддержка которых (в очеред-
ном выпуске (релизе) ПС) может, с одной стороны, обеспечить наибольшую отдачу
для бизнеса заказчика, а с другой, - быть реализована группой разработчиков за 1 -
3 недели. Каждая история, «планируемая» к выпуску, декомпозируется на несколь-
ко задач для разработчиков, и определяется трудоемкость их программирования и
тестирования. Этот процесс может быть «проигран» неоднократно до достижения
компромисса заказчика и разработчиков.
Процесс планирования по методу Planning Game охватывает весь ЖЦ проек-
та, повторяясь при подготовке каждого нового выпуска ПС.