An ex-colleague, Plamen Neykov, once said in a meeting that he believed in a 'fractal organization' (we worked in the IT department of an investment bank). The phrase has stuck in my head ever since; what he meant was that the IT department knew about development, testing, support, infrastructure; the development people mainly did development but also knew about (and did some) testing, support, infrastructure; the infrastructure people did infrastructure but also knew about (and did some) development and testing; and continuing down through the levels of the organization, that everyone, no matter how specialized, should know something about everything else, and ideally do some. For example, developers should know about testing, about support, about infrastructure etc. Of course these days testing is (should be) part of every TestDriven developer's job. But along the same lines, assuming the definition of architecture I've suggested in RoleOfArchitecture, I think everyone is an architect. Certainly every good developer is an architect. -- GaryCasey