I may be hacking for a short time, but this is how I'm making mine:
1-Plan the hack (story, features, etc...)
2-Make the engine => implement every feature needed for the hack
2'-Test while implementing your features (and eventually correct bugs if you find some)
3-Add everything else after your...