Object Oriented Software Engineering, using UML Patterns and Java - Brugge (Bernd) (NEW DELHI PEARSON)