http://www.bell-labs.com/user/cope/ArchitectureAsMetaphor.html