Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
11 / тп / Venchkovsky.doc
Скачиваний:
113
Добавлен:
19.05.2015
Размер:
515.07 Кб
Скачать

11.4.2. Эмпирические оценочные модели

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

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

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

Одной из наиболее распространенных и используемых на прак­тике является Конструктивная модель стоимости — СОСОМО (Constructive Cost Model). Эта модель применима к трем типам про­граммных систем:

1. Изолированный тип — относительно небольшие программ­ные проекты, в разработке которых участвуют небольшие коллек­тивы с хорошим прикладным опытом работы. Требования к про­граммному изделию при этом не очень жесткие.

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

3. Встроенный тип — когда проект разрабатывается внутри очень строгих ограничений и требований.

Конструктивная модель стоимости представлена иерархией мо­делей:

1. Базовая модель — основная — это статическая модель с одной переменной. Модель позволяет рассчитать усилия и стои­мость разработки программного изделия. Параметром модели слу­жит размер изделия в тысячах строк кода (KLOC).

Базовая модель дает возможность получить не только интег­ральные оценки показателей трудозатрат в целом по всему проекту, но и определить трудозатраты и сроки выполнения работ как по фазам ЖЦПИ, так и по основным видам деятельности.

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

3. Детальная модель предназначена для более подробного учета деталей проекта и обеспечивает более точные оценки трудозатрат, сроков и стоимости разработки программного изделия.

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

Для оценки стоимости и затрат усилий на разработку исполь­зуются следующие уравнения базовой модели СОСОМО:

Е = а • (KLOC) • ехр (Ь);

D = с - (Е) exp (d),

где Е требуемые усилия (в человеко-месяцах);

D — хронологическое время разработки (в месяцах);

а, Ь, с, d — коэффициенты, представленные в табл. 11.1.

Таблица 11.1

Тип программного проекта

а

b

с

d

1. Изолированный 2. Полуизолированный 3. Встроенный

2,4 3,0 3,6

1,05 1,12 1.20

2,5 2.5

2.5

0,38 0,35 0,32

Базовая модель расширяется и превращается в промежуточную при условии учета совокупности атрибутов, оказывающих влияние на стоимость разработки. Обычно атрибуты группируются в четы­ре основные категории.

1. Атрибуты программного продукта:

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

• размер прикладной базы данных;

• сложность программного продукта.

2. Атрибуты технических средств:

• ограничения на время прогона программы;

• ограничения на объем памяти;

• требуемое время цикла обработки.

3. Атрибуты персонала разработчиков:

• квалификация системного аналитика;

• опыт в данной прикладной области;

• опыт работы с принятой в проекте средой разработки.

4. Атрибуты среды проектирования:

• применение современных методов программотехники;

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

Каждый из перечисленных атрибутов располагается в пределах шкалы значений, диапазон которой изменяется от "очень низкий" до "чрезвычайно высокий". На основе специально составленной таблицы, основанной на опыте разработки подобных проектов, оп­ределяется множитель корректировки усилий. Типичные значения этих множителей лежат в пределах от 0,9 до 1,4.

Соседние файлы в папке тп