Object-oriented modeling and design with UML - Blaha, Michael; Rumbaugh, James (Pearson Education, 2005)