Most quality assurance activities which are carried out directly in the software development process can be classified as verification activities, while quality assurance activities which are associated with the technical requirements of the users at the very beginning or at the very end of the engineering process are classified as validation activities.
On the other hand, software bug averting is usually focused on the earlier stages of software system development, different software bug reduction activities are usually focused on the middle and late stages of software development and software bug containment is concentrated on operational stage and it is associated with design, planning and realization, which were performed earlier.
Through the comparison of software bug averting, reduction and containment, it becomes possible to connect verification with software bug reduction activities, and validation with error averting and error tolerance.
But there are some inaccuracies and corrections due to the fact that many of the quality assurance activities are associated with both verification and validation activities. For instance, the focus of the acceptance test is obviously validation, while the focus of the unit testing is verification, but system testing consists of the verification and validation components.
Inspections as an important failure reduction activity are similar to testing. Nevertheless, due to the lack of implementation and direct observations of defects, checking is more related to verification than to validation. For instance, a lot of the checking activities are carried out with standard verification activities such as coding or design. The less used technical requirements and scenarios are based on checking are connected validation.
Software bug averting deals with mistake source removal and blocking of software bugs, when verification and validation are associated with failures and faults. Consequently, direct link between error prevention and the validation and verification processes in terms of quality assurance activities is absent, however, only circumstantially through the preventive operations.
For instance, if the goal is to eliminate the indeterminacy in the technical demands or in knowledge about the domain, then activity is indirectly related to the validation and if the purpose is blocking of synthetic errors or other defects by proper selection and applying of processes, techniques and methods, it is indirectly associated with verification.
The use of formal methods such as quality assurance operations is closely associated with error prevention and formalized checking. The formal specification part is associated with validation, but circumstantially refers more to the defect prevention. The formal verification belongs to the verification activities, verifying the design or program accuracy according to its formal characteristics.
Software bug tolerance, safety assurance and others error containment activities refer more to validation than verification because of their concentration on the avoiding or minimizing of global disruptions under current operational environments.
When such error containment features are specific for software or intruded system, compliance with this part of specifications can be considered as well as other actions aimed at testing the compliance with specifications.
This relationship between these two views is shown in Table 1, for each of the error-centered view class and related main quality assurance activities. They are displayed according to their connection with the verification, validation, or both at once, directly or indirectly.
- No Related Posts