3. Определить состав
оцениваемых модулей и оценить размер каждого моду
ля Vm в показателях
функционального размера, где m ={ 1,М}- М - количество мо
дулей в
ПС, и конвертировать его в строки кода (SLOC).
4. Вычислить номинальные трудозатраты каждого модуля Тномm по формуле
(1).
5. Оценить 17 атрибутов
стоимости и экспертным путем определить коррек
тирующие
коэффициенты этих атрибутов Кі для каждого модуля.
6. Вычислить уточненную трудоемкость Тт каждого модуля по формуле (7):
Т„ = &&&&&тт (7)
где Тномm - номинальная трудоемкость модуля, вычисленная по формуле (1).
7. Вычислить требуемую продолжительность разработки
модуля в месяцах
Дm подстановкой Тm в формулу (6).
8.6.3. Соотнесение стоимостных атрибутов Предпроектной и Проектной моделей
Стоимостные атрибуты Предпроектной модели являются комбинацией стоимостных атрибутов Проектной модели (таблица 8.23).
Оценки значений интегрального атрибута вычисляются как субъективно средневзвешенные оценки единичных атрибутов. При этом шкала оценок интегрального атрибута может быть шире, чем шкала единичных атрибутов. Если оценка стоимостного атрибута попадает между уровнями рейтингов, она должна округляться в сторону номинального рейтинга, например, если рейтинг атрибута попадает между «Очень низкий» и «Низкий» следует выбирать «Низкий».
Для вычисления этих оценок применяется следующий алгоритм.
1. Каждому рейтингу
оценки каждого единичного атрибута присваивается
вес в
такой последовательности: оценке «Очень низкий» - 1, «Низкий» - 2, «Номи
нальный»
- 3 и т.д.
2. Суммируются веса
единичных атрибутов и размещаются по шкале инте
грального
атрибута.
3. Вычисляются
усредненные значения коэффициентов интегрального атри
бута.
Ниже для иллюстрации рассмотрен пример оценки интегрального атрибута ПЕРС.
Интегральный атрибут «Квалификация разработчика»(ПЕРС) является комбинацией трех единичных атрибутов, приведенных в таблице. 8.24, каждый из которых имеет масштаб ранжирования от «Очень низкий» до «Очень высокий».
1. Рейтингам единичных атрибутов присваиваются веса (таблица 8.24).
2. Суммируются веса единичных атрибутов и в результате получаются значения от 3 до 15. Эти веса переносятся на масштаб интегрального атрибута таким образом: оценка "Номинальный" 9 отвечает сумме весов (3+3+3), а соответствующий им коэффициент равен 1. Оценка "Сверхнизкий" соответствует сумме весов (1+1+1) или (1+1+2), и т.д. (таблица 8.25).
3. Усредненные значения коэффициентов интегрального атрибута (таблица 8.26) вычисляются следующим образом:
а) определяются комбинации всех весов, для которых их сумма составляет от 3 до 4
(1,1,1) - одна комбинация для веса 3,
(1,1,2) - три комбинации для
веса 4
(2,1,1)
(1,2,1)
и т.д. для всех весов.
b)- вычисляется произведение коэффициентов для этих последовательностей (таблица 8.27):
(1.42* 1.34* 1.29)/ 2=1.23 (1.42* 1.34* 1.12)/ 2=1.06 (1.19*1.34*1.29)/ 2=1.03 (1.42*1.15*1.29)/ 2=1.05
с) вычисляются значения интегрального коэффициента: 1.23+(1.06+1.03+1.05)/ 3=2.5
Для определения всех интегральных коэффициентов шаги а)-с) выполняются для всех оценок.
8.7. Распределение трудозатрат по стадиям разработки
и видам работ
Модель СОСОМО II позволяет выполнить распределение трудозатрат по стадиям разработки по стандартной (каскадной) модели. Это распределение зависит от размера ПС, представленного в тысячах строк исходного кода (KSLOC, далее К). В таблице 8.28 представлено распределение трудозатрат по стадиям разработки в процентах от общих трудозатрат. Распределение трудозатрат по отдельным модулям выполняется аналогично. Изменение процентного соотношения трудоемкости на стадиях с ростом размера объясняется тем, что большие ПС требуют больших затрат на интеграцию и тестирование. Если вычисленный размер ПС находится между значениями, представленными в таблице, - соответствующее долевое распределение получается путем линейной интерполяции данных из таблицы 8.28 по формуле (8):
У=У0 + [(x-x0 ) / (х1-хо)]*(у1-у0) (8)
где у - искомое распределение в процентах, х - вычисленный размер,
(х0,у0) и (х1 у1) - точки таблицы (размер, процент), между которыми находится вычисленный размер.
В таблице 8.29 представлено долевое распределение продолжительности работ (в процентах) по стадиям в зависимости от размера ПС. Если вычисленный размер находится между значениями, указанными в таблице, - соответствующее распределение также вычисляется путем линейной интерполяции.
Ниже в таблицах 8.30 - 8.34 приведено долевое распределение трудозатрат разработки по видам работ, выполняемых на отдельных стадиях (перечень работ соответствует приведенным в модели)4.
4 Это распределение выполняется по формуле Рэлея, поэтому общая сумма процентов по работам не равна 100 [1].
8.8. Корректировкаоценокмодели
Предпроектная и Проектная модели дают скалярные оценки трудозатрат и продолжительности разработки и не являются абсолютно точными.
В большинстве случаев, при использовании подобных моделей предпочтительнее получать интервальную (векторную) оценку, внутри которой можно выбрать приемлемое значение (от самого оптимистического до самого пессимистического) для принятия более обоснованного решения о продолжительности и трудозатратах.
Путем статистического моделирования (применяя распределение Гаусса) были получены коэффициенты для вычисления граничных оценок интервалов доверия (таблица 8.35). Подробную информацию об этом можно получить в [3], а также из Интернет (http://www.sunset.usc.edu/research/COCOMOII).
Эти же коэффициенты рекомендуется использовать для оценки продолжительности разработки.
Литература к главе 8
1.
Боэм
Б. У. Инженерное
проектирование программного обеспечения. М., Радио и
связь.-
1985. -511 с.
2. http://www.sunset.usc.edu/research/COCOMOII /cocomo_main.htm
3. СОСОМО II Model Definition Manual (Version 1.4) //USC - 1997. - P. 78.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.