So you’ve got your backlog in order, estimated your backlog, clarified your requirements, planned your sprint and created a collaborative workspace.

You’re sprinting to achieve your sprint goals, running daily stand-up meetings and you’re tracking progress with a daily burndown chart.
Now you just need to finish when you said you would…

What a great idea! What an insight! If only I’d thought of that, my development projects would never have been so hard 🙂

Seriously though, there are a few key principles of agile software development that help with this step. Here they are…

‘done’ means DONE!

*Complete* each featurebefore moving on to the next. In agile development, ‘done’ means DONE!.  All too often in software development, software is not in a shippable state. Having all the features 80% complete is of no use to anyone.  However, 80% of features 100% complete might well be a perfectly shippable product.  Hang on to this principle.

Time waits for no man!

Particularly on BAU (Business As Usual) product developments, you are usually in complete control of how many features, enhancements and bug fixes are in each release. If you hang on to the ‘done’ principle, you should be in a position to ship when your time is up.

All changes must be reversible

One of the key challenges in achieving this, is to ensure your software is always in a shippable state, even when you have multiple streams of development (e.g. live bug fixes alongside major project) on the go at the same time. To achieve this, all changes must be reversible.

Finish when you said you would

That’s it. *Complete* each feature before moving on to the next. Stick to the principle ‘done means DONE!’. Manage your code carefully so you can build a shippable product at any time. And even if it means varying the scope (that’s varying scope, not varying quality), finish when you said you would.

Finally, Step #10: Review, reflect, repeat…

Kelly.

See also:
How to implement Scrum in 10 easy steps:
Step #1: Get your backlog in order!
Step #2: How to estimate your product backlog
Step #3: Sprint Planning/clarify requirements
Step #4: Sprint Planning/estimate tasks
Step #5: Create a collaborative workspace
Step #6: Sprint!
Step #7: Stand up and be counted!
Step #8: Track progress with a daily burndown chart
Step #9: Finish when you said you would
Step #10: Review, reflect, repeat…

‘Implementing Scrum’ PowerPoint Presentation

10 Key Principles of Agile Software Development