Расчет времени на создание программного продукта
Экономическая часть 1. Определение стоимости программного продукта
Прогресс в экономике, промышленности, науке и технике, в сфере образования в настоящее время во многом зависит от массового внедрения вычислительной техники. Любой компьютер в процессе работы использует средства программного обеспечения.
Разработка программных средств требует определенных интеллектуальных и трудовых затрат , а также обязательного использования компьютерной техники, что определяет особенности расчета себестоимости программного продукта, которые учтены в данной разработке.
Расчет времени на создание программного продукта
Общее время на создание программы складывается из различных
элементов затрат времени. Структура общего времени на создание базового программного продукта представлена в табл. 1.
Таблица 1. Состав времени на создание программного продукта
№ этапа | Обозначение времени данного этапа | Содержание этапа |
Tпо | Подготовка описания задачи | |
Tо | Описание задачи | |
TА | Разработка алгоритма | |
Tбс | Разработка блок-схемы | |
Tн | Написание программы на языке программирования | |
Tв | Ввод программы | |
Tот | Отладка и тестирование программы | |
Tд | Оформление документации, инструкции пользователю, пояснительной записки |
Время рассчитывается в человеко-часах, причем ТПО берется по фактически отработанному времени, а время остальных этапов определяется расчетного условному числу команд Q.
Q = q·c, (1)
где q- коэффициент, учитывающий условное число команд в зависимости от типа задачи; c-коэффициент, учитывающий новизну и сложность программы. Выбираем значение коэффициента q из табл.2
Таблица 2. Значение коэффициента q
Тип задачи | Пределы изменений коэффициента |
Задача учета | от 1400 до 1500 |
Задача оперативного управления | от 1500 до 1700 |
Задачи планирования | от 3000 до 3500 |
Многовариантные задачи | от 4500 до 5000 |
Комплексные задачи | от 5000 до 5500 |
Для данной задачи коэффициент q принимается равный 1700. Программные продукты по степени новизны могут быть отнесены к одной из 4-х групп:
· группа А - разработка принципиально новых задач;
· группа Б - разработка оригинальных программ;
· группа В - разработка программ с использованием типовых решений:
· группа Г - разовая типовая задача.
Для данной задачи степень новизны: группа А
По степени сложности программные продукты могут быть отнесены к одной из 3-х групп:
• 1- алгоритмы оптимизации и моделирования систем;
• 2- задачи учета, отчетности и статистики;
• 3- стандартные алгоритмы.
Данная задача может быть отнесена к 1 -й группе сложности. Коэффициент с определяется из табл.3 на пересечении групп сложности и степени новизны.
Таблица 3. Определение коэффициента c
Язык программиро вания | Группа сложности | Степень новизны | |||
А | Б | В | Г | ||
Высокого уровня | 1,38 | 1,26 | 1,15 | 0,69 | |
1,30 | 1,19 | 1,08 | 0,65 | ||
1,20 | 1,10 | 1,00 | 0,60 | ||
Низкого уровня | 1,58 | 1,45 | 1,32 | 0,79 | |
1,49 | 1,37 | 1,24 | 0,74 | ||
1,38 | 1,26 | 1,15 | 0,69 |
Для данной задачи коэффициент с = 1,38, Исходя из формулы (1), можно определить условное число команд Q.
Q = 1700-1,38 = 2346
Определяем время, затраченное на каждый этап создания программного продукта:
1) Тпо (время на подготовку описания задачи),берется по факту и составляет:
Тп0= 50(чел/час).
2) Т0 (время описания задачи) определяется по формуле:
, (2)
где B - коэффициент учета изменений задачи, коэффициент B в зависимости от сложности задачи и числа изменений выбирается в интервале от 1,2 до 1,5.
K - коэффициент, учитывающий квалификацию программиста.
Для данной задачи B = 1,4
Выбираем значение коэффициента K из табл. 4
Таблица 4. Значение коэффициента K
Стаж программиста | Значение коэффициента K |
До 2-х лет | 0,8 |
От 2 до 3 лет | 1,0 |
От 3 до 5 лет | 1,1-1,2 |
От 5 до 10 лет | 1,2-1,3 |
Свыше 10 лет | 1,3-1,5 |
В данном случае коэффициент K = 1,0
Применяя формулу (2), подсчитываем время на описание задачи:
(чел/час)
3) Время на разработку алгоритма TА чел/час, рассчитываем по формуле:
(3)
Применяя формулу (3), подсчитываем время на разработку алгоритма.
(чел/час).
4) Время на разработку блок - схемы TБС, чел/час, определяется аналогично TА по формуле (3) и составляет:
(чел/час).
5) Время написания программы на языке программирования Tн, чел/час определяется по формуле:
(4)
Применяя формулу (4), подсчитываем время написания программы на языке программирования:
(чел/час) (5)
6) Время ввода программы Tв , чел/час определяется по формуле:
. (6)
Применяя формулу (6), подсчитываем время ввода программы.
(чел/час).
7) Время отладки и тестирования программы TОТ, чел/час определяем по формуле:
(7)
Подставляем значения в формулу (7) и получаем:
(чел/час)
8) Время на оформление документации Тд, чел/час, берем но факту:
Тд= 35 (чел/час).
9) Зная время, затраченное на каждом этапе, подсчитываем общее время на создание программного продукта:
Т= Тпо+То+Та+ТБс+Тн+Тв+Тот+Тд, Т=5 0+65,6+47,2+47,2+70,3+47,2+197,1+35=559,6 (чел/час). 10) Суммарное время этапов, требующих использования ПК:
Тсум = Тн + Т0т + Тд, ТСУМ = 70;3 + 197,1 + 35 = 302,4 (чел/час)