Applying UML and Patterns 3/E - Larman, Craig (Vidhyanagar Pearson, 2006)