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):
1

What is a class?

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

2

What is an object?

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

3

What can objects do?

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

What is a class diagram?

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

What types of things can be classes?

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

6

What are Specification Classes?

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

What are some techniques for identifying classes?

-Larmans Conceptual Class Categories
-Noun analysis

8

What are the class categories in Larmans?

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

9

What are some ways we can refine noun candidate classes?

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

What are the three types of class we may have?

-Entity class
-Boundary class
-Control class

11

What is an entity class?

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

12

What is a boundary class?

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

What is a control class?

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

14

What are analysis patterns?

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

15

Give an example of an analysis pattern

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

16

What is responsibility driven design?

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

17

What are CRC cards?

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

18

What are some advantages of CRC cards?

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