31 мая 2021

Методы нормирования труда работников ИТ-подразделений

Организационная структура и разделение труда в ИТ-подразделении

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

В двух словах функция ИТ-службы сводится к поддержанию и развитию информационной среды компании. Она в свою очередь включает в себя помимо непосредственно информации, создаваемой внутри организации,  также технические средства для ее хранения и обмена. Исходя из этого, ИТ-специалист в организации - это чаще всего не профессионал-универсал во всех сферах деятельности, а узкоспециализированный работник, владеющий достаточным объемом знаний в каком-то одном направлении.

Условно всех работников ИТ-подразделений можно разделить на три категории:

-     системные администраторы. Как правило, занимаются организацией сети внутри компании, установкой и настройкой программного обеспечения, различных сервисов.

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

-     программисты. Сюда входит широкий спектр специалистов, начиная от разработчиков вебсайтов и модулей учетных программ и заканчивая создателями собственных программных продуктов.

В мелких компаниях труд первых двух категорий работников может выполнять один единственный сотрудник, а программирование быть передано в сторонние фирмы.  В средних и крупных компаниях создается полноценная ИТ-служба, примерная структура которой, в соответствии с описанными выше направлениями, может выглядеть следующим образом.

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

Выбор метода нормирования для ИТ-специалистов

Как и для большинства специалистов интеллектуального труда для нормирования ИТ- специалистов можно пойти двумя путями:

1.      Использовать прямое нормирование по трудозатратам с применением одного из методов их расчета:

§  Путем проведения хронометража или фотографии рабочего времени;

§  На основе подходящих типовых межотраслевых норм;

§  Посредством экспертной оценки и проведения опросов специалистов, накопленных статистических данных.

2.      Использовать косвенный поход, исходя из факторов, оказывающих влияние на норму численности.

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

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

 

Первые две категории специалистов на 2/3 выполняют рутинные операции, с которыми сталкиваются ежедневно при поддержке пользователей и оборудования. При этом периодически у них возникают нетипичные задачи, например, при поступлении в эксплуатацию нового типа серверов, которые нужно настроить. Для таких случаев и пригодится экспертный метод оценки трудозатрат.

Что касается нормирования программистов, то здесь вопрос довольно неоднозначный. Проводить фотографию рабочего дня для них, дело неблагодарное, да и не нужное. В то же время, говоря о программистах, допустим, в 1С, нельзя сказать, что их работа совсем уж эксклюзивная. Ведь довольно часто они делают отчеты по одному и тому же шаблону, меняя только ссылки на переменные. Однако и им нередко задают нетиповые задачи, требующие новых подходов к решению и значительных затрат времени. Поэтому для программистов все же ближе экспертный и косвенный метод определения трудозатрат. Для определения трудозатрат по эксклюзивным программным проектам существуют наработки специфических методов расчета трудоемкости.

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

Для «рутинной» работы ИТ-подразделений наиболее простым способом расчета трудоемкости будет применение Постановления Министерства труда и социальной защиты Республики Беларусь от 23.03.2011 № 19 «Нормы времени на работы по обслуживанию персональных электронно-вычислительных машин, организационной техники и офисного оборудования» (далее - Постановление №19).

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

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

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

 

Наименование работ

Ед. изм.

Объем работ на 12 мес.

Номер таблицы в Постановлении №19

Номер нормы

Норма времени на единицу работ

Временные затраты всего, минут

Администрирование активного сетевого оборудования с аппаратно-программной настройкой (коммутаторы)

устройство

312

19

1

35

10 920

Сервисное сопровождение и обслуживание программного обеспечения активного сетевого оборудования

устройство

425

19

2

211

89 675

Сопровождение FTP-сервера

сервер

24

13

2

70

1 680

Всего:

         

102 275

Таким образом, для выполнения указанного объема работ достаточно иметь одного системного администратора в штате организации либо отдать эти функции на аутсорсинг.

А как же быть с программистами? К счастью, для них также есть свои нормативы - Постановление Министерства труда и социальной защиты Республики Беларусь от 27.06.2007 № 91 «Об утверждении укрупненных норм затрат труда на разработку программного обеспечения» (далее - Укрупненные нормы затрат труда), в котором приведены необходимые нормы.  При этом в основу расчетов положен метод функциональных точек, который требует проведения экспертных оценок с целью выявления их количества и последующего корректного применения временных нормативов для каждой из них.

В связи с этим, определение трудоемкости работ программиста, вероятнее всего, потребует от нормировщика более глубокого погружения в тонкости процесса разработки ПО.

Укрупненные нормы затрат труда стандартизирует процесс программирования, разбивая его на следующие стадии:

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

·      эскизный проект (ЭП);

·      технический проект (ТП);

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

·      ввод в действие (ВН).

Помимо этого предлагается учитывать в качестве влияющих на длительность процесса следующие факторы:

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

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

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

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

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

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

Итак имеется задание на разработку проекта ПО на языке Visual С++, которое будет использоваться для накопления информации о работе транспорта в коммерческой (пройденные километры, списанные литры топлива, перевезенные тонны, время работы и т.д.). На основании данных экспертной оценки составляющих функций была получена следующая таблица для подсчета количества строк кода (на основе приложения 1 к Укрупненным нормам затрат труда):

№ п/п

Код функции

Содержание функции

Количество строк исходного кода Vi

1

101

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

150

2

109

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

2400

3

202

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

2180

4

203

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

2670

5

206

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

9550

6

207

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

5480

7

403

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

1070

8

703

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

460

9

706

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

470

10

707

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

590

 

 

Итого

25020


Рассматриваемая программа будет отнесена ко 2 категории сложности, поскольку требует моделирование объектов и процессов и обеспечение настройки ПО на изменения структур   входных и выходных данных. В связи с этим коэффициент повышения сложности  на основе приложения 4 к Укрупненным нормам затрат труда будет равен 1+0,12 = 1,12.

Программа в сущности является развитием уже имеющихся на рынке аналогов и создается на уже известном программном и аппаратном обеспечении, в связи с чем относится к категории новизны «В», в связи с чем коэффициент новизны  «В» основе приложения 5 к Укрупненным нормам затрат труда будет равен 0,63.

Количество стандартных модулей при написании ПО составит 50%, поэтому на основе приложения 6 к Укрупненным нормам затрат труда коэффициент Кт будет равен  0,65.

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

Для программ категории новизны «B» (без применения CASE-технологии) распределение удельных весов стадий  разработки следующее: Ктз -0,08;; Кэп =019;  Ктп =0,28; ; Крп= 0.,34; Квн= 0,11 (см. приложение 8 к Укрупненным нормам затрат).

Ознакомившись приложением 3 к Укрупненным нормам затрат труда, эксперты пришли к выводу, что для значения 25020 строк приемлемо использовать показатель строки 79 с трудоемкостью 1108 чел.-дней.

Результат расчета трудоемкости разработки программы отразим в таблице:

 

Показатели

Этапы проекта

Всего

ТЗ

ЭП

ТП

РП

ВН

Удельные веса этапов

0,08

0,19

0,28

0,34

0,11

1

Распределение трудоемкости по этапам, человеко-дней

88,64

210,52

310,24

376,72

121,88

1108

Кс

1,12

1,12

1,12

1,12

1,12

 

Кт

 

 

 

0,65

 

 

Кн

0,63

0,63

0,63

0,63

0,63

 

Итоговая трудоемкость, человеко-дней

62,544

148,543

218,905

172,779

85,999

688,770

 

Таким образом, если задача ставиться на год, для определения необходимой плановой численности нужно будет разделить полученную трудоемкость на количество рабочих дней в году, приходящихся на одного работника. Вот и всё! 

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

Проектный метод расчета трудозатрат по написанию программ COCMO II

Для разработки самостоятельных программных продуктов сформировались свои, достаточно специфические подходы к определению трудоемкости. Основная идея в их реализации сводится к тому, что создание программы - это проект. В связи с этим сделана попытка применения в сфере их создания инструментов для определения длительности проекта.

Одним из наиболее распространенных стал, разработанный в начале 80-х годов прошлого столетия метод COCMO, позднее усовершенствованный и получивший название COCMO II. Он предлагает рассчитывать трудоемкость исходя из показателя количества строк (тысяч строк) программного кода.

Для этого предлагается использовать следующую формулу:

Остановимся подробнее на содержании элементов формул:

1.    Элемент B имеет значение 0,91;

2.    Элемент A - зависит от стадии оценки проекта и принимает значение 2,45 для предварительной оценки и 2,94 для детальной;

3.    SF - фактор масштаба, его берут из специализированной таблицы. Есть готовые таблицы, как, например, предлагаемая организацией Software Engineering Institute, США. Таблицу также можно разработать самостоятельно на основе собранных статистических данных;

4.    SIZE - плановый объем работ в тысячах строк кода;

5.    EAF - произведение множителей трудоемкости (ЕМi), также берущихся из стандартной готовой таблицы, либо из созданной самостоятельно на основе накопленных статистических данных.

Сначала остановимся на описании факторов масштаба, чтобы лучше понимать, что оценивается:

Описание уровней значимости факторов масштаба

Описание

Уровень значимости фактора

Очень низкий

Низкий

Средний

Высокий

Очень высокий

Критический

PREC

Прецедентность, наличие опыта аналогичных разработок

опыт в продукте и платформе отсутствует

продукт и платформа немного знакомы

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

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

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

продукт и платформа полностью знакомы

FLEX

Гибкость процесса разработки

процесс строго предопределен

допускаются некоторые компромиссы

значительная жесткость процесса

относительная жесткость процесса

незначительная жесткость процесса

определены только общие цели

RESL

Архитектура и разрешение рисков

риски известны/

проанализированы на 20%

—″—

На 40%

—″—

На 60%

—″—

На 75%

—″—

На 90%

—″—

На 100%

TEAM

Сработанность команды

формальные взаимодействия

тяжелое взаимодействие до некоторой степени

чаще всего коллективная работа

в основном коллективная работа

высокая степень взаимодействия

полное доверие, взаимозаменяемость и взаимопомощь

PMAT

Зрелость процессов

СММ Уровень 1 ниже среднего

СММ Уровень 1 выше среднего

СММ Уровень 2

СММ Уровень 3

СММ Уровень 4

СММ Уровень 5

 

Исходя из уровня значимости указанного фактора, можно выбрать его числовое значение на основе таблицы ниже:

Значение фактора масштаба

http://economyandbusiness.ru/wp-content/uploads/2016/12/58628d810e7f0_img.png

Оценка уровня фактора

Очень низкий

Низкий

Средний

Высокий

Очень высокий

Критический

PREC

6.20

4.96

3.72

2.48

1.24

0.00

FLEX

5.07

4.05

3.04

2.03

1.01

0.00

RESL

7.07

5.65

4.24

2.83

1.41

0.00

TEAM

5.48

4.38

3.29

2.19

1.10

0.00

PMAT

7.80

6.24

4.68

3.12

1.56

0.00

 

Также для расчета нужно будет воспользоваться таблицей значений множителей трудоемкости, которая приведена ниже.

Значения множителей трудоемкости

Множитель трудоемкости,

http://economyandbusiness.ru/wp-content/uploads/2016/12/58628d810e8ab_img.png

Описание

Оценка уровня множителя трудоемкости

Супернизкий

Очень низкий

Низкий

Нормальный

Высокий

Очень высокий

Супер высокий

1

PERS

квалификация персонала

2.12

1.62

1.26

1.00

0.83

0.63

0.50

2

PREX

опыт персонала

1.59

1.33

1.22

1.00

0.87

0.74

0.62

3

RCPX

сложность и надежность продукта

0.49

0.60

0.83

1.00

1.33

1.91

2.72

4

RUSE

разработка для повторного использования

n/a

n/a

0.95

1.00

1.07

1.15

1.24

5

PDIF

сложность платформы разработки

n/a

n/a

0.87

1.00

1.29

1.81

2.61

6

FCIL

оборудование

1.43

1.30

1.10

1.00

0.87

0.73

0.62

7

CSED

требуемое выполнение графика работ

n/a

1.43

1.14

1.00

1.00

n/a

n/a

 

Примечание: n/a – соответствующий уровень не оценивается

 

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

Предположим, что экспертным методом удалось определить, что размер программы (SIZE) будет равен 15 тыс. строк кода. Вначале рассчитаем показатель Е.  Для него,  в результате совещания были получены оценки вероятных значений факторов масштаба (SF) , для которых взяты соответствующие значения из таблицы.

SF

Оценка

Значение

PREC

Низкий

4,96

FLEX

Средний

3,04

RESL

Высокий

2,83

TEAM

Низкий

4,38

PMAT

Средний

4,68


Е = 0,91+0,01 * (4,96+3,04+2,83+4,38+4,68) =1,1089.Подставив их значение в формулу, получим следующее: 

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

 

Множитель трудоемкости

Описание

Оценка экспертов

Значение

1

PERS

квалификация персонала

Нормальный

1,0

2

PREX

опыт персонала

Низкий

1,2

3

RCPX

сложность и надежность продукта

Высокий

1,3

4

RUSE

разработка для повторного использования

Низкий

1,0

5

PDIF

сложность платформы разработки

Нормальный

1,0

6

FCIL

оборудование

Очень высокий

0,7

7

CSED

требуемое выполнение графика работ

Высокий

1,0

Тогда EAF будет равен:

1 * 1,2 * 1,3 * 1 * 1 * 0,7 * 1=1,092.

Далее, применяя основную формулу, получим следующее:

 человеко -месяцев.

Таким образом, один сотрудник сможет выполнить указанную работу за 64,68 или почти 65 месяцев. Допустим у нас в штате 10 программистов, тогда они смогут разработать указанный продукт за 64,68 /10 = 6,468 мес., иными словами уложатся в полгода. Если принять в качестве среднего значения 168 рабочих часов в месяц, тогда в часах трудоемкость проекта составит  64,68 * 168 = 10 866,24 человеко -часа.

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

Метод  нормирования численности работников ИТ-подразделения с помощью уравнения регрессии

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

Первоначально определим влияющие на численность системных администраторов факторы:

1.    Количество серверов на обслуживании;

2.    Число пользователей интернета в компании;

3.    Количество пользователей баз данных;

4.    Объем обслуживаемых файловых хранилищ (в терабайтах).

Примем за оптимальную численность системных администраторов в компании, приходящуюся на 2014-2017 годы. В этот период компания работала стабильно, а потом начались длительные организационные изменения, проблемы с заказами и прочие трудности, преодолеть которые, удалось только к концу 2020 года.

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

Годы

Количество серверов на обслуживании

Число пользователей интернет в компании

Количество пользователей баз данных

Объем обслуживаемых файловых хранилищ (в терабайтах)

Численность персонала (системных администраторов)

2014

65

905

495

214

7

2015

85

940

475

240

8

2016

90

960

480

230

8

2017

104

990

510

260

9

Сформируем дополнительную матрицу, последовательно сложив 2014 и 2015, 2015 и 2016, 2016 и 2017 годы.

Годы

Количество серверов на обслуживании

Число пользователей интернет в компании

Количество пользователей баз данных

Объем обслуживаемых файловых хранилищ (в терабайтах)

Численность персонала

2014

65

905

495

214

7

2015

85

940

475

240

8

2016

90

960

480

230

8

2017

104

990

510

260

9

2014+2015

150

1845

970

454

15

2015+2016

175

1900

955

470

16

2016+2017

194

1950

990

490

17

Далее, пользуясь средствами Microsoft Excel, составляем требуемое уравнение регрессии, задающее зависимость между факторами и результатом (в нашем случае численностью персонала). Для этого заходим в меню Данные – Анализ данных, в открывшемся окне выбираем регрессия и жмем ОК.

После этого выделяем входные данные значения Y (численность персонала) и значения X (ячейки с факторами).

Получим следующий результат на отдельном листе:


Нас интересуют более всего первые 2 столбца нижней таблицы. Исходя из них, наше искомое уравнение регрессии примет вид:

Y =0,0000000000000017+0,0298Х1+0,0004Х2+0,0023Х3+0,0168Х4,

Как видно, значение пересечения с осью Y столь мало, что его можно смело приравнять к нулю.

Теперь, основываясь на полученном уравнении можно смело прогнозировать численность необходимых специалистов ИТ–подразделения.

Предположим, что в 2021 году планируются следующие параметры загрузки для системных администраторов:

 

Годы

Количество серверов на обслуживании

Число пользователей интернет в компании

Количество пользователей баз данных

Объем обслуживаемых файловых хранилищ (в терабайтах)

2021

120

1020

516

300

Дополним эту таблицу нашими коэффициентами при переменных и затем перемножим прогнозное значение на коэффициент, получив таким способом нашу плановую численность отдела:

Годы

Количество серверов на обслуживании

Число пользователей интернет в компании

Количество пользователей баз данных

Объем обслуживаемых файловых хранилищ (в терабайтах)

Численность персонала (системных администраторов)

2021

120

1020

516

300

10

Коэффициенты трудовой нагрузки

0,0298

0,0004

0,0023

0,0168

 

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

Сергей Бушмин, экономист

Если вы заметили ошибку в тексте новости, пожалуйста, выделите её и нажмите Ctrl+Enter

Поделись статьёй со своими коллегами!

Наверх

You can highlight and get a piece of text that will get a unique link in your browser.