UML 2 and the unified process Practical object-oriented analysis and design - Arlow, Jim (Pearson, 2005)