OPS05-BP07 Implement practices to improve code quality - AWS Well-Architected Framework (2023-04-10)

OPS05-BP07 Implement practices to improve code quality

Implement practices to improve code quality and minimize defects. Some examples include test-driven development, code reviews, standards adoption, and pair programming. Incorporate these practices into your continuous integration and delivery process.

Desired outcome:

  • Your organization uses best practices like code reviews or pair programming to improve code quality.

  • Developers and operators adopt code quality best practices as part of the software development lifecycle.

Common anti-patterns:

  • You commit code to the main branch of your application without a code review. The change automatically deploys to production and causes an outage.

  • A new application is developed without any unit, end-to-end, or integration tests. There is no way to test the application before deployment.

  • Your teams make manual changes in production to address defects. Changes do not go through testing or code reviews and are not captured or logged through continuous integration and delivery processes.

Benefits of establishing this best practice:

  • By adopting practices to improve code quality, you can help minimize issues introduced to production.

  • Code quality increases using best practices like pair programming and code reviews.

Level of risk exposed if this best practice is not established: Medium

Implementation guidance

Implement practices to improve code quality to minimize defects before they are deployed. Use practices like test-driven development, code reviews, and pair programming to increase the quality of your development.

Customer example

AnyCompany Retail adopts several practices to improve code quality. They have adopted test-driven development as the standard for writing applications. For some new features, they will have developers pair program together during a sprint. Every pull request goes through a code review by a senior developer before being integrated and deployed.

Implementation steps

  1. Adopt code quality practices like test-driven development, code reviews, and pair programming into your continuous integration and delivery process. Use these techniques to improve software quality.

    1. Amazon CodeGuru Reviewer can provide programming recommendations for Java and Python code using machine learning.

    2. You can create shared development environments with AWS Cloud9 where you can collaborate on developing code.

Level of effort for the implementation plan: Medium. There are many ways of implementing this best practice, but getting organizational adoption may be challenging.

Resources

Related best practices:

Related documents:

Related videos:

Related services: