DocumentCode :
1886925
Title :
Not all programmers are created equal — Redux©
Author :
Bryan, G. Edward
Author_Institution :
GEB Software Technol., Pacific Palisades, CA, USA
fYear :
2012
fDate :
3-10 March 2012
Firstpage :
1
Lastpage :
10
Abstract :
Data that measures individual programmer performance was gathered over a 12-year period in a stable work group responsible for developing and supporting a single 4.2-million-line-code operating system including associated program products, compilers, communication systems, and database systems. Analysis shows a wide variation in productivity from best- to poorest-performing individuals. A single programmer out of a workforce of almost 200 did Eight percent of the work. A variation of 200:1 separated the top programmer from the poorest performers. The top 27% of programmers did 78% of the work. This paper updates and comments on the original 1994 paper, answering questions that readers have raised in the intervening years. The prior paper had a wide following: 240,000 IEEE Xplore citations and 8900 web hits. The programming environment was stable and uniform over the time period: education, training, general ability level, work environment, development tools, and methodology were all the same or similar. The development lab was remote from company headquarters and thus largely isolated from outside distractions and influences. Programmers typically were concurrently responsible for both maintenance of existing code and development of new functions, often for the same code module(s). The average productivity of the group is several times higher than industry averages and this fact is demonstrably not caused by excessive documentation or verbose code; both were efficient in comparison to similar systems. The wide variation in productivity is apparently due to individual ability. Training, tools, methodology, and education, while important, cannot make up for individual ability. To get an accurate project plan the extremely wide range of variation in individual productivity must be taken into account. A project can only be on time and on budget if the widely varying abilities of the staff are taken into account. One person, 2 people, or 20 people depending on individua- ability may properly staff a project.
Keywords :
DP industry; computer science education; operating systems (computers); productivity; program compilers; programming environments; project management; software maintenance; IEEE Xplore citation; Redux; best- to poorest-performing individual; code maintenance; code module; communication system; compiler; database system; development tool; education; function development; general ability level; line-code operating system; productivity; program product; programmer performance; programming environment; project; training; work environment; work group; Computers; Databases; Educational institutions; Maintenance engineering; Operating systems; Productivity;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
Aerospace Conference, 2012 IEEE
Conference_Location :
Big Sky, MT
ISSN :
1095-323X
Print_ISBN :
978-1-4577-0556-4
Type :
conf
DOI :
10.1109/AERO.2012.6187328
Filename :
6187328
Link To Document :
بازگشت