Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология Образование Политология Производство Психология Стандартизация Технологии |
Модель этапа постархитектуры
Модель этапа постархитектуры используется в период, когда уже сформирована архитектура и выполняется дальнейшая разработка программного продукта. Основное уравнение постархитектурной модели является развитием уравнения предыдущей модели и имеет следующий вид: ЗАТРАТЫ = А х К~req х РАЗМЕРB х Мр +3ATPATЫauto [чел.-мес], где -коэффициент К~req учитывает возможные изменения в требованиях; -показатель В отражает нелинейную зависимость затрат от размера проекта (размер выражается в KLOC), вычисляется так же, как и в предыдущей модели; -в размере проекта различают две составляющие — новый код и повторно используемый код; -множитель поправки Мр зависит от 17 факторов затрат, характеризующих продукт, аппаратуру, персонал и проект. Изменчивость требований приводит к повторной работе, требуемой для учета предлагаемых изменений, оценка их влияния выполняется по формуле К~req =l + (BRAK/100), где BRAK — процент кода, отброшенного (модифицированного) из-за изменения требований. Размер проекта и продукта определяют по выражению РАЗМЕР = PA3MEPnew + PA3MEPreuse [KLOC], где q PA3MEPnew — размер нового (создаваемого) программного кода; q PA3MEPreuse — размер повторно используемого программного кода. Формула для расчета размера повторно используемого кода записывается следующим образом: PA3MEPreuse =KASLOC x ((100 - AT)/100) x (AA + SU + 0, 4 DM + 0, 3 CM + 0, 3 IM)/100, где q KASLOC- кол-во строк повторно используемого кода, который д.б. модифицирован (в тыс.строк); q AT - процент автоматически генерируемого кода; q DM - процент модифицируемых проектных моделей; q CM - процент модифицируемого программного кода; q IM - процент затрат на интеграцию, требуемых для подключения повторно используемого ПО; q SU - фактор, основанный на стоимости понимания добавляемого ПО; изменяется от 50 (для сложного неструктурированного кода) до 10 (для хорошо написанного объектно-ориентированного кода); q АА - фактор, который отражает стоимость решения о том, может ли ПО быть повторно используемым; зависит от размера требуемого тестирования и оценивания (величина изменяется от 0 до 8). Правила выбора этих параметров приведены в руководстве по СОСОМО II. Для определения множителя поправки Мр основного уравнения используют 17 факторов затрат, которые могут быть разбиты на 4 категории. Перечислим факторы затрат, сгруппировав их по категориям. Факторы продукта: 1) требуемая надежность ПО — RELY; 2) размер базы данных — DATA; 3) сложность продукта — CPLX; 4) требуемая повторная используемость — RUSE; 5) документирование требований жизненного цикла — DOCU. Факторы платформы (виртуальной машины): 6) ограничения времени выполнения — TIME; 7) ограничения оперативной памяти — STOR; 8) изменчивость платформы — PVOL. Факторы персонала: 9) возможности аналитика — АСАР; 10) возможности программиста — РСАР; 11) опыт работы с приложением — АЕХР; 12) опыт работы с платформой — РЕХР; 13) опыт работы с языком и утилитами — LTEX; 14) непрерывность персонала — PCON. Факторы проекта: 15) использование программных утилит — TOOL; 16) мультисетевая разработка — SITE; 17) требуемый график разработки — SCED. Для каждого фактора определяется оценка (по 6- балльной шкале). На основе оценки для каждого фактора по таблице Боэма определяется множитель затрат ЕМi . Перемножение всех множителей затрат дает множитель поправки пост-архитектурной модели: . Значение Мр отражает реальные условия выполнения программного проекта и позволяет троекратно увеличить (уменьшить) начальную оценку затрат.
ПРИМЕЧАНИЕ Трудоемкость работы с факторами затрат минимизируется за счет использования специальных таблиц. Справочный материал для оценки факторов затрат приведен в приложении А.
От оценки затрат легко перейти к стоимости проекта. Переход выполняют по формуле: СТОИМОСТЬ = ЗАТРАТЫ х РАБ_ КОЭФ, где среднее значение рабочего коэффициента составляет $15 000 за человеко-месяц. После определения затрат и стоимости можно оценить длительность разработки. Модель СОСОМО II содержит уравнение для оценки календарного времени TDEV, требуемого для выполнения проекта. Для моделей всех уровней справедливо: Длительность (TDEV) = [3, 0 х (ЗАТРАТЫ)(0, 33+0, 2(B-1, 01))] х SCEDPercentage/100 [мес], где -В — ранее рассчитанный показатель степени; -SCEDPercentage — процент увеличения (уменьшения) номинального графика. Если нужно определить номинальный график, то принимается SCEDPercentage =100 и правый сомножитель в уравнении обращается в единицу. Следует отметить, что СОСОМО II ограничивает диапазон уплотнения/растягивания графика ( от 75 до 160% ). Причина проста — если планируемый график существенно отличается от номинального, это означает внесение в проект высокого риска. пример. Положим, что затраты на проект равны 20 человеко-месяцев. Примем, что все масштабные факторы номинальны (имеют значения 3), поэтому, в соответствии с табл. 2.20, показатель степени 5=1, 16. Отсюда следует, что номинальная длительность проекта равна TDEV = 3, Ox (20)0, 36 = 8, 8 мес. (3, 0x (20) 0, 33+0, 2(B-1, 01)=, 33+0, 2(1.17-1, 01)) Отметим, что зависимость между затратами и количеством разработчиков носит характер, существенно отличающийся от линейного. Очень часто увеличение количества разработчиков приводит к возрастанию затрат. причина: q увеличивается время на взаимодействие и обучение сотрудников, согласование совместных решений; q возрастает время на определение интерфейсов между частями программной системы. Удвоение разработчиков не приводит к двукратному сокращению длительности проекта. Модель СОСОМО II явно утверждает, что длительность проекта является функцией требуемых затрат, прямой зависимости от количества сотрудников нет. Другими словами, она устраняет миф нерадивых менеджеров в том, что добавление людей поможет ликвидировать отставание в проекте. СОСОМО II предостерегает от определения потребного количества сотрудников путем деления затрат на длительность проекта. Такой упрощенный подход часто приводит к срыву работ. Реальная картина имеет другой характер. Количество людей, требуемых на этапе планирования и формирования требований, достаточно мало. На этапах проектирования и кодирования потребность в увеличении команды возрастает, после окончания кодирования и тестирования численность необходимых сотрудников достигает минимума. Предварительная оценка программного проекта пример «Выполнение оценки проекта на основе LOC- и FP-метрик», Предположим, что поступил заказ от концерна «СУПЕРАВТО». Необходимо создать ПО для рабочей станции дизайнера автомобиля (РДА). Заказчик определил проблемную область проекта в своей спецификации: q ПО РДА должно формировать 2- и 3-мерные изображения для дизайнера; q дизайнер должен вести диалог с РДА и управлять им с помощью стандартизованного графического пользовательского интерфейса; q геометрические данные и прикладные данные должны содержаться в базе данных РДА; q модули проектного анализа рабочей станции должны формировать данные для широкого класса дисплеев SVGA; q ПО РДА должно управлять и вести диалог со следующими периферийными устройствами: мышь, дигитайзер (графический планшет для ручного ввода), плоттер (графопостроитель), сканер, струйный и лазерный принтеры. Прежде всего -детализировать проблемную область. -выделить базовые функции ПО -очертить количественные границы. -определить, что такое «стандартизованный графический пользовательский интерфейс», какими должны быть размер и другие характеристики базы данных РДА и т. д. Будем считать, что эта работа проделана и что идентифицированы следующие основные функции ПО: 1. Средства управления пользовательским интерфейсом СУПИ. 2. Анализ двухмерной графики А2Г. 3. Анализ трехмерной графики А3Г. 4. Управление базой данных УБД. 5. Средства компьютерной дисплейной графики КДГ. 6. Управление периферией УП. 7. Модули проектного анализа МПА. Теперь нужно оценить каждую из функций количественно, с помощью LOC-оценки. По каждой функции эксперты предоставляют лучшее, худшее и вероятное значения. Ожидаемую LOC-оценку реализации функции определяем по формуле LOCожi =(LOCлучшi +LOCхудшi +4 х LOCвероятнi)/6, результаты расчетов заносим в табл. 2.22. Таблица 2.22. Начальная таблица оценки проекта
Для определения удельной стоимости и производительности обратимся в архив фирмы, где хранятся данные метрического базиса, собранные по уже выполненным проектам. Предположим, что из метрического базиса извлечены данные по функциям-аналогам, представленные в табл. 2.23. Видно, что наибольшую удельную стоимость имеет строка функции управления периферией (требуются специфические и конкретные знания по разнообразным периферийным устройствам), наименьшую удельную стоимость — строка функции управления пользовательским интерфейсом (применяются широко известные решения). Таблица 2.23. Данные из метрического базиса фирмы
Считается, что удельная стоимость строки является константой и не изменяется от реализации к реализации. Следовательно, стоимость разработки каждой функции рассчитываем по формуле СТОИМОСТЬi = LOCожi х УД_СТОИМОСТЬанi. Для вычисления производительности разработки каждой функции выберем самый точный подход — подход настраиваемой производительности: ПРОИЗВ i =ПРОИЗВанi х (LOC анi / LOCожi). Соответственно, затраты на разработку каждой функции будем определять по выражению ЗАТРАТЫ i = (LOCожi /ПРОИЗВ i)[чел.-мес]. Теперь мы имеем все необходимые данные для завершения расчетов. Заполним до конца таблицу оценки нашего проекта (табл. 2.24). Таблица 2.24. Конечная таблица оценки проекта
Учитывая важность полученных результатов, проверим расчеты с помощью FP-указателей. На данном этапе оценивания разумно допустить, что все информационные характеристики имеют средний уровень сложности. В этом случае результаты экспертной оценки принимают вид, представленный в табл. 2.25, 2.26. Таблица 2.25. Оценка информационных характеристик проекта
Таблица 2.26. Оценка системных параметров проекта
Таким образом, получаем: FР = Общее количество х (0, 65+ 0, 01 х ) = 318 x 1, 17 = 372. Используя значение производительности, взятое в метрическом базисе фирмы, Производительность = 2, 55 [FP / чел.-мес], вычисляем значения затрат и стоимости: Затраты = FP / Производительность = 145, 9 [чел.-мес], Стоимость = Затраты х $4500 = $656500. Итак, результаты проверки показали хорошую достоверность результатов.
Но мы не будем останавливаться на достигнутом и организуем еще одну проверку, с помощью модели СОСОМО II. Примем, что все масштабные факторы и факторы затрат имеют номинальные значения. В силу этого показатель степени В = 1, 16, а множитель поправки Мp= 1. Кроме того, будем считать, что автоматическая генерация кода и повторное использование компонентов не предусматриваются. Следовательно, мы вправе применить формулу ЗАТРАТЫ = A х РАЗМЕРB[чел.-мес] и получаем: ЗАТРАТЫ = 2, 5(33, 3)1, 16 =145, 87 [чел.-мес]. Соответственно, номинальная длительность проекта равна Длительность = [3, 0 х (ЗАТРАТЫ)(0, 33+0, 2(B-1, 01))]=3(145, 87)0, 36 = 18[мес]. Подведем итоги. Выполнена предварительная оценка программного проекта. Для минимизации риска оценивания использованы три методики, доказавшие корректность полученных результатов. Популярное:
|
Последнее изменение этой страницы: 2016-06-05; Просмотров: 815; Нарушение авторского права страницы