Creating a self-organizing team is one of the hardest challenges in Agile - or rather the challenge lies in transitioning a team from its current behaviors towards one that is self-organizing. “The best architectures, requirements, and designs emerge from self-organizing teams.” Why is this Agile principle important in practice, how is self-organization related to the best architecture and structure? And how shall you apply these Agile principles to running a digital organization?
Self-organization proactively looks for new ideas and feedback: Self-organization assumes that people in the organization value diversity and actively seek to harvest the best views and contributions from everyone involved. Leaders in self-organizing communities start from the premise that their ideas are not necessarily "best" - and actively seek to form a shared understanding of the situation, the root causes of impediments, the options for countermeasures, and the most promising plans for improvement. In this way, decisions are made with optimum information, as best possible at the time. Therefore, the best results come from self-organization.
This principle implies you don't solve problems by hierarchy, but by engagement. It also tells us you don't solve problems by decree but through decision + evolution. Reaching a "starting position" quickly is agile. Trying to flawlessly fright to begin with is not. You make a decision quickly enough and start vetting the idea by producing products. If it turns up sub-optimal, you will, as a team, change it. In an agile world, we'd try not to impose that decision on others, but some people need less subtle hints than others, and of course it takes discipline to apply the agile principles in decision making. And then, there's nothing saying that we cannot all have some managerial skills and a lot in agile suggesting we should all have some managerial skills.
The necessary condition for the self-organization is to treat the team as an atomic unit. You assign work to "the team." You hold "the team" accountable. You support "the team" with time, talent, scope management, etc. Team members vet each others' ideas and synthesize or choose the best among the alternatives they have. Any decision that doesn't help them to build and deploy a great application will get torn down and replaced with one that does. They won't tolerate solutions that suit one member's sense of architecture, but don't actually help build and deploy a solid app. The architecture will "arise" through frequent/constant deciding, validating or invalidating, experiencing, and improving. To see its value, let's examine what the absence of self-organization means. The absence of self-organization means we assume that in any organization there is a despot (a ruler with absolute, unlimited power) that gets to decide "what's best" - regardless of whether the views of this one person actually reflect a true optimum for the organization.
The "architecture" of a system is the set of decisions that shapes it. These decisions influence the structure and flow of information through the system. That said, a decision team makes may affect other teams or the organization as a whole. However, the decision must be reviewed and confirmed by all those who are affected by the decision. So, every decision a person makes leaves a trace, or the decision is not worth making. Perhaps a bit of code to maintain; perhaps a bug that is or is not there. Even the most rigorously controlled team members will be making these decisions that to some small degree affect others. A big question the team leader can ask is "How intuitive is the system?" - this is probably a larger class of decisions that the team may be allowed to make - ones that impact how intuitive the system will be. Up another level - can one team make decisions that impact the structure of the system? How many levels up can you go? It depends on. On occasion, decisions made by single teams may open the door for the whole organization to move into a completely new line of business.
It is a team culture that needs to be enabled and created and protected via the self-organizing team. The diversity of ideas is necessary for collaboration. Openness and mutual respect, and therefore the ability to challenge each other is required to bring great team results. Self-organization is vital. Without it, we ignore the wealth to be found in diverse perspectives. We fail to notice impediments and then waste lots of time in fixing preventable issues. We erroneously believe that some people's views have value and other people's views are insignificant. If the people that make decisions about the system maintain a limited perspective, then they will inevitably miss significant aspects. Many (if not most) of their decisions will be sub-optimal or possibly even disastrous. If the decisions reflect friction between personalities or departments rather than a harmonious understanding, the results will be equally disappointing. If the people making the decisions actively seek to form a broad understanding, then they will be able, ready and willing to delegate the job of exploration and elaboration to the people closest to the issues of greatest significance. When you visit with the people closest to the key constraint in the system, you learn how to experiment in order to achieve an optimum outcome.
Self-organization is an emergent property of a team or community. Self-organizing teams are those that are tied together by a common purpose and are given the freedom to make decisions that will help them meet their objectives! Management plays a vital role here by constantly striving to give the team enough room manage their own work, affect changes, collaborate and be responsible for the outcome of what they set out to produce. It reflects the mutual respect that people show one another, and the commitment of leaders to serve the team rather than just "direct" or "manage" it. As a team member, you participate in self-organization by speaking up. By having the courage to share your views, even if they may be in apparent conflict with the prevailing opinions at the time. If the team as a whole doesn't fully buy-in to this concept, it will remain a group of individuals without a common purpose and will struggle to self-organize.
Self-organization directs the individual perspectives into a creative, adaptive, iterative and incremental problem-solving approach that helps communities to uncover optimum courses of action. It enables the culture of engagement and advocates continuous improvement.