The unified modeling language user guide - Booch, Grady (Array, 1999)