CRC Cards

Star UML and CRC Cards
Pepper
Goals
• CRC
• StarUML
• Code Generation
Good Class Design
• Cohesive
– only one abstraction
• No unnecessary coupling
– No printing to a specific device such as screen
scanner
• Related data in the same class
Class UML Diagram
• Each class box:
– Name / state / behavior
• Relations
– Has a
– Knows a
– Uses a
– Is a
• Great Explanation matched to code
– http://www.cse.buffalo.edu/faculty/adrienne/Clas
sResources/ClassDiagramsInANutshell/
CRC cards
•
•
•
•
One per noun / entity / object
Class: Noun is the class name on the top
Responsibility: List responsibilities on the left
Collaboration: List collaborating objects on the
right
– If a class is being used in a collaboration, its card
will not show the collaboration – the user shows
the collaboration
CRC Exercise
•
•
•
•
•
5 card draw
List objects / entities
Make one card for each
Walk through the game
Draw a UML diagram
StarUML
•
•
•
•
•
•
Card
Deck
Hand
Players
Dealer
Game
StarUML Code Generation
•
•
•
•
UML diagram generates code
Can reverse engineer
Link to Diagram
Link to Code