If you are considering adopting a new approach to software development, you probably believe that your current way is not helping you reach your goals, such as time to market or quality. A key part of adopting an agile approach is to acknowledge successes and failures, analyze then, and understand how to continuously improve.
It’s important to remember three things when you are trying to be more agile:
- Agile is a system-wide change. Changing practices in one part of the development lifecycle will quickly reveal roadblocks in other parts.
- It’s important to periodically examine how well your team is doing. Iteration retrospectives are an important part of improving how you work.
- Practices that seem problematic often are not “bad,” per se; they just don’t apply to your current situation.
When you encounter your first failure, it will be very tempting to revert to old practices. But, to succeed in agile, it’s important to review your results periodically and decide what you can change to improve them. It’s difficult for people to look objectively on results without assigning blame or determining the root cause of a problem, so using lightweight, structured techniques such as those in Agile Retrospectives: Making Good Teams Great  can make it easier for teams to consider how they can improve while quelling the instinct to revert to prior work habits.