Star UML and CRC Cards Pepper
Goals CRC StarUML Code Generation
Good Class Design Cohesive No unnecessary coupling 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: Relations Name / state / behavior Relations Has a Knows a Uses a Is a Great Explanation matched to code http://www.cse.buffalo.edu/faculty/adrienne/ClassResources/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