18c0693f

Оценивание проекта


Одной из наиболее важных работ  является оценка стоимости проекта. Общая стоимость проекта определяется исходя из стоимости отдельных частей, условий выполнения  работ, наличного штата исполнителей, используемых методов и инструментов. В стоимость  проекта входит  все создает стиль ведения проекта: компьютеры, программное обеспечение, площади, мебель, телефоны, модемы, канцелярские товары и многое другое. Иногда должны быть созданы дополнительные условия (например,  безопасность).

К  дополнительным расходам относятся  системы тестирования, кодирования или другие CASE системы. Центральной оценкой в проекте является  оценка затрат  на ведение проекта, выражаемая, например,  в  человеко-днях исполнителей работ в проекте. Эти оценки проводятся на ранней стадии ведения проекта  и составления  плана. Специалисты с опытом могут первоначально оценить стоимость проекта с погрешностью меньше 10%.

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

Когда такой возможности нет, эксперты проводят  пессимистическую (x), оптимистическую,        и реальную. Разные методы приближенного  оценивания  по отношению  к реалистическим рассмотрены в [3]. Эксперт проводит опрос всех членов рабочей группы, и в дальнейшем проводит коррекцию каждой оценки, выводя на их основе наиболее правдоподобную.

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

 

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

Например, стоимость проекта определяется по формуле: E =   (a+bSc) m (X), где S - оценка размера системы, а, в, с – эмпирические константы, Х – вектор факторов стоимости размерностью n, m – регулирующий множитель, основанный на  затратных факторах. В [3] предлагается модель в виде  соотношения, полученного экспериментальным путем: E = 5.25S0.91.

Эта модель  применялась при  оценке проекта, в котором  программные системы  имели размер от 4000 до 467000 строк кода, написанных на 28 различных языках программирования высокого уровня для 66 компьютеров и на которые затрачено от 12 до 11758 человека-месяцев.

В [4] предлагается техника моделирования, использующихся в уравнении затрат  организации-разработчика:

E = 5.5+0.73S1.16.

В большинстве моделей оценка зависит от размера системы в строках кода. Модель  COCOMO Боєма [ ] собрала в себе три техники измерений  по  проекту. В первых  моделях применялись   показатели цены, учитывался персонал и свойства  проекта, продукта и среды. Модель включает оценку трех стадий ведения проекта. На первой стадии строится прототип для задач повышенного риска (интерфейс пользователя, ПО, система взаимодействия, реализации и др.)  и проводится оценка затрат (например, число таблиц в БД,  экраны и отчетные формы др.).

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

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

Базовой моделью оценки служит следующее уравнение: E=bSc m(X), где первичная оценка b Sc корректируется с помощью вектора стоимости m (X). Эта модель развивается с учетом  анализа объектов (число  старых и новых объектов). Параметр с в уравнении  изменяется от 0 до 1.0 для первой  стадии и от 1.01 до 1.26 для остальных.



Таким образом, можно сформулировать основные вехи  для эффективного и успешного управления программным проектом:

1.Определение границ системы и точек выполнения   разработки.

2. Формирование временного плана выполнения  работ в точках проекта.

3. Определение структуру рабочей группы, периода,  видов работ   и  ресурсов.

4. Техническое описание планируемой системы (аппаратное и ПО проекта, компиляторы, интерфейсы, оборудование и др.) и  ограничений на время, безопасность и  т.п.

5. Использование стандартов, процедур,  техник и инструментов ведения проекта.

6. Разработка планов достижения  качества,  управления конфигурацией,  подготовки документации.

7. Разработка плана управления данными и источниками информации.

8. Разработка плана тестирования, измерения и оценивания результатов работ.

9. Составления плана обучения пользователей системы.

10. Определения плана безопасности (конфиденциальность,  пароли  и др.)

11. Составление плана управления рисками.

12. План сопровождения с указанием ответственных за  изменение кода, ремонт оборудования, использование документации и  др.

13. Описание алгоритмов, инструментов, техники просмотра или инспекции кода,   языков ведения проекта, языков кодирования и тестирования.




Все публикации раздела