The best answers to the Riddle of the Great Sphinx that I can offer are these.  First, build a framework to implement the key elements of your architecture.  One's architecture should not merely be a story one tells about the design of one's application, a set of choices implicit in one's application.  No: it should be a working framework of code that you build your applications on top of.  Having such a framework serves two good purposes.  It provides a way for the architect to constrain how developers write their code, saving the architectect from doing lengthy code-reviews that no architect really has the time to undertake: the architect simply confirms that the code is using the framework.  More importantly, the framework provides the foundation that will be progressively upgraded as the elements of the development plaform advance. 

 

The second element of the answer has to do with organizing your development team . . .