Quality was, is and remains a challenge within the IT industry. The DevOps team must actively work on quality engineering. Quality engineering consists of a great number of possible activities, the so-called quality measures. After all, quality must be built in, not tested in! Within quality engineering, testing is the instrument that can provide insight into the quality of information systems, so that test results deliver a contribution to the improvement of the quality of information systems and thus to delivering the pursued business value.
All quality measures may relate to all DevOps activities
Quality measures do not apply to one specific DevOps activity; they are integrated with all DevOps activities.
Applying these measures leads to a situation whereby:
- there are measurement points and units that provide an indication of the quality of the products and processes
- it is clear to each team member which requirements his work must meet and that he can evaluate them based on the quality criteria
- it is possible for an independent party to evaluate the products/services based on the above-mentioned standards
- the product owner and other stakeholders can trace the causes of weaknesses in products or services and consider how they can be prevented in the future.
Three groups of quality measures
Quality measures are divided into preventive, detective and corrective measures:
- Preventive quality measures>BR> Preventive quality measures are aimed at preventing a lack in quality. These can be, for example, documentation standards, methods, techniques, training, etc.
- Detective quality measures
Detective quality measures are aimed at discovering a lack of quality, for example by static (including inspections, reviews, walkthroughs) and dynamic testing.
- Corrective quality measures
Corrective quality measures are aimed at rectifying the lack of quality, such as the investigation and fixing of anomalies that have been exposed by means of testing.
It is of vital importance that the various quality measures are cohesive. No single quality measure is an independent activity; it is only a small cog in the quality management wheel. Testing, for example, is only one of the forms of quality control that can be employed. Quality control is in turn only one of the activities aimed at guaranteeing quality. And quality assurance is, in the end, only one dimension of quality engineering.
Overview of quality measures
The quality measures can be used as part of quality engineering. Also, they contribute to covering risks, as described in "Quality risk analysis & test strategy".
For a detailed description of these quality measures we refer to Quality measures and skills.
The quality measures that are described are:
- Root cause analysis (RCA)
- Specification and Example (SaE)
- Test-driven development (TDD)
- Pair programming
- Test design techniques
- Feature toggles
- Parallel testing