Systems Thinking for Sustainable Delivery
Often, problems in software delivery persist despite introducing agile, doing retrospectives, investing in developer training, or team reorganisation. The real issues are not the individuals or the teams. It is the wider organisational system: information flows, feedback loops, incentives, decision-making processes. Because these factors are less visible than the concrete symptoms, we tend to make local changes that do not change the underlying system or make things worse.
Symptoms of deeper organisational issues that we have observed at our clients:
- The customer cannot keep up with the development team.
- Introducing agile or another way of working does not lead to better outcomes.
- Local improvements that seem to make sense make the whole system worse.
- Ongoing friction between product, tech, and business.
- It’s challenging to get a team to adopt good practices like unit testing or continuous delivery, and it is not clear if this actually solves the biggest problem?
- Scaling teams does not improve outcomes and even slows down delivery.
This workshop helps managers and technical leaders to understand the underlying dynamics and find effective, sustainable interventions.
Our approach
In our work, we have noticed that changing a software development method changes the organisation. While several development methodologies describe a recipe for practices that worked in a specific context, the exact same recipe is not guaranteed to work in other circumstances.
Along our journey we have discovered and mastered a number of useful thinking and doing tools that help us become better reflective practitioners and find answers to the above questions. These tools help us in making sense of what’s happening in organizations.
We have applied these perspectives and tools ever since we started with introducing agile development and eXtreme Programming. We quickly found out that things don’t go by the book and organizations need tailored approaches, instead of one-size-fits-all methods.
Benefits
This course helps you to effect significant change in small, controllable steps and prevent local optimization. Understanding why your process works the way it works helps you see how a practice is effective in its context. It also helps your organization grow its own way of developing software:
- find interventions that stick;
- create a shared language between product, tech, and business;
- move from firefighting to sustainable change;
- find what works for your organisation, instead of copying what works for others;
- scale delivery not by adding more people, but by working more effectively.
Systemic insights are also crucial for leveraging AI in software development. AI amplifies current practices, good and bad. Taking a systemic approach will help you make more impact with AI.
Learning objectives
After attending this workshop, participants will:
- be able to zoom out and view software organizations from a different, systemic perspective;
- be able to find underlying structures and feedback loops that feed persistent, messy team problems;
- understand why and how different ways of organising software delivery work and why they sometimes stop working effectively;
- be able to adapt change initiatives to the specific organizational context;
- understand how change happens in individuals and organizations, and what this means for steering a change process.
Outline
- Introduction to systems thinking, with hands-on exercises
- Cynefin sensemaking framework, for making better decisions (theory and exercises)
- Promise is Debt, a systemic perspective on technical debt (presentation)
- Capturing system dynamics and feedback loops, using diagrams of effects (exercise)
In the 2-day version of this workshop, we will go more in-depth in the Cynefin framework, and we will cover Wardley mapping, a method for creating situational awareness about tech and product from a systems’ perspective.
For an in-house workshop, we will use actual examples from your organisation. It is also possible to tailor this workshop to a specific challenge in your organisation.
Prerequisites
This course is for managers, project leaders, IT customers, and consultants - anyone who is trying to bring change in their organisation. We expect participants to have experience with software projects.
This workshop works best if there is a mix of engineering management, product leads, architects, and engineers.
Practical information
- Duration: 1 or 2 days
- No laptops required