“Minimalist” Architecture development

“Minimalist” Architecture development

Introduction

The new age enterprise application development is very challenging and poses significant design/analysis thinking before one could develop the new system. In the process, the architecture/design team would carry many architecture/design workshops and create architecture descriptions. But the problem with these teams is that descriptions are very elaborative in nature with lot more granular details covering existing “As-Is” information rather than “To-Be” system. Thus, creating lot more divide and less buy-in from project teams.
This blog would discuss how to adopt minimalist architecture description so that it will have all necessary information from the Sprint-1 onwards to kick-start the development. As a rule of thumb, the architecture description should be less than 20 pages. If we try to combine many architecture views/stakeholder’s details, it will be cluttered and understanding architecture decisions would become difficult.

The “minimalist” description

At the bare minimum, architecture description shall contain:
1. Architecturally Significant Requirements (ASR) – From the requirement perspective, scout all architecturally significant requirements and prepare catalog out of it.
2. Architecturally Significant Decisions (ASD) – Would contain decision taken for each of the ASRs with the rationale behind for each such decision.
3. Architecture Views – Shall contain the solution, technology, data and deployment views. In addition, each view can briefly highlight the technical spikes identified / outcome of such exercises to validate decisions.

Architecture development steps:

In order to achieve the minimalist useful architecture descriptions, an architect can follow ordered development steps. Following mind map would describe these steps (Personally I prepared this mindmap and use this as quick reference guide!!)
Depending on the individual application requirements, one can omit the steps – if it not found to be so useful. But in general, following steps would ensure that all critical steps under architecture design are covered.



Conclusion

As saying goes “less luggage more comfort”, carrying heavy architecture descriptions would be the pain for all the members involved in the engagement. So it is imperative that architecture teams would adopt “minimalist” approach as described above so that these artifacts would look neat and tidy with significant key takeaways.