In the development and delivery of software, the most important contribution of DevOps is the elimination of the time lag between project phases: development, testing, trial operation, and delivery of the product to the final consumer. The time2market indicator is one of the key indicators of the competitiveness of products and the success of companies today.
Some experts have described the term TestOps as an example of the effective interaction of the testing and maintenance departments. This is an example of sharing the knowledge and carrying out the correct checks at the stages of pre-production operation and validating the installation of the new release in the production environment.
Here at Performance Lab, a company that is professionally engaged in quality assurance, we are looking at DevOps not only in its original paradigm. Rather, we look at DevOps with a view to the integration of the means of control and quality assurance with automated systems of virtualization and software deployment on the testbeds. This approach allows us to orient the automated development environment not only on the speed but quality as well.
In the overall process of product creation, the types of control and quality assurance can be ranked according to their proximity and ease of binding with the actions and objectives of DevOps:
- The first, simplest, and most intuitive tool for monitoring is that of visualizing the indicators of success for developing the product, from developers to end-users. Such indicators can be implemented through the integration of such custom service monitoring tools with Ansible, Puppet, Chef, SaltStack, or Docker and displaying the indicators in the web interface available to the project team.
- Within the types of DevOps testing methodology, the next most easily compatible activities are installation and configuration testing, which is best closest checks to the tasks performed within DevOps.
- The third type is automated testing in the context of smoke tests and acceptance tests, as well as the final checks performed when rolling out the product to the production environment.
The use of automated inspection and quality control tools in conjunction with DevOps not only enables a reduction in the time2market indicators and qualitative improvement of the product, but also increases the efficiency of the use of resources at the expense of non-assembly, which is recognized as not valid after performing automated check-ups.
In conclusion, it is necessary to specify the value of DevOps for business. Three business advantages exist:
- Quick promotion of the product to the market (for example, application lifecycle reduction and a higher rate of app deployment).
- Quality improvement (for example, increased availability, reduction in the number of bugs, etc.), which enables to measure the quality or allocate a KPI on the quality aspects of ISO 9126.
- Increased organizational efficiency (more time spent in activities related to the increase of value of the product by reducing the labor stages of development and implementation of the software).
Author – Dmitry Khimion, Head of QA practice, expert in automation testing at Performance Lab.