Barry W. Boehm is an American
software engineerA software engineer is an engineer who applies the principles of software engineering to the design, development, testing, and evaluation of the software and systems that make computers or anything containing software, such as computer chips, work.- Overview :...
, TRW Emeritus Professor of Software Engineering at the Computer Science Department of the
University of Southern CaliforniaThe University of Southern California is a private, not-for-profit, nonsectarian, research university located in Los Angeles, California, United States. USC was founded in 1880, making it California's oldest private research university...
, and known for his many contributions to
software engineeringSoftware Engineering is the application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software, and the study of these approaches; that is, the application of engineering to software...
.
Biography
Boehm received a
B.A.A Bachelor of Arts , from the Latin artium baccalaureus, is a bachelor's degree awarded for an undergraduate course or program in either the liberal arts, the sciences, or both...
in
mathematicsMathematics is the study of quantity, space, structure, and change. Mathematicians seek out patterns and formulate new conjectures. Mathematicians resolve the truth or falsity of conjectures by mathematical proofs, which are arguments sufficient to convince other mathematicians of their validity...
from
Harvard UniversityHarvard University is a private Ivy League university located in Cambridge, Massachusetts, United States, established in 1636 by the Massachusetts legislature. Harvard is the oldest institution of higher learning in the United States and the first corporation chartered in the country...
in 1957, and a
M.S.A Master of Science is a postgraduate academic master's degree awarded by universities in many countries. The degree is typically studied for in the sciences including the social sciences.-Brazil, Argentina and Uruguay:...
in 1961, and
Ph.D.A Ph.D. is a Doctor of Philosophy, an academic degree.Ph.D. may also refer to:* Ph.D. , a 1980s British group*Piled Higher and Deeper, a web comic strip*PhD: Phantasy Degree, a Korean comic series* PhD Docbook renderer, an XML renderer...
from UCLA in 1964, both in
mathematicsMathematics is the study of quantity, space, structure, and change. Mathematicians seek out patterns and formulate new conjectures. Mathematicians resolve the truth or falsity of conjectures by mathematical proofs, which are arguments sufficient to convince other mathematicians of their validity...
as well.
In 1955 he started working as a Programmer-Analyst at
General DynamicsGeneral Dynamics Corporation is a U.S. defense conglomerate formed by mergers and divestitures, and as of 2008 it is the fifth largest defense contractor in the world. Its headquarters are in West Falls Church , unincorporated Fairfax County, Virginia, in the Falls Church area.The company has...
. In 1959 he switched to the
Rand CorporationRAND Corporation is a nonprofit global policy think tank first formed to offer research and analysis to the United States armed forces by Douglas Aircraft Company. It is currently financed by the U.S. government and private endowment, corporations including the healthcare industry, universities...
where he was Head of the Information Sciences Department until 1973. From 1973 to 1989 he was Chief Scientist of the Defense Systems Group at
TRW Inc.TRW Inc. was an American corporation involved in a variety of businesses, mainly aerospace, automotive, and credit reporting. It was a pioneer in multiple fields including electronic components, integrated circuits, computers, software and systems engineering. TRW built many spacecraft,...
. From 1989 to 1992 he served within the U.S. Department of Defense (DoD) as Director of the DARPA Information Science and Technology Office, and as Director of the DDR&E Software and Computer Technology Office. Since 1992 he is TRW Professor of Software Engineering, Computer Science Department, and Director,
USCThe University of Southern California is a private, not-for-profit, nonsectarian, research university located in Los Angeles, California, United States. USC was founded in 1880, making it California's oldest private research university...
Center for Systems and Software Engineering, formerly Center for Software Engineering.
He has served on the board of several scientific journals, including the IEEE Transactions on Software Engineering, IEEE Computer, IEEE Software, ACM Computing Reviews, Automated Software Engineering, Software Process, and Information and Software Technology.
Recent awards for Barry Boehm include the Office of the Secretary of Defense Award for Excellence in 1992, the
ASQCAmerican Society for Quality , formerly known as American Society for Quality Control , is a knowledge-based global community of quality control experts, with nearly 85,000 members dedicated to the promotion and advancement of quality tools, principles, and practices in their workplaces and in...
Lifetime Achievement Award in 1994, and the
ACMThe Association for Computing Machinery is a learned society for computing. It was founded in 1947 as the world's first scientific and educational computing society. Its membership is more than 92,000 as of 2009...
Distinguished Research Award in Software Engineering in 1997. He is an AIAA Fellow, an ACM Fellow, an IEEE Fellow, and a member of the
National Academy of EngineeringThe National Academy of Engineering is a government-created non-profit institution in the United States, that was founded in 1964 under the same congressional act that led to the founding of the National Academy of Sciences...
. He received the Mellon Award for Excellence in Mentoring in 2005 and the IEEE Simon Ramo Medal in 2010.
Work
Boehm's research interests include
software development processA software development process, also known as a software development life cycle , is a structure imposed on the development of a software product. Similar terms include software life cycle and software process. It is often considered a subset of systems development life cycle...
modeling, software
requirements engineeringRequirements engineering is a systems and software engineering process which covers all of the activities involved in discovering, documenting and maintaining a set of requirements for a computer-based system...
, software
architectureArchitecture is both the process and product of planning, designing and construction. Architectural works, in the material form of buildings, are often perceived as cultural and political symbols and as works of art...
s, software metrics and cost models,
software engineeringSoftware Engineering is the application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software, and the study of these approaches; that is, the application of engineering to software...
environments, and knowledge-based software engineering.
His contributions to the field, according to Boehm (1997) himself, include "the Constructive Cost Model (
COCOMO**********************************************************************************************The Constructive Cost Model is an algorithmic software cost estimation model developed by Barry W. Boehm...
), the
Spiral ModelThe spiral model is a software development process combining elements of both design and prototyping-in-stages, in an effort to combine advantages of top-down and bottom-up concepts. Also known as the spiral lifecycle model , it is a systems development method used in information technology...
of the software process, the Theory W (win-win) approach to software management and requirements determination and two advanced software engineering environments: the TRW Software Productivity System and Quantum Leap Environment".
Software versus hardware costs
In an important 1973 report entitled "Ada - The Project : The DoD High Order Language Working Group" to the Defense Advanced Research Projects Agency (
DARPAThe Defense Advanced Research Projects Agency is an agency of the United States Department of Defense responsible for the development of new technology for use by the military...
), Boehm predicted that software costs would overwhelm hardware costs. DARPA had expected him to predict that hardware would remain the biggest problem, encouraging them to invest in even larger computers. The report inspired a change of direction in computing.
Software economics
Barry Boehm's 1981 book "Software Engineering Economics" documents his Constructive Cost Model (COCOMO). It relates software development effort for a program, in man-years T, to
source lines of code (SLOC).
For a single software developer, k can be factored out by using more than 1 SLOC data point. In this case, x can be a fraction like 0.1 or 0.25.
- Note: since man-years are not interchangeable with years, Brooks' Law applies:
- Adding programmers to a late project makes it later.
- Thus this formula is best applied to stable software development teams which have completed multiple projects.
Spiral model
Boehm also created the
spiral modelThe spiral model is a software development process combining elements of both design and prototyping-in-stages, in an effort to combine advantages of top-down and bottom-up concepts. Also known as the spiral lifecycle model , it is a systems development method used in information technology...
of software development, in which the phases of development are repeatedly revisited. This iterative
software development processA software development process, also known as a software development life cycle , is a structure imposed on the development of a software product. Similar terms include software life cycle and software process. It is often considered a subset of systems development life cycle...
influenced
MBASEModel-Based Architecture and Software Engineering in software engineering is a software development process developed by Barry Boehm and Dan Port in the late 1990s...
and
extreme programmingExtreme programming is a software development methodology which is intended to improve software quality and responsiveness to changing customer requirements...
.
Wideband Delphi
Boehm refined the
Delphi methodThe Delphi method is a structured communication technique, originally developed as a systematic, interactive forecasting method which relies on a panel of experts.In the standard version, the experts answer questionnaires in two or more rounds...
of estimation to include more group iteration, making it more suitable for certain classes of problems, such as software development. This variant is called the
Wideband DelphiThe Wideband Delphi estimation method is a consensus-based technique for estimating effort. It derives from the Delphi Method which was developed in the 1940s at the RAND Corporation as a forecasting tool...
method.
Incremental Commitment Model
The Incremental Commitment Model (ICM) is a system design, developmental, and evolution process for the 21st Century systems. The systems' types cover a wide range from COTS based systems to "routine" Information Systems to human intensive and life or safety critical.
It was only in 1998, after the development of the ICM that Barry Boehm along with A Winsor Brown started to focus on reconciling it with the WinWin
Spiral ModelThe spiral model is a software development process combining elements of both design and prototyping-in-stages, in an effort to combine advantages of top-down and bottom-up concepts. Also known as the spiral lifecycle model , it is a systems development method used in information technology...
and its incarnation in
MBASEModel-Based Architecture and Software Engineering in software engineering is a software development process developed by Barry Boehm and Dan Port in the late 1990s...
and the follow-on Lean MBASE, and working towards an Incremental Commitment Model for Software (ICMS) by adapting the existing WinWin
Spiral ModelThe spiral model is a software development process combining elements of both design and prototyping-in-stages, in an effort to combine advantages of top-down and bottom-up concepts. Also known as the spiral lifecycle model , it is a systems development method used in information technology...
support tools.
In 2008, the evolving ICM for Software with its risk-driven anchor point decisions, proved very useful to several projects which ended up having unusual life cycle phase sequences.
Publications
Barry Boehm has published over 170 articles and several books. Books, a selection:
- 1978. Characteristics of Software Quality. With J.R. Brown, H. Kaspar, M. Lipow, G. McLeod, and M. Merritt, North Holland.
- 1981. Software Engineering Economics. Englewood Cliffs, NJ : Prentice-Hall, 1981 ISBN 0-13-822122-7.
- 1989. Software Risk Management. IEEE Computer Society Press.
- 1996. Ada and Beyond: Software Policies for the Department of Defense. National Academy Press.
- 2007. Software engineering: Barry Boehm's lifetime contributions to software development, management and research. Ed. by Richard Selby. Wiley/IEEE press, 2007. ISBN 047014873X.
Articles:
- 1996. "Anchoring the Software Process",. In: IEEE Software, July 1996.
- 1997. "Developing Multimedia Applications with the WinWin Spiral Model," with A. Egyed, J. Kwan, and R. Madachy. In: Proceedings, ESEC/FSE 97 and ACM Software Engineering Notes, November 1997.
Note
Barry Boehm is not related to the
Boehm garbage collectorIn computer science, the Boehm-Demers-Weiser garbage collector, often simply known as Boehm GC, is a conservative garbage collector for C and C++.Boehm GC is free software distributed under a permissive free software licence similar to the X11 license....
which was created by Hans Boehm.
External links