The Object Model (Booch)

Card Set Information

The Object Model (Booch)
2014-09-01 20:11:51
Classes Objects
Terms relating to the Object Model.
Show Answers:

  1. Which is not a principle of the object model?
    A) Typing
    B) Persistence
    C) Concurrency
    D) Encapsulation
    E) Abstraction
    F)  Singularity
    G) Hierarchy
    H) Modularity
    F)  Singularity
    (this multiple choice question has been scrambled)
  2. What are the principles of the object model?
    • Abstraction
    • Encapsulation
    • Modularity
    • Hierarchy
    • Typing  
    • Singularity
    • Concurrency
    • Persistence
  3. Define Abstraction
    Ability or mechanism for objects to respond to a list of behaviours.
  4. Define Encapsulation
    What is the information or operations that an object has but chooses to reveal to me.
  5. Define Modularity
    Ability to divide software application into components called packages, classes, data, and methods for analysis and design.
  6. Define Hierarchy
    The order in which methods or classes are grouped and relationships among them.
  7. Define Typing
    Ability for a object to have one or more types associated with it creating groups or families of object types.
  8. Define Concurrency
    Ability to do more than 1 process at a time.
  9. Define Persistence
  10. What is meant by combining all elements in a synergistic way in the object model?
    Using all elements makes a more robust better design.
  11. What is the unifying element of 00?
    The object.
  12. What is OOAnalysis?
    Observing the classes/objects and relationships among them, in the software problem space.
  13. What is OODesign?
    • Identifying well suited classes/objects and relationships among them, in the software solution space.
    • OR
    • A method of design encompassing the process of OO decomposition (1. Top-down) and a notation (UML) for depicting both logical and physical as well as static and dynamic models of the system under design.
  14. Define Framework.
    A collection of components that can be utilized in a software project for ease of use, modularity, and organization.
  15. Define OO Programming.
    Identifying and breaking a software problem into object components in order to Design and implement well defined classes and relationships between those classes to solve that software problem.

    • 3 important parts:    
    • a. OOProgramming uses objects, not algorithms, as it's fundamental logical building block.    
    • b. Each object is an instance of some class.  
    • c. Classes may be related to each other via some hierarchical relationship.
  16. Give an example of Abstraction.
    Push, Pop, Peek operations that a stack responds to in order to manage the underlying data. Either an array implementation or a linked list implementation and other code does detailed work to do the operations but is generalized or abstracted into simpler operations as push, pop, peek.
  17. Give an example of encapsulation.
    A stack has encapsulated either an array implementation or a linked list implementation that is hidden from the user of the stack.
  18. Give an example of Typing.
    A student can be an undergraduate, graduate, pHd, or masters, etc.