Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Программная инженерия

.pdf
Скачиваний:
1310
Добавлен:
01.05.2014
Размер:
10.14 Mб
Скачать

Лекция 5. Технико-экономическое обоснование проектов программных средств

оценки размера ПС достигает 15—20%, то при определении ТЭП целесо­ образно сбалансированно выделять и учитывать факторы, влияние кото­ рых на трудоемкость и стоимость достаточно велико и составляет также около 20%. Таких факторов может быть около 5—10, и их число зависит от конкретных характеристик объекта и среды разработки ПС. При техни­ ко-экономическом обосновании проекта ПС на этом этапе состав и номен­ клатура учитываемых факторов должны выбираться путем включения в анализ тех факторов, которые достаточно влияют на ТЭП конкретного проекта.

Так как величина и достоверность определения размера проекта ПС ключевой фактор последующего технико-экономического анали­ за, то целесообразно применять несколько доступных методов для его оценивания. Конкретизация функций, структуры ПС и состава компонен­ тов проекта позволяет более достоверно определить размеры групп про­ грамм и, суммируя их, рассчитать размер всего комплекса программ. Кро­ ме того, на этом этапе повышается возможность выбора и использования аналогов данного проекта, так как становятся более определенными зада­ чи, функции и компоненты разрабатываемого ПС, для которого желатель­ но найти аналоги с известными апробированными характеристиками. Осо­ бенно сильно на ТЭП влияет использование готовых компонентов из пред­ шествующих разработок. При анализе аналогов могут быть выделены компоненты, пригодные для повторного применения в новом проекте. Это позволяет оценить возможную долю использования готовых компонентов и тем самым определить эквивалентный размер комплекса программ, под­ лежащий непосредственной разработке.

Для трех классов комплексов программ в предварительной модели СОСОМО II представлены коэффициенты для расчета зависимости трудо­ емкости разработки программ С (человеко-месяцы) от их объемов — П (тысячи строк текста) (таблица 5.4). Для аппроксимации зависимости тру­ доемкости от размера ПС рекомендуется использовать степенную функ­ цию вида:

С = АхП^

(5.1)

При разработке ПС большого размера должна возрастать сложность разработки по сравнению с ПС малого объема, так как в больших про­ граммах существенно усложняются взаимосвязи компонентов по инфор-

150

5.3. Методика 2 — оценка технико-экономических показателей проектов...

мации и управлению, а также становятся более трудоемкими процессы планирования и управления проектом в ходе разработки. Выдвинутая ги­ потеза о возрастании трудоемкости разработки с ростом размера ПС быст­ рее, чем по линейному закону, справедлива, если показатель степени в уравнении регрессии £* > 1. В ряде работ определены коэффициенты АиЕ в уравнениях степенной регрессии, показывающие характер зависимости трудоемкости от размера ПС. В таблице 5.4 представлены значения коэф­ фициентов регрессии для моделей СОСОМО для трех основных классов проектов программных средств. Выражение (5.1) с использованием этих коэффициентов и значений размера ПС — Л в тысячах строк ассембле­ ра — рекомендуется для прогнозирования трудоемкости полной разработ­ ки в человекО'Месяцах,

Таблица 5.4

Коэффициенты моделей для оценки трудоемкости разработки программных средств

Коэффициент А

Коэффициент jE*

Модель и тип программных средств

2,4

1,05

Базовая — СОСОМО

 

 

Детализированная модель СОСОМО:

3,6

1,20

— встроенный;

3,0

1,12

— полунезависимый;

2,4

1,05

— независимый

Длительность разработки программных средств является важней­ шим ТЭП, поскольку часто она определяет общие сроки разработки сис­ тем, а значит, быстроту реализации идей в различных областях автомати­ зации. При определении коэффициентов в таблице 5.5 за начало разработки ПС принят момент начала создания технического задания, а за окончание — завершение испытаний программного продукта в целом. Диапазону раз­ меров современных ПС в три-четыре порядка (до 10 млн строк) соответ­ ствуют приблизительно такие же диапазоны изменения трудоемкости и стоимости их разработок. Однако очевидна принципиальная нерентабель­ ность разработки даже очень сложных ПС более 5 лет. С другой стороны, программы даже в несколько тысяч строк по полному технологическому циклу с испытаниями как продукции редко создаются за время, меньшее чем полгода-год. Таким образом, вариация длительностей разработок ПС меньше, чем вариация их трудоемкости, и не превышает десятикратный

151

Лекция 5. Технико-экономическое обоснование проектов программных средств

диапазон. Длительности разработок — Т ограничены сверху и снизу, и одним из основных факторов, определяющих эти границы, является масш­ таб комплекса программ — /7.

Таблица 5.5

Коэффициенты моделей для оценки длительностей разработки программных средств

Коэффициент G

Коэффициент Н

Модель и тип программных средств

2,5

0,38

Базовая — СОСОМО

 

0,32

Детализированная модель СОСОМО:

2,5

— встроенный;

2,5

0,35

— полунезависимый;

2,5

0,38

— независимый

Чтобы сократить ошибки, связанные с неопределенностью измерения размера программ, мссл^лоъгяг, зависимость длительности разработки от ее трудоемкости. Учитывалась только трудоемкость непосредствен­ ной разработки программ С без затрат на средства автоматизации разра­ ботки. Обработка тех же, что выше, наборов данных позволила получить коэффициенты уравнения регрессии, представленные в таблице 5.5. Обоб­ щенные данные длительности разработки — Г по классам комплексов программ аппроксимированы уравнениями регрессии по методу наимень­ ших квадратов в зависимости от размера ПС и от трудоемкости их разра­ ботки:

T=GxC". (5.2)

Установлено, что длительность разработки ПС меньше подвергается изменениям при автоматизации разработки или другими методами, чем трудоемкость или производительность труда. Необходимость выполнения при разработке ПС определенной совокупности этапов и операций в за­ данной технологической последовательности остается более или менее постоянной при различных воздействиях на процесс разработки. Исклю­ чением является применение повторно используемых компонентов (ПИК), при котором значительно сокращаются этапы программирования и авто­ номной отладки модулей и групп программ, а также в той или иной степе­ ни длительность других этапов.. Поэтому зависимость Т от доли ПИК оказывается нелинейной, и заметное сокращение длительности разработ-

152

5.3. Методика 2 — оценка технико-экономических показателей проектов...

ки проявляется только при создании базовой версии ПС практически пол­ ностью из готовых компонентов.

Оценка требуемого среднего числа специалистов для конкретного проекта ПС предварительно может быть рассчитана путем деления оценки величины трудоемкости разработки (5.1) на длительность разработки (5.2). Однако рациональное число специалистов, участвующих в проекте ПС, распределяется неравномерно по этапам работ (см. таблицу 5.1). Поэтому целесообразно определять число и квалификацию необходимых специа­ листов с учетом этапов разработки комплексов программ. Обобщенные значения предварительного расчета ТЭП целесообразно оформлять в виде таблицы 5.3, где оценки представляются также с учетом пессимисти­ ческих и оптимистических результатов определения масштаба проекта комплекса программ.

Для учета влияния на трудоемкость различных факторов удобно пользоваться коэффициентами (рейтингами) изменения трудоемкости (КИТ) — М (i), учитывающими зависимость от 1-го фактора на совокуп­ ные затраты труда. В них входят факторы процесса непосредственной разработки, факторы программной и аппаратурной оснащенности, а также квалификация специалистов (таблица 5.6). Затраты на разработку Си объем программ П могут быть связаны через показатель интегральной средней производительности труда разработчиков Р, Непосредственно затраты на разработку можно представить как частное от размера ПС и производи­ тельности труда Р = 1 /А, корректируемой произведением коэффициентов изменения трудоемкости (КИТ — М (i)):

С = хПЛ/(0 = ^ х Я ^ х П М ( 0 .

(5.3)

Средняя производительность труда коллектива специалистов при разработке сложного полностью нового комплекса программ Р в выраже­ нии (5.3) может служить ориентиром для сравнения эффективности тру­ да при создании различных проектов ПС. Эта характеристика, конечно, различается для различных классов, размеров и других параметров комп­ лексов программ, однако диапазон этих различий не столь велик, как изменения размера и требований к качеству. Так, при диапазоне изменения размеров программ реального времени на четыре порядка средняя произ-

153

Лекция 5. Технико-экономическое обоснование проектов программных средств

водительность труда изменяется только в два раза, что в ряде случаев существенно облегчает упрощенные оценки и прогнозирование ТЭП.

В предварительной модели СОСОМОII при достаточной достовер­ ности определения масштаба ПС рекомендуется в выражении (5.3) учиты­ вать семь факторов М (/), представленных в таблице 5.6. Для каждого из них в таблице 5.7 приведены значения рейтингов (коэффициентов измене­ ния трудоемкости), которые целесообразно использовать при выборе оп­ ределенного содержания факторов конкретного проекта ПС, а также сво­ бодный столбец для выбранных значений. Результаты уточненного расче­ та трудоемкости проекта ПС по формуле (5.3) следует использовать для последующего определения длительности (выражение 5,2) и требуемого среднего числа специалистов.

Таблица 5.6

Состав и максимальные значения факторов предварительной модели СОСОМО II

Фактор

Символ

Макс,

Содержание фактора и его составляющие

значение

 

 

Требования к объекту разработки

 

 

 

РСРХ

Ml

5,55

RELY; DATA; CPLX; DOCU

 

 

 

Сложность и надежность программного продукта

RUSE

М2

1,31

RUSE

 

 

 

Требование повторного использования компонентов

 

 

 

Характеристики коллектива специалистов

PERS

М4

4,24

АСАР; РСАР; PCON

 

 

 

Квалификация специалистов и стабильность коллектива

PREX

М5

2,56

APEX; PLEX; LTEX

 

 

 

Опыт работы по тематике и с инструментарием

 

 

 

Технологическая среда разработки

PCIL

Мб

2,31

TOOL; SITE

 

 

 

Уровень инструментальной поддержки и необходимость

 

 

 

распределенной разработки

SCED

М7

1,43

SCED

 

 

 

Ограничение длительности разработки

 

 

 

АппаратурнО'вычислительная среда разработки

PDIF

МЗ

1,00

TIME; STOR; PVOL

 

 

 

Ограничения аппаратной платформы разработки и реали­

 

 

 

зации

154

5.4. Методика 3 —уточненная оценка технико-экономических показателей проектов...

 

 

 

 

 

Таблица 5.7

 

 

Уровень оценки

 

 

 

Интегральные

 

 

Уровень оценки

 

 

Очень

 

Номи­

 

Очень

Сверх­

факторы

Низкий

Высокий

низкий

нальный

высокий

высокий

 

 

 

Сложность и на­

0,81

0,98

1,00

1,30

1,74

2,38

дежность

 

0,95

1,00

1,07

 

1,24

Требования по­

 

1,15

вторного исполь­

 

 

 

 

 

 

зования компонен­

 

 

 

 

 

 

тов

1,62

 

 

 

 

 

Квалификация

1,26

1,00

0,83

0,63

0,50

специалистов

 

1,12

 

 

 

 

Опыт работы

1,33

1,00

0,87

0,71

0,62

Инструменталь­

1,30

1,10

1,00

0,87

0,73

0,62

ная поддержка

 

1,14

1,00

1,00

1,00

 

Ограничение дли­

1,43

 

тельности разра­

 

 

 

 

 

 

ботки

 

0,87

1,00

1,29

1,81

 

Аппаратурно-

 

2,61

вычислительная

 

 

 

 

 

 

среда

 

 

 

 

 

 

5.4. Методика 3—уточненная оценка технико-экономических показателей проектов

программных продуктов с учетом полной совокупности факто­ ров детальной модели СОСОМО 11.2000

При детальном проектировании возможно значительное повыше­ ние точности определения размера — масштаба проекта комплекса про­ грамм. Последовательная детализация и конкретизация проекта ПС позво­ ляет уточнять его будущий размер и привлекать для расчета трудоемкости большее число факторов, способных повысить точность прогноза всех ТЭП. Разработка полного содержания спецификаций функций и структу­ ры программных компонентов, их взаимодействия и интерфейсов, а также архитектуры всего комплекса программ и базы данных обычно позволяют повысить точность определения размера ПС приблизительно на 10%. По-

155

Лекция 5. Технико-экономическое обоснование проектов программных средств

этому при расчете трудоемкости разработки при прогнозировании целесо­ образно выбирать и учитывать влияние ряда дополнительных факторов из таблицы 5.8, которые не оценивались в методиках 1 и 2, вследствие их относительно меньшего влияния.

Таких дополнительных факторов обычно может быть выделено око­ ло 10, которые целесообразно рассматривать и учитывать при оценках, если он способен изменить трудоемкость разработки конкретного проекта на 5—10%. Анализ, выбор и оценивание коэффициентов влияния F (j) и М (i), этих дополнительных факторов, — довольно сложный процесс. Он оправдан, когда совместное влияние совокупности этих дополнительных факторов может изменить оценки трудоемкости на 10—20%. В результате расчет трудоемкости несколько усложняется, однако процессы последую­ щего расчета длительности разработки и необходимого числа специалис­ тов практически не изменяются. В целом процессы методики 3 техникоэкономического обоснования проекта ПС с учетом ряда дополнительных факторов практически не отличаются от предыдущей предварительной методики 2, однако требуется более тщательное определение размера ком­ плекса программ и оценивания влияния на трудоемкость разработки боль­ шего числа факторов.

Для более точного технико-экономического обоснования проек­ тов ПС при детальном проектировании обычно целесообразно учиты­ вать влияние ряда дополнительных факторов из четырех групп, что позво­ ляет повысить достоверность прогнозирования технико-экономических по­ казателей ПС до уровня около 5—10%. В детальной модели СОСОМО II влияние на трудоемкость определяют 22 фактора, из которых пять — масштабные факторы, характеризуются множителем F (j ) в значении степени размера ПС, а 17 множителей М ( i ) непосредственно изменяют трудоемкость разработки. Перечень, максимальные значения и содержа­ ние этих множителей представлены в таблице 5.8. При этом номинальны­ ми (средними) ниже принимаются все М (i)= 1,00, при которых соответ­ ствующий фактор практически не влияет на трудоемкость ПС.

Для выполнения оценок трудоемкости разработки (человеко-ме­ сяцы) в детальной модели СОСОМО II предложены выражения, уточня­ ющие зависимости, представленные выше в п. 5.3.

156

5.4. Методика 3 -— уточненная оценка технико-экономических показателей проектов...

Таблица 5.8

Состав и максимальные значения факторов детальной модели СОСОМО II

Фактор

Символ

Макс,

значение

 

 

PREC

Fl

1,33

FLEX

F2

1,26

RESL

F3

1,39

TEAM

F4

1,29

РМАТ

F5

1,43

RELY

Ml

1,54

DATA

M2

1,42

CPLX

M3

2,38

RUSE

M4

1,31

DOCU

M5

1,52

ACAP

M9

2,00

PCAP

MIO

1,76

PCON

Mil

1,51

APEX

M12

1,51

PLEX

M13

1,40

LTEX

M14

1,43

TOOL

M15

1,50

SITE

M16

1,53

SCED

M17

1,43

TIME

M6

1,63

STOR

M7

1,46

PVOL

M8

1,49

Содержание фактора

 

Масштабные факторы

 

Новизна проекта

 

Согласованность с требованиями и интерфейсами

 

Управление рисками и архитектурой проекта

 

Слаженность работы коллектива

 

Технологическая зрелость обеспечения разработки

 

Факторы, влияющие на затраты разработки

 

Требования и характеристики объекта разработки

 

Надежность функционирования

!

Размер базы данных

 

Сложность функций и структуры

1

Требование повторного использования компонентов

 

Полнота и соответствие документации проекта

 

Характеристики коллектива специалистов

 

Квалификация аналитиков

 

Квалификация программистов

 

Стабильность коллектива

 

Опыт работы по тематике проекта

 

Опыт работы в инструментальной среде

 

Опыт работы с языками программирования

 

Технологическая среда разработки

 

Уровень инструментальной поддержки проекта

 

Необходимость распределенной разработки проекта

 

Ограничения длительности разработки проекта

1

Аппаратурно-вычислителъная среда разработки

 

Ограниченность времени исполнения программ

 

Ограниченность доступной оперативной памяти

 

Изменчивость виртуальной среды разработки проекта

|

С = ^хП^хПМ(г),

(5.4)

/=1

где: А = 2,94; Е = В-^ 0,01 х ^ F O ) ; В = 0,91.

7=1

Для прогнозирования длительности (месяцы) разработки ПС реко­ мендуются выражения:

157

Лекция 5. Технико-экономическое обоснование проектов программных средств

T=GxC",

(5.5)

5

 

где: G = 3,67; Н = D + 0,02 х 0,01х ^ F ( y )

^ D + 0,02 х {Е — В);

j=\

Z)= 0,28.

Вмодели СОСОМО II поддерживаются вероятностные диапазоны оценок, представляющие одно стандартное отклонение на фоне наиболее достоверных оценок. При использовании представленных выражений для прогнозирования ТЭП конкретных проектов следует выбирать набор фак­ торов {калибровать модель), имеющих наибольшие значения коэффици­ ентов изменения трудоемкости (КИТ) F (j ) и М ( i) в соответствии с характеристиками конкретного проекта и среды разработки и вставлять выбранные значения в таблицу 5.8. Значения этих коэффициентов и уров­ ни оценок их влияния на трудоемкость по основным выделенным группам факторов представлены в модели СОСОМО П.

Заказчик может заказать разработку специальным образом калибро­ ванной версии коэффициентов в формулах (5.4) и (5.5), которая должна более точно отражать применяемые технологические процессы, особенно­ сти и возможности проекта ПС, чем в методике 2 . При калибровке модели СОСОМО II последовательно выполняются следующие процедуры для конкретного проекта:

выбирается набор факторов М ( i) , оказывающих наибольшее влияние на прогнозируемую трудоемкость проекта ПС;

устанавливаются значения масштабных факторов F (j);

для каждого из выбранных факторов производится оценка коэф­ фициента изменения трудоемкости для анализируемого проекта ПС.

Выбор состава и оценку факторов, влияющих на ТЭП конкретного проекта ПС, предварительно целесообразно проводить по шагам при ка­ либровании модели СОСОМО II на основе совокупности 22 факторов из таблицы 5.8. Первоначально должна производиться оценка коэффициен­

тов влияния пяти групп факторов — F {j ) . В выражениях (5.4), (5.5) значения Л/("iV отражают коэффициенты влияния i-ых факторов на трудо­ емкость разработки ПС, которые первоначально (все п ) считаются равны­ ми единице. Предварительный расчет трудоемкости и длительности раз­ работки ПС приМ (i) = 1 может служить уточненным ориентиром, так

158

5.4. Методика 3 — уточненная оценка технико-экономических показателей проектов...

как он базируется на более точном значении размера проекта комплекса программ и более адекватных значениях основных коэффициентов, чем в методике 2.

Выбирать и учитывать следует те факторы, коэффициенты влияния которых на трудоемкость в конкретном проекте имеют достаточную вели­ чину, сбалансированную с точностью определения размера комплекса про­ грамм или превышают ее. Эти факторы можно разделить на две группы, которые существенно различаются по степени влияния на трудоемкость разработки ПС. В первую группу F {j) следует включать, кроме разме­ ра и доли повторно используемых компонентов, совокупность факторов, которые способны изменять трудоемкость в несколько (до 3—5) раз:

новизну проекта комплекса программ;

необходимую степень согласованности проекта с требованиями технического задания;

наличие управления рисками и архитектурой проекта;

уровень обобщенной слаженности и организованности коллектив­ ной разработки проекта;

уровень обеспечения и оснащения технологии разработки по оцен­ ке СММ.

Вторую группу М (i) следует выбирать из совокупности перечис­ ленных в таблице 5.8 семнадцати факторов, таких, которые в конкретном проекте могут повлиять на изменение трудоемкости разработки на 10— 20%, соизмеримое с точностью оценок размера ПС:

требования надежности ПС;

требования степени соответствия документации программному про­

дукту;

тематическая квалификация специалистов;

технологическая квалификация проектировщиков и программистов;

стабильность состава коллектива разработчиков;

ограничения ресурсов объектной ЭВМ реального времени;

стабильность требований заказчика к задачам и функциям ПС. Остальная совокупность около десяти факторов модели СОСОМО II

обычно может изменять трудоемкость проекта менее чем на 10%, и их не­ целесообразно учитывать в процессе детального проектирования, когда точность оценивания размера проекта ПС может составлять около 10%.

159