Алгоритм оценки затрат на создание программного продукта.
При расчете затрат на ПП сложно переплетаются содержание, этапы и распределение работ, возможен ряд возвратов на более ранние технологические этапы в процессе создания компонент ПП, этапы имеют размытые границы начала и завершения. Положение усугубляется трудностью поэтапного определения качества ПП и его прогнозирования в процессе разработки, что непосредственно отражается на технико-экономических показателях в целом. Следствием этого являются серьезные ошибки при планировании сроков, трудоемкости и стоимости создания ПП.
Данный алгоритм расчета затрат учитывает :
классы программ и связанные с ними особенности программ - отчужденность ПП от первичных разработчиков, декомпозицию ПП, коллективность разработки ПП, ограниченность машинных ресурсов;
архитектуру ЭВМ;
технологию разработки ПП.
Наиболее сильно на технико-экономические показатели ( ТЭП ) ПП влияют объем ПП и требования к его качеству.
Сложностью при расчете затрат на ПП является выбор и формализация единиц измерения объекта разработки. В этом методе в качестве единиц измерения приняты предложения.
Затраты и цена на ПП включают в себя следующие составляющие :
Kp - затраты на создание ПП и обеспечение решения заданных задач ( в т.ч. на документацию, технологическое обеспечение и аппаратную оснащенность разработки);
Sэ - затраты на эксплуатацию программных и аппаратных средств, реализующих ПП;
Kc - затраты на сопровождение ПП, включающие затраты на хранение и контроль его состояния, проведение модификации и разработка документации, исправление ошибок и рекламу. K = Kp + Sэ + Kc
Наибольшее значение в составе Крпри разработке сложных комплексов программ имеют следующие составляющие затрат :
на непосредственное проектирование, программирование, отладку и испытание программ в соответствии с требованиями пользователей или заказчика - К1р;
на изготовление опытного образца ПП как продукции производственно-технического назначения - К2р;
на разработку, подготовку и применение технологии и программных средств, в случае автоматизации разработки программ - К3р;
на технологические и реализующие ЭВМ, используемые для автоматизации разработки данного ПП - К4р;
на повышение квалификации специалистов - К5р.
Расчет затрат на разработку программы.
Затраты на разработку ПП определяются как частное от деления объема программного продукта Пк и производительности труда Р, коррелируемое на произведение коэффициентов изменения трудоемкости (КИТ) в зависимости от ряда факторов :
где
Пк-объем программы, КБайт;
Р- показатель интегральной средней производительности труда разработчика, чел/день;
Сij -коэффициенты изменения трудоемкости.
В состав коэффициентов входят:
-изменение трудоемкости при увеличении объема программы;
С12- изменение трудоемкости при изменении базы данных ( только для очень больших и сложных структур баз данных рекомендуется увеличивать трудоемкость на~10%).
Учет надежности функционирования ПП :
где Тн- наработка на отказ[час].
Ограничение ресурсов производительности и оперативной памяти
реализующей ЭВМ :
где r - реальная загрузка ЭВМ, отн. ед.
Длительность предполагаемой эксплуатации :
где d15 - изменяется в диапазоне от0.5 до1. Затраты на непосредственную эксплуатацию не учитываются, а рассматриваются только как фактор, влияющий на затраты при первоначальной разработке программ;tэ- время эксплуатации.
Предполагаемый тираж программ N вносит поправку :
Результаты рассчета по описаным выше формулам внесем в табл. 5.1.
Таблица 5.1. Результаты расчета коэффициентов изменения трудоемкости.
|
Данные для рассчета |
ед. изм. |
Значение |
Пк |
объем программы |
Операторов ASM |
105 |
Р |
интегральной средней производительности труда |
ком/чел/день |
103 |
C11 |
изменение трудоемкости при увеличении программы |
- |
2.0 |
C12 |
изменение трудоемкости при изменении базы данных |
- |
нет БД |
C13 |
Учет надежности функционирования ПП |
- |
2.301 |
C14 |
Ограничение ресурсов реализующей ЭВМ |
- |
1.304 |
C15 |
Длительность предполагаемой эксплуатации |
- |
1.4 |
C16 |
Предполагаемый тираж программ N |
- |
1,494 |
Исходя из этих данных рассчитываем затраты на разработку ПП:
К1P= 149,387 (чел/дней) или 3’557’000 рублей
Данная оплата рассчитана при учете заработной платы программисту размером в 500 тысяч рублей в месяц, т.е. стоимость одного чел/дня составила 23’890 рублей.
Затраты на изготовление опытного образца ПП К2ропределяются необходимостью обеспечить отчуждение всего комплекса программ от его первичных непосредственных разработчиков. Удельный вес этих затрат находится в пределах 10-15% от общих затрат на разработкуК1р.
Затраты на изготовление носителей программ опытного образца К2Р1зависят от типа носителей программЕ, лент, дисков (~1%от общих затрат).
Затраты на создание комплекта документации К2Р2практически пропорциональны объемуПк программ.
К2Р = К2Р1 + К2Р2 ,
К2Р = [ К2Р1(Е) + a2×bq×Пк ] [чел/день] ,
где Bq = 50¸100страниц на тысячу команд;А2-удельная трудоемкость написания страницы документации (обычно выбирается по аналогичным предыдущим разработкам).
Отсюда получим, что затраты на изготовление опытного образца ПП составляют
К2P= 80 (чел/дней) или 1’905’000 рублей
при аналогичных условиях.
Затраты на технологию и программные средства автоматизации разработки ППК3Р. Составляющие затрат по существу являются аддитивными, и суммарные затраты на технологию можно представить в виде
К3Р = К3Р1+К3Р2+К3Р3 = А31×Пт/М+А32×f32(Пт)+A33×f33(Пт)×tp ,
где А31×Пт/М- доля суммарных затрат на создание технологии и применяемой системы автоматизации разработки программ; коэффициентА31отражает трудоемкость разработки одной команды;А32- однократные затраты на внедрение и освоение технологии и средств автоматизации,f32(Пт)- некая функция объема системы определяемая экспериментально;А33*f33(Пт)- затраты на эксплуатацию системы автоматизации разработки программ в течение всего календарного времениtp разработки ПП, также определяется экспериментально.
Так как средства автоматизации не использовались, примем составляющую К3Р равной нулю.
Затраты на ЭВМ, используемые для автоматизации разработки ПП, К4Ропределяется по формуле
К4Р = А41×tp + A42×tp×f42(Пт) + A43×tpm,
где А41×tp - затраты на машинное время в процессе разработки программ;А41- стоимость машинного времени (в ед. времени);А42×f42(Пт)- первичные затраты на приобретение ЭВМ, их целесообразно учитывать как амортизационную составляющую, соответственно увеличивающуюА42 (коэффициент стоимости машинного времени);А43*tpm - затраты на моделирующие ЭВМ, рассчитываются аналогично второй составляющей (А43- затраты на амортизацию в стоимости машинного времени,tpm - машинное время моделирующей ЭВМ).
Стоимость одного машинного часа составила 120 рублей, а с учетом амортизационной составляющей 250 рублей в час.
В результате рассчета получим
К4P= 177’600 рублей
Перечисленные виды затрат в некоторой степени коррелированы. Соотношение между ними зависит от роли комплексной отладки в реальном масштабе времени. При низкой автоматизации проектирования в системах реального времени доминирует первая составляющая затрат.
Суммарные затраты на разработку ПП составляют
К = К1Р + К2Р + К3Р + К4Р.
По расчетам, приведенным выше, получаем
К= 5’639’000 рублей.
Надо отметить, что реальные издержки вряд ли составили такую сумму, благодаря тому, что заработная плата программисту не выплачивалась, т.е. реальные издержки равны издержкам на ЭВМ (177’600 рублей).