The unified modeling language user guide - Booch, Grady (Addison-Wesley object technology series, 1999)