Component-level programming - Maurer, Peter M. (Prentice Hall, 2003)