Booch method
The Booch method is an object-oriented analysis and design (OOAD) method developed by Grady Booch in the late 1980s and early 1990s, and set out in his book Object-Oriented Design with Applications (1991, with a substantially revised second edition in 1994). It was one of the most influential of the first generation of object-oriented programming design methods, alongside James Rumbaugh’s Object Modeling Technique (OMT) and Ivar Jacobson’s Object-Oriented Software Engineering (OOSE).
The method couples a graphical notation for representing models of a system with a process for producing them. Its notation covers both the micro level – classes and objects, their relationships, and state transition diagrams – and the macro level of modules and subsystems that group those classes. Class boxes in Booch’s original notation were drawn as distinctive "cloud" shapes, a signature that now survives mainly in historical references since the notation itself has been superseded.
Process
Booch described his process as iterative and incremental rather than as a single waterfall pass. He distinguished between a macro process – the long-arc evolution of a system’s architecture across releases – and a micro process of day-to-day class discovery and refinement. The macro process identifies candidate classes and the software architecture early, then revisits analysis and design in successive cycles.
This places the method somewhere alongside big design up-front on the spectrum of up-front design, although Booch himself argued against treating the architecture as a one-off artifact to be settled and set aside. He was a vocal advocate for keeping architecture central throughout development.
Legacy
In 1994 Booch joined James Rumbaugh and Ivar Jacobson at Rational Software, where the three – known as the "three amigos" – unified their competing notations into the Unified Modeling Language. UML adopted much of the Booch notation, recasting its cloud class boxes as rectangles. Booch’s process thinking, combined with that of his colleagues, subsequently shaped the Unified Process and its commercial realization, the Rational Unified Process.
Rational’s later modeling tool, Rational Software Modeler, carried this lineage forward after IBM acquired Rational in 2003. It was eventually superseded by IBM Rational Software Architect and other products in IBM’s engineering tooling suite.
See also
- Object-oriented programming
- Modeling
- Software architecture
- Unified Modeling Language (UML)
- Unified Process
- Rational Unified Process (RUP)
- Big design up-front
- Computer-aided software engineering (CASE)
References
- Booch, G. (1994). Object-Oriented Analysis and Design with Applications (2nd ed.). Benjamin-Cummings.
- Orosz, Gergely. Evolution of software architecture with the co-creator of UML (Grady Booch). YouTube video, The Pragmatic Engineer channel.