Software Architecture: Social and Organizational Dynamics
Organizational and technical architectures are coupled
This series closing post will explore the last Garbage Can dimension: the decision-makers. And more specifically, on biases and shortcomings of social and organizational dynamics. Spotting them is pivotal in navigating chaotic decision arenas successfully.
📖 Series table of content
Through 4 posts, this series dissects the complex machinery behind architectural decision-making.
- Making Decisions
- Recognizing Scopes and Boundaries
- Architecture Decision Record & C4
- 👉 Social and Organizational Dynamics
Decision Makers’ Journeys 👥
First, a few words on obvious yet valuable insights to start any decision-making processes on the right foot.
As the saying goes, “The only constant is change”, which is especially true regarding one’s professional and personal journey. Life is about experiencing new things.
We all invest our time differently and have unequal growth in every domain. This means that at each level of any organization, people are trying to grasp the scope of their role either because they:
- recently had a promotion
- are looking to get promoted
(and expand the scope of their responsibilities) - just joined the company as new hires and shook up the habits while discovering the culture and career ladders
(with sometimes different role definitions than what was previously accepted by everyone) - are adapting to organizational structural changes
Those points might feel obvious but are easy to lose out of sight, especially in large-scale organizations, including hundreds or thousands of collaborators. Each decision opportunity might bring its share of new faces and include a mix of individuals under a random combination of the above circumstances. So take the time to assess the situation before diving into technicalities (always start with the Garbage Can’s decision-maker dimension before the problem-solution one).
Organizational and Social Shortcomings 🚨
We all have biases; that’s a fact. The only thing we can do about it is to increase our awareness by taking a step back.
These biases are the source of many social and organizational shortcomings, sometimes preventing or hiding major decision opportunities.
Here’s a shortlist of the most recurrent ones:
- Ill-defined responsibilities dispatch
- Stakeholders missing from decision opportunities
- Silver bullet-ing every problem
- Non-technical context is excluded
- Solutions are discussed while problems are poorly refined
- Awareness asymmetry
Let’s peruse them and provide a few tips to mitigate their harmful side effects.
01Ill-defined responsibilities dispatch 🔀
First, the ill-defined dispatch of responsibilities is the most costly and widespread shortcoming. Optimizing the roles and responsibilities is critical in optimizing any decision-making process.
Without clear responsibility boundaries, every decision opportunity will suffer from unnecessary questioning and pile up new layers of unneeded complexity on top of a list of problems, let alone hard enough to solve. Key stakeholders might also be excluded from decision opportunities.
Of course, fixing/building an organization is easier said than done and is a big prerequisite, but some tools exist to reach that objective.
Tips:
- align objectives (OKRs, V2MOM)
- have internal Job Descriptions
- build RACIs (aka responsibility assignment matrix)
- implement a Career Ladder (but know that most of them are broken)
Breaches in the dispatch of responsibilities will inevitably impact decisions and, ultimately, the bottom line.
If you are not in the position to call those shots, bring them to your upper management’s attention. You can’t do your job properly without those.
02 Stakeholders missing from decision opportunities 😶🌫️
Identifying relevant stakeholders is crucial. If key roles or knowledgeable people are missing, the chances for decisions to be ill-fitted, unachievable, or lack ambition will be high.
For decisions to be impactful, teams must own them.
Ownership is the intersection point of Responsibility, Knowledge, and Mandate. Deprive a team from one of those, and they won’t be able to own what they need to.
Alex Ewerlöf (moved to substack) framed the different flavors of “Broken Ownership” well. Any missing item has its corresponding broken ownership archetype:
- Responsibility Only = Babysitting
- Mandate Only = Monkey with a gun (calling the shots)
- Knowledge Only = Coma (no decision)
- Knowledge + Responsibility = Foot Soldier (can’t have the impact they should have)
- Responsibility + Mandate = Gambler (blind commit + production debugging)
- Mandate + Knowledge = Teenager (idealistic decisions)
Tips:
In your next decision opportunities, include stakeholders bringing knowledge, responsibility, and mandate.
Besides, remember that the refinement process/discovery isn’t linear (CF this post). Each new problem or solution discovered, split, merged, or excluded might bring new decision-makers into the decision opportunity. So don’t forget to reassess the stakeholders at each significant breakthrough of your refinement and discovery.
03Silver bullet-ing every problem 🦆
Silver bullet-ing every issue. We all know someone dying to test a new shiny technology, and every problem will do the trick.
It’s not a problem searching for a solution anymore, but the other way around; a solution is desperately searching for problems.
Tips:
In such situations, a few levers can be activated.
The first one is, as always, to spend more time refining initial problems. After drawing a more precise view, the conclusions will point in the right direction and tell if the coveted solution is or isn’t a good fit.
The second one is to establish a list of available options. If a solution fits a problem, it’s essential to know precisely why by comparing its pros and cons with other solutions. If you have a Tech Radar, it might be interesting to search for validated options there.
Thirdly, training for that technology should be proposed to quench the thirst without risking a project’s success.
Note: Also, it’s often beneficial to put things in perspective by reminding ourselves that the tech debt of tomorrow is the shiny tech of today. Implementing a new project with a technology one doesn’t master might be too much to chew. Nobody wants to become the architect of future maintainers’ suffering without valid reasons.
04 Non-technical context is excluded ⚙️
The non-technical context is often excluded from architectural considerations. This excludes half of the parameters and casts decisions into guesswork at best. There is no perfect architecture, only tradeoffs that can be fully appreciated if the context is accurately pictured.
Architectural decisions should be conceived as junction points where every relevant aspect is compiled and used.
Tips:
Several types of context can be pertinent depending on architectural decisions.
- The team and company’s technical context
- The team and company’s staffing projections
- The product’s vision
- The project’s budget and expectations
It’s also essential to frame the current context (current state of the market and your knowledge) for future maintainers to know if the overall context has evolved, thus possibly invalidating your past decision and creating a new choice opportunity.
New technologies may have been released since then, or maybe you’ve missed a solution that future maintainers know about. Having a clear vision is only possible if you record your considered options.
05 Solutions are discussed while problems are poorly refined 💡
Since one or two decades ago, a culture of “bring solutions, not problems” has emerged. The idea hiding behind this injunction is that people bringing only problems can be perceived as lazy complainers who do only half of the job.
But in reality, rushing to solutions wastes even more time, as it potentially mobilizes whole teams for lengthy time frames for implementing the wrong solutions.
Tips:
To spot the right solution, the problem must be well-delimited firsthand. So don’t feel guilty about spending extensive time refining the problem you are trying to solve, no matter the pressure to deliver.
Measuring twice and drilling once will always be the most optimized and cost-effective solution. It also means that being receptive to other stakeholders’ issues (while keeping yours in mind) is a key to finding optimal solutions. In other words, let’s target the outcome rather than the output.
Last but not least, don’t get intimidated by your interlocutors’ potential frustration or awkwardness when trying to deepen your understanding of a problem. Framing problems with finesse and setting a project on track for success is worth facing a few uncomfortable moments.
06 Awareness asymmetry 🎭
Next is stakeholders’ problem awareness asymmetry. Spotting situations involving that issue will grant you the confidence to restore symmetry and align every stakeholder (including yourself).
When a team or a teammate has already spent extensive time investigating a problem, it is common to take shortcuts when presenting it to an audience discovering the topic.
It’s worth noting that this issue is often confused with the “bring solutions, not problems” one. Presenters usually spend more time showcasing their preferred solution to help the audience better understand the problem. However, doing so will deny the assembly the chance to spot subtleties potentially missed during the problem refinement.
Sociological studies have shown that the brain’s cognitive functions include a mechanism combining logical and mythological representations of the world to build mental models. In other words, theory and practice are two sides of the same coin that the brain needs to apprehend complex and abstract problems.
That’s why people tend to involuntarily nurture the problem awareness asymmetry by pushing solutions as examples instead of combining them with refined problems.
Tips:
Again, spotting that you’re involved in a decision arena under that configuration will provide you with the calm and serenity needed to hoist every stakeholder’s awareness at the same level.
To do so, ask every stakeholder to focus on defining their problems and reroute them there if they tend to jump on solutions too quickly. Only once an initial problem is defined should the discussion switch to solutions.
Once done, record the whole decision and include both problems and solutions, as well as their precise pros and cons tradeoffs.
Note: There’s a retro-action of problems on solutions and vice versa; expect the discussion to navigate back and forth between problems and solutions (CF the previous post).
Takeaways 🌯
Everyone is biased, and there’s no point in denying that. Some more than others, but we all are. The only way to mitigate them is to increase our self-awareness and understanding of social dynamics.
There are no magic tricks when it comes to stakeholder alignment. As the saying goes, “In the end, it’s all about people”, so every situation will be unique, and it’ll be up to you to spot the roadblocks obstructing the path to success.
It is common to feel overwhelmed when a discussion goes off-track, where every stakeholder goes in opposite directions, and misunderstandings emerge from asymmetrical maturity levels. Recognizing that you are in a typical Garbage Can configuration can help you remain calm and provide the clarity needed to untangle the situation.