SMART DevOps aims to maximize the predictability, efficiency, security, and maintainability of operational processes, and is a software engineering culture and practice that unifies software development and software operation. The main characteristics of SMART DevOps is to strongly advocate automation and monitor all steps of software construction, from integration, testing, releasing to deployment and infrastructure management, reflective of the key aspects of the development and delivery processes:
- Code – code development and review, source code management tools, code merging.
- Build – continuous integration tools, build status.
- Test – continuous testing tools that provide feedback on business risks.
- Package – artefact repository, application pre-deployment staging.
- Release – change management, release approvals, release automation.
- Configure – infrastructure configuration and management, Infrastructure as code tools.
- Monitor – applications performance monitoring, end-use.