ABAP Test Cockpit: Best Practices for Quality Management Processes
One of the strengths of the ABAP Test Cockpit (ATC), the new tool for ABAP quality management, is that it is designed to let quality experts implement sound quality management processes. In this weblog, we briefly describe the processes that the ATC supports.
Here are the ATC quality management processes in a best-practices overview:
In this best-practices recommendation, ATC quality checking takes place at four levels:
- Starting from the development system, individual developers run local checks of the code that they are working on, directly from the development transactions.
- Also in the development system, the development team checks the code for which it is responsible with automated and periodic ATC check runs.
- Automatic transport checking provides a Q-Gate (quality gate) when code leaves the development system at transport release.
- The transport and the code changes reach the consolidation/quality system. The imported code itself has been checked and corrected, but it may damage other programs which were part of another transport or were not changed at all. (Think, for example of changes in the signature of a function module, which directly influences all callers of this function module) Therefore a periodic regression ATC check run which not only checks the transported objects but the complete relevant code base is key to avoid unforeseeable damages.
Consequently, in the consolidation or test/quality system (aka the ATC master system), the quality manager runs mass (regression) quality checks with the ATC. These results of these checks are published to the development systems as the current, active ATC result. Developers can use these central results for clearing quality problems. The quality manager can track quality trends along the ATC quality checks in a particular series of checks. The quality manager can download statistical summaries for reporting purposes. And the quality manager can ensure that developments do not leave the consolidation system until all critical ATC findings have been corrected. (Second quality gate)
In a separate process, developers and quality managers can take care of ‘false positive’ findings and findings that currently cannot be corrected by way of an exemption process. In this process, a developer requests an exemption for a finding. The quality manager then reviews and approves or rejects the request. An exemption, if granted, masks an ATC finding for the period of time set by the quality manager. While the exemption is valid, the ATC does not report the exempted findings. There is no confusion in the results about what ATC findings need to be worked on and which are exempted.
ATC combines quick ad hoc checking by the developer and centralized quality checking in one single framework. The multi-staged process chain is an efficient approach to ensure high quality of your custom code. As result you should see less ABAP quality issues in production.
We will soon publish more information for the involved roles (developers, quality extperts, admins) describing how to set up and use the ATC in detail.