Estimating the numbers of end users and end user programmers

In 1995, Boehm predicted that by 2005, there would be "55 million performers" of "end user programming" in the United States. The original context and method which generated this number had two weaknesses, both of which we address. First, it relies on undocumented, judgment-based factors to estimate the number of end user programmers based on the total number of end users; we address this weakness by identifying specific end user sub-populations and then estimating their sizes. Second, Boehm's estimate relies on additional undocumented, judgment-based factors to adjust for rising computer usage rates; we address this weakness by integrating fresh Bureau of Labor Statistics (BLS) data and projections as well as a richer estimation method. With these improvements to Boehm's method, we estimate that in 2012 there will be 90 million end users in American workplaces. Of these, we anticipate that over 55 million will use spreadsheets or databases (and therefore may potentially program), while over 13 million will describe themselves as programmers, compared to BLS projections of fewer than 3 million professional programmers. We have validated our improved method by generating estimates for 2001 and 2003, then verifying that our estimates are consistent with existing estimates from other sources.

[1]  Bonnie A. Nardi,et al.  A small matter of programming , 1993 .

[2]  Barry W. Boehm,et al.  Cost models for future software life cycle processes: COCOMO 2.0 , 1995, Ann. Softw. Eng..

[3]  Maria Jean Johnstone Hall A risk and control-oriented study of the practices of spreadsheet application developers , 1996, Proceedings of HICSS-29: 29th Hawaii International Conference on System Sciences.

[4]  G. Silvestri Occupational employment projections to 2006 , 1997 .

[5]  Ellis Horowitz,et al.  Software Cost Estimation with COCOMO II , 2000 .

[6]  D. Hecker Occupational employment projections to 2014 , 2001 .

[7]  Margaret M. Burnett,et al.  Assertions in end-user software engineering: a think-aloud study , 2002, Proceedings IEEE 2002 Symposia on Human Centric Computing Languages and Environments.

[8]  Alan F. Blackwell,et al.  First steps in programming: a rationale for attention investment models , 2002, Proceedings IEEE 2002 Symposia on Human Centric Computing Languages and Environments.

[9]  Varun Grover,et al.  Information technology innovations: general diffusion patterns and its relationships to innovation characteristics , 2002, IEEE Trans. Engineering Management.

[10]  Gregg Rothermel,et al.  Harnessing curiosity to increase correctness in end-user programming , 2003, CHI '03.

[11]  F. Paternò From Model-based to Natural Development , 2003 .

[12]  Margaret M. Burnett,et al.  End-user software visualizations for fault localization , 2003, SoftVis '03.

[13]  Simon L. Peyton Jones,et al.  A user-centred approach to functions in Excel , 2003, ICFP '03.

[14]  Steven Hipple,et al.  Computer and Internet Use at Work in 2001. , 2003 .

[15]  Mary Shaw,et al.  An approach for categorizing end user programmers to guide software engineering research , 2005, ACM SIGSOFT Softw. Eng. Notes.

[16]  Gregg Rothermel,et al.  The EUSES spreadsheet corpus: a shared resource for supporting experimentation with spreadsheet dependability mechanisms , 2005, ACM SIGSOFT Softw. Eng. Notes.