OO Objects (PPT 9-10) Flashcards Preview

Object Oriented Analysis and Design > OO Objects (PPT 9-10) > Flashcards

Flashcards in OO Objects (PPT 9-10) Deck (18)
Loading flashcards...
1
Q

What is a class?

A

Represents all objects within the problem domain that share the characteristics and behaviour of a concept, e.g. a customer

2
Q

What is an object?

A

It is an instance of a class/concept. All instances of the object share the same attributes

3
Q

What can objects do?

A

They can provide and perform operations. This allows them to be called upon to do specific duties. They can also collaborate and send messages between other objects

4
Q

What is a class diagram?

A

It is a visual model of the problem domain and a potential design for the system. Allows us to capture our understanding, test and communicate our thoughts

5
Q

What types of things can be classes?

A
  • Tangible or physical things
  • Types of roles played by people, places or organisations
  • Incidents or events
  • Transactions
  • Policies, processes and/or algorithms
  • Specifications
6
Q

What are Specification Classes?

A

They are general classes usually used for inventory systems, such as products. Can distinguish between objects which provide a specification and objects which meet the specification

7
Q

What are some techniques for identifying classes?

A
  • Larmans Conceptual Class Categories

- Noun analysis

8
Q

What are the class categories in Larmans?

A
  • Physical things
  • Types of people
  • Places
  • Catalogues, containers
  • Transactions
  • Product or service related to transaction
  • Other systems we integrate with
  • Other
9
Q

What are some ways we can refine noun candidate classes?

A
Redundant Concepts
-Two nouns refer to the same concept
Irrelevant Concepts
-Outside the scope of the system
Vague or Too broad in scope
Attributes of another class
10
Q

What are the three types of class we may have?

A
  • Entity class
  • Boundary class
  • Control class
11
Q

What is an entity class?

A

It is a class which represents things which are long lived, application independent and usually real world entities

12
Q

What is a boundary class?

A

It is a class which handles communication between the external world and the system. May also link to other systems or electro-mechanical systems

13
Q

What is a control class?

A

It is a class which coordinates events within the system. It delegates and knows when to do things, not how

14
Q

What are analysis patterns?

A

They are distilled experiences of recurring problems during the analysis of systems

15
Q

Give an example of an analysis pattern

A

The quantity pattern: Is a cost a more complex concept than it seems?

16
Q

What is responsibility driven design?

A

Classes should have a single, clearly defined responsibility. Their attributes and operations should be strongly focused around this purpose

17
Q

What are CRC cards?

A

They are Class-Responsibility-Collaboration Cards. State the name of the class, what it does and what it works with

18
Q

What are some advantages of CRC cards?

A

Physicality
-Hold them, move them around a desk, protect them
-Pretend that you are the system
Informal
-They seem more moveable in the face of change
Portable, Inexpensive
-Post it notes, white board, etc
Qualitative Issues
-Points of difficulty, bottlenecks, gaps, new responsibilities
Size of cards
-Forces classes to have clearly defined responsibilities