Grady Booch | |
|---|---|
Grady Booch in 2011 | |
| Born | (1955-02-27)February 27, 1955 (age 70) |
| Education | U.S. Air Force Academy(B.S.) University of California, Santa Barbara(M.S.) |
| Known for | |
| Awards |
|
| Scientific career | |
| Institutions | |
| Website | researcher |
Grady Booch (born February 27, 1955) is an Americansoftware engineer, best known for developing theUnified Modeling Language (UML) withIvar Jacobson andJames Rumbaugh. He is recognized internationally for his innovative work in software architecture, software engineering, andcollaborative development environments.[1][2][3][4]
Booch earned hisbachelor's degree in 1977 from theUnited States Air Force Academy and amaster's degree in electrical engineering in 1979 from theUniversity of California, Santa Barbara.[5]
Booch worked at Vandenberg Air Force Base after he graduated. He started as a project engineer and later managed ground-support missions for the space shuttle and other projects. After he gained his master's degree he became an instructor at the Air Force Academy.[6]
Booch served as Chief Scientist ofRational Software Corporation from its founding in 1981 through its acquisition by IBM in 2003, where he continued to work until March 2008. After this he became Chief Scientist, Software Engineering in IBM Research and series editor forBenjamin Cummings.
Booch has devoted his life's work to improving the art and the science of software development. In the 1980s, he wrote one of the more popular books on programming inAda. He is best known for developing theUnified Modeling Language withIvar Jacobson andJames Rumbaugh in the 1990s.
Booch got his first exposure to programming on anIBM 1130.[7]
... I pounded the doors at the local IBM sales office until a salesman took pity on me. After we chatted for a while, he handed me a Fortran [manual]. I'm sure he gave it to me thinking, "I'll never hear from this kid again." I returned the following week saying, "This is really cool. I've read the whole thing and have written a small program. Where can I find a computer?" The fellow, to my delight, found me programming time on an IBM 1130 on weekends and late-evening hours. That was my first programming experience, and I must thank that anonymous IBM salesman for launching my career. Thank you, IBM.

Booch developed the'Booch method' of software development, which he presents in his 1991/94 book,Object Oriented Analysis and Design With Applications.[8] The method was authored by Booch when he was working for Rational Software (acquired by IBM), published in 1992 and revised in 1994.
The method is composed of anobject-oriented modeling language,[9] an iterative object-oriented development process,[10] and a set of recommended practices.[11] The recommended practices include adding more classes to simplify complex code. The methodology was widely used insoftware engineering forobject-oriented analysis and design and benefited from ample documentation and support tools.[12]
The Booch notation is characterized by cloud shapes to represent classes and distinguishes the following diagrams:
| Model | Type | Diagram | UML correspondence |
|---|---|---|---|
| Logical | Static | Class diagram | Class diagram |
| Object diagram | Object diagram | ||
| Dynamic | State transition diagram | State chart diagram | |
| Interaction diagram | Sequence diagram | ||
| Physical | Static | Module diagram | Component diagram |
| Process diagram | Deployment diagram |
The process is organized around a macro and a micro process.[8]
The macro process identifies the following activities cycle:
The micro process is applied to new classes, structures or behaviors that emerge during the macro process. It is made of the following cycle:
The notation aspect of the Booch method has now been superseded by theUnified Modeling Language (UML), which features graphical elements from the Booch method along with elements from theobject-modeling technique (OMT) andobject-oriented software engineering (OOSE).
Methodological aspects of the Booch method have been incorporated into several methodologies and processes, the primary such methodology being theRational Unified Process (RUP).
Booch is also an advocate ofdesign patterns. For instance, he wrote theforeword toDesign Patterns, an early and highly influential book in the field.
He now is part ofIBM Research – Almaden, serving as Chief Scientist for Software Engineering, where he continues his work on the "Handbook of Software Architecture" and also leads several long-term projects in software engineering. Grady has served as architect and architectural mentor for numerous complex software-intensive systems around the world.
Grady Booch published several articles and books. A selection:

In 1995, Booch was inducted as a Fellow of theAssociation for Computing Machinery.[20] He was named anIBM Fellow in 2003, soon after his entry into IBM, and assumed his current role on March 18, 2008. He was recognized as anIEEE Fellow in 2010.[21] In 2012, Booch was awarded theLovelace Medal for 2012 by theBritish Computer Society[22] and gave the 2013 Lovelace Lecture.[23] He gave theTuring Lecture in 2007. He was awarded theIEEE Computer SocietyComputer Pioneer Award in 2016 for his pioneering work in Object Modeling that led to the creation of the Unified Modeling Language (UML).[24]
Grady Booch, who gave 2013's BCS Lovelace Lecture, has, ...