Bill Curtis (born 1948) is a software scientist best known for leading the development of the Capability Maturity Model and the People CMM in the Software Engineering Institute at Carnegie Mellon University, and for championing the spread of software process improvement and software measurement globally.Curtis, B. & Paulk, M.C. (1993) Creating a software process improvement program. Information and Software Technology, 35, 381-386Curtis, B. (2000). The global pursuit of process maturity. IEEE Software, 17 (4), 76-78Curtis, B., Kellner, M., & Over, J. Process modeling. Communications of the ACM, 35 (9), 75-90 In 2007 he was elected a Fellow of the Institute of Electrical and Electronics Engineers (IEEE) for his contributions to software process improvement and measurement. He was named to the 2022 class of ACM Fellows, "for contributions to software process, software measurement, and human factors in software engineering".
Personal life Bill Curtis was born in Meridian, Texas in 1948. He graduated from the Fort Worth Country Day School in 1967 where the Bill Curtis Award is given annually to the undergraduate boy whose performance contributes the most to the athletic program. He received his B.A. in mathematics, psychology, and theater in 1971 from Eckerd College in St. Petersburg, Florida. He received his M.A. in 1974 from The University of Texas. He received his Ph.D. specializing in organizational psychology and statistics in 1975 from Texas Christian University in Fort Worth, Texas. He has published 4 books, over 240 articles, and has been on the editorial board of 7 academic journals. He lives in Fort Worth, Texas.
Career He started his career as a Research Assistant Professor in the Organizational Research Group at the University of Washington where he also taught statistics in the Department of Psychology and performed research on programmer skills, leadership, and sports psychology.Curtis, B., Smith, R.E., & Smoll, F.L. Scrutinizing the skipper: A study of leadership behaviors in the dugout. Journal of Applied Psychology, 64 (4), 391-400Smith, R.E., Smoll, F.L., & Curtis, B. Coach effectiveness training: A cognitive-behavioral approach to enhancing the relationship skills in youth sports coaches. Journal of Sports Psychology, l (l), 59-75 He entered software engineering in 1978 as the Manager of Software Management Research at Information System Programs in General Electric's Space Division (now a division of Lockheed Martin) in Arlington, Virginia, where he led research on software metrics and programming practices. From 1980 to 1983 he developed a global software productivity and quality measurement system in ITT's Programming Technology Center.
During 1983–1990 he founded the Human Interface Laboratory and later led Design Process Research at Microelectronics and Computer Technology Corporation (MCC), the American Fifth Generation Computer Research Consortium in Austin, Texas.Gibson, D.V. & Rogers, E.M. (1994). R&D Collaborations On Trial. Boston: Harvard Business School Press. During 1991–1992 he was the Director of the Software Process Program at the Software Engineering Institute (SEI) at Carnegie Mellon University in Pittsburgh, Pennsylvania, where he led the projects that produced the Capability Maturity Model for Software Process (CMM). and the People CMM In 1993 he returned to Austin and co-founded TeraQuest Metrics, which provided CMM-based improvement services globally. TeraQuest was acquired by Borland Software Corporation in 2005, where he became the Chief Process Officer.
He is currently the Senior Vice President and Chief Scientist of CAST Software and the Director of the Consortium for IT Software Quality (CISQ), an IT industry leadership group founded by the SEI and OMG to develop standards for automating the measurement of software. Under his leadership CISQ has begun releasing standards for measuring the size (Automated Function Point Counting) and structural quality characteristics of software at the code and software architecture level. Four of these standards have been adopted by ISO, such as ISO 5055:2021 Automated Source Code Quality Measures.
Significant contributions Maturity models and process improvement Dr. Curtis initiated the project to create the Capability Maturity Model (CMM) in 1991 after he had been selected to succeed Watts Humphrey as the Director of the Software Engineering Institute's Software Process Program. The CMM integrated the software development best practices the SEI had been collecting into Humphrey's Process Maturity Framework.Humphrey, W.S. (1989). Managing the Software Process. Reading, MA : Addison-Wesley The CMM for Software Process Version 1.1 was published as an IEEE Software article in July 1993, and published as a book in 1994. Throughout the 1990s he promoted the CMM to companies and government agencies in the U.S, E.U., and Asia, contributing to its global adoption as a method for guiding process improvement and for evaluating the capability of software organizations.
Dr. Curtis recognized that Humphrey's Process Maturity Framework was a unique model of organizational development that challenged conventional wisdom on how to conduct organizational improvement programs and could be applied to organizational processes far beyond software development. With his background in organizational psychology, he proposed applying Humphrey's framework to human capital management practices. Working with Bill Hefley and Sally Miller, he created the People CMM, validating the broad applicability of the Process Maturity Framework to many different organizational processes. The People CMM stages the implementation of increasingly sophisticated human capital management practices across the five levels of organizational maturity proposed by Humphrey. The People CMM has been used by several Fortune 200 companies to guide workforce development programs, and has been widely adopted by offshore system integrators and outsourcers to help manage the rapid growth of their workforces.Curtis, B., Hefley, W.E., & Miller, S. (2003). Experiences applying the People Capability Maturity Model. Crosstalk: The Journal of Defense Software Engineering, 16 (4), 9-13.
With support from Nedbank in South Africa, Dr. Curtis and Charles Weber developed a Business Process Maturity Model (BPMM)Weber, C.V. & Curtis, B. (2004). Business Process Maturity Model. Austin: TeraQuest. http://www.omg.org/spec/BPMM/1.0/PDF/ to extend the benefits of CMM and CMMI which are project-based, to the continuous value-chain processes of a business. The BPMM includes several new innovations in maturity models based on a decade of experience in applying them to guide process improvement programs. The BPMM has been applied and validated in the banking, electronic equipment manufacturing, medical services, and gaming industries. The BPMM has recently become a supported specification (standard) of the Object Management Group's Business Process Management Initiative.
Software measurement Dr. Curtis led a team at General Electric Space Division that was the first to prove experimentally that software metrics could be used to predict programmer performance and quality.Curtis, B., Sheppard, S.B., Milliman, P., Borst, A., & Love, T. (1979). Measuring the psychological complexity of software maintenance tasks with the Halstead and McCabe metrics. IEEE Transactions on Software Engineering, 5 (2), 96-104. His group provided early leadership in studying programming practices experimentally.Sheppard, S.B., Curtis, B., Milliman, P., & Love, T. (1979). Modern coding practices and programmer performance. IEEE Computer, 12 (12), 41-49.Curtis, B., Sheppard, S.B., Kruesi-Bailey, V., Bailey, J., & Boehm-Davis, D. (1989). Experimental evaluation of software specification formats. Journal of Systems and Software, 9 (2), 167-207.Curtis, B. (1980). Measurement and experimentation in software engineering. Proceedings of the IEEE, 68 (9), 1144–1157. He next developed a global software productivity and quality measurement system while at ITT's Programming Technology Center which allowed established corporate baselines across different business lines in one of the world's largest corporate conglomerates. He has promoted the use of advanced statistic methods in managing software productivity and quality.Curtis, B., Seshagiri, G.V., Riefer, D., Hirmanpour, I., Keeni, G. (2008). The case for quantitative process management. IEEE Software, 25(3), 24-28.Curtis, B., Sappidi, J., & Szynkarski, A. (2012). Estimating the principal of an application's technical debt. IEEE Software, 29 (6), 34-42.
In 2009 Dr. Curtis became the founding Director of the Consortium for IT Software Quality (CISQ) that was created with joint sponsorship from the SEI and OMG. CISQ's primary objective has been to create standards for measuring the size and quality attributes of software at the code level. Under his leadership CISQ has recently had a standard for computing Automated Function Points approved by OMG.CISQ (2012). Automated Function Point Specification. http://it-cisq.org/wp-content/uploads/2012/09/13-02-01-Automated-Function-Points.pdf CISQ has also released a standard for computing automated measures of software reliability, performance efficiency, security, and quality.CISQ (2012). CISQ Specification for Automated Quality Characteristic Measures.
Design process Curtis has been an advocate for studying the psychological and behavioral processes of software development.Curtis, B. (1981, Ed.). Human Factors in Software Development. Washington, DC: IEEE Computer Society.Curtis, B., Soloway. E., Brooks, R., Black, J., Ehrlich, K., & Ramsey, H.R. (1986). Software psychology: The need for an interdisciplinary program. Proceedings of the IEEE, 74 (8), 1092–1106. In 1986 he established Design Process Research in the Software Technology Program at MCC. Over the next four years his team published research that challenged the existing top-down paradigms of software design. They interviewed design teams on large software to reveal the greatest challenges they encountered in designing large software-intensive systems.Curtis, B., Krasner, H., & Iscoe, N. (1988). A field study of the software design process for large systems. Communications of the ACM, 31 (11), 1268–1287. They videotaped design team meetings over a three-month period to see how designs actually emerged from the team dialectic.Guindon, R. & Curtis, B. (1988). Control of cognitive processes during design: What tools are needed? Proceedings of CHI'88. New York: ACM, 263-268. They also videotaped individual software designers solving problems to uncover the cognitive processes of design.Walz, D.B., Elam, J.J., & Curtis, B. (1993). Inside a software design team: Knowledge acquisition, sharing, and integration. Communications of the ACM, 36 (10), 62-77. Their insights have been cited as an argument for the use of agile development methods in software.Poppendieck, M. & Poppendieck, T. (2003). Lean Software Development: An Agile Toolkit. Boston: Addison-Wesley, p. 18.
User interface