Для расчета затрат времени на разработку ПС используются следующие показатели: объем ПС (в тысячах машинных команд), группа сложности, коэффициент Ki, учитывающий уровень повышения сложности, дополнительный коэффициент сложности Kсл, степень новизны ПС, степень использования в разработке стандартных модулей, типовых ПС.
Определим объем ПС в машинных командах: организация ввода-вывода информации в интерактивном режиме - Nвв, генерация рабочих команд - Nгрк, управление работой компонентов (монитор ПС) - Nурк, расчет показателей - Nрп, форматирование и вывод на внешние носители - Nфвн, отладка прикладных программ – Nопп, Таким образом, общий объем функциональных команд: V=Nвв+Nгрк+Nурк+Nрп+Nфвн+Nопп+... (машинных команд).
Представляется возможным и определение объёма ПС
V= Nloq
, (2.1)
где V- объём ПС;
N-количество законченных строк программы;
- количество циклов, функций, процедур.
Сложность разрабатываемого программного средства определяется с помощью таблицы 2.2.
Таблица 2.2 - Группы сложности программного средства
| Группа сложности | Характеристика ПС |
| ПС обладает одной или несколькими из следующих характеристик: 1) наличие мощного интеллектуального языкового интерфейса высокого уровня с пользователем; 2) режим работы в реальном времени; 3) обеспечение телекоммуникационной обработки данных и управление удаленными объектами; 4) машинная графика; 5) многомашинные комплексы; 6) обеспечение существенного распараллеливания вычислений. | |
| ПС обладает одной или несколькими из следующих характеристик: 1) оптимизационные расчеты; 2) обеспечение настройки программного средства на изменение структур входных и выходных данных; 3) настройка ПС на нестандартную конфигурацию технических средств; 4) обеспечение переносимости ПС; 5) реализация особо сложных инженерных и программных расчетов. | |
| ПС не обладает ни одной из выше перечисленных характеристик. |
При определении группы сложности ПС необходимо учитывать максимальное число характеристик разработанного ПС. Определение коэффициента Ki, учитывающего уровень повышения сложности, осуществим с помощью таблицы 2.3.
Таблица 2.3 - Значение коэффициента, учитывающего уровень повышения сложности программного средства
| № | Дополнительная характеристика ПС | Значение Кi |
| Функционирование ПС в расширенной среде | 0,08 | |
| Интерактивный доступ | 0,06 | |
| Обеспечение хранения, ведения и поиска данных в сложных структурах | 0,07 | |
| Наличие у ПС одновременно нескольких характеристик по таблице 5.2: - 2 - 3 - >3 | 0,12 0,18 0,26 |
Если, например ПС может функционировать в расширенной среде, имеет интерактивный доступ и одновременно 2 характеристики из таблицы 2.2, следовательно, значения коэффициентов, учитывающих уровень повышения сложности программного средства, составляют 0,08, 0,06 и 0,12.
Определим коэффициент сложности по формуле:
Ксл = 1+
, (2.2)
где n – число дополнительно учитываемых характеристик ПС (из таблицы 5.3).
Определим затраты труда на разработку ПС (Траз) с помощью таблицы 2.4.
Таблица 2.4 - Затраты труда на разработку ПС в зависимости от объема ПС и его группы сложности
| Объем ПСВТ, Тыс. условн. машинных команд | Группа сложности ПСВТ | Номер нормы | ||
| Норма времени чел.-дни | ||||
| 1.00 2.00 3.00 4.00 5.00 6.00 7.00 8.00 9.00 10.00 12.00 14.00 | - - - - - - - - - | - - |
Расчёт общей трудоёмкости разработанного ПСВТ производиться по формуле:
То = Ксл
Траз, (2.3)
где То-общая трудоёмкость;
Ксл- дополнительный коэффициент сложности;
Траз- затраты труда.
Определение удельного веса трудоёмкости разработки (L). Для чего необходимо определить степень новизны и код по таблице 2.5.
Таблица 2.5 - Степень новизны ПСВТ
| Код новизны | Степень новизны | Использование | Значение Кн | |
| Нового Типа ЭВМ | Новой ОС | |||
| А | Принципиально новые ПСВТ, не имеющие аналогов | + - + - | + + - - | 1,75 1,6 1,2 1,0 |
| Б | ПСВТ, являющиеся развитием определенного параметрического ряда ПСВТ | + - | + + | 1,0 0,9 |
| В | ПСВТ, являющиеся развитием определенного параметрического ряда ПСВТ | + - | - - | 0,8 0,7 |
Разрабатываемое программное средство, может являться развитием определённого параметрического ряда ПСВТ, с использованием нового типа ЭВМ, новой операционной системы либо с различным их сочетанием по которым определяется код новизны. При этом удельный вес LТЗ; LЭП; LТП; LРП; LВН определяется по таблице 2.6
Таблица 2.6 - Значение коэффициента удельного веса трудоемкости каждой стадии разработки в общей трудоемкости ПСВТ
| Код стадии разработки | Степень новизны | ||
| А | Б | В | |
| ТЗ | 0,11 | 0,10 | 0,09 |
| ЭП | 0,09 | 0,08 | 0,07 |
| ТП | 0,11 | 0,09 | 0,07 |
| РП | 0,55 | 0,58 | 0,61 |
| ВН | 0,14 | 0,15 | 0,16 |
Определяем значения поправочного коэффициента Кн.
Из таблицы 5.7 определяем значение коэффициента Кт.
Таблица 2.7 - Значение коэффициентов использования типовых программ ПСВТ
| Номер | Степень охвата, реализуемых функций разрабатываемого ПСВТ типовыми программами и ПСВТ, % | Значение Кт |
| 60 и выше 40-60 20-40 до 20 Типовые программы и ПСВТ не используемые для реализации функций разрабатываемого ПСВТ | 0,6 0,7 0,8 0,9 1,0 |
Расчёт трудоёмкости разработки ПСВТ производится по формуле:
Тi=Li
Кн
Кт
То, (2.4)
где Тi - трудоёмкость разработки ПСВТ;
Li - удельный вес;
Кн - поправочный коэффициент;
Кт - коэффициент использования в разработке типовых программ;
То - общая трудоёмкость.
Подставляя значения в формулу (2.4) получаем трудоёмкость разработки ПСВТ: 
ТТЗ=Lтз
Кн
Кт
То (чел,/дней),
ТЭП=Lэп
Кн
Кт
То
ТТП=Lтп
Кн
Кт
То
ТРП=Lрп
Кн
Кт
То
ТВН=Lвн
Кн
Кт
То.
Итоговая трудоемкость Тсум будет равна сумме трудоемкости каждого из этапов:
Тсум = Тз+Тэп+Ттп+Трп+Твн (2.5)
Прогнозируемые, например, данные по составу исполнителей проекта приведены в таблице 2.8 (состав исполнителей зависит от сложности, новизны и сроков разработки ПС).
Таблица 2.8 - Состав исполнителей
| Содержание работ | Исполнитель | Кчество человек |
| Постановка задачи | Руководитель проекта | |
| Сбор исходных материалов | Руководитель проекта | |
| Определение структуры входных и выходных данных | Руководитель проекта, программист | |
| Анализ существующих программных средств | Руководитель проекта, программист | |
| Определение требований к техническим средствам | Системный аналитик | |
| Определение требований к программе | Руководитель проекта | |
| Разработка технико-экономического обоснования проекта | Руководитель проекта, программист | |
| Выбор языков программирования | Программист | |
| Согласование и утверждение ТЗ | Руководитель проекта, программист | |
| Предварительная разработка структуры входных и выходных данных | Программист, системный аналитик | |
| Разработка общего описания алгоритма решения задачи | Программист | |
| Согласование и утверждение ЭП | Руководитель проекта, системный аналитик | |
| Разработка алгоритма решения задачи | Программист | |
| Определение формы представления входных и выходных данных | Руководитель проекта, программист | |
| Разработка структуры программы | Программист | |
| Согласование и утверждение ТП | Руководитель проекта, программист | |
| Программная реализация | Программист | |
| Проверка работоспособности на реальных исходных данных | Программист | |
| Отладка | Программист | |
| Анализ результатов моделирования | Руководитель проекта | |
| Разработка технической документации | Руководитель проекта, программист | |
| Корректировка программы и программной документации по результатам испытаний | Руководитель проекта, программист | |
| Подготовка и передача программы и программной документации для сопровождения и изготовления | Руководитель проекта, программист | |
| Сдача в эксплуатацию | Руководитель проекта |
Трудоемкость каждого вида работ Траб от общей трудоемкости стадии (Тi)определяется по формуле:
Траб = Кв × Тi, (2.6)
где
- весовой коэффициент (0 < Кв < 1,
).
Расчет продолжительности работ
в днях по всем работам определяется по формуле:
, (2.7)
где
- трудоемкость работы, чел-дн.;
- количество работников, одновременно занятых в работе;
- коэффициент выполнения нормы,
.
Количество рабочих дней в году Траб.дн.=251, общее число дней Тгод =365.
Коэффициент календарных дней вычисляется по формуле:
. (2.8)
Кд = 251/365 = 0,69
Продолжительность каждой работы в календарных днях определяется по формуле:
Тк = Тц / Кд. (2.9)
Рассчитываем значения по продолжительности каждого вида работ в календарных днях и заполняем таблицу 2.9.
Таблица 2.9 – Перечень и продолжительность работ
| № | Содержание работ | Труд-ть кажд.стад. разр-ки, чел-дн. | | Труд-ть кажд.раб., , чел-дн. | Прод-ть работы, , раб. дни | Прод-ть кажд.раб., кал. дни | |
| ТЗ | |||||||
| Постановка задачи | Ттз | 0,11 | |||||
| Сбор исходных материалов | 0,10 | ||||||
| Определение структуры входных и выходных данных | 0,13 | ||||||
| Анализ существующих ПС | 0,12 | ||||||
| Определение требований к техническим средствам | 0,09 | ||||||
| Определение требований к пр-ме | 0,12 | ||||||
| Разработка технико-экономического обоснования проекта | 0,13 | ||||||
| ТЗ | |||||||
| Выбор языков программирования | 0,10 | ||||||
| Согласование и утверждение ТЗ | 0,10 | ||||||
| ЭП | |||||||
| Предварительная разработка структуры вх. и вых. данных | Тэп | 0,25 | |||||
| Разработка общего описания алгоритма решения задачи | 0,35 | ||||||
| Согласование и утверждение ЭП | 0,4 | ||||||
| ТП | |||||||
| Разработка алг-ма реш-ия задачи | Ттп | 0,25 | |||||
| Определение формы представления вх. и вых. данных | 0,3 | ||||||
| Разработка структуры программы | 0,25 | ||||||
| Согласование и утверждение ТП | 0,2 | ||||||
| РП | |||||||
| Программная реализация | Трп | 0,2 | |||||
| Проверка работоспособности на реальных исходных данных | 0,1 | ||||||
| Отладка | 0,15 | ||||||
| Анализ рез-ов моделирования | 0,2 | ||||||
| Разработка технич. документации | 0,15 | ||||||
| Корректировка пр-мы и пр-ой док-ии по результатам испытаний | 0,2 | ||||||
| ВН | |||||||
| Подготовка и передача пр-мы и пр-ой документации для сопровождения и изготовления | Твн | 0,6 | |||||
| Сдача в эксплуатацию | 0,4 | ||||||
кал. дни