Free White Paper: Agile Wars – And How to Avoid Them
At the heart of Agile, we value “individuals and interactions above processes and tools”. And yet for many years, the various Agile approaches appear to have been at war with one another. All too often, Agile is offered as a binary choice (“you are either agile or notagile”), together with the recommendation that one Agile approach (usually the one being “sold in”) is all you need. I have also often seen a move to oust the established Agile approach with different flavour of Agile, regardless of how well the incumbent Agile approach is working – a “My Agile is better than yours” mentality. This all seems a long way from our original intention that Agile should be a collaborative, cooperative (and pragmatic) approach, targeted at delivering the best solution for the customer.
2. A Different Way of Thinking
Let’s look at this from a different starting point. Why would you limit your choice to a single Agile approach, when there is an opportunity to create a “best of breed” for your organisation by blending Agile approaches together? Every organisation is unique, although there will always be groups of organisations which face similar issues. So it is unlikely that the same single Agile approach will be equally suitable for a technology-focused software house, a complex product organisation, a global pharmaceutical organisation, an engineering manufacturing organisation, and a small startup company. Even inside a complex corporate organisation, the style of Agile may differ between different areas, as the issues faced are entirely different. I have run Agile transformations in large complex corporate organisation for many years, and for the vast majority of these the optimal solution is to create a “blended agile” approach – to ensure that the style of Agile being used addresses the specific issues for that particular organisation.
3. The Starting Point – A Simple Understanding of the Agile Options
In order to make informed decisions, a good starting point is to have a simple view of the pros and cons of the various agile approaches. And although there are now probably 100 different agile “flavours”, I am going to focus here on the most commonly adopted ones, and highlight some of the obvious strengths and weaknesses. This white paper is intended as a simple starting point to support decisionmaking for those who are not Agile experts. It is not intended as a detailed comprehensive analysis of each Agile approach, as full details are available elsewhere.
4. Some Basic Concepts
The information below refers to some basic concepts referred to in this paper:
- Solution – the solution being delivered. This may be a business change or a new way of working. The solution may or may not include software, but it is not normally software alone, since new software also brings with it changes in the supporting processes.
- Team – this refers to an agile team of “do-ers”, the engine room for creating the solution.
- Project – this is a piece of work that has a defined beginning, middle and end. An intrinsic way of working for the majority of complex corporate organisations (but not the only way).
- Continuous Improvement – also sometimes called “Business as usual”. This is work that is on-going, with no defined end state. For example, provision of on-going support activities.
5. Agile Approaches – Basic Pros and Cons
Scrum describes a simple team process and is predominantly IT focused in the way it is used, although it is not limited to IT usage. Scrum has been around for many years. It is the most well known and popular of the Agile approaches.
The Scrum sprint cycle
- Very simple to understand (3 roles, 3 ceremonies, 3 artefacts).
- Can be described on a single page, which makes it easy to “sell”.
- As a team-based agile process it is excellent, it works well and it is a relatively easy starting point for Agile at the team level.
- The underpinning Scrum values: commitment, courage, focus, openness and respect.
- Scrum empirical process control: Transparency, Inspection and Adaption.
- Scrum has no concept of “project”, which makes it difficult to clarify in advance what the end result will include.
- The “Product Owner” role – the single “business” role” encompasses a lot of responsibilities, from high-level decision making to low-level day to day decisions.
- Finding one person with the knowledge and availability to cover all of this is often a problem.
- No recognition of the work needed in the early stages to create the starting point for working (e.g. to create the initial Product Backlog).
- Scaling Scrum (the “Scrum of Scrums” concept) does not provide “project” thinking.
5.2 SAFe (Scaled Agile Framework)
SAFe supports building large, integrated solutions that typically require hundreds of people or more to develop and maintain. It is growing rapidly in popularity.
The SAFe big picture
- Excellent for coordinating complex technical work being delivered by large numbers of people across multiple teams.
- Defines 2-4 levels of working: “Team” and “Program” (continuously delivery pipeline utilising an agile team-of-agile-teams), plus either or both “Large Solution” and “Portfolio”.
- Very limited information around business engagement.
5.3 eXtreme Programming (XP)
XP, as suggested by its title, focuses on providing software engineering techniques and best practice for developers. In practice, XP is generally used in conjunction with Scrum – to the point where many developers are unsure where XP ends and Scrum begins. In reality, Scrum + XP is a winning combination for software development.
Planning and feedback loops in extreme programming
- For developers, the practices and techniques provide an excellent base for ensuring engineering best practice is followed and quality well-tested code is produced.
- The pure technical focus means that the language used by XP is not necessarily appropriate for communicating beyond the software development community.
DSDM – (current versions Agile Project Framework and AgilePM – the project manager’s view of Agile Project Framework) provides a framework for delivering projects in an Agile way. It can be scaled down to small, very simple projects, or scaled up to deliver large and very complex projects. DSDM has been used successfully on large business change or highly regulated projects.
The AgilePM process
- Project focused, suitable for any style of project (not just IT) and for both large and small projects.
- Proven to work well within the complex corporate world of projects, programmes and portfolios, and in highly regulated environments.
- Wide Role definition:
- Good spread and depth of business roles definition (Sponsor, Visionary, Ambassador and Advisors)
- Role definition encompasses project level
- Recognition of specialist skill sets, such as Business Analyst, Solution Tester
- Recognition of the work needed in the early stages of a project, especially around creating a firm foundation (defining the breadth – for requirements and solution).
- MoSCoW prioritisation – recognised as one of the most effective prioritisation practices available.
- Supports corporate concepts (such as Business Cases, Quality, and Governance) but all applied in an agile style.
- Designed to link in to Agile Programme Management, Agile Portfolio Management.
- There is a lot in there, so can be difficult to explain.
- No specific focus on IT technical practices.
Lean is a systematic method for waste minimisation within a manufacturing system without sacrificing productivity. Lean addresses waste created through overburden and through unevenness in workloads. In relation to Agile, Lean appears more often as a mindset underlying the work being taken on.
The five Lean principles
- A Lean mindset creates a valuable perspective on work being done.
- Evening out peaks and troughs helps limit waste and improve efficiency.
- Probably not enough on its own for most circumstances.
Kanban is a method for managing the creation of products with an emphasis on continual delivery while not overburdening the development team. Like Scrum, Kanban is a process designed to help teams work together more effectively. Kanban boards provide an effective visual view of progress and current state, whether in an electronic or physical form. This supports Agile transparency.
An example Kanban board
- Very effective for Continuous Improvement activities.
- Work In Progress (WIP) limits ensure that commitment to get work done remains realistic and achievable.
- Self-organising “pull” system, designed to be overlaid as a control on existing workflows.
- Usually not enough on its own.
6. A Blended Agile Approach
This is probably most easily explained by providing some real-life examples (anonymised).
A large global regulated organisation delivering multi-million £ programmes and projects. The organisation was already committed to Prince2 and formal highest level CMMI quality certification.
The false start
XP was chosen as the single “agile answer”, driven by an in-house enthusiast. It was decided to get rid of all Project Managers, because inhouse Agile coach told them “XP has no role for PM”.
A review pointed out that since the whole organisation is based on successful delivery of projects and programmes, getting rid of all PMs was a bad move.
It was agreed to:
- Keep XP – since it is good at what it does (Software engineering delivery) and many developers had already been trained.
- Introduce DSDM / AgilePM to:
- deal with the Team and Project layer, and to provide a model for engagement with the business.
- deal with the interface to Prince2 (already tried and tested). This allows the team to stay focused on software development.
- Create a new Agile interface to the in-house Quality process, and extend this to meet CMMI level 5 assessment (this passed first time round)
Final Agile solution: blend of XP + DSDM, interfaced into Prince2, formal internal quality and formal external quality CMMI level 5.
A global technical Product organisation, manufacturing elements of the product across all 5 continents. They had already chosen (an early version of) SAFe as their agile approach but then decided they needed the concept of “Project” built on top.
Final Agile Solution: A blend of SAFe + the Project management elements of DSDM (but defined using SAFe terminology).
A UK based organisation selling a complex technical product. Final Agile Solution 1: XP + Scrum + Kanban … for product development. Final Agile Solution 2: XP + Kanban …for their Business-As-Usual Support teams (since these were a group of individuals working on separate elements, rather than a “team” with a shared purpose, and therefore were not able to swap or share their work with each other).
A global organisation running a complex business change programme, involving shop floor process changes, changes to the business operating model, and tailoring of software packages.
Final Agile Solution: Agile Programme Management (for the higher level) + Agile Project Management for all projects (both IT and non-technical) + Scrum / Kanban / Lean at the team level.
A good starting point when choosing which Agile approach or which blend of Agile approaches is to answer some simple questions.
- Are we a small, simple organisation, a large complex corporate organisation or somewhere between the two extremes?
- Does our organisation already have a projectbased approach to deliver change (technical and non-technical)?
- Are our initiatives about just about building a product or are they about business change?
- Is the focus for Agile to deliver technical and non-technical work, or technical work only?
- Is the focus for Agile to deliver very large complex technical pieces of work?
Answering these simple questions already starts to highlight particular agile approaches that specialise in these areas, and may help choose the prime Agile approach. From there, it is then possible to see whether other Agile approaches could be brought in to provide additional strength in other areas. So the final solution for your organisation may be Scrum or SAFe or DSDM. Or it may be a blend of SAFe+Scrum or AgilePM+Scrum+Kanban. The important thing is that you have the Agile approach or combination of approaches that best fits what your organisation needs.