Lean Architecture Principle #1: Always involved
This is the second of a series of blog posts discussing Lean Architecture principles. Each post will discuss one principle and applying these principles will result in an architecture (process) that is better connected to the business, better able to deal with change and more cohesive. The first principle that we discuss applies to the architect role and is called "Always Involved". The architect role is not limited to one project phase or even one project, a good architect takes a much broader perspective. The Lean Architect constantly communicates with all stakeholders (from business till operations), plays an active role in running projects, and ensures that lessons learned in projects are known and where applicable used in other projects.
We probably all know examples of architects that are not connected to the business objectives or to the projects being executed in an organization. The architects get an assignment from a project manager, isolate themselves in an office, work for months discussing with each other (but not with business, project, operational maintenance or other stakeholders) and produce a 100+ page document containing their perfect architecture. After delivering the document they abandon the ship and await a new assignment. This is an extreme case (although it does happen in reality), but variations in which the architect is only involved at the start of a project, or only communicates with one of the stakeholders are very common.
Always involved means that architects are involved during the whole lifecycle of a project, from the initial inception of ideas up until (and including) when the deliverables of a project are in production. The degree of involvement may vary depending on the project phase, but architects always stay in the loop. The architects feel responsible for the business goals and are committed to deliver value such that these goals are reached. They are supporting multiple projects and constantly create alignment between stakeholders of all projects and takes lessons learned in projects into account, ensuring that other can learn from it.
How does the principle contribute to the 3 C's of architecture? A better cohesion is achieved since architects take an active role in all projects. This enables him to ensure that projects learn from each other and that similar problems are solved in a consistent way (e.g. process orchestration). Connection with organizational goals (both business and project) is improved since architects interact with the business and project side on a regular basis. This forces architects to understand these goals and enables him to translate these into IT goals. Architects also ensure that the other stakeholders understand the reasoning for these IT goals. Also, due to the constant involvement in projects, feedback, lessons learned, are immediately incorporated in the architecture vision. Changeability is improved because architects know what parts of the business are most likely to change, he can - together with other stakeholders - make decisions that are facilitating this change or at minimum not creating upfront barriers that would make responding to these changes hard.
What does it bring the organizations when the architects are always involved? First: Priorities are set correct. Both from business and project side architects are fed with priorities and they can now make a balanced decision: on what should they focus now? Impediments that prevent (or shortly will) projects from making progress are on the architects radar. So are the latest market or organizational developments from the business side. Because the architects are constantly fed with information from all stakeholders and results of choices made earlier by themselves, subsequent decisions will be based on real world facts/experience and not on theoretical assumptions.
This was the second in a series of blog posts on Lean Architecture principles, the next one will follow in about a week.