Home » Software Engineering

Booch's Object Identification Method | Software Engineering

This article is an introduction to Booch's Object Identification Method. In this article we will first define what this method is, what are the things it is related to in software engineering, why was it developed and how it is useful. Then we will briefly explain this method as proposed by Booch.
Submitted by Monika Sharma, on November 06, 2019

Booch's Object identification model was used to identify the different objects of software while doing domain analysis (domain modeling). This model was proposed by Grady Booch in 1992 when he was working for Rational Software which was later acquired by IBM. This model was then again revised by him in 1994. This model was widely used in software engineering for data modeling and object-oriented domain analysis purpose.

The aspect of Booch's method was taken from the concepts of UML (Unified Modelling Langauge). In the Booch's method of the object identification process, he proposed that a narrative of the given problem should be developed first. This narrative was nothing else but the problem statement itself refined into a simpler form that contained clear declarations of nouns and verbs in it.

The objects were then identified from these narratives. All the nouns in the narrative were noted down to be the objects. (The synonyms of the nouns were eliminated or neglected). All the verbs included in the narrative of the problem statement acted as the actions that were to be performed by the software.

However, all the nouns available in the narrative of the problem were not always objects. According to Booch's method, a potential object found after the lexical analysis was considered legitimate only if it satisfies the following criteria: Retained information, multiple attributed and common operations.

Retained Information:

The object must contain dome specific and retained information regarding itself. If the object has no specific information or any sort of private data, then it is not considered to play an important role in the software. Hence, every valid object must have some information that could be able to define the object and its usefulness.

Multiple attributes:

The multiple attributes in the definition of the object mean that the object supports multiple methods. The more the number of methods (or attributes), the more the object can offer functionalities and can be related to other objects.

Objects with single or very few attributes are usually considered to be a part of other objects or are directly driven by other objects. Hence, these types of objects are irrelevant and not efficient to construct.

Common operations:

Several common operations are applicable to the potential objects. If all these operations are applicable to all the occurrences of the object, then they can easily be implemented to the whole class. If these operations are not applicable to the instances, then the object is not considered valid because every function of the class must be applicable to every instance of the class. If such cases hold, then they are considered under special objects where various sub-classes are needed to define them.



Comments and Discussions!





Languages: » C » C++ » C++ STL » Java » Data Structure » C#.Net » Android » Kotlin » SQL
Web Technologies: » PHP » Python » JavaScript » CSS » Ajax » Node.js » Web programming/HTML
Solved programs: » C » C++ » DS » Java » C#
Aptitude que. & ans.: » C » C++ » Java » DBMS
Interview que. & ans.: » C » Embedded C » Java » SEO » HR
CS Subjects: » CS Basics » O.S. » Networks » DBMS » Embedded Systems » Cloud Computing
» Machine learning » CS Organizations » Linux » DOS
More: » Articles » Puzzles » News/Updates

© some rights reserved.