Agile is a much used and talked about concept these days, but what does it really mean, and how can you make it work in a business context?
What is Agile?
Agile methods use a highly iterative process that focuses on delivering concrete incremental improvements. They can be successfully used in a wide variety of situations to advance projects and solve problems. Agile is not just a set of principles or a process framework, it is a way of thinking about your business to provide you with increased flexibility and help you navigate complex situations. It will help you react to changing situations more quickly, and help you adapt your organization more quickly in a dynamic environment.
The best way to describe agile is in contrast to the traditional „waterfall“ planning method. In the traditional method, a specification is written, detailed, planned, and then executed against. Delivery in a few months. Hopefully. Agile, in contrast, works slightly differently. There are a few core concepts that are at the heart of agile methodologies, whichever agile method you choose to use.
10 key agile principles
There are a few key agile principles to help stay on track while working on projects, and see if you are really working in an agile way. Let’s look at these principles in detail to understand what they mean and how to apply them.
- close to customer – one of the most important principles involves being close to the customer, and aligning frequently to ensure that the goals, priorities and deliverables are closely agreed upon. The customer can be internal or external. The customer is the key stakeholder who has defined the priorities in the product (or topic) backlog.
- proactive prioritization – defining your goals up front, and prioritizing them together with the customer is the basis for being able to successfully implement agile methodologies. Prioritizing forces the customer to continually reflect on what is most important, and forces a discussion of why the priorities are set as they are, leading the team to understand more about the goals behind the topics they are working on. These topics are pulled from the product (or topic) backlog and then worked on in sprints.
- business benefit – ensure that each of the defined goals in the product backlog has a concrete (and articulated) business value. This will help with the prioritization of the product backlog, understanding the goals themselves, and also maintain motivation as everyone appreciates concrete benefits when they arrive
- incremental improvement – in comparison to the waterfall method, agile projects aim to provide small, concrete improvements continually, which are then presented to the customer. Incremental improvements are essential to allow the customer to see the progress and be able to give feedback on it.
- short sprints – short sprints go hand-in-hand with incremental improvements as they allow progress to be presented to the customer regularly to ensure continued alignment. In a business context it usually makes sense to have the sprints take somewhere on the order of 2-4 weeks, and topics should be chosen and sized accordingly.
- fail fast – waste is one of the things that you should always seek to eliminate. In line with the short sprints and incremental improvements, failing fast ensures that you do not waste resources and time on something that is not helpful to the customer. Since the customer will soon see the next deliverable and provide you with the opportunity to align again, you will soon see if you are on the right track or not. If not, you will be able to change course quickly without wasting a lot of time and effort.
- transparent tasks – pulling the customer in to work together with you, or give feedback during the implementation of a task (i.e. during a sprint) can help identify critical issues in near real-time. There is a time and place for having the customer that closely involved, and for going off and working without the customer for a few weeks. If you need to solve technical implementation issues, it may be better to work them out within your team first. If you are working on visible topics (design, process changes, etc.) then it may be beneficial to involve the customer in the process.
- release ready – the team should always aim to deliver a release ready incremental improvement at the end of a sprint. That way it can be shown to the customer and any other stakeholders, and enables a discussion on whether or not the progress is going in the right direction. The customer can also take this and review it with other stakeholders on his side, potentially already using it as a demo / training tool, etc. to obtain feedback from his organization, helping improve clarity on the topics and end-goal.
- retrospective review – at the end of a sprint, the team (in addition to the customer review) also hold a retrospective to focus on how the process itself went during the sprint. What worked, and what didn‘t? Were the right people on board? Too few, too many? Were the tasks clear enough? Was the chosen topic the right size for a sprint? All of these process- and organization-focused questions should be raised in a retrospective and discussed with the help of a mentor. Issues found can then be addressed in the next sprint to ensure that the process runs more and more smoothly as the team gets more experience.
- master mentor / method master – agile processes are not difficult to run per-se, but getting used to the method, not getting too caught up, and losing sight of overall goals are some of the potential pitfalls an agile process. A master mentor who focuses on the process itself (not on the topic that is being addressed!) helps ensure that the team remains focused and does not drift away from the process.
These are the core principles of agile methods. Focus on these to stay on track while working on projects.
- close to customer – keep your friends close, and your customers even closer. Make sure you understand what they want and why they want it
- proactive prioritization – make sure you clearly understand the key stakeholders goals and priorities
- business benefit – make sure every topic being addressed is directly valuable to the business in some way
- incremental improvement – don’t try to solve world hunger in one go – improve the world bit by bit, and focus on what you can achieve bit by bit
- short sprints – keep it short and simple – focus on one small topic at a time
- fail fast – don’t waste time doing the wrong thing
- transparent tasks – involve the customer and make sure everyone knows what is going on
- release ready – produce something useful
- retrospective review – learn from the process and continually improve it
- master mentor / method master – the process is important – get someone to help you get it right
Agile process frameworks
The actual process framework that is used (Scrum, SAFe, LeSS, etc. etc.) is less important than the adherence to these principles, which you should find in all frameworks. In addition, many of them are Scrum-based frameworks applied at a larger enterprise-level scale.
- Scrum – start here if you are new to agile. It’s intended for software development, but can easily be adapted to a business context as well
- SAFe – Scaled Agile Framework – go here if you need something bigger that Scrum and are not sure what to use
- LeSS – Large-Scale Scrum
- Nexus – Scrum at scale
- DaD – Disciplined agile delivery
- …and many more
It helps to step back during a project and review these principles. See which ones are being applied and which ones aren’t. Look at problem areas in the project through the lens of these principles
An additional benefit of using agile methods is motivation. It is extremely motivating for teams to be delivering something useful every few weeks versus having to wait months for any tangible results. The increased effort in the planning and prioritization part of the process is well spent, and will pay large dividends later in the implementation.
Are you agile?
To determine how agile your organization is, or even how agile you yourself are, evaluate yourself and your organization against these agile principles. You don’t have to turn the whole organization on it’s head and go all-in agile, as even implementing these principles gradually in parts of the organization will already have a positive effect.
If you have any comments or feedback, or would like to learn more about implementing agile methods in your organization, please reach out to me at any time.