What’s Agile? Deliver Frequently (Principle #3)
Agile Delivers Value Frequently
The third principle of Agile is:
Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale.Principles behind the Agile Manifesto
Notice how much overlap there is between the third principle and the first principle. (I’ve added the emphasis.)
Our highest priority is to satisfy the customer through early and continuous delivery of valuable software.Principles behind the Agile Manifesto
The third principle is essentially a clarification that “early and continuous” means every couple of weeks or so. And no more than every couple of months. Just in case anyone thinks that quarterly delivery is frequent enough to be considered Agile. It’s not. Not quite, anyway.
What is Value? Working Software.
Also, notice that “valuable software” is “working software”. Designs, documentation, and stabilization sprints don’t count. Sure, they’re necessary, but they don’t count as part of what is required to be Agile.
You should be working on designs, documentation, and stabilization along the way, incrementally. (See 12 Practical Steps to Avoid Stabilization Sprints.)
Never lose focus on Agile’s top priority of satisfying the customer by delivering working software frequently.
Not Just Software
Although the Agile Manifesto was written specifically with software in mind, the principles apply to all sorts of projects. Just replace the word “software” with “products, services, or results”. They still need to be working to be of real value and to be considered Agile.
All Sprints the Same Length?
Here’s an example of how Agile and Scrum are not the same thing. An Agile project can have iterations that are of different lengths. 2 weeks, 3 weeks, 5 weeks, 2 months, whatever. So long as it’s within the Agile range of about 2 weeks on the short end, and about 2 months on the long end.
However, Scrum’s use of velocity adds a lot of value to a project. And for velocity measures to work well, you need the sprints to each be the same length. Or, more precisely, the same amount of effort.
During long holidays and vacation periods, you may want to adjust the length of your sprints. The goal is for each sprint to have the same capacity to get work done. You need this balance so you can more accurately measure the team’s productivity using the velocity of each sprint.
For example, if you have 2-week sprints, you may want to have 3 or 4-week sprints during the summer to account for team members being gone on vacation. Also, around Christmas, the New Year, or the Chinese New Year.
Read this next: What’s Agile? Colocation (Principle #4)