Трудоемкость разработки программных средств наиболее сильно зависит от размера — масштаба комплекса программ, выраженного'. числом операторов, строк на языке программирования или функциональных точек (см. стандарт ISO 14143:1-5:1998-2004. — Измерение функционального размера). Реальное изменение создаваемых в настоящее время сложных ПС от 104 до 107 строк (LOC) определяет диапазон трудоемкости разработки таких программ от человеко-года до десятков тысяч человеко-лет. Подтверждена по большому числу проектов высокая статистическая корреляция между размером комплексов программ и трудоемкостью их разработки.
Эффективность затрат при повторном использовании компонентов (ПИК) и сборке ПС в зависимости от их доли зачастую оценивалась путем анализа эквивалентной производительности труда разработчиков и длительности создания ПС. В ряде случаев особое значение имеет не столько использование готовых программных компонентов, сколько перенос баз данных. Информация о процессах, происходящих во внешней среде, может иметь большой объем и трудоемкость первичного накопления и актуализации, что определяет необходимость ее тщательного хранения. Практически всегда необходимо время и трудоемкость на:
первичный системный анализ целесообразности применения ПИК;
поиск, адаптацию и процессы использования готовых компонентов;
оценку затрат с учетом стоимости приобретения и адаптации переносимых программ и баз данных;
интегрирование в новой операционной или внешней среде;
тестирование и испытания компонентов в комплексе с унаследованными программами.
Для планирования разработки сложных ПС важно знать и использовать экспериментальные статистические распределения основных ТЭП — трудоемкости, длительности и числа специалистов по этапам работ и по реальному времени реализации компонентов проектов. Относительные значения распределения этих величин на интервале реализации крупных проектов несколько различаются в зависимости от размера и типа комплекса программ, однако наибольший интерес представляют сложные встроенные ПС реального времени размером порядка 500 тысяч строк.
В совокупных затратах на создание полностью новых ПС доминирует трудоемкость непосредственной разработки программных компонентов. Распределение необходимой трудоемкости на этапы разработки программ сложного ПС реального времени представлено в таблице 5.1. Этап технологической подготовки разработки включен в техническое проектирование, а документирование объединено с комплексной отладкой. В распределении учтены подмножества работ, соответствующие разным категориям специалистов. Все специалисты были разделены на три категории: руководители разработки и системные аналитики; непосредственные разработчики программных компонентов и специалисты по комплексиро- ванию; вспомогательный персонал, обеспечивающий разработку и документирование программ. Первая и третья категории специалистов непосредственно не взаимодействуют с текстом программ при их отработке, однако их труд является неотъемлемой частью всего процесса разработки и в крупных проектах составляет около половины затрат на каждом этапе.
Таблица 5.1