Using UML : software engineering with objects and components - Stevens, Perdita (Pearson Education Inc., 2003)