Object Oriented Analysis and Design

 

 

 

Object Oriented Analysis and Design

 

The following texts are the property of their respective authors and we thank them for giving us the opportunity to share for free to students, teachers and users of the Web their texts will used only for illustrative educational and scientific purposes only.

 

All the information in our site are given for nonprofit educational purposes

The information of medicine and health contained in the site are of a general nature and purpose which is purely informative and for this reason may not replace in any case, the council of a doctor or a qualified entity legally to the profession.

 

 

Object Oriented Analysis and Design

  • Define : Object Oriented Programming.

                 OOP is a method of implementation in which programs are organized as cooperative collections of objects, each of which  represents an  instance of  some class ,and whose classes  are all members of a hierarchy of classes united via inheritance relationships.

  • Define: Object Oriented Design:

                
OOD is a method of design encompassing the process of object oriented decomposition  and a notation for depicting both logical and physical as well as static and dynamic models of the system under design.

  • Define : Object Oriented analysis

                              OOA is a method of analysis that examines requirements from the perspective of the classes and objects found in the vocabulary of the problem domain.

 

  • What are the major elements of the object model.
    • Abstraction
    • Encapsulation
    • Modularity
    • Hierarchy

 

  •  What are the minor elements of the object model.

     

    • Typing
    • Concurrency
    • Persistence
  • What is meant by Abstraction.

 

An abstraction denotes the essential characteristics of an object that distinguish it from all the  other kinds of objects and thus provide crisply defined conceptual boundaries relative to the perspective of the viewer.

    7.  Give the kinds of abstraction.

  • Entity   Abstraction
  • Action   Abstraction
  • Virtual machine   Abstraction
  • Coincidental   Abstraction

 

  • Define Encapsulation

          Encapsulation  is the process of compartmentalizing the elements of an abstraction      that constitutes its structure and behavior. It serves to separate the contractual interface of an abstraction and its implementation. It is achieved through information hiding .

   9.  What is meant by Modularity .

          Modularity is the property of a system that has been decomposed into a set of cohesive and loosely coupled modules.

10. What   do you mean by static and dynamic binding.

          Static binding or early binding  refers to the time when names are  bound to types.
Static binding means that the types of all variables and expressions are fixed at the time of compilation. Dynamic binding (late binding )means that the types of all variables and expressions are not known until runtime.

11. Define  Persistence

        Persistence is the property of an object  through which its existence transcends time(i.e. the object continues to exist after its creator ceases  to exist).

12. What is meant by  State of an object.
The  State of an object encompasses all of the ( static) properties of the object
plus  the current  (dynamic) values of each of these properties.

13. What is Class
A Class is a set of objects that share a common structure and a common behavior

      14. List out the relationships among classes

  • Association
  • Inheritance
  • Aggregation
  • Using
  • Instantiation
  • Meta class

15. Give the common kinds of cardinality across an association

  • one- to-one
  • one-to-many
  • many-to-many

16. Define Meta class

      A  Meta class  is a class whose instances are themselves classes.

17. Give the metrics to measure the quality of an abstraction

  • Coupling
  • Cohesion
  • Sufficiency
  • Completeness
  • Primitiveness

18. Give the classification methods.

  • Classical categorization
  • Conceptual clustering
  • Prototype theory

19. Define State transition diagram

        A  State transition diagram is used to show the events that cause a transition from one state to another, and the actions that result  from a state change.

20. List out some process scheduling strategies.

  • Preemptive
  • Non preemptive
  • Cyclic
  • Executive
  • Manual

21. What are the activities of a Micro Development Process

  • Identifying Classes and Objects
  • Identifying  the semantics of Classes and Objects
  • Identifying  the relationships among Classes and Objects
  • Implementing  Classes and Objects

 

22. What are the activities of a Macro Development Process

  • Conceptualization
  • Develop a model of the system’s desired behavior(analysis)
  • Create an architecture for the implementation
  • Evolve the implementation through  successive refinements

Maintenance.

     23. Define Static model
Static model can be viewed as a snapshot of a system’s parameters at rest or at a specific point in time. Static models are needed to represent the structural or static aspect of a system.
The UML class diagram is an example of a static model.

    24. Define  Dynamic model.

                       Dynamic model can be viewed as a collection of procedures or behaviors that taken together ,reflect the behavior of a system over time
The UML interaction diagram is an example of a dynamic  model.

  • Give  any two advantages of modeling

 

  • Reduction of complexity          
  • Manipulation of the model is much easier than manipulating  a real system
  • Models make it easier to express complex ideas.
  • Define UML

 

            The unified modeling language is a language for specifying, constructing,    visualizing, and documenting the software system and its components. UML is a graphical language with sets of rules and semantics. It is a simplified representation of reality.

 27.  What are some of  the UML diagrams.

  • Class diagram
  • Use-case diagram
  • Behavior diagram
  • Implementation diagram
  •  What are some of  the UML dynamic diagrams

       1. Interaction diagram
Sequence diagram
Collaboration diagram

  • State chart diagram
  • Activity diagram

29. What is an association role

The end of an association ,where it connects to a class, shows the association role. Each association has two or more roles to which it is connected Roles may optionally have
Name
Multiplicity expression
Navigability
Eg:

Employer                 employee

  



 Person

 

Company

  

  

    The association works for connects two roles, employee and employer

30. What is the purpose of an activity diagram
The purpose of an activity diagram is to provide a view of flows and what is going on inside a use case or among several classes. It can be used to model an entire business process.

31. Define UML State chart  diagram

A State chart  diagram(also called a state diagram) shows the sequence of states that an object goes through during its life in response to outside stimuli and messages.

32. Define UML  Interaction   diagram.

Interaction   diagrams are diagrams that describe how groups of objects collaborate to get the job done. Interaction   diagrams capture the behavior of a single use case , showing the pattern of interaction among  objects. There are two kinds of Interaction   diagram.
1. Sequence diagram
2. Collaboration diagram

 33. Give the strengths of Sequence diagram

    • Simple notation
    • Clearly shows sequence or time ordering of messages

 

 34.  Give the weaknesses of Sequence diagram

    • Consumes horizontal space
    • Forced to extend to the right when adding new objects

 

 35.  Give the strengths of  Collaboration diagram

    • Space economical – Flexible to add new objects in two dimensions.
    • Better to illustrate complex branching, iteration and concurrent behavior

 

36.   Give the weaknesses of  Collaboration diagram

    • Complex notation
    • Difficult to see sequence of messages

 

 37.  Define Conceptual model

            Conceptual model  is a visual representation of conceptual  classes or real  world  objects in a domain of interest .They are also called Domain    model , Domain object model and Analysis  Object model

 

38. What is use case?
Use cases are scenarios that describe how actors use the system   (interaction between users and  a system. Use case model provides an external view of the system. A use case is a sequence of transaction in a system whose task is to yield results of measurable value to an individual actor of the system

39. What  is the purpose of extends association.
Extends association is used when we have one use case that is similar to other use case but does a little bit more or is more specialized ie it is like a subclass.

 

40. How do  regular inheritance and selective inheritance differ?
Regular inheritance occurs when the subtype inherits all the functions of the super type .  Selective inheritance occurs when the subtype inherits  only some of the  functions of the super type.

41. What is the difference between structured and unstructured complex object?
Unstructured complex object  - DBMS does not know what their structure is. Eg: bitmap  
Images , long text strings .They are also called as binary  large objects (BLOBs)

Structured complex object -   Object structure is defined by the type constructors  ( tuple , atom ,set, list, bag  ..) provided by  OODBMS

42. Define frame works.
Frame work- is a set of  cooperating classes  that make up a reusable design for a   specific class of software . It gives a solution to a particular problem domain.

43. Define the following terms

  • Derived attribute
  • Key attribute

   Derived attribute - The value for this type of attribute can be derived from the values of other  related attributes.
Key attribute  - An entity usually has an attribute whose values are distinct for each individual entity.

44. List out the GoF design patterns.
Adapter, Factory, Singleton , Strategy ,Composite, Facade

45.What is the difference between persistent and Transient object
Transient objects exist in the executing program and disappear once the program terminates. Persistent objects are stored permanently in the data base and persist after program termination.

46.Discuss the type constructors in Object Oriented Terminology.
Type constructors are used to define the data structure  for an object oriented design schema .example  -  atom  , tuple , list , bag ,array .

 47. What are the steps involved in Coad / Yourdon OOAD?
1.Finding class & objects
2. Identifying structures
3.Defining subjects
4. Defining attributes
5. Defining services

48. What is the difference between ownership semantics and reference         semantics in structured complex object.
Ownership  semantics  - sub objects of complex objects are  encapsulated within the  complex   object.
Reference semantics  - components of the complex object are independent objects they may    be referenced   from complex object.

49. List out the CK class oriented metrics
Weighted methods per class
Depth of the inheritance tree
Number of children
Response for a class
Coupling between object class
Lack of cohesion in methods

 

50. Explain the following terms in Object Oriented terminology 

  • Method
  • Signature

      Method- Operation implementation
Signature- Interface part of each operation.

  •  Differentiate  framework from design pattern 

            1.  Design patterns are more abstract than framework

    • Design patterns are smaller architectural elements than frame work
    • Design patterns are less specialized than frame work

52.  Explain the difference between attributes and value set.
Attribute – Property that describe it
Value set – Set of values  that may be assigned to each attribute for each individual entity.

53.  Define : Weak entity set.
Entity types that do not have key attribute of their own.

54. Define : Middleware.
Middleware -  The additional software layer between the user interface front end and the DBMS backend  that facilitates access to heterogeneous databases. It  Provides services such as routing, distribution, message, and network management. ORB is a middleware Eg: CORBA, COM

55. List out the steps involved in Booch OOD?

  • Identify classes & objects
  • Identify class  & object semantics
  • Identify classes & objects relationships
  • Identify classes & objects implementation.

 

56.  List out the metrics that are directly applied to object oriented system

Weighted methods per class
Depth of the inheritance tree
Number of children
Response for a class
Coupling between object class
Lack of cohesion in methods

57. Define : Instantiation:

The process of filling in the template of a generic class to produce a class from which  one can create instances.

    • What is meant by precondition and post condition.

Precondition – An invariant assumed by an operation

Post condition - An invariant satisfied by an operation

 

59. Define Scenario:

           An outline of events that elicits some system behavior.

60. Define cardinality:

   The number of instances that  a class may have ; the number of instances that participate in a class relationship.

61.  What is class category

   A logical collection of classes ,some of which are visible to other class categories, and others are hidden .The classes  in the class category collaborate  to provide a set of services.

62. Define class diagram:
Part of a notation of object oriented design., used to show the existence of classes and their relationships in a logical design of a system

63. Define Collaboration

     The process whereby several objects cooperate to provide some higher level behavior.

64. Define Concrete class:

     A class whose implementation is complete and thus may have instances.

65. What is meant by CRC cards.
Class/Responsibilities/Collaborators ; a simple tool for brainstorming about the key abstractions and mechanisms in a system.

66. Define Delegation:

    The act of one object forwarding an operation to another object ,to be performed on behalf of the first object.

67. What is meant by information hiding:

      The process of hiding all the secrets of an object that do not contribute to its essential characteristics ;typically the structure of an object  is hidden, as well as the implementation of its method.

68. Define Module diagram.

        Part of a notation of object oriented design., used to show the allocation of classes and objects to modules in the physical design of the system

69. Define Process diagram.

      Part of a notation of object oriented design., used to show the allocation of processes  to processors in the physical design of the system

  • What is meant by Parameterized class.

 

   A class that serves as a template for other classes ,in which the template may be parameterized by other classes, objects, and/or operations .A Parameterized class must be instantiated before instances can be created.

  • Define Selector operation:

 

      An operation that accesses the state of an object but does not alter the state.

  • Define abstract class

                      A class that has no instances. An abstract class  is written with   
the expectation that its concrete subclasses will add to its structure and 
behavior ,typically by implementing its abstract operations.

  • What is meant by association

                      A relationship denoting a semantic connection between  two
Classes

  • What is virtual function.

An operation upon an object. A virtual function may be redefined by subclasses; thus, for  a  given object, it is implemented through  a set of methods declared in various classes that are related via inheritance hierarchy.

  • List out Rumbaugh OMT  modeling parts      

OMT separates modeling into three different parts. They are
1.  Object Model
2.  Dynamic Model
3.   Functional Model         

  • Define :Aggregation

      A part of relationship. It is a kind of relationship used to model whole /   
part relationships between things . Two major properties are
Transitivity – if A is a part of B and B is a part of C, then  A  is  a  part    of C.
Anti symmetry -  if   A is a part of B  then  B is not a part of A.   .

      77. Give  the three kinds  of part of relationship patterns.

  • Composition
  • Container
  • Collection

 

78. Define: Using  relationship
      Association denotes a bi-directional semantic connection .Using relationship is one possible refinement of an association. Whereby we assert which abstraction is the client and which is the supplier of certain services

  •  What is meant by uses association in use case diagram

         When we want  to share common sequences in several use cases, 
utilize the uses association by extracting common sequences into a
new shared use case.

  • What is meant by abstract and concrete usecase.

An abstract usecase is not complete and has no initiation actors but is used by a concrete use case ,which does interact with actors. Abstract use cases  also are the use cases that have uses or extends association

  • Write the difference between actor and user

A user may play more than one role. The term actor represents the role a user plays with respect to a system.

    82. Define: Generalization
Generalization is the relationship between a more general class and a
more specific class.

  •  Define use case diagram.

   Use case diagram is a graph of actors ,set of use cases enclosed by a system boundary, communication association betweens between the actors and the use cases, and generalization among the use cases.

  • List out the strategies to identify conceptual classes.
      • Identify noun phrases
      • Use a conceptual class category list.

 

  • List out the GRASP patterns

              1. Information expert
2. Creator

      • High cohesion
      • Low coupling
      • Controller

 

   86. Define polymorphism.
The concepts that two or more classes of an object can respond to the same message in different ways, using   polymorphic  operations. Also , the ability to define polymorphic operations.

  87. Define  Recursive   association.
An association where the source and destination are the same object classes.

  88.  Define : CORBA
Common object request broker architecture .It is a standard proposed as a means to integrate distributed , heterogeneous business application and data.

 89.  Define : Validation
The task of predicting correspondence :    are we building the right product ?

 90. Define : Verification
The task of determining correctness : are we building the  product  right?

 91. Multiple inheritance
The inheritance in some object oriented systems, that permits a class to inherits its attributes and methods from more than one super class .

92. Define lifeline in object oriented terminology.
Lifeline represents the existence of an object at a particular time.

93. Waterfall life cycle
An approach to software development  that starts with deciding what to do and how to do it ,then doing it, testing, and using the application.

 94. What is meant by n-ary association
It is an association among more than two classes .

95.Define : ORB
Object request broker  is a middleware that implements a communication channel through which applications can access object interfaces and request data and services.

 96. What is meant by two-tier and three-tier architecture.
In a two-tier architecture ,a client talks directly to a server, with no intervening server.
This type of architecture typically is used in small environments with less than 50 users.
A three-tier architecture  introduces  a  server  ( application  or  web  server) between the server and client.

 97. Define  the term  Concurrency in object oriented terminology.
It allows different objects to act as the same time. This property distinguishes an active object from one that is not active. Many operating systems provide direct support for concurrency

  • What is meant by composition

           It is a part of relationship pattern. Complex object is constructed from its parts . Eg :  Engine is a part  of a car.

  • Define  the Container part of relationship pattern

          A physical whole encompasses but is not constructed from physical parts  Eg   : house can be considered as a container for furniture and home appliances.

  • Define Collection  part of relationship pattern

          A conceptual whole encompasses parts that may be physical or conceptual. Eg: football team is a collection of players.

 

ESSAY Questions

  • Explain the Booch Object Oriented design  method in detail 

             Macro development process
steps

  • conceptualization
  • analysis
  • design
  • evolution
  • maintenance

             Micro development process
steps

  • Identify classes & objects
  • Identify classes  & object semantics
  • Identify classes & objects relationships
  • Identify classes & objects implementation.

          Diagrams – class ,object, state transition , module ,process ,interaction      diagrams
-Explanation for all the above steps .

    2) Explain the Class Oriented metrics                                                  
CK metrics suite

  • Weighted method per class
  • Depth of the inheritance tree
  • Number of children
  • Coupling between object classes
  • Response for a class
  • Lack of cohesion in methods

           With  explanation for the above each method.

  3)  Metrics for Object Oriented Design model.

                    Size, complexity, Coupling, Sufficiency, Completeness, Cohesion, Primitiveness, Similarity, Volatility with explanation.

  4) What is Middleware? Explain its functionalities in detail.
The key component of c/s computing is connectivity which allows applications to communicate transparently with other programs. The key element of thee connectivity is  Network operating System also known as middleware. It Provides services such as routing, distribution, message & network management. ORB is a middleware       
The widely used standard that implement the middleware are CORBA .  Give the CORBA architecture.    

 5) Explain the Coad / Yourdon Object Oriented Analysis Method 
i). Coad / Yourdon  Steps:
1.Finding classes & objects
2. Identifying structures
3. Defining subjects
4. Defining attributes
5. Defining services    
Give  explanation for  each of the above steps.

6)  Explain the Rumbaugh Object Modeling Technique in detail                                           It consists of Three Models
They are
1.  Object Model
2.  Dynamic Model
3. Functional Model  
Give  explanation for the above each model.                                                     
7)  Explain the structured and unstructured complex objects   
Unstructured- DBMS does not know what their structure is. Eg: bitmap images, long text strings etc
Structured-   Object structure is defined by the type constructors  (tuple , set list ,bag  ,array  ) provided  by  OODBMS. Type constructor  is used to define the structure of the database schema. Give examples also.                                                                             

8)  Write a note on Object Oriented Databases                        
Give  explanation for the following elements in detail
Object definition, Structure
OID ,type constructors
Explanation for how it support Object   Oriented Features for example data encapsulation ,inheritance, information hiding etc..                                          

 

9) Explain the steps involved in a micro development process.

     The micro process tends to track the following activities:
. Identify the classes and objects at a given level of abstraction.
. Identify the semantics of these classes and objects.
. Identify the relationships among these classes and objects.
. Specify the interface and then the implementation of these classes
and objects.

         -Explanation for all the above steps .
Give details for the following diagrams also.
class , object, state transition , module ,process ,interaction diagrams.

10) Explain the steps involved in a macro development process.

 

                 Macro process serve as a controlling framework of micro process .It represents the activities of the entire development team on the scale of weeks to months at a time. It include
Configuration
Management
Code Walkthroughs
Documentation
Phases:

  • Establish the core requirements for the software ( Conceptualization)
  • Develop a model of the systems desired behavior ( Analysis)
  • Create an architecture for the implementation ( Design)
  • Evolve the implementation through successive refinement
  • Maintenance.

Give explanation for  all the above steps.

11) Explain the major and minor elements of object model
Four major elements are

    • Abstraction
    • Encapsulation
    • Modularity
    • Hierarchy

        Minor elements :

    • typing
    • concurrency
    • persistence

       -  give explanation for all the above steps.

12) Explain the various kinds of relationships among classes.

      Most  object oriented languages provide direct support for some combination of the  following  relationships. They are

  • Association
  • Inheritance
  • Aggregation
  • Using
  • Instantiation
  • Meta class

13) Explain the classification methods in detail
Give explanation for the following three methods.

      • classical categorization
      • conceptual clustering
      • prototype theory.

14) What is UML  and explain the following UML diagrams.
The unified modeling language is a language for specifying,  constructing,    visualizing, and documenting the software system and its components. UML is a graphical language with sets of rules and semantics. It is a simplified representation of reality.
UML diagrams.

  • Class diagram
  • Use-case diagram
  • Behavior diagram
  • Implementation diagram

       5.  Interaction diagram
Sequence diagram
Collaboration diagram

  • State chart diagram
  • Activity diagram

15. What is meant by interaction diagram .
Write a note on the following diagram.
1. Sequence diagram
2 .Collaboration diagram.

Interaction   diagrams are diagrams that describe how groups of objects collaborate to get the job done. Interaction   diagrams capture the behavior of a single use case , showing the pattern of interaction among  objects. There are two kinds of Interaction   diagram.
Sequence diagram
Collaboration diagram
- Give the various notations of both the sequence and collaboration diagrams in detail.

 

Source :

http://www.niceindia.com/qbank/Object_Oriented_Analysis_and_Design.doc

http://www.niceindia.com/qbank/object_oriented_analysis_and_design_essay_.doc

Web site link to visit: http://www.niceindia.com

Google key word : Object Oriented Analysis and Design file type : doc

Author : not indicated on the source document of the above text

If you are the author of the text above and you not agree to share your knowledge for teaching, research, scholarship (for fair use as indicated in the United States copyrigh low) please send us an e-mail and we will remove your text quickly.

 

Object Oriented Analysis and Design

 

If you want to quickly find the pages about a particular topic as Object Oriented Analysis and Design use the following search engine:

 

 

Object Oriented Analysis and Design

 

Please visit our home page

 

Larapedia.com Terms of service and privacy page

 

 

 

Object Oriented Analysis and Design