The 12 Days of Agile Principles! Principle #2
Welcome to Day 2 of 12 Days of Agile Principles and welcome to changing requirements:
Welcome changing requirements, even late in development. Agile processes harness change for the customer's competitive advantage.
Anticipate and account for change. Expect change. Because you don't want to deliver the wrong thing just because you planned it. The plan is just that, a plan. 'The map is not the territory'.
For example, Google Maps can show you the street, Google Earth can show you what's in the street and Street View even makes you feel like you're looking at the street. But you're not in the street, you're on Google Maps dude!! It's only when you're in the street that you can know the realities of what's around you. Likewise it's only when you begin executing your plan, that you find out loads of important stuff about what you need in reality, in order to deliver. So yes, you do need to plan, but you need to welcome changing the plan, be open to change and to the influx of new information arriving daily, and even more, be GEARED to expect requirements to change, even late in the process.
In my experience large companies find this the toughest thing to do, that is, to let go of the plans they may be wed to and perform a ‘pivot', but they have to in order to stay relevant and competitive, ‘Embrace Change’.
So how do Agile processes enable this reality of late change? We plan in no more than 2 week iterations, we show what we’ve built each iteration, we ‘inspect and adapt’ what we are building as we discover what has to change through feedback. We strive for rapid software releasing practices such as continuous integration of code and lots of test automation, we build independent stories that offer value, and we build features and stories in priority order.
Stay tuned for Agile Principle #3 next or join the conversation @TheRebootCo