Assignment 3, Part 2: Refactoring

Due date: February 10th 5:00pm

Informatics 122

Software Design II

Winter 2015

Professor Emily Navarro


Description
Use refactoring to improve the design of your implemented MakeAGraph. You should apply at least 2 refactorings. Each refactoring should be either from the lecture or from one of the Websites/books I mentioned in the refactoring lecture. Each use of a refactoring should be carefully motivated in a brief accompanying document.


Deliverables
Each individual must turn in:

1. A printed copy of their restructured code (just the classes/places where refactorings were applied). Please highlight the lines that were changed.

2. A printed document describing:

* The motivation for each refactoring

* The impact each refactoring has on the design (i.e., how far reaching is the change to incorporate the refactoring?)

Both of the above can be combined with part 1 of this assignment, i.e.,

* Hand in one copy of your restructured code (with patterns and refactorings applied)

* Hand in one accompanying document (addressing both patterns and refactoring)


Grading
You will be graded on three things for Assignment 3-2:

1. Usefulness of the refactorings

2. Rationale

3. Level of design understanding shown in your refactorings and rationale