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

Вместе с тем имеется тенденция к возрастанию длительности жизненного цикла ПО до 15—20 лет, в связи с чем существенно повышается доля расходов не на разработку, а на сопровождение ПО. Считают, что затраты на сопровождение ПО к 1990 г. возрастут по сравнению с 1980 г. почти в 14 раз, а их удельный вес в расходах министерства обороны США повысится с 43 до 70%. Эксперты в области вычислительной техники оценивают, что в настоящее время не хватает примерно 80—100 тыс. гражданских и военных специалистов в области ПО, а в 90-х годах эта цифра возрастет до 1 млн. человек. Аналогичная ситуация складывается в СССР и в других странах. Учитывая, что нельзя добиться коренного перелома в стоимостной диспропорции между аппаратными и программными средствами за счет привлечения к разработке и сопровождению ПО новой армии программистов при сохранении существующей технологии ручного труда, основное внимание уделяют мерам, гарантирующим повышение производительности труда.

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

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

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

Какие же факторы оказывают наибольшее влияние на его личную производительность труда? К наиболее существенным из них можно отнести следующие:

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