What does an Agile Evolution mean?
What are the Structure driven, Practice driven and Culture driven components in a transition towards the Agile mindset?
Create — Teams & Structure
Self-Organising
The smallest unit of any Agile organisation is a self-organising team. It is therefore quite essential to design and build self-organising teams that fit to the context, which are enabled to PULL work, rather than having a command and control culture where people are assigned (PUSHed) tasks. In a PULL culture the teams would achieve
- Better speed of delivery
- Higher focus on quality
- Increased self-satisfaction
- Reduced management overhead
All members of the team should go through Training, Coaching and Mentoring inorder to develop self-manageability
Focused and Stable
Instead of fractionalizing people across projects where specialised skills are needed, a better level of collaboration can be achieved by creating stable cross-functional teams that work together on complex business problems. It is very important for these teams to be working focused on only one problem at a given instance.
Stakeholders are happiest with teams who can meet their expectations in a timely fashion. So, it is important to have stable teams with stable backlogs to improve the predictability
Collaboration
People with the necessary problem solving skills are to be brought together to form stable teams. A high amount of care is needed when creating these structures and defining their interactions within and across. Else, we could end up having a functionally (focused) siloed team with handovers and a high amount of overhead created by various sub-processes within.
Clear focus towards collaboratively delivering business value would help define highly optimised interactions, when creating team structures
Having developed various team structures, optimised around interactions like collaboration, service-driven and facilitation, I am sure design of teams and their interactions is quite necessary to create the right culture within. This helps us to identify any sub-optimisations and refine the structures and their interactions.
Design — Practices & Governance
Establishing a Flow
Organisations often fall into the efficiency trap, needing them to do heavy weight upfront planning, trying to discover & nail down details with a goal to achieve high degrees of efficiency. Pretending optimisation in the name of efficiency, where ideally we are trying to give a sense of safety is a common pitfall. Instead of focusing highly on efficiency, it would be more effective to establish a (working) Flow where we let the details and design emerge.
Establishing delivery flows and then optimising them iteratively through data driven decisions, would create highly effective delivery teams
Continuous Exploration
Traditional delivery orgs have created a fake sense of predictability by requesting business to commit to a scope, but due to the nature of the current markets and problems businesses face in these markets it is no longer possible. The rate of change has changed exponentially, businesses need to continuously explore, learn and change by establishing shorter feedback loops with their customers.
Customers are now the centrepiece of the puzzle, while business teams and delivery orgs are working hand-in-hand to continuously explore, innovate and solve customer problems
While creating structures and designing interactions are the first step towards agility, establishing a flow and creating the culture of continuous exploration through practices are the key to establishing and sustaining agility. Through data driven decisions on bottlenecks, sub-optimisations, usability, etc. the self-organising mindset is developed and sustained.
Generate — Outcomes & Culture
Create Optionality
Quite often (even now) in most companies, demand comes in large batches. The demand manager or the business owner would not understand or be capable of chunking it smaller. Smaller batches provide implementation optionality, faster feedback loops, increased quality, better predictability and higher transparency
Optionality gives us the possibility to validate our hypothesis and maximise value for the product
Prioritise Value
In the past prioritisation was a networking game and for most of the time neither efficient nor effective. Understanding the value of the product to be developed and the costs of delay will help prioritise through value comparison and will develop an outcome focused mindset within the team.
Value based prioritisation helps assess outcomes based and improve the time to value