Software architecture and design illuminated - Diaz-Herrera, Jorge L; Author (Jones and Bartlett illuminated series, 2010)