Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design - LARMAN (Craig) (New Delhi Prentice Hall of India New Delhi, 1998)