To employ Scrum and Agile principles effectively for managing over two hundred developers working on a critical product needing an overall architecture and integrating design, which approach is best?
A) Have the best designers and developers create an appropriate design and architecture. Include design models that the rest of the developers will use while implementing features.
B) Form one or two teams of the best developers to create a foundation representing non-functional requirements and high-value functions, then expand the teams using the shared architecture.
C) Design and instantiate an appropriate Service Oriented Architecture (SOA) before beginning feature development, then train Development Teams to use the shared SOA in their feature development Sprints.
D) Form a team of architects and designers to serve as consultants to other Scrum teams as integration questions arise during development.