Architecture Decision Records
Suresh Randadath
Telecom Solution Delivery | Architecture Practice | Earth Evangelist
While formulating the Architecture of a software solution, many decisions are taken after careful consideration of various factors that originate from the customer, Architect's tacit knowledge and the platform capabilities. But the rationale for taking a given decision is seldom documented. In other words, the design philosophy behind the architecture is rarely documented. While existing architects know, having worked closely with each other, what that philosophy or rationale was, if the architecture needs to be owned by another architect and designers in the future, they will have no clue about the thought process that went behind it. When an Architect leaves the organization, that knowledge goes along with the individual. Organizations cannot afford to let this happen. Many times the knowledge transfer exercise that takes place when an architect leaves the team or the organization, is very reactionary. An architect can easily miss certain important aspects that occurred in the very early stages of the delivery. As a result, a future architecture team who inherits the architecture will struggle to understand why the architecture is designed in a particular way.
The design philosophy behind the architecture is rarely documented.
Architecture Decision Records is a way by which this can be avoided. This may be an independent repository that architects can maintain or it may be part of a Solution Architecture Specification.
At a minimum, following details may be captured:
领英推荐
But why is this not followed or done effectively? There are multiple reasons:
A software solution leading a healthy life is as important as it being born healthy. That is possible only if architects enable the inheritors of the software to read the former's mind to understand the philosophy of the architecture.
Lest the unspoken architecture philosophy ruin the software.
Enterprise / Solutions Architect | AWS, Agile, TOGAF 10 Certified | MBA | Ireland Stamp 4
1 年To maintain Architecture Decision Records, I believe, we need to have an ARB (Architecture Review Board) to drive/implement this. Very few designers document the alternatives/rationale of the selected approach as part of their day to day work. My view to improve this, is to: (1) Have a centralized ARB to drive this process/review it. While auditing one would be able to question the decision made/prescribe an alternative. (2) Have a centralized portal, with a dedicated section for each project. (3) Region-wise architecture forums to access the above and make discussions. (4) Avoid archival of discussions as is the case nowadays with SharePoint/mailboxes. (5) Provision for a buffer to realign the design decisions post a review by the ARB. (6) Tough to implement this where people don’t share their experience. An ARB review will push them for it and also highlight the knowledge of the people involved in the architecture decision. This could also bring transparency in their skills assessment for performance reviews too. We need to bring in a culture of sharing and caring.