CS 30700 Lecture Notes - Lecture 9: Whiteboard, Serval, Class Diagram
Document Summary
Announcements: design document dues friday 11:58pm, check your documents into your repository. Lecture 09: uml wrap up, design patterns. Identify a first set of candidate classes: add associations and attributes, find generalizations, list the main responsibilities for each class, decide on specific operations. Iterate over the entire process until model is satisfactory. Identifying classes: developing a domain model leads to discovery of classes, when you work on the ui or architecture, one tends to invent classes to solve a design problem, reuse should always be kept in mind. Attributes: look for information about each class that must be maintained, nouns rejected as classes may make good attributes, attributes should generally contain a simple value. Allocating responsibilities: a responsibility is something that the system is required to do, each functional requirement should be attributed to a class, all responsibilities for a given class should be clearly related.