Fowler, M. Refactoring: Improving the design of existing code - Boston Addison Wesley 1999 - xxi,431p. - Addison-Wesley object technology series . ISBN: 0-201-48567-2