Information Technology Reference
In-Depth Information
outside view. That is, the user need not be concerned with the ''how'' of the object.
The user can view the object as a black box that receives some needed inputs and
outputs the expected values. Since each object is self-contained, they can be easily
reused. Thus object oriented methodology avoids the need for re-programming for
the same functionality.
The following terminology is associated with OO Methodology. This is given
to introduce the reader to the concepts underlying the OOM. This explanation is
given in brief and the reader is advised to refer to other material for full coverage
of the subject, if felt necessary.
Object—an object is a combination of methods (functions/subprograms/small
programs) and data structures that are used by the methods. Each of the methods
performs one action and achieves a predefined functionality affecting the data
defined in the data structures.
Class—a class is a model of the real world from which an object can be created.
A Class is abstract and object is its implementation. A Class is a ''super object'' in
that every object is an instance of a class.
Message—A Message is the input to the object that invokes a method con-
tained inside the object and spurs that method into action to process and produce a
response to the message received. This response is again conveyed as a message
back to the originator.
Abstraction—is the action of analyzing the real world objects and forming
classes based on the similarity of characteristics of the real world objects so that
they can be understood, analyzed, designed and implemented to produce the
desired software product. Abstraction is at a high level. It does not consider the
implementation details.
Encapsulation—In object oriented methodology, the data is hidden from the
sight of the users. The data is accessed through the methods contained in the
object. This aspect of preventing direct access to the data of the objects is referred
to as encapsulation.
Polymorphism—it is the ability of the objects to be implemented differently to
achieve multiple functionalities. When the objects are similar but perform dif-
ferently, the same message can be used to communicate with different objects and
obtain different results. The ability to obtain different results using the same
message by sending it to different object is referred to as polymorphism.
Inheritance—Inheritance is the ability of the object to inherit the character-
istics of the class from which it is instantiated. When we instantiate an object from
a class, the object inherits all the methods and data structures of the class. In
addition, the object can have some more methods and data structures.
OOM focuses more on the engineering side of software development than on
the management side. Therefore, it does not tell us how to go about managing the
software project using OOM. One thing is clear though, OOM expects that the user
requirements are already established. It is a pre-project activity as far as OOM is
concerned. OOM starts with analyzing the user requirements and then extracts the
classes from the requirements using abstraction, then designs classes, and imple-
ments them in the software code. Then the software product is assembled using the
Search WWH ::




Custom Search