Software Paradigms - Kaisler, Stephen H. (Wiley-Interscience, 2005)