Developing software with UML : object-oriented analysis and design in practice - Bernd Oestereich (Addison-Wesley, Harlow, 2000)