Для расчета затрат времени на разработку ПС используются следующие показатели: объем ПС (в тысячах машинных команд), группа сложности, коэффициент 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 | ||||||