Use case driven object modeling with UML: theory and practice - Rosenberg, Doug (The expert's voice in UML modeling)