Расчет общей трудоемкости разработки программного обеспечения
Трудоемкость — это затраты труда (времени) на производство единицы продукции.Трудоемкость измеряется, как правило, в нормо-часах (фактических часах работы, затраченных на производство единицы работы).
Трудоемкость содержит следующие показатели:
- техническое задание (ТЗ);
- эскизный проект (ЭП);
- технический проект (ТП);
- рабочий проект (РП);
- ввод в действие (ВН).
Расчёт общей трудоёмкости разработки программного обеспечения производится в соответствии с методикой, изложенной в Постановлении Министерства труда и социальной защиты Республики Беларусь от 27.06.2007 №91 «Об утверждении укрупнённых норм затрат труда на разработку программного обеспечения».
Перечень и объём функций программного обеспечения представлен в таблице 4.5.1.
Таблица 4.5.1. — Перечень и объем функций программного обеспечения
Код функции | Наименование(содержание) функции | Объем функции строк исходного кода (LOC) | |
По каталогу Vi | Уточненный Vyi | ||
Организация ввода информации | |||
Контроль, предварительная обработка и вывод информации | |||
Обработка входного заказа и формирование таблиц | |||
Формирование файла | |||
Графический вывод результатов | |||
Итого: | |||
Определение объема функций исходного кода производится по формуле:
(4.5.1) |
Vn =SUMVi
i=1
гдеVi– объем отдельной функции программного продукта,
n – общее число функций.
Vп = 100 +290+ 630 + 1100 +300 =2420 (строк).
В связи с использованием более совершенных средств автоматизации объемы функций были уменьшены и уточненный объем ПО (VYI) составил 726 строки исходного кода (LOC) вместо 2420 строк.
Таблица 4.5.2 —Расчет общей трудоемкости разработки ПО
Показатели | Стадии | Итого | ||||
ТЗ | ЭП | ТП | РП | ВН | ||
1. Коэффициенты удельных весов трудоемкости стадии разработки ПО (К) | 0,10 | 0,20 | 0,30 | 0,30 | 0,10 | 1,0 |
2. Распределение нормативной трудоемкости программного обеспечения (Тн) по стадиям, чел.-дн. | ||||||
3. Коэффициент сложности (Кс) | 1,07 | 1,07 | 1,07 | 1,07 | 1,07 | – |
4. Коэффициент, учитывающий использование стандартных модулей (Кт) | – | – | – | 0,9 | – | – |
5. Коэффициент учитывающий новизну ПО (Кн) | 0,81 | 0,81 | 0,81 | 0,81 | 0,81 | – |
6. Общая трудоемкость ПО (То), чел.-дн. |
Нормативная трудоемкость на разработку ПО в зависимости от уточненного объема ПО (v) и 2 категориисложности ПО (чел.-дн.) составляет 43 чел.-дней.
Программному проекту «Автоматизированная система разработки штатного расписания» соответствует новизна программного обеспечения категории В, которая имеет следующее значения распределения трудоёмкости по стадиям:
Kтз = 0,10; Kэп = 0,20; Kтп = 0,30; Kрп = 0,30; Квн=0,10.
Для распределения нормативной трудоемкости ПО по стадиям, которая измеряется в человеко-днях необходимо произвести следующие расчеты:
для стадии ТЗ: Тнтз = Тн*Kтз = 0,10*43=4 (чел.-дни);
для стадии ЭП: Тнэп = Тн*Kэп = 0,20*43=9 (чел.-дни);
для стадии ТП: Тнтп = Тн*Kтп = 0,30*43=13(чел.-дни);
для стадии РП: Тнрп = Тн*Kрп = 0,30*43=13 (чел.-дни);
для стадии ВН: Тнвн = Тн*Kвн = 0,10*43=4 (чел.-дни).
Чтобы проверить правильность сделанных расчетов по распределению нормативной трудоемкости программного обеспечения нужно найти сумму всех результатов по каждой стадии:
Тнобщ=Тнтз+Тнэп+Тнтп+Тнрт+Тнвн=4+9+13+13+4=43 (чел.-дни).
Программный проект «Автоматизированная система разработки штатного расписания» отнесен ко 2 категории сложности: требования пользователя предполагают моделирование процессов и необходимость обеспечения переносимости программного продукта. Наличие двух характеристик, определяющих сложность ПО, позволяет применить к объему ПО коэффициент Kс:
(4.5.2) |
Kс = 1 + SUMKi,
i=1
гдеKi– коэффициент, соответствующий степени повышения сложности ПО;
n–количество учитываемых характеристик.
Осуществление расчета:
Kс = 1 + 0,07 = 1,07.
При разработке программного проекта «Автоматизированная система разработки штатного расписания» использовались стандартные модули для реализации функций разрабатываемого ПО, тогда этому соответствует значение Kт=0,9.
ПО является развитием имеющегося аналога и предназначен для использования в новой среде ОС, но на старом типе ПК. Новизна ПО соответствует категории Б,т.к. использовался только новый ПК, т. е. КН= 0,81.
Общая трудоёмкость программного проекта «Автоматизированная система разработки штатного расписания» зависит от следующих показателей: коэффициенты удельных весов трудоёмкости стадии разработки программного проекта (К), нормативной трудоёмкости программного проекта по стадиям (Тн), коэффициент, учитывающий использование стандартных модулей (Кт), коэффициент сложности программного продукта (Кс) соответственно.
Вычисления осуществлялись по следующим формулам:
Тотз = Тнтз*Kс*Кн;
Тоэп = Тнэп *Kс*Kн;
Тотп= Тнтп *Kс*Kн;
Торп = Тнрп *Kс*Kн*Kт;
Товн = Тнвн *Kс*Kн ,
гдеKнтз, Kнэп, Kнтп, Kнрп и Kнвн – значения нормативной трудоёмкости по стадии разработки программного обеспечения в общей трудоёмкости программного обеспечения.
Осуществление расчета:
Тотз=4*1,07*0,81 = 3 (чел.-дни);
Тоэп= 9*1,07*0,81 = 8 (чел.-дни);
Тотп= 13*1,07*0,81 = 11(чел.-дни);
Торп= 13*1,07*0,9*0,81 = 11(чел.-дни);
Товн= 4*1,07*0,81= 3(чел.-дни).
Нахождение общей трудоёмкости по всем стадиям определяется по следующей формуле:
(4.5.3) |
Tо=SUM Туi
i=1
гдеТуi– нормативная (скорректированная) трудоемкость разработки программного продукта на i-й стадии (чел.-дн.);
n – количество стадий разработки.
Осуществление расчета:
То = 3+8+11+11+3 = 36 (чел.-дни).
Далее рассчитываем общую трудоемкость в часах. Для расчета трудоемкости в часах для каждой стадии разработки, необходимо количество дней на каждую стадию разработки умножить на продолжительность смены (6 часов).
То есть, чтобы рассчитать трудоемкость в часах для каждой стадии необходимо количество дней умножить на продолжительность смены, и получим значение трудоемкости в часах. Осуществление расчета:
ТЗ = 3*6 = 18 (чел.-час);
ЭП = 8*6 = 48 (чел.-час);
ТП = 11*6 = 66 (чел.-час);
РП = 11*6 = 66 (чел.-час);
ВН = 3*6 = 18 (чел.-час);
При стадии внедрения 60% отводится на машинное время и 40% на немашинное время. Следовательно:
Машинное время: 18*60% = 11 (чел.-час);
Немашинное время: 18*40% = 7 (чел.-час).
Итог расчетов занесен в таблицу 7.2.3.
Таблица 4.5.3 — Определение трудоемкости программы
Вид работ | Трудоемкость в часах | |
Всего | Время машинное | |
Техническое задание | – | |
Эскизный проект | ||
Технический проект | – | |
Рабочий проект (машинное время) | ||
Внедрение в т. ч. машинное время немашинное время | – | |
Итого: |