1. Embrace the Agile Manifesto and SAFe. Make yourself available in the Gemba daily.
2. Define high-level architecture ONLY. Do not try to create a design.
3. Provide the team with a block diagram of the components in the bounded context. See Domain Driven Design (Evans)
4. Do not provide additional information such as attributes of the components.
5. Create rules for decentralization of the Architecture. How a component is added or changed, for example. Communicate this clearly. 6. Embrace simplicity in the technology stack. Do not duplicate components. Create abstraction layers to components for which the team doesn’t own but work closely with the teams to understand and design the contracts.
7. Work hard to understand the “core competency domain” for the enterprise and strive to “buy” solutions that are not part of the core competency unless doing so provides strategic advantage.
8. Work closely with the teams throughout the lifecycle, perhaps creating an Architecture COP. Write code as a team member.
9. Move all the DBAs to Cross-Functional teams and embrace Test Driven Database Design.
10. Testable systems emerge, by definition, thru Test-First Practices and intentions. Give teams the time to do the job.