Steven J. Matsker, William C. Wake Design Patterns In Java - Addison Wesley Longman New Jersey 2006 ISBN: 0-3213-3302-0