Refactoring: Improving the Design of Existing Code
Fowler Martin & Kent Beck & John Brant & William Opdyke & Don Roberts
Addison-Wesley Object Technology Series (1)