Постановление Министерства труда и социальной защиты Республики Беларусь от 27 июня 2007 г. № 91

ПОСТАНОВЛЕНИЕ МИНИСТЕРСТВА ТРУДА И СОЦИАЛЬНОЙ ЗАЩИТЫ РЕСПУБЛИКИ БЕЛАРУСЬ

27 июня 2007 г. № 91

Об утверждении укрупненных норм затрат труда на разработку программного обеспечения

На основании Положения о Министерстве труда и социальной защиты Республики Беларусь, утвержденного постановлением Совета Министров Республики Беларусь от 31 октября 2001 г. № 1589 «Вопросы Министерства труда и социальной защиты Республики Беларусь», в редакции постановления Совета Министров Республики Беларусь от 7 февраля 2005 г. № 127 Министерство труда и социальной защиты Республики Беларусь ПОСТАНОВЛЯЕТ:

1. Утвердить прилагаемые укрупненные нормы затрат труда на разработку программного обеспечения (далее – укрупненные нормы затрат труда).

2. Рекомендовать организациям, независимо от форм собственности, использовать укрупненные нормы затрат труда для определения общей трудоемкости разработки программного обеспечения с учетом конкретных организационно-технических условий.

3. Научно-исследовательскому институту труда Министерства труда и социальной защиты Республики Беларусь в месячный срок обеспечить опубликование настоящего постановления в бюллетене Министерства труда и социальной защиты Республики Беларусь и давать разъяснения по порядку применения укрупненных норм затрат труда.

4. Настоящее постановление вступает в силу с 1 июля 2007 г.

Министр

В.Н.Потупчик

УТВЕРЖДЕНО Постановление
Министерства труда
и социальной защиты
Республики Беларусь 27.06.2007 № 91

Укрупненные нормы затрат труда на разработку программного обеспечения

1. Укрупненные нормы затрат труда (далее – укрупненные нормы) на разработку программного обеспечения (далее – ПО) являются основой для определения общей трудоемкости разработки ПО, объемов финансирования на стадии его технико-экономического обоснования. На основе общей трудоемкости разработки ПО составляется смета затрат, а также определяется численность исполнителей (соисполнителей) и трудоемкость выполняемых ими работ по этапам разработки ПО.

Настоящие укрупненные нормы могут использоваться для разработки в организациях локальных нормативных правовых актов об утверждении норм затрат труда на разработку ПО с учетом конкретных организационных и технологических особенностей разработки ПО.

2. В основу разработки настоящих укрупненных норм положены:

результаты анализа фактических затрат труда на разработку ПО;

экспертные оценки;

данные оперативного учета и отчетности;

результаты анализа ранее действовавших и действующих в настоящее время норм труда по разработке ПО в Российской Федерации и других странах.

3. Для целей настоящих укрупненных норм и при разработке ПО применяются следующие термины и определения, приведенные в действующих ГОСТах (ГОСТ 19.102-77, ГОСТ 19781-90 и другие):

программа – данные, предназначенные для управления конкретными компонентами системы обработки информации в целях реализации определенного алгоритма;

программное обеспечение – совокупность программ системы обработки информации и программных документов, необходимых для эксплуатации этих программ;

программный модуль – программа или функционально завершенный фрагмент программы, предназначенный для хранения, трансляции, объединения с другими программными модулями и загрузки в оперативную память;

система программирования – система, образуемая языком программирования, компиляторами или интерпретаторами программ, представленных на этом языке, соответствующей документацией, а также вспомогательными средствами для подготовки программ к форме, пригодной для выполнения;

проблемно-ориентированный язык – язык программирования, который соответствует понятиям определенного класса прикладных задач. Проблемно-ориентированный язык обычно имеет набор специфических изобразительных средств;

объектно-ориентированное программирование – метод построения программ как совокупностей объектов и классов объектов, которые могут вызывать друг друга для выбора и выполнения операций. Объекты состоят из данных и операций над данными;

спецификация программы – формализованное представление требований, предъявляемых к программе, которые должны быть удовлетворены при ее разработке, а также описание задачи, условия и эффекта действия без указания способа его достижения;

трансляция программы – преобразование программы, представленной на одном языке программирования, в программу на другом языке и в определенном смысле равносильную первой;

компиляция – трансляция программы с языка высокого уровня в форму, близкую к программе на машинном языке;

программный продукт – набор машинных программ, процедур и связанных с ним документации и данных;

стадия создания ПО – одна из частей процесса создания ПО, установленная нормативными документами и заканчивающаяся выпуском документации на ПО, содержащей описание полной, в рамках заданных требований, модели ПО на заданном для данной стадии уровне.

4. Стадиями разработки ПО согласно ГОСТам Единой системы программной документации являются:

техническое задание (далее – ТЗ);

эскизный проект (далее – ЭП);

технический проект (далее – ТП);

рабочий проект (далее – РП);

ввод в действие (далее – ВН).

5. Каждая стадия разработки ПО предусматривает выполнение следующих видов работ:

стадия ТЗ – постановку задачи; сбор исходных материалов; выбор и обоснование критериев эффективности и качества разрабатываемой программы; обоснование необходимости проведения научно-исследовательских работ; определение структуры входных и выходных данных; предварительный выбор методов решения задачи; обоснование целесообразности применения ранее разработанных программ; определение требований к техническим средствам; обоснование принципиальной возможности решения поставленной задачи; определение требований к программе (к функциональным характеристикам, надежности, условиям эксплуатации, информационной и программной совместимости, внешним интерфейсам, безопасности и защите информации); определение стадий, этапов и сроков разработки программы и документации на нее; выбор средств программирования; согласование и утверждение ТЗ;

стадия ЭП – уточнение методов решения задачи; разработку общего описания алгоритма решения задачи, общей структуры и компонентов; разработку пояснительной записки, включая внешние интерфейсы и базы данных; согласование и утверждение ЭП;

стадия ТП – уточнение структуры входных и выходных данных, логической структуры базы данных, внешних интерфейсов; разработку алгоритма решения задачи; определение формы представления входных и выходных данных; разработку структуры программы, уточнение структуры компонентов на уровне программных модулей; окончательное определение конфигурации технических средств; разработку плана мероприятий по разработке и внедрению программ; определение требований к испытанию (тестированию) программных модулей; разработку пояснительной записки; согласование и утверждение ТП;

стадия РП – программирование и отладку программы; изготовление программы-оригинала; разработку программных документов в соответствии с требованиями ГОСТов; разработку, согласование и утверждение порядка и методики испытаний; проведение испытаний (тестирование) программных модулей, базы данных; корректировку программы и программной документации по результатам испытаний;

стадия ВН – проведение приемосдаточных испытаний программы; оформление и утверждение акта о передаче программы в постоянную эксплуатацию.

6. Настоящие укрупненные нормы определены на одно ПО и указаны в человеко-днях при пятидневной рабочей неделе с продолжительностью рабочего дня 8 часов* с учетом времени на подготовительно-заключительные работы, обслуживание рабочего места, отдых (включая физкультурные паузы) и личные надобности в размере 10 % от нормируемых затрат труда, а также следующих факторов, влияющих на трудоемкость разработки ПО:

объема ПО в строках исходного кода (LOC);

сложности разрабатываемого ПО;

степени новизны разрабатываемого ПО;

степени использования в разработке стандартных модулей;

условий и средств разработки ПО.

______________________________

*В случае применения иных режимов рабочего времени нормы затрат труда, рассчитанные на основании настоящих укрупненных норм, пересчитываются.

7. В качестве единицы измерения объема ПО используется строка исходного кода (LОС). Преимущества использования строки исходного кода (LОС) как единицы измерения заключаются в том, что эта единица измерения:

отражает содержание труда программистов;

позволяет выполнять сопоставление размеров ПО и производительности в различных группах разработчиков;

непосредственно связана с разрабатываемым ПО;

может использоваться для оценки работ до завершения проекта;

позволяет автоматизировать сбор данных о количестве строк исходного кода (LОС) от начала до конца проекта;

дает возможность учитывать мнение разработчика об объеме ПО на основе количества написанных строк исходного кода.

8. При подсчете строк исходного кода (LОС) следует придерживаться следующих рекомендаций:

учитывать «строку исходного кода (LОС)» как одну, если в ней содержится лишь один оператор (если в одной строке содержатся два выполняемых оператора, разделяемых точкой с запятой, то нужно считать как две строки, а если один выполняемый оператор разбит на две «физические» строки, то он будет учитываться как один оператор);

учитывать все имеющиеся выполняемые операторы, поддерживаемые данным продуктом;

не учитывать строки, содержащие комментарии;

не учитывать отладочный код или другой временный код (пробное ПО, средства тестирования, инструменты разработки и прототипирования и другие инструментальные средства);

учитывать каждую инициализацию, вызов или включение макроса в качестве части исходного кода;

не учитывать повторно используемые операторы исходного кода.

9. На работы, не предусмотренные настоящими укрупненными нормами, нормы затрат труда разрабатываются организациями на основании методов технического нормирования и утверждаются в установленном порядке.

10. Общий объем ПО (Vо) определяется исходя из количества и объема функций, реализуемых программой:

Vо =

n
S
i=1

Vi,

где Vi – объем отдельной функции ПО;

n – общее число функций.

11. Расчет общего объема ПО (количества строк исходного кода (LОС) предполагает определение объема по каждой функции. В том случае, когда на стадии технико-экономического обоснования проекта невозможно рассчитать точный объем функций, то данный объем может быть получен на основании ориентировочной (прогнозной) оценки имеющихся фактических данных по аналогичным проектам, выполненным ранее, или путем применения нормативов по каталогу функций согласно приложению 1*.

______________________________

*Организация-исполнитель утверждает (изменяет, дополняет) каталог функций в зависимости от конкретных организационных и технологических особенностей разработки ПО.

12. На основании информации о функциях разрабатываемого ПО по каталогу функций определяется общий объем ПО. В зависимости от организационных и технологических условий, в которых разрабатывается ПО исполнители по согласованию с руководством организации могут уточнять (корректировать) объем на основе экспертных оценок.

13. Уточненный объем ПО (Vy) определяется по формуле:

Vy =

n
S
i=1

Vyi,

где Vyi – уточненный объем отдельной функции ПО в строках исходного кода (LОС).

14. Bcе ПО в зависимости от их характеристик подразделяются на три категории сложности согласно приложению 2.

15. На основании принятого к расчету объема (Vy) и категории сложности ПО согласно приложению 3 определяется нормативная трудоемкость ПО (Tн) выполняемых работ по стадиям разработки:

на стадии ТЗ — проведение исследований;

на стадии ЭП — анализ требований;

на стадии ТП — проектирование;

на стадии РП — разработка (кодирование, тестирование);

на стадии ВН – ввод в действие.

16. Нормативная трудоемкость ПО (Tн) выполняемых работ по стадиям разработки может корректироваться, при необходимости, с учетом коэффициентов: повышения сложности ПО (Кс), учитывающих новизну ПО (Кн), учитывающих степень использования стандартных модулей (Кт), средства разработки ПО (Кур) и определяется по формулам:

для стадии ТЗ

Tyтз = Tн х Ктз х Kc х Kн х Кур;

для стадии ЭП

Tyэп = Tн х Кэп х Kc х Kн х Кур;

для стадии ТП

Tyтп = Tн х Ктп х Kc х Kн х Кур;

для стадии РП

Typп = Tн х Крп х Kc х Kн x Kт х Кур;

для стадии ВН

Tyвн = Tн х Квн х Kc х Kн х Кур,

где Ктз, Кэп, Ктп, Крп и Квн – значения коэффициентов удельных весов трудоемкости стадий разработки ПО в общей трудоемкости ПО.

17. Дополнительные затраты труда, связанные с повышением сложности разрабатываемого ПО, учитываются посредством коэффициента повышения сложности ПО (Kc) согласно приложению 4.

Kc рассчитывается по формуле:

Kc =

1 +

n
S
i=1

Ki ,

где Кi – коэффициент, соответствующий степени повышения сложности ПО;

n – количество учитываемых характеристик.

18. Новизна разрабатываемого ПО определяется путем экспертной оценки данных, полученных при сравнении характеристик разрабатываемого ПО с имеющимися аналогами.

Если нет подобных аналогов, то ПО присваивается категория А. Степень новизны ПО категорий Б и В соответствует уровню имеющихся ПО. При установлении поправочного коэффициента новизны разрабатываемого ПО учитываются степень новизны ПО и предназначение его для новых или освоенных типов персональных компьютеров (далее – ПК), для новых или освоенных операционных систем.

Влияние фактора новизны на трудоемкость учитывается путем умножения нормативной трудоемкости на соответствующий коэффициент, учитывающий новизну ПО (Kн) согласно приложению 5.

19. Настоящие укрупненные нормы разработаны с учетом использования стандартных модулей для реализации функций разрабатываемого ПО.

Современные технологии разработки компьютерных программ предусматривают широкое использование так называемых коробочных продуктов (пакетов, модулей, объектов), используемых для разработки заказных систем. В настоящее время существует обширный рынок метапрограмм многократного использования. Степень использования в разрабатываемом ПО стандартных модулей определяется их удельным весом в общем объеме ПО согласно приложению 6.

Влияние использования стандартных модулей на трудоемкость учитывается путем умножения нормативной трудоемкости на соответствующий коэффициент, учитывающий степень использования стандартных модулей (Kт).

20. Коэффициенты, учитывающие средства разработки ПО (Кур), определяются согласно приложению 7.

21. Значения коэффициентов удельных весов трудоемкости стадий разработки ПО, в общей трудоемкости ПО, определяются с учетом установленной категории новизны ПО согласно приложению 8.

При этом сумма значений коэффициентов удельных весов всех стадий в общей трудоемкости равна единице. Если стадия ЭП в задании не предусмотрена, то коэффициент удельного веса стадии ТП Ктп равен сумме коэффициентов стадий ЭП и ТП (Ктп = Кэптп).

22. Коэффициенты повышения сложности ПО (Кс), учитывающие новизну ПО (Кн) и средства разработки ПО (Кур), вводятся на всех стадиях разработки, а коэффициент, учитывающий степень использования стандартных модулей (Кт), вводится только на стадии РП.

В том случае, когда объединяются стадии ТП и РП в одну стадию «Технорабочий проект», трудоемкость стадии «Технорабочий проект» определяется по формуле:

Tутpп = 0,85 х Tутп + 1 х Tуpп,

где Tутpп — трудоемкость стадии «Технорабочий проект»;

Tутп – трудоемкость стадии ТП;

Tуpп – трудоемкость стадии РП.

23. Общая трудоемкость разработки ПО (То) определяется суммированием нормативной (скорректированной) трудоемкости ПО по стадиям разработки:

T0 =

n
S
i=1

Tyi ,

где Туi – нормативная (скорректированная) трудоемкость разработки ПО на i-й стадии (чел.-дн.);

n – количество стадий разработки.

24. Пример расчета общей трудоемкости разработки условного ПО приводится в приложении 9.

Приложение 1 к укрупненным нормам
затрат труда на разработку
программного обеспечения

Каталог функций программного обеспечения

Код функции

Наименование (содержание) функций

Объем функций (строк исходного кода (LOC)

С использованием среды разработки приложений

Delphi (Borland)

C++ Builder (Borland)

Visual C++ (Microsoft)

Java

1

2

3

4

5

6

1. Ввод, анализ входной информации, генерация кодов и процессор входного языка

101

Организация ввода информации

100

110

150

130

102

Контроль, предварительная обработка и ввод информации

290

430

550

490

103

Преобразование операторов входного языка в команды другого языка

730

850

980

740

104

Обработка входного заказа и формирование таблиц

630

900

1 340

1 040

105

Преобразование входного языка в машинные команды (транслятор, препроцессор, макрогенератор)

2 950

3 100

4 200

3 620

106

Синтаксический и семантический анализ входного языка и генерация кодов команд

3 750

4 900

5 700

5 350

107

Организация ввода/вывода информации в интерактивном режиме

170

220

320

280

108

Организация ввода/вывода информации с сети терминалов

2 780

2 920

3 200

2 950

109

Управление вводом/выводом

2 700

1 980

2 400

1 970

2. Формирование, введение и обслуживание баз данных

201

Генерация структуры базы данных

3 450

3 950

4 300

3 500

202

Формирование баз данных

1 700

1 750

2 180

1 980

203

Обработка наборов и записей базы данных

2 050

2 350

2 670

2 370

204

Обслуживание базы данных в пакетном режиме

1 030

1 100

1 260

1 070

205

Обслуживание базы данных в интерактивном режиме

3 800

4 400

6 950

4 840

206

Манипулирование данными

8 400

8 670

9 550

7 860

207

Организация поиска и поиск в базе данных

5 230

5 460

5 480

4 720

208

Реорганизация базы данных

130

190

220

170

209

Загрузки базы данных

3 150

2 950

2 780

2 360

3. Формирование и обработка файлов

301

Формирование последовательного файла

340

560

780

590

302

Автоматическая сортировка файлов

1 040

1 150

930

890

303

Обработка файлов

750

800

1 100

1 050

304

Управление файлами

4 130

5 380

5 750

5 240

305

Формирование файла

1 100

1 780

2 460

2 130

4. Генерация программ и ПО, а также настройка программного обеспечения

401

Генерация рабочих программ

3 680

3 920

3 360

3 120

402

Генерация программ по описанию пользователей

7 450

8 430

9 880

6 740

403

Формирование служебных таблиц

570

620

1 070

1 140

404

Система генерации ПО

2 950

4 340

4 980

3 250

405

Система настройки ПО

250

300

370

340

5. Управление ПО, компонентами ПО и внешними устройствами

501

Монитор ПО (управление работой компонентов)

670

980

1 340

1 230

502

Монитор системы (управление работой комплекса ПО)

3 750

3 880

7 740

5 760

503

Управление внешними устройствами и объектами

5 850

6 340

5 900

4 730

504

Обработка прерываний

980

1 260

1 680

1 760

505

Управление внешней памятью

250

210

200

180

506

Обработка ошибочных и сбойных ситуаций

970

1 310

1 720

1 540

507

Обеспечение интерфейса между компонентами

1 120

1 540

1 820

1 680

6. Тестирование, проведение тестовых испытаний прикладных программ, вспомогательные программные функции

601

Проведение тестовых испытаний прикладных программ в интерактивном режиме

4 500

4 700

4 300

3 780

602

Вспомогательные и сервисные программы

460

490

580

470

7. Расчетные задачи, формирование и вывод на внешние носители документов сложной формы и файлов

701

Математическая статистика и прогнозирование

2 890

3 620

4 560

3 780

702

Расчетные задачи (расчет режимов обработки)

9 260

13 300

14 800

11 700

703

Расчет показателей

410

500

460

420

705

Формирование и вывод на внешние носители

2 650

2 850

3 500

3 150

706

Предварительная обработка и печать файлов

390

410

470

420

707

Графический вывод результатов

300

330

590

420

708

Интерактивный редактор текста

2 800

3 910

4 540

3 780

709

Измерение состояния ресурсов в интерактивной системе

390

440

630

570

8. Создание Internet-портала

801

Простой поиск контента портала

55

802

Многокритериальный поиск контента портала

85

803

Разработка системы оплаты услуг сайта при внедрении интерфейса системы в дизайн сайта

820

804

Создание гостевой книги

50

805

Создание карты сайта

76

806

Сбор статистики о посетителях портала

95

807

Интеграция модуля опроса посетителей сайта

390

808

Создание системы внутренней рекламы

58

809

Создание системы управлением контентом

970

810

Формирование базы данных портала

1 480

811

Администрирование и обновление сайта

90

Примечание. Указанные в приложении объемы функций (строк исходного кода LOC) являются основой для определения конкретных значений объемов функций и их содержания в зависимости от особенностей ПО. Эти значения могут уточняться в большую или меньшую сторону от приведенных в приложении с учетом технических и методических условий программирования. Например, генерация структуры базы данных (код 201) зависит от масштаба генерируемой базы данных и используемых интерфейсов. Следовательно, вместо нормативного значения (Visual C++ (Microsoft) – 4300 строк исходного кода (LOC) можно принять 3900 или 4900 строк исходного кода (LOC), что определяется экспертным методом соответствующими специалистами организации-исполнителя или заказчика.

Аналогичным образом определяются уточненные объемы строк исходного кода (LOC), по другим средам разработки и функциям, которые сопровождаются соответствующими обоснованиями.

Приложение 2 к укрупненным нормам
затрат труда на разработку
программного обеспечения

Характеристики категорий сложности ПО

Категория сложности

Характеристики программного обеспечения

1

2

1

ПО, обладающие одной или несколькими из следующих характеристик:

1. наличие сложного интеллектуального языкового интерфейса с пользователем;

2. обеспечение телекоммуникационной обработки данных и управление удаленными объектами;

3. обеспечение существенного распараллеливания вычислений;

4. криптография и другие методы защиты информации

2

ПО, обладающие одной или несколькими из следующих характеристик:

1. моделирование объектов и процессов;

2. обеспечение настройки ПО на изменения структур входных и выходных данных;

3. обеспечение переносимости ПО;

4. реализация особо сложных инженерных и научных расчетов

3

ПО, не обладающие перечисленными выше характеристиками

Приложение 3 к укрупненным нормам
затрат труда на разработку
программного обеспечения

Нормативная трудоемкость на разработку ПО (Тн) в зависимости от уточненного объема ПО (Vу) и категории сложности ПО (чел.-дн.)

Объем ПО (строки исходного кода (LOC), Vy, до

Категория сложности ПО

Номер нормы

1-я

2-я

3-я

1

2

3

4

5

400

30

25

21

1

420

31

26

22

2

440

32

28

23

3

470

34

29

25

4

490

36

30

26

5

520

38

32

27

6

550

40

34

29

7

580

42

35

30

8

610

44

37

32

9

640

46

39

33

10

680

48

41

35

11

710

50

43

36

12

750

53

45

38

13

790

56

47

40

14

840

59

50

42

15

880

61

52

44

16

930

65

55

46

17

980

68

57

49

18

1 040

72

61

51

19

1 090

75

63

53

20

1 150

79

66

56

21

1 210

82

69

59

22

1 280

87

73

62

23

1 350

91

77

65

24

1 420

95

80

68

25

1 500

100

85

71

26

1 580

105

89

75

27

1 670

111

93

79

28

1 760

116

98

83

29

1 850

122

102

86

30

1 960

128

108

91

31

2 060

134

113

95

32

2 170

141

119

100

33

2 290

148

125

105

34

2 420

156

131

110

35

2 550

163

137

116

36

2 690

172

144

122

37

2 800

178

150

126

38

2 990

189

159

134

39

3 150

198

167

140

40

3 320

208

175

147

41

3 500

219

184

154

42

3 700

230

193

162

43

3 900

242

203

170

44

4 110

253

213

179

45

4 330

266

223

187

46

4 570

279

234

197

47

4 820

293

246

207

48

5 080

308

258

217

49

5 360

324

271

228

50

5 650

340

285

239

51

5 960

357

299

251

52

6 280

374

314

263

53

6 620

393

329

276

54

6 980

413

345

290

55

7 360

433

363

304

56

7 770

455

381

319

57

8 190

478

400

335

58

8 630

502

419

351

59

9 100

527

440

369

60

9 600

553

462

387

61

10 120

581

485

406

62

10 680

610

510

426

63

11 260

641

535

447

64

11 870

672

561

469

65

12 520

706

590

493

66

13 200

741

619

517

67

13 920

779

650

543

68

14 680

818

682

570

69

15 470

858

715

597

70

16 320

901

751

627

71

17 210

946

789

658

72

18 140

993

828

690

73

19 130

1 043

869

725

74

20 170

1 095

912

760

75

21 270

1 150

957

798

76

22 430

1 208

1 005

838

77

23 650

1 268

1 055

879

78

24 940

1 331

1 108

922

79

26 300

1 398

1 163

968

80

27 730

1 468

1 220

1 016

81

29 240

1 541

1 281

1 066

82

30 830

1 618

1 345

1 119

83

32 510

1 699

1 412

1 174

84

34 290

1 785

1 482

1 233

85

36 150

1 873

1 555

1 293

86

38 120

1 967

1 633

1 357

87

40 200

2 066

1 714

1 424

88

42 390

2 169

1 799

1 495

89

44 700

2 278

1 889

1 569

90

47 130

2 391

1 983

1 646

91

49 700

2 511

2 081

1 728

92

50 000

2 525

2 093

1 737

93

Примечание. В случае, когда объем ПО превышает значения, указанные в таблице (гр. 1), нормативную трудоемкость следует определять по следующим формулам:

для 1-ой категории сложности ПО Тн = 0,12*Vy0,92

для 2-ой категории сложности ПО Тн = 0,105*Vy0,915

для 3-ей категории сложности ПО Тн = 0,092*Vy0,91

Приложение 4 к укрупненным нормам
затрат труда на разработку
программного обеспечения

Коэффициенты повышения сложности ПО (Кс)

Характеристика повышения сложности ПО

Значения Kс

1. Функционирование ПО в расширенной операционной среде (связь с другими ПО)

0,08

2. Интерактивный доступ

0,06

3. Обеспечение хранения, ведения и поиска данных в сложных структурах

0,07

4. Наличие у ПО одновременно нескольких характеристик в приложении 2:

4.1. 2 характеристики;

0,12

4.2. 3 характеристики;

0,18

4.3. свыше 3-х характеристик

0,26

Приложение 5 к укрупненным нормам
затрат труда на разработку
программного обеспечения

Коэффициенты, учитывающие новизну ПО (Kн)

Категория новизны ПО

Степень новизны

Использование

Значение Kн

На основе нового типа ПК

В среде новой ОС

А

Принципиально новые ПО, не имеющие подобных аналогов

+

+

+
+

1,58
1,44
1,10
1,0

Б

ПО, являющиеся развитием определенного параметрического ряда ПО

+

+

+
+

1,0
0,81
0,72

В

ПО, являющиеся развитием определенного параметрического ряда ПО, разработанных для ранее освоенных типов конфигурации ПК и ОС

0,63

Приложение 6 к укрупненным нормам
затрат труда на разработку
программного обеспечения

Коэффициенты, учитывающие степень использования стандартных модулей (Кт)

Степень охвата реализуемых функций разрабатываемого ПО стандартными модулями

Значение Кт

От 60 % и выше

0,55

От 40 % до 60 %

0,65

От 20 % до 40 %

0,77

До 20 %

0,9

Не используются стандартные модули для реализации функций разрабатываемого ПО

1,0

Приложение 7 к укрупненным нормам
затрат труда на разработку
программного обеспечения

Коэффициенты, учитывающие средства разработки ПО (Кур)

Средства разработки ПО

Значения КУР в зависимости от характера операционной среды

IBM-PC, Windows

Функционирование ПО в сетях

локальных

глобальных

1

2

3

4

Процедурные языки высокого уровня (С++, Паскаль)

1,0

1,2

1,3

Языки 4GL (Visual Basic, Delphi)

0,8

0,95

1,1

Системы программирования на основе СУБД типа FохРго

0,45

0,55

0,65

Системы программирования на основе СУБД типа Огас1е, SQLServег

0,4

0,5

0,6

Объектно-ориентированные технологии (СОМ/DCOM, CОRВА)

0,55

0,6

0,7

Средства проектирования ВРWIN/ERWINERX

0,16

0,19

0,22

Прочие САSЕ-средства

0,19

0,22

0,25

Приложение 8 к укрупненным нормам
затрат труда на разработку
программного обеспечения

Значения коэффициентов удельных весов трудоемкости стадий разработки ПО в общей трудоемкости ПО

Категория новизны ПО

Без применения CASE-технологии

С применением CASE-технологии

Стадии разработки ПО

Стадии разработки ПО

ТЗ

ЭП

ТП

РП

ВН

ТЗ+ЭП+ТП

РП

ВН

Значения коэффициентов

Значения коэффициентов

Ктз

Кэп

Ктп

Крп

Квн

Ктз + Кэп + Ктп

Крп

Квн

А

0,12

0,21

0,32

0,26

0,09

0,60

0,30

0,10

Б

0,10

0,20

0,30

0,30

0,10

0,55

0,33

0,12

В

0,08

0,19

0,28

0,24

0,11

0,50

0,35

0,15

Приложение 9 к укрупненным нормам
затрат труда на разработку
программного обеспечения

Пример расчета общей трудоемкости разработки ПО

Наименование проекта – № 274-1Б.

Среда разработки ПО – Visuаl С++ (Мiсrоsоft), ПО функционального назначения.

Таблица 1

Перечень и объем функций программного обеспечения

Код функции

Наименование (содержание) функции

Объем функции строк исходного кода (LOC)

по каталогу Vi

уточненный Vyi

1

2

3

4

101

Организация ввода информации

150

150

202

Формирование баз данных

2 180

2 180

203

Обработка наборов и записей баз данных

2 670

2 670

207

Организация поиска и поиск в базе данных

5 480

3 836

209

Загрузка базы данных

2 780

2 780

703

Расчет показателей

460

460

705

Формирование и вывод на внешние носители

3 500

2 450

706

Предварительная обработка и печать файлов

470

470

ИТОГО

17 690

14 996

В приведенном примере (табл. 1) в связи с использованием более совершенных средств автоматизации объемы функций 207 и 705 были уменьшены и уточненный объем ПО (Vy) составил 14 996 строк исходного кода (LОС) вместо 17 690 (табл. 1, гр. 4).

ПО отнесено ко второй категории сложности: требования пользователя предполагают моделирование процессов и необходимость обеспечения переносимости ПО. Наличие двух характеристик, определяющих сложность ПО, позволяет применить к объему ПО коэффициент Kc (приложение 4 поз. 4.1):

Kc = 1 + 0,12 = 1,12.

ПО является развитием имеющегося аналога и предназначено для использования в освоенной среде ОС, но на новом типе (новой конфигурации) ПК. Новизна ПО соответствует категории Б, а Kн = 0,72 (приложение 5). При разработке ПО доля используемых стандартных модулей составила 60 %, а Km = 0,55 (приложение 6). Новизне ПО категории Б соответствует следующее распределение трудоемкости по стадиям (приложение 8) – Ктз = 0,10; Кэп = 0,20; Кmп = 0,30; Кpп = 0,30; Квн = 0,10.

Нормативная трудоемкость разработки ПО (Tн) определяется согласно приложению 3 (гр. 1, стр. 70 – 15 470 строк исходного кода (LОС); гр. 3, стр. 70 – 715 чел.-дн.) и составляет 715 чел.-дн.

Таблица 2

Расчет общей трудоемкости разработки ПО

Показатели

Стадии

Итого

ТЗ

ЭП

ТП

РП

ВН

1

2

3

4

5

6

7

1. Коэффициенты удельных весов трудоемкости стадии разработки ПО (К)

0,10

0,20

0,30

0,30

0,10

1,0

2. Распределение нормативной трудоемкости программного обеспечения (Тн) по стадиям, чел.-дн.

71

143

214

215

72

715

3. Коэффициент сложности ПО (Kc)

1,12

1,12

1,12

1,12

1,12

4. Коэффициент, учитывающий использование стандартных модулей (Кт)

0,55

5. Коэффициент, учитывающий новизну ПО (Кн)

0,72

0,72

0,72

0,72

0,72

6. Общая трудоемкость ПО (Tо), чел.-дн.

57

115

173

95

58

498