Due: Friday, March 19, 9pm

Submission: Submit refactoring.md on Handins.

Refactoring Week

Following a student request, this milestone will be dedicated to refactoring and fixing outstanding technical debts. You can use this week to improve your code, fix designs, discuss ideas with us, or to just take it easy. We only ask the following.

Before starting any refactoring work

  1. Create a branch in your Github repository, called p6-refactoring. You can do this via the Github web interface or using git checkout -b p6-refactoring and then pushing all branches using git push --all. Use this branch for any refactoring commits. Feel free to fork off more feature branches, but merge into p6-refactoring at appropriate points.

  2. Start refactoring.md and write down a brief plan of what you’d like to achieve: which parts of code do you want to improve, what design changes do you envision. A quick itemized list should do.

At the end of the week

  1. Merge p6-refactoring into your master branch, but do not delete it.

  2. Write up a brief summary of the work you have performed in refactoring.md and submit it to Handins. If you use Git well and write good commit messages, this should be relatively easy. But please do not just copy paste your git log into the document. Also include any outstanding issues you would still like to address. The report shouldn’t be longer than 3 pages when printed. This is not a hard limit, but if you are writing much more or spending many hours on this, I recommend (safely) spending some time outside instead.

What if I don’t have any refactoring work to do or just want to take a break?

That’s okay. Please still submit a report to Handins saying as much.

Grade

You will get credit for following the instructions here and for submitting a “best-efforts” report. In other words, pretty cheap credit.

refactoring.md outline

Feel free to copy and paste this as a template:


# Milestone 6 - Refactoring Report

**Team members:**

**Github team/repo:**


## Plan

List areas of your code/design you'd like to improve with brief descriptions,
anything that comes to mind. Tip: translate this list into Github Issues.


## Changes

Summarize the work you have performed during this week.


## Future Work

Summarize work you'd still like to do if there's time. This can include features 
you'd like to implement if given time.


## Conclusion

Any concluding remarks.