Page 8 - DCAP308_OBJECT_ORIENTED_ANALYSIS_AND_DESIGN
P. 8

Object Oriented Analysis and Design




                    Notes          one another. The object-oriented paradigm is currently the most popular way of analysing,
                                   designing, and developing application systems, especially large ones. Labelling something as
                                   ‘object-oriented’ implies that objects play a central role, and we elaborate this further as a
                                   perspective that views the elements of a given situation by decomposing them into objects and
                                   object relationships. In this unit, we will discuss the concept of object orientation and discuss
                                   object oriented development and object oriented themes.

                                   1.1 Object Orientation (OO)


                                   In the past, information systems used to be defined primarily by their functionality: data and
                                   functions were kept separate and linked together by means of input and output relations.
                                   Object-oriented Approach means organizing software as a collection of discrete objects that
                                   incorporate both data structure and behavior. The object-oriented approach, however, focuses
                                   on objects that represent abstract or concrete things of the real world. These objects are first
                                   defined by their character and their properties which are represented by their internal structure
                                   and their attributes (data). The behaviour of these objects is described by methods (functionality).

                                   Object orientation (OO), or to be more precise, object-oriented programming, is a
                                   problem-solving method in which the software solution reflects objects in the real world.
                                   The term object-oriented (OO) signifies that we organize software as a collection of discrete
                                   objects that incorporate both data structure and behavior. This contrasts with previous
                                   programming approaches in which data structure and behavior are only loosely connected.
                                   There is some dispute regarding exactly what characteristics are needed by an object oriented
                                   approach, however they generally include aspects such as identity, classification, inheritance,
                                   polymorphism, etc.
                                   Terms that are used universally in object orientation are:
                                       Objects: An object is a section of source code that contains data and provides services. The
                                       data forms the attributes of the object. The services are known as methods (also known as
                                       operations or functions). Typically, methods operate on private data (the attributes, or
                                       state of the object), which is only visible to the methods of the object. Thus the attributes
                                       of an object cannot be changed directly by the user, but only by the methods of the object.
                                       This guarantees the internal consistency of the object.
                                       Objects are a concept, abstraction, or item with clear boundaries and meaning for the
                                       problem domain.

                                       Objects have:
                                            Unique identity
                                            State

                                            Behavior
                                       Objects can be concrete or conceptual, conceptual objects are pure abstractions that serve
                                       some specific purpose for a system. Objects are instances of classes. The set of activities
                                       that the object performs defines the object’s behavior.


                                          Example: A “StudentStatus” object can tell you its grade point average, year in school,
                                   or can add a list of courses taken. A “Student” object can tell you its name or its address.
                                       Classes: Classes describe objects. From a technical point of view, objects are runtime
                                       instances of a class. In theory, you can create any number of objects based on a single class.




          2                                 LOVELY PROFESSIONAL UNIVERSITY
   3   4   5   6   7   8   9   10   11   12   13