Vandana Bajaj Advisor: A. Cass Winter ‘06 Software Design Guidance A Study of Its Effectiveness and Extensibility Vandana Bajaj Advisor: A. Cass Winter ‘06
“Design guidance?”
Previous Work “Design patterns” (GoF, 1994) Guidance tool (Cass et al.)
Questions Can we provide design guidance with another pattern? How does it compare?
Rules Process Tool
Abstract Factory rules warning: "class $c2 needs to create class $c4" help: "each Concrete Factory needs to create a Concrete Product" … warning: "class $c4 needs to create class $c2" help: "each Abstract Product needs to have a Concrete Product create it" … warning: “class $c3 needs a create method" help: “AF needs to have a create method for each AP" … warning: “class $c2 needs to create a CP" help: “need a CP for each create method in each CF" … warning: “class $c2 should override some method in c" help: “CF’s create methods should override those of AF" …
Abstract Factory process
Evaluation My own testing Experiments like before
Experiment Setup CS 250 students 2 groups New AF design task Quality metric
Future Work Finish rules Experiments Analysis