Criteria for good OOA/OOD


What makes for good OOA/OOD/OOP?

The following are the criteria that I've collected from class discussions as defining good object-oriented analysis and object-oriented design (and some good object-oriented programming). I'll try to update this list as we come up with new ones.

Object-Oriented Analysis

Object-Oriented Design

"I am a TempSensor. I know how to alert the Refrigerator when to turn on. (Which implies that I'd better have an instance variable for my Refrigerator.) When I get a tick message (Which implies that something is going to send the Tick message. Who? How do they track those of us who care about ticks?), I compare the current temperature (maybe there's a message which reads the device?) to the DesiredTemp, and if it's out of range (where is the acceptable range stored?), I send a message to the Refrigerator. (What message? Refrigerators better know how to respond to that message.)"

Object-Oriented Programming


News Page | CS2390 Sum'97 Home Page | MMC | STABLE
Questions/comments/concerns to guzdial@cc.gatech.edu
Page last updated 6/23/97; 4:06:33 PM