Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Тех-экон. обоснование.doc
Скачиваний:
58
Добавлен:
26.03.2015
Размер:
366.59 Кб
Скачать

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

РАБОТЫ

ФУНКЦИИ

Анализ требований

Проектирование

Кодирование

Интеграция в систему

Итог

1

2

3

4

5

6

A

2.0

4.0

1.5

5.5

13.0

B

3.0

12.0

3.5

8.5

27.0

C

3.5

14.0

5.0

12.0

34.5

D

4.0

8.0

4.0

5.0

21.0

E

2.5

12.0

5.0

11.5

31.0

F

2.5

7.0

4.5

6.0

20.0

G

5.0

15.0

4.0

8.0

32.0

Итого

22.5

72.0

27.5

56.5

178.5

Цена чел.-мес.

15000

14000

10000

12000

Стоимость (тыс. рублей)

337.5

1008.0

275.0

678.0

2298.5

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

4. Использование эмпирических моделей для оценок программных продуктов.Ресурсная модель комост

Оценочные модели для программных продуктов.

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

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

  • статические модели с единственной переменной;

  • динамические модели с многими переменными; . • теоретические модели.

Статическая модель с единственной переменной имеет форму

ресурс = с1* (оцененная характеристика) с2,

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

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

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

ресурс= с11е,+ с21+ ... ,

где е1 - первая характеристика профаммного продукта, а С11 - эмпи­рически выведенная константа для лервой характеристики.

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

Конструктивная модель стоимости - КОМОСТ

Как уже отмечалось, одной из наиболее распространенных и используе­мых на практике является Конструктивная модель стоимости - КОМОСТ (Con­structive Cost Model - СОСОМО). Модель построена применительно к каскад­ной модели жизненного цикла программного изделия.

Эта модель применима к трем типам профаммных систем.

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

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

3. Встроенный тип предполагает, что проект должен разрабатываться в пределах весьма строгих ограничений и требований. Эти проекты, как прави­ло, большого объема (сотни тысяч строк кода) и трудоемкости. Примерами та­ких систем могут быть системы управления движением авиатранспорта, мощ­ные системы оперативного управления с жесткими ограничениями на пара­метры функционирования и т.п.

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

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

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

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

Общее описание метода

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

ТР = а*(РП)b

ДP = c*(TP)d

В этих уравнениях трудоемкость ТР выражается в человеко-месяцах, размер программного продукта РП в тысячах строк исходного кода, а длительность разработки ДР в месяцах. Коэффициенты a, b,c, d определены из опыт­ных данных.

На основании вычисленных значений трудоемкости и длительности разработки легко определить необходимую среднюю штатную численность исполнителей ШТ=ТР/ДР и среднюю производительность труда исполнителя СПТ=РП/ТР.

Коэффициенты a,b,c,d зависят от типа системы, их значения представлены в табл. 3 .

Таблица 3