Link Search Menu Expand Document

Why Focus on Improvements?

Continual process improvements enable teams to maintain a high level of productivity while producing quality software. In fact, the Agile principles themselves dictate that:

“At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly.”

Changes in how a team functions affects how work gets done. So, it is not a surprise that one of the twelve Agile principles addresses the topic of reflection (or self-evaluation).

Process improvement opportunities can be found in any phase.

For instance, if software bugs were found, do improvements need to be made to the Testing phase to:

  • Incorporate more rigorous test cases?
  • Provide longer soak time for new code in the testing environment?
  • Add resources to provide integration testing with other software products that are part of their product suite?

Or, are there issues with the Implementation and Coding phase that need to be addresses, such as ensuring that developers follow team coding standards and guidelines or implementing more rigorous code reviewing practices.

During this self-evaluation process, teams should not lose sight of what they did right. For instance:

  • Were the requirements defined in the Requirements Gathering and Analysis (during backlog grooming) well defined and communicated to the architecture and development teams during the Design and Implementations and Coding phases?
  • Did automated deployment strategies allow the team to seamlessly deploy new code and eliminate the chances of human error?

Team should take the lessons learned from each development cycle and make the necessary adjustments. Continual evaluation of the software development lifecycle phases ensures that the focus remains on the quality of the products being delivered. This is an iterative process.