Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
vendrov_A_M_proektirovanie_programmnogo_obespec...doc
Скачиваний:
6
Добавлен:
01.04.2025
Размер:
7 Мб
Скачать
☆

Статистические (регрессионные) модели

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

Линейные статистические модели имеют следующий вид:

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

Нелинейные, статистические модели имеют следующий вид:

где А — комбинация факторов, влияющих на трудоемкость; b — экспоненциальный коэффициент масштаба.

Статистические модели просты для понимания, но имеют следующий недостаток: результаты справедливы в основном только для конкретной ситуации. Другой недостаток — при уве­личении количества входных параметров количество данных, не­обходимых для калибровки модели, также возрастает.

Статистическая модель СОСОМО II

Модель СОСОМО34 (Constructive COst Model — конструктив­ная модель стоимости), разработанная Барри Боэмом, является одной из самых известных и хорошо документированных моде­лей оценки трудоемкости разработки ПО. Исходная модель СОСОМО основывалась на базе данных по 56 выполненным проектам, а ее различные варианты отражали различия между процессами в различных областях ПО.

В модели СОСОМО используется ряд допущений.

  1. Исходный код конечного продукта включает в себя все (кроме комментариев) строки кода.

  2. Начало цикла разработки совпадает с началом разработки продукта, окончание совпадает с окончанием приемочного тестирования, завершающим стадию интеграции и тестиро­вания (работа и время, затрачиваемые на анализ требова­ний, оцениваются отдельно как дополнительный процент от оценки разработки в целом).

  3. Виды деятельности включают в себя только непосредствен­но направленные на выполнение проекта работы, в них не входят обычные вспомогательные виды деятельности, такие, как административная поддержка, техническое обеспе­чение и капитальное оборудование.

  1. Человеко-месяц состоит из 152 ч.

  2. Проект управляется надлежащим образом, в нем использу­ются стабильные требования.

Проект СОСОМО II (современный вариант модели СОСО-МО) был выполнен в Центре по разработке ПО Южно-Калифор­нийского университета (USC Centre for Software Engineering). Этот проект преследовал следующие цели.

  1. Разработать модель для оценки трудоемкости и сроков соз­дания ПО для итерационной модели жизненного цикла ПО, которая будет применяться в. 1990-х и 2000-х годах.

  2. Создать базу данных по трудоемкости ПО.

  3. Разработать инструментальную поддержку для усовершен­ствования модели.

  4. Создать количественную аналитическую схему для оценки технологий создания ПО и их экономического эффекта.

Уравнения СОСОМО II для оценки номинальных значений трудоемкости и времени имеют следующий вид. Трудоемкость (в человеко-месяцах):

,

где

,

Календарное время:

,

где

,

— мультипликативные коэффициенты трудоемкости;

— экспоненциальные коэффициенты масштаба;

— размер ПО, выраженный в тысячах строк исходного кода или количестве функциональных точек без учета поправоч­ных коэффициентов (UFP), определенном по методике IFPUG, с последующим преобразованием в количество строк кода.

Калибровочные переменные А, В, С и D в модели СОСОМО II версии 2000 г. принимают следующие значения: А = 2.94, В — 0.91, С =3.67, D = 0.28.

Коэффициенты EMt отражают совместное влияние многих параметров. Они позволяют характеризовать и нормировать сре­ду разработки по параметрам, содержащимся в базе данных про­ектов модели СОСОМО II (в настоящее время более 160 проек­тов). Каждый коэффициент в зависимости от установленного значения (очень низкое, низкое, номинальное, высокое, очень высокое) вносит свой вклад в виде множителя с определенным диапазоном значений. Результат учета этих 17 коэффициентов используется при вычислении в уравнении трудоемкости. Состав коэффициентов приведен в табл. 6.8.

Таблица 6.8

Мультипликативные коэффициенты трудоемкости

Идентификатор

Описание коэффициента

Диапазон значений

RELY

Требуемая надежность

0.82-1.26

DATA

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

0.90-1.28

CPLX

Сложность продукта

0.73 - 1.74

RUSE

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

0.95- 1.24

DOCU

Соответствие документации требованиям ЖЦ

0.81- 1.23

TIME

Ограничение времени выполнения

1.00- 1.63

STOR

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

1.00-1.46

PVOL

Изменчивость платформы

0.87- 1.30

ACAP

Способности аналитика

1.42-0.71

PCAP

Способности программиста

1.34-0.76

APEX

Знание приложений

1.22-0.81

PLEX

Знание платформы

1.19-0.85

PCON

Преемственность персонала

1.29-0.81

LTEX

Знание языка/инструментальных средств

1.20-0.84

TOOL

Использование инструментальных средств

1.17 - 0.78

SCED

Требуемые сроки разработки

1.43-1.00

SITE

Рассредоточенность команды разработчиков

1.22-0.80

Показатель экспоненты процесса Е может изменяться в диа­пазоне от 0.91 до 1.23 и определяется как сочетание следующих параметров.

  1. Наличие прецедентов у приложения: степень опытности организации-разработчика в данной области.

  2. Гибкость процесса: степень строгости контракта, порядок его выполнения, присущая контракту свобода внесения измене­ний, виды деятельности в течение всего жизненного цикла и вза­имодействие между заинтересованными сторонами.

  3. Разрешение рисков, присущих архитектуре: степень техни­ческой осуществимости, продемонстрированной до перехода к полномасштабному внедрению.

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

  5. Зрелость процесса: уровень зрелости организации-разра­ботчика, определяемый в соответствий с моделью СММ.

В табл. 6.9 приведены возможные значения экспоненциаль­ных коэффициентов масштаба, составляющих в сумме показа­тель Е. Суммарное влияние этих коэффициентов может оказать­ся весьма существенным.

Таблица 6.9

Экспоненциальные коэффициенты масштаба модели СОСОМО II

Параметр

Характеристика

Значение

PREC - нали­чие прецеден­тов

Полное отсутствие прецедентов, полностью непредсказуемый проект

6.20

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

4.96

Наличие некоторого количества прецеден­тов

3.72

Общее знакомство с проектом

2.48

Значительное знакомство с проектом

1.24

Полное знакомство с проектом

0.00

FLEX - гиб­кость процесса разработки

 

Точный, строгий процесс разработки

5.07

Случайные послабления в процессе

4.05

Некоторые послабления в процессе

3.04

Большей частью согласованный процесс

2.03

Некоторое согласование процесса

1.01

Заказчик определил только общие цели

0.00

RESL - разрешение рисков в архитектуре

Малое (20%)

7.07

Некоторое (40%)

5.65

Частое (60%)

4.24

В целом (75%)

2.83

Почти полное (90%)

1.41

Полное (100%)

0.00

TEAM -сплоченность команды

Сильно затрудненное взаимодействие

5.48

Несколько затрудненное взаимодействие

4.38

Некоторая согласованность

3.29

Повышенная согласованность

2.19

Высокая согласованность

1.10

Взаимодействия как в едином целом

0.00

РМАТ - зре­лость процес­сов

Уровень 1 СММ

7.80

Уровень 1+ СММ

6.24

Уровень 2 СММ

4.68

Уровень 3 СММ

3.12

Уровень 4 СММ

1.56

Уровень 5 СММ

0.00

Пример экспоненциального коэффициента масштаба — коэффициент зрелости процессов (РМАТ— Process Maturity).

Значение коэффициента РМАТ зависит в основном от уровня зрелости процессов в соответствии с моделью СММ. Процедура определения значения РМАТ основана на определении процента соответствия для каждой из 18 основных групп процессов (key process areas — КРА), определенных в СММ. Процент соответ­ствия вычисляется на основе групп процессов (подробно описа­но 8 групп из 18).

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]