• размер – масштаб, подлежащих разработке полностью новых программных компонентов;
• размер и относительная доля готовых программных компонентов, которые могут быть заимствованы из предшествовавших проектов и повторно использованы в новом программном продукте;
• относительные затраты ресурсов на создание проекта: труда специалистов, времени и бюджета на единицу размера (на строку текста программ) создаваемого продукта.
Эти факторы могли быть оценены квалифицированными экспертами на основе имеющегося у них опыта реализации предшествовавших подобных проектов, а также использования опубликованных, статистических данных. Достоверность прогнозов ТЭП зависела, прежде всего, от точности экспертной оценки исходных данных, размера – масштаба комплекса программ, от достоверности экспертной оценки производительности труда специалистов или от стоимости разработки одной строки текста программы.
Основными исходными данными для оценок ТЭП являлись концепция проекта и комплекс требований к иерархическому набору функций, которые могут быть разбиты на предполагаемые фактические компоненты. В дальнейшем разбиение могло детализироваться, формируя упрощенный или более точный уровень абстракции и взаимодействия компонентов. Наиболее глубокий уровень детализации, как правило, редко формируется ко времени первоначальной экспертной оценки размера комплекса.
Экспертная оценка удельных затрат на строку текста программ в методике приводилась для некоторых примеров программных продуктов. При этом подчеркивалось, что оценки относятся к полному циклу разработки крупных комплексов программ, начиная от создания концепции и требований до завершения испытаний, и передачи программного продукта заказчику или пользователям. В составе участников проекта учитывались все категории специалистов, обеспечивавших реализацию программного продукта.
Так как разработчики сложных комплексов программ были не заинтересованы раскрывать реальную экономику выполненных проектов, и эти данные склонны относить к коммерческой тайне, опубликованные ТЭП носят отрывочный, не упорядоченный и не всегда достоверный характер. Кроме того, обычно не представлялись детальные сведения об особенностях и требованиях к качеству объекта разработки, применявшейся технологии и инструментальных средствах, характеристиках коллектива специалистов и других факторах. Поэтому такие данные трудно было обобщать и использовать для прогнозирования новых проектов.
В исследованиях [15] при разработке программных продуктов реального времени в 80-е годы, преимущественно на ассемблере, была получена средняя производительность 60–80 строк на человеко-месяц. Для относительно небольших комплексов программ административных систем (в значительной степени на языках высокого уровня) производительность составила около 260 строк на человеко-месяц. Таким образом, в зависимости от характеристик объекта и условий разработки был возможен экспертный выбор величин производительности труда для последующего прогноза полной трудоемкости создания программных продуктов.
Экспертная оценка, длительности разработки сложного программного продукта могла оцениваться на базе рассчитанной ранее трудоемкости разработки, от которой нелинейно зависит длительность. Например, крупные продукты реального времени размером около 500 тысяч строк требовали для реализации около 3,5 лет, а небольшие (30 тысяч строк) – около одного года.
Экспертная оценка необходимого числа специалистов рассчитывалась путем деления полной трудоемкости разработки на длительность ее реализации. Для примера крупного продукта реального времени, размером 500 тысяч строк, необходимое число специалистов достигало 160 человек [15], а для относительно небольшого проекта (30 тысяч строк) – в десять раз меньше (16 человек). Аналогично можно было получить оценки необходимого числа специалистов на выделенных крупных этапах разработки, что полезно для первичного формирования коллектива и оценки возможности реализации ими конкретного проекта.
Сбор и обобщение экономических характеристик отечественных [20] и зарубежных [15] крупных комплексов программ в конце 80-х годов позволил существенно повысить достоверность прогнозирования технико-экономических показателей проектов. Это стимулировало разработку более точных моделей с учетом многих факторов, влияющих на оценки трудоемкости, длительности и числа специалистов, необходимых для разработки программных продуктов. В методике учитывались следующие группы дополнительных факторов и их детализации [20]:
Читать дальше
Конец ознакомительного отрывка
Купить книгу