Everybody knows that agile is not only the way to beat competition, or to deal with the faster evolution of IT, it is also about the changing society. Society is changing, Enterprises are changing, and then architecture will and should also change. Since architecture is about guiding change in a direction and within the boundaries.
I have received many questions from clients on how to position architecture in an agile organization. How to balance architecture as a mandatory rule for teams and the autonomy of teams?
In a separate post, I will discuss the new role of an architect, as a coach.
But first a quick recap of agile and the way you as a stakeholder of a team should communicate, and some positioning of various levels of architecture inside the scope of an organization.
The world is one big network
The below image visualizes the transformation of internet, media, and society from one direction to network communication. This is applicable to a factory with a manager shouting at people what to do, thereby creating labour unions and employee counsels to companies being a collection of autonomous business units. It is also applicable to websites that in their first form where the pure display of information and later on presented the option to leave messages in guest books and forums. Websites nowadays are by default a platform to facilitate communication between the users and not anymore with the owner of the site.
Motivation can be divided into Autonomy, Mastery, and Purpose
The evolution of people and organizations to network communication presented the need for a common purpose. This common purpose provides alignment and reason to exist. So the network has an effect that purpose is needed. Daniel Pink had written a great book in 2009 on this: Drive: The Surprising Truth About What Motivates Us.
In 2014 Spotify translated this into a nice picture that is being used in many companies that are switching to Agile.
Impact on organizations of the evolution to Networks
Networking is also only possible if there is no hierarchy to strengthen the bonds between people. In a network organization empowering is the way to strengthen the bonds between people.
Because everything is connected; planning is really difficult. One extra “node” to a network creates many many new connections and effects. So experimentation is the only way to move forward.
What also is a logical result of a network is that there is no privacy anymore. Since hierarchy is not there anymore but empowerment is to strengthen the network. Transparency on information is also the way to gain trust and communicate. Since privacy needs a controller that grants access to information based on attributes that are arbitrary. Privacy is not only something that cannot be restored since information that has spread the network cannot be retrieved. It also implies that secrets or lies are more difficult to uphold because there are always more people to break the secret then the number of people to keep the secret (otherwise there would not be secret at all).
Detailed impact on your company.
What does this evolution have for effect on your company in more detail? There are now IT companies that provide Maturity Matrix assessments for the impact on your IT department. There are also business companies that are helping companies reorganizing their business organization to adopt this agile way of working. For example Spark at Bol.com that is an implementation of Holacracy.
Architecture and the agile decentralized autonomous organization.
Architecture is the profession of defining the principles, rules, and boundaries in an organization that are based on the purpose of the organization and provides the autonomous parts of the organization a way to cooperate to the common cause. The Enterprise Architect should be the facilitator of the process of defining the purpose and should be the one that helps to define the principles, vision, and way of working together that enables an organization to move forward and to be as a whole more than the sum of the pieces.
Architecture as fractal
Below are the topics that should be an integral part of the architecture, that are applicable to all levels in an organization. When a team discusses the product backlog with their product owner, all of these topics should be addressed in the product. This pattern is also applicable when you want to have multiple teams to cooperate in providing a solution for a business challenge. This pattern is applicable as a fractal to a person, a team, multiple teams, multiple business units, an enterprise and even applicable to an ecosystem of enterprises.
Enterprise Architecture, Solution Architecture and Software Architecture
The architecture fractal applied to various scopes of change is being displayed in the figure below.
Where every team is responsible for the product that is being created, and the solution, program and enterprise architect provide the legal & organizational boundaries and principles this is a way how to organize the involvement of the various stakeholders. This is a pretty big responsibility for the product owner to keep all the stakeholder wishes in balance and away from the team.
Product owner stakeholders
This is an overview of the stakeholders that a product owner needs to manage and the enterprise, solution and program architects are just one of the stakeholders involved. Although they are a special type of stakeholder. Architects need to coach the team and Product Owner on how to balance the various stakes of the various stakeholders and are expected to guide the stakeholders how to work together forward to the organizational purpose.
Agile DevOps Team
To make the overview complete, this is the minimal buildup of an IT Agile DevOps team. My prediction is that the end of next year the new buildup will be with two business engineers (or marketers) included in the team.
If you still have any questions on how to position architecture in an agile organization, please feel free to reach out to me at firstname.lastname@example.org