The Booch method
is a method for object-oriented software development. It is composed of an
object modeling language
An object-modeling language is a standardized set of symbols used to model a software system using an object-oriented framework. The symbols can be either informal or formal ranging from predefined graphical templates to formal object models define ...
, an iterative object-oriented development process, and a set of recommended practices.
The method was authored by
Grady Booch
Grady Booch (born February 27, 1955) is an American software engineer, best known for developing the Unified Modeling Language (UML) with Ivar Jacobson and James Rumbaugh. He is recognized internationally for his innovative work in software archi ...
when he was working for
Rational Software
Rational Machines is an enterprise founded by Paul Levy and Mike Devlin in 1981 to provide tools to expand the use of modern software engineering practices, particularly explicit modular architecture and iterative development. It changed its ...
(acquired by IBM), published in 1992 and revised in 1994. It was widely used in
software engineering
Software engineering is a systematic engineering approach to software development.
A software engineer is a person who applies the principles of software engineering to design, develop, maintain, test, and evaluate computer software. The term '' ...
for
object-oriented analysis and design
Object-oriented analysis and design (OOAD) is a technical approach for analyzing and designing an application, system, or business by applying object-oriented programming, as well as using visual modeling throughout the software development proces ...
and benefited from ample documentation and support tools.
The notation aspect of the Booch method was superseded by the
Unified Modeling Language
The Unified Modeling Language (UML) is a general-purpose, developmental modeling language in the field of software engineering that is intended to provide a standard way to visualize the design of a system.
The creation of UML was originally m ...
(UML), which features graphical elements from the Booch method along with elements from the
object-modeling technique
The object-modeling technique (OMT) is an object modeling approach for software modeling and designing. It was developed around 1991 by Rumbaugh, Blaha, Premerlani, Eddy and Lorensen as a method to develop object-oriented systems and to support ...
(OMT) and
object-oriented software engineering
Object-oriented programming (OOP) is a programming paradigm based on the concept of "objects", which can contain data and code. The data is in the form of fields (often known as attributes or ''properties''), and the code is in the form of p ...
(OOSE). Methodological aspects of the Booch method have been incorporated into several methodologies and processes, the primary such methodology being the
Rational Unified Process
The Rational Unified Process (RUP) is an iterative software development process framework created by the Rational Software Corporation, a division of IBM since 2003. RUP is not a single concrete prescriptive process, but rather an adaptable proce ...
(RUP).
Content of the method
The Booch notation is characterized by cloud shapes to represent classes and distinguishes the following diagrams:
The process is organized around a macro and a micro process.
The macro process identifies the following activities cycle:
* Conceptualization : establish core requirements
* Analysis : develop a model of the desired behavior
* Design : create an architecture
* Evolution: for the implementation
* Maintenance : for evolution after the delivery
The micro process is applied to new classes, structures or behaviors that emerge during the macro process. It is made of the following cycle:
* Identification of classes and objects
* Identification of their semantics
* Identification of their relationships
* Specification of their interfaces and implementation
References
External links
Class diagramsan
{{DEFAULTSORT:Booch Method
Software design
Object-oriented programming
Programming principles
de:Grady Booch#Booch-Notation