Выделим четыре основных группы факторов, влияющих на затраты С1 р при непосредственной разработке программ:
* факторы, отражающие особенности создаваемого комплекса программ как объекта разработки, и требования к его общим характеристикам;
* факторы, характеризующие технологическую и программную оснащенность средствами автоматизации процесса разработки программ;
* факторы, отражающие оснащенность процесса создания ПП аппаратурными средствами, на которых базируются системы автоматизации разработки;
* факторы, определяющие оснащенность процесса разработки программ и его обеспечение квалифицированными специалистами.
Для каждого фактора может быть выделен параметр, наиболее полно отражающий его содержание численными значениями. Для большинства факторов произведены оценки диапазона возможного изменения относительных затрат на разработку одной команды в ПП при варьировании соответствующего параметра в указанном диапазоне. Эти изменения затрат характеризуются коэффициентами Сij изменения усредненной трудоемкости разработки строки текста программы за весь цикл создания ПП при варьировании j‑го фактора i‑ой группы. Кроме оценок предельных значений КИТ, приводятся их средние значения.
Факторы объекта разработки | Параметры фактора | Диапазон изменения параметра | Диапазон КИТ | Среднее значение КИТ |
1. Сложность ПП – С11 | Число операторов в тексте программ на ассемблере Пк | 104 – 107 | 1 – 4 | 2 – 3 |
2. Надежность функционирования ПП – С13 | Часы проработки на отказ программ Тн | 1 – 103 | 1 – 5 | 2–2.5 |
3. Ограничение ресурсов производительности и оперативной памяти реализующей ЭВМ – С14 | Процент использования памяти и производительности Р | 50–95 | 1 – 3 | 1.3–1.5 |
4. Длительность предполагаемой эксплуатации – С15 | Годы эксплуатации Тэ | 1 – 20 | 1 – 3 | 1.3–1.5 |
5. Предполагаемый тираж – С16 | Число предполагаемых экземпляров | 1 – 1000 | 1 – 3 | 1.3–1.5 |
6. Мобильность использования компонент ПП из других разработок – С17 | Процент возможного использования компонент | 0 – 80 | 1 – 1.4 | 1.1–1.2 |
7. Мобильность использования ПП для других разработок – С18 | Процент возможного использования компонент | 0 – 80 | 0.4 – 1 | 0.5–0.7 |
Факторы ПП как объекта проектирования, влияющие на непосредственные затраты при разработке сложных программ.
Эта группа факторов отличается наибольшим влиянием на затраты и производительность труда.
Наиболее активно в качестве показателя сложности программы используется ее объем, выраженный числом операторов на ассемблере или строк на языке программирования высокого уровня. Объем программ является одной из наиболее достоверно измеряемых характеристик ПП. Логично предположить, что по мере увеличения объема ПП возрастает относительная трудоемкость разработки каждой команды в программе. Такая зависимость может быть описана логарифмической функцией:
В качестве первого приближения суммарные затраты на разработку сложного ПП в зависимости от объема программ можно представить выражением:
Надежность функционирования ПП является наиболее важным фактором, отражающим качество программных средств.
В качестве параметров, характеризующих надежность системы, наиболее широко используется наработка на отказ Тн и коэффициент готовности Кг. Оба показателя тесно связаны, что позволяет ограничить внимание на первом из них. Изучение математических моделей процесса выявления ошибок в программах привело к тому, что одной из наиболее достоверных и простых является экспоненциальная зависимость числа оставшихся ошибок от времени ее тестирования. Эти соображения позволяют аппроксимировать средние значения С13 при повышении требований к надежности ПП логарифмической зависимостью:
Ограничение ресурсов производительности и оперативной памяти реализующей ЭВМ. При использовании создаваемым ПП производительности и памяти реальной ЭВМ менее чем на 50% можно не учитывать эти ограничения.
где р – реальная загрузка ЭВМ.
Длительность предполагаемой эксплуатации ПП изменяется от нескольких месяцев до нескольких лет. По экспертным оценкам, увеличение предстоящей длительности эксплуатации ПП на порядок от 1 до 10 лет приводит к увеличению КИТ С15 примерно в 1.5–2 раза. Такую зависимость можно описать логарифмической функцией:
где а15 изменяется в диапазоне от 1 до 0.5.
Предполагаемый тираж программ Nсоставляет
При переходе от уникального ПП к программам, подлежащим тиражированию, затраты заметно возрастают.
Мобильность использования компонентов ПП для других разработок приводит к необходимости их проектирования как автономных комплектующих изделий. В результате может быть достигнута возможность сборочного программирования.
Мобильность использования ПП из других разработок позволяет снижать затраты при сборочном программировании новых ПП. При этом относительное повышение производительности труда пропорционально доле использования в новом ПП. При сборочном программировании кроме 10–20% затрат на создание новых программных компонент, необходимы ресурсы на комплексирование нового ПП, его комплексную отладку, испытания и документирование. В результате суммарные затраты заметно возрастают и эквивалентное повышение производительности труда С18 может составлять 2.5–3 раза. Необходимо учитывать затраты, которые требуются на создание адаптируемых компонент и всего первичного ПП. В результате программная мобильность с учетом затрат на ее подготовку в среднем дает снижение КИТ на 30–50%.
3.2.3 Затраты на изготовление опытного образца как продукции производственно-технического назначения
Затраты на изготовление опытного образца ПП как продукции производственно-технического назначения – С2 р определяется необходимостью обеспечить отчуждение всего комплекса программ от его непосредственных разработчиков. Удельный вес этих затрат находится в пределах 10–15% от общих затрат на разработку С1 р. Для изготовления ПП как продукции производственно-технического назначения необходимо:
· изготовить и оформить опытный образец ПП на носителях данных;
· разработать комплект документации, обеспечивающий квалифицированную эксплуатацию ПП.
При разработке сложных ПП затраты на изготовление носителей программ опытного образца ПП находятся на уровне процента и далее нами не учитываются.
3.2.4 Затраты на создание комплекта документации
Затраты на создание комплекта документации С2р2 практически пропорциональны объему программы:
, ,где Д = 50–100 страниц документации на тысячу команд,
а2 – удельная трудоемкость страницы написания документации. В реальных ПП определяется по аналогичным разработкам.
3.2.5 Затраты на технологию и программные средства автоматизации разработки ПП
Затраты на технологию и программные средства автоматизации разработки ПП обычно являются весьма весовыми только при использовании автоматизированных технологий. Объем и сложность программного продукта значительно влияют на выбор уровня автоматизации технологии и долю затрат в общих затратах на разработку. Встречаются ситуации, при которых затраты на технологию достигают 50% общих затрат на разработку С1 р. В нашем случае подобных затрат нет, и поэтому ими можно пренебречь.
Затраты на ЭВМ, используемые для автоматизации разработки данного ПП – С4 р – включают капитальные затраты на закупку и установку соответствующих ЭВМ, а также текущие затраты на их эксплуатацию в течении разработки ПП.
В нашем случае затраты распределяются только на эксплуатацию ЭВМ в течение разработки ПП. Поэтому общие затраты на ЭВМ будут выглядеть так:
С4 р = С4р1 = а41*Тр,
где а41 – стоимость машинного времени реализующей ЭВМ.
3.3 Составляющие затрат на эксплуатацию программ, влияющих на процесс разработки ПП
Затраты на эксплуатацию программ, влияющих на процесс разработки ПП:
* затраты на производство и внедрение экземпляра ПП – С1э
* затраты на реализующую ЭВМ – С2э
* затраты на эксплуатацию реализующей ЭВМ – С3э
* затраты на эксплуатацию экземпляра – С4э
* потери вследствие задержек и потерь сообщений – С5э
* потери вследствие сбоев и отказов ПП – С6э
Затраты на производство и внедрение каждого экземпляра ПП – С1э, при серийном выпуске ПП обычно намного меньше, чем изготовление опытного образца, но в нашем случае распределения затрат не будет. Тиражирования носителей программ и документации не будет, поэтому С1э1 будет равно нулю.