Agile Coaching Roadmap
The Agile Coaching Roadmap is a tool to help Agile Coaches to manage expectations. Organisations who are are new to Agile ways of working are often obsessed with detailed planning. This roadmap creates a low maintenance plan to service the needs of stakeholders who want visibility of activities.
How to use the roadmap
First of all, you need to recognise that you can’t change everything overnight. Each organisation has a different pace of change so trying to exceed this pace will cause you problems.
From the list below, populate the roadmap above by categorising the practices into the sections of the roadmap. ESTABLISHED means practices that are in place and working well for you. NEXT mean what practices are you going to implement next. FUTURE means what practices you invisage implementing at some point in the future. EXPLORE means practices that you’d like to explore as you don’t yet understand but they sound interesting. IGNORE means practices that you’re definitely not going to implement. Feel free to add any practices that we don’t include in the lists.
To facilitate a session with a group of people we’d recommend the following steps:
- Brief the audience on the roadmap format. (5 mins)
- Ask them to work as groups to populate the sections of the roadmap from the list of options below. If they have additional practices to add not covered below then this is fine. (20 mins)
- Ask the groups to turn the page over and now write “So what?” as a heading. They then need to list out all the expected benefits or changes in behaviour they expect to see from introducing the practices they’ve suggested.
- Get each group to present back their key points to the group.
Limit Work in Progress (Limit WIP) – limit your wip to decrease lead time, reduce idleness, and reduce stress.
Visualise Blockers – visualise and manage blockers and impediments.
WIP/Done columns – to create a pull system and establish a Kanban.
Upstream Kanban – visualise your upstream demand for better decision making.
Adaptive Planning – empirically based, realtime updating of burn-up chart to communicate constant and clear delivery expectations.
Small Batch Size – all work items broken down to a similar level of granularity.
3 Amigos / Story Kick-offs – for each work item going into development, the work item is discussed by a cross functional team to ensure a shared understanding.
Story Point Estimation – user stories are estimated using story points.
NoEstimates – work items are sized appropriately but not estimated.
Cycle time metrics – measures and analyses variation and distribution of cycle time.
Sprint planning – uses a 2-4 week planning horizon to realistically manage expectations.
Just in time planning – work is broken down, sized, and elaborated not too early, not too late. Story detail is written not too early, not too late.
Scrum Daily Standups – 3 questions, what did you do yesterday? what are you doing today? are there any impediments? Focused on individuals.
Kanban Daily Standups – walk the board from right to left. Focused on the work.
Replenishment Meeting – established policy to replenish the team with demand.
Measure Outcomes – progress is tracked against business outcome.
Measure Output – progress is tracked against team output.
Retrospectives – the team regularly analyse and adapt their ways of working.
Showcases / Show & Tell – the team get feedback from stakeholders and customers regularly.
Kanban Classes of Service – for work item types expedite, standard, intangible, time bound.
Cycle time Distribution – to understand the predictability of the team.
Cycle time Scatter plot – to understand predictability of the team over time.
Team Throughput – to see the frequency of delivery from the team.
Escaped Defects Metric – to gauge quality and drive continuous improvement.
Defect Root Cause Analysis – tracking and analysis of defect causes to drive continuous quality improvement.
Version Control For All Production Artifacts – all delivery assets stored under source control.
Continuous Integration – uses tools such as Jenkins to automatically build upon each commit.
Continuous Deployment – ability to deploy software to any environment (including live) in an automated fashion.
Build Monitor – rapid feedback to all team members when the build is broken.
Peer Review of Production Changes
Proactive Monitoring of the Production Environment
Automated Acceptance Testing – a set of automated tests that can run on demand or as part of a build pipeline.
Pipelines for infrastructure as code
Unit Testing – automated unit tests.
TDD – Test Driven Development.
BDD – Behaviour Driven Development.
Coding Standards – static code analysis tools in place.
Collective Code Ownership – no silos within the team. Everyone on the team can work on all areas of the code base.
Refactoring – understands how to and the importance of refactoring code.
Emergent Design – YAGNI approach to software design.
Mob Programming / Mobbing
Self-service infrastructure configuration
Automated infrastructure provisioning
Integrated Change Management
Dependency drift fitness function
A/B Split testing – this include multi-variant testing
Web Analytics – having the tools in place and access to them
Data Analysis – having the tools in place to understand user behaviours.
Product Vision – do you have a clear product vision?
Product Roadmap – have you communicated the implementation of the product vision using a roadmap?
Balanced Scorecard – how do you measure the success of the product or service?
Product Canvas – a useful tool to understand the product.
Service Canvas – a useful tool to understand the service.
User Personas – used to represent your most common users.
Fit for Purpose – a Kanban concept to understand if a product or service is meeting the needs of all stakeholders.
Prioritisation by Weighted Shortest Job First (WSJF)
Prioritisation by Effort / Value matrix
Prioritisation by Kanban ESP Risk Framework
Cost of Delay – do you calculate the cost of delay for new work items or features?
Story Mapping – is used to provide a simple overview of the entire scope of the work at hand.
Impact Mapping – a lightweight technique to rapidly understand the Why, Who, How, What of a feature.
Vertical story slicing – stories are sliced from the UI to the Data layer, not from the UI to the UI.
Prototyping – is used to rapidly gain feedback from end users.
Gorilla Testing – is used directly engage your target users face to face (often in a public setting).
Product Design – techniques to consider all aspects of designing a product.
Service Design – going beyond product and looking at all aspects of service design.
User Testing – real end users are consulted at every stage of delivery for feedback.