книги / Оценка затрат на разработку программных средств
..pdfболее эффективным методом доступа при раооте на персональных ЭВМ.
Влияние на производительность труда квалификации коллек тива разработчиков КП. Информация о квалификации коллекти ва разработчиков на момент начала разработки КП (человече ский фактор) накапливалась в базе данных в трех видах средне го стажа работы специалистов (см. § 2.2 и 3.1). Каждый из видов стажа работы коллектива специалистов представляет собой сум му индивидуального стажа того же вида, деленную на общее чис ло специалистов в коллективе — выражение (3.5).
Таким образом, тот или иной вид коллективного среднего ста
жа является одной |
из составляющих интегральных показателей. |
|||
характеризующих |
различные |
факторы |
квалификации |
специали |
стов, образующих |
коллектив. |
Другие |
составляющие |
интеграль |
ных показателей (уровень подготовки в вузе, индивидуальные спо собности специалиста и др.) в проводимых исследованиях не учитывались. В число разработчиков КП для проведения исследо ваний о влиянии каждого из трех рассматриваемых человеческих факторов на производительность труда включались технические руководители разработки, системные аналитики и программисты.
Вспомогательный |
персонал не учитывался. |
На основании данных |
|||
о различных |
видах стажа |
определялся |
средний |
обобщенный |
|
стаж работы |
специалистов |
коллектива разработчиков — вы |
|||
ражение (3.6), в котором каждый вид стажа |
имеет |
одинаковый |
|||
Bet (не отдается предпочтение ни одному из видов стажа). |
|||||
При анализе |
корреляционной связи производительности труда |
с обобщенным стажем работы в однородных группах была выд винута гипотеза о росте производительности труда с возрастани
ем обобщенного стажа работы и его составляющих. Исследования
проводились при обработке данных двух видов. Данные |
первого |
||
вида собраны по ретроспективному методу |
по КП в целом для |
||
различных классов. Они вошли в базу ретроспективных |
данных |
||
и .из них были образованы однородные группы, |
характеристики |
||
которых приведены в табл. 3.3. Данные |
второго |
вида |
собраны |
фактографическим методом по компонентам КП второго |
класса |
||
(САРПО РУЗА и ПРА). |
|
|
труда с |
При проверке гипотезы о росте производительности |
возрастанием обобщенного стажа работы коллектива разработчи ков по данным первого вида для однородных по основным призна кам групп КП СРВ малого и большого объема, ИПС и ППП не были получены значения коэффициентов корреляции, статистиче ски подтверждающих выдвинутую гипотезу. Для группы средних по объему комплексов программ третьего класса получено уравне ние регрессии со статистически существенным положительным коэффициентом корреляции, равным 0,63:
Я ^ = 1,31 + 0,613./ср. |
(3.9> |
15!
мы даже в несколько тысяч команд по полному технологическому циклу с испытаниями как продукции производственно-техничес кого назначения редко создаются за время, меньшее, чем полгодагод. Таким образом, вариация длительностей разработок ПС мно го меньше, чем вариация их трудоемкостей, и не превышает деся тикратный диапазон. Длительности разработок /р ограничены сверху и снизу, и одним из основных факторов, определяющих эти границы, является объем программ — Як (гипотетический график для сложных ПС реального времени (рис. 3.9).
Относительный «консерватизм» значений длительностей по сравнению с трудоемкостью определяется объективной необходи мостью создавать КП в рациональные сроки. Любые ПС должны поступать на эксплуатацию до того, как в них пропадает необхо димость. Их цели, концептуальная основа и алгоритмы не должны устареть за время разработки. Отсюда появляется верхний пре дел допустимых длительностей разработки. Этот верхний предел
не может иметь единственное значение для любых классов и объ емов ПС. Однако недопустима его вариация в том широком диа пазоне, что и объем программ. Поэтому на практике по мере воз растания объема ПС увеличиваются коллективы специалистовразработчиков, что обеспечивает основной прирост необходимой трудоемкости. Чем крупнее создаваемое ПС, тем большие усилия обычно прилагаются для автоматизации и совершенствования тех нологии разработки. Это также способствует замедлению роста длительностей разработки, однако по мере.увеличения сложности программ длительность их разработки все же заметно возрастает.
Стремление ограничивать длительность реальных разработок ПС приводит к объективному формированию верхнего предела, за
которым |
распространяется зона «нерациональных» длительностей, |
||||||||
|
|
|
зависящих от объема ПС (см. |
||||||
|
|
|
рис. 3.9). |
Даже |
для |
довольно |
|||
|
|
|
сложных |
ПС, |
имеющих обьем |
||||
|
|
|
Як~ 200 тыс. строк, вряд ли до |
||||||
|
|
|
пустима длительность |
разработ |
|||||
|
|
|
ки более 3—5 лет. Большие дли |
||||||
|
|
|
тельности, |
иногда |
имеющиеся |
на |
|||
|
|
|
практике, |
обусловлены |
|
в основ |
|||
|
|
|
ном низкой квалификацией разра |
||||||
|
|
|
ботчиков |
и заказчиков, |
|
недоста |
|||
|
|
|
точной автоматизацией |
|
техноло |
||||
|
|
|
гии, малым коллективом |
специа |
|||||
|
|
|
листов и рядом |
других, |
преиму |
||||
областей |
«невозможных» |
и «нера |
щественно |
организационных |
и |
||||
технологических причин. |
Подоб |
||||||||
циональных» длительностей |
разра |
ные ситуации чаще встречаются |
|||||||
ботки /р для сложных ПС в зави |
|||||||||
симости от объема программ Я н |
при относительно небольших раз- |
154
САРПО). Так как использовать такие данные для прогнозирова ния длительностей новых разработок нецелесообразно, то дли тельности нормированы и представлены значениями, деленными на
среднюю длительность разработки программ третьего класса. Для конкретного планирования длительностей создания ПС определен ных классов необходимо для каждого предприятия исследовать и обобщать технико-экономические показатели разработок, однород ных по технологии и другим условиям. Такие обобщения при конк ретных условиях разработок позволяют получить опорные абсо лютные значения длительностей для некоторых объемов ПС. Эти абсолютные значения могут быть использованы для расчета коэф фициентов нормирования с целью прогнозирования длительностей разработок на базы выявленных ниже закономерностей и реаль ных опорных значений для конкретных условий разработки.
Анализ длительностей разработки ПС по данным, полученным ретроспективным методом. Коэффициенты вариации длительностей для трех исследованных классов ПС (СРВ, ИПС и САРПО) близ ки к 0,5 (0,48, 0,48 и 0,56 соответственно), что приблизительно в полтора раза меньше, чем коэффициент вариации производитель ности труда для тех же классов (0,84, 0,81 и 0,71, см. § 3.3). В то же время трудоемкость разработок варьировалась от нескольких человеко-лет до тысячи человеко-лет. Таким образом, несмотря на значительную неоднородность данных, вариация длительностей разработки значительно меньше по сравнению с вариацией трудо емкости и даже производительности труда.
Обобщенные данные по трем классам программ аппроксимиро вались уравнениями регрессии вида у= ахъ по методу наименьших
квадратов в зависимости от объема ПС и от трудоемкости их раз работки. При аппроксимации в зависимости от объема программ отсутствие четкой формализации единиц измерения объема дало дополнительный разброс характеристик между различными клас сами программ. Однако программы СРВ почти полностью разраба тывались на ассемблерах. Программы других двух классов ПС разрабатывались частично на языках высокого уровня, а осталь ная часть этих ПС разработана на ассемблерах. Поэтому за еди ницу измерения объема принималось число объектных команд в программе, которое считалось эквивалентным числу операторов исходного текста на ассемблере.
В результате корреляционной обработки технико-экономиче ских показателей получены_уравнения регрессии, связывающие от
носительную длительность 7Р разработки ПС с их объемом П к:
Ц3) = 0 ,208-Як14 — для СРВ;
7Р21) =0,092-Як*‘7 — для ИПС: |
(3.12) |
7р22) =0,186-/7к13— Для САРПО. |
|
156
Зависимости |
ip от |
|
|||||
объема |
программ |
77ь- |
|
||||
значительно |
различа |
|
|||||
ются |
для |
классов |
ПС |
|
|||
(рис. 3.10). Это опреде |
|
||||||
ляется различием слож |
|
||||||
ности |
классов |
|
про |
|
|||
грамм, |
|
применяемых |
|
||||
языков программирова |
|
||||||
ния |
и единиц |
измере |
|
||||
ния объема КП, |
след |
|
|||||
ствием |
чего |
является |
|
||||
различие значений объ |
|
||||||
ема |
созданных |
|
про |
|
|||
грамм при одной и той |
|
||||||
же длительности |
и тру |
|
|||||
доемкости |
разработки. |
Рис. 3.10. Относительная длительность tp разра |
|||||
При создании программ |
ботки ПС трех классов в зависимости от объема |
||||||
СРВ |
|
практически |
не |
программ Пк |
применялись языки вы сокого уровня и наиболее велика сложность разработки, что при
водит к наибольшим значениям tv. КП с тем же объемом для ИПС
и САРПО разрабатываются в 1,5—2 раза быстрее. При этом сле дует учитывать, что объем программ оценивался по объектному коду, т. е. с учетом расширения трансляторов. В этом отражается, в частности, неадекватность измеряемого объема программ различ ных классов значениям трудоемкости и длительности их разработ ки. Конечно, достоверность приведенных зависимостей относительно невелика, однако общие тенденции они отражают, по-видимому, достаточно правильно.
Чтобы исключить ошибки, связанные с неопределенностью из мерения объема программ, исследована зависимость длительно сти разработки от ее трудоемкости (рис. 3.11). Учитывалась толь ко трудоемкость непосредственной разработки программ Сц> без затрат на средства автоматизации разработки и на машинное вре мя. Обработка тех же, что выше, наборов данных позволила полу чить уравнения регрессии:
7|,3) = 0,304‘С?£24— для |
СРВ; |
|
Г^21,= 0 ,166-Cif,34— для |
ИПС; |
(3.13) |
7£22>= 0 ,3 1 6 .C V 4— Для САРПО. |
|
|
Средние длительности разработки трех классов |
ПС заметно |
различаются в зависимости от трудоемкости и от объема программ (ср. рис. 3.10 и рис. 3.11). Для исследованных классов ПС значе
ния /р в зависимости от трудоемкости Сц> очень близки. Различие
157