Page 24 - DCAP308_OBJECT_ORIENTED_ANALYSIS_AND_DESIGN
P. 24

Object Oriented Analysis and Design




                    Notes              Inheritance
                                       Association

                                   Self Assessment

                                   Fill in the blanks:
                                   4.  A .................... is an abstraction of something for the purpose of understanding it before
                                       building it.
                                   5.  .................... help in understanding problems, communicating with experts from a distance,
                                       modeling enterprises, and designing programs and database.
                                   6.  The .................... model is a concise, precise abstraction and agreement on how the desired
                                       system must be developed.

                                   7.  At .................... stage, the complete system architecture is designed.
                                   8.  The .................... decides the data structures and algorithms needed to implement each of
                                       the classes in the system.

                                   2.3 Abstraction


                                   Abstraction is one of the very important concepts of object oriented systems. Abstraction is a
                                   simplified description, or specification, of a system that emphasizes some of the system’s details
                                   or properties while suppressing others. A good abstraction is one that emphasizes details that
                                   are significant to the reader or user and suppresses details that are, at least for the moment,
                                   immaterial or diversionary. Abstraction focuses on the essential, inherent aspects of an object of
                                   the system. It does not represent the accidental properties of the system. In system development,
                                   abstraction helps to focus on what an object is supposed to do, before deciding how it should be
                                   implemented. The use of abstraction protects the freedom to make decisions for as long as
                                   possible, by avoiding intermediate commitments in problem solving. Most of the modern
                                   languages provide data abstraction. With the abstraction, ability to use inheritance and ability
                                   to apply polymorphism provides additional freedom and capability for system development.



                                     Did u know? When you are using abstraction during analysis, you have to deal with
                                     application-domain concepts. You do not have to design and make implementation
                                     decisions at that point.

                                   One point of confusion regarding abstraction is its use as a process and as an entity. Abstraction,
                                   as a process, denotes the extracting of the essential details about an item, or a group of items,
                                   while ignoring the inessential details. Abstraction, as an entity, denotes a model, a view, or
                                   some other focused representation for an actual item. Abstraction is most often used as a
                                   complexity mastering technique.
                                   For example, we often hear people say things like “just give the highlights” or “just the facts,
                                   please.”

                                   What these people are asking for are abstractions. We can have varying degrees of abstraction,
                                   although these ‘degrees’ are more commonly referred to as ‘levels’.
                                   As we move to higher levels of abstraction, we focus on the larger and more important pieces of
                                   information (using our chosen selection criteria). Another common observation is that as we
                                   move to higher levels of abstraction, we tend to concern ourselves with progressively smaller




          18                                LOVELY PROFESSIONAL UNIVERSITY
   19   20   21   22   23   24   25   26   27   28   29