Object-Oriented and Classical Software Engineering - Schach, Stephen R (McGraw Hill, 2011)