Page 29 - SOFTWARE TESTING & QUALITY ASSURANCE
P. 29
Software Testing and Quality Assurance
Axiom 7
Specifications are never final.
The changing specifications make it difficult for complete testing to take place. Specifications can
change due to:
(a) Fierce Competition.
(b) Rapid release cycles.
(c) Change requirements.
Axiom 8
Software testers are not the most popular members of a project.
Software testers do have goals to:
(a) Find bugs early and ensure that they are fixed as early as possible.
(b) Ensure that they adhere to professional behavior without losing their temper.
Axiom 9
Software testing is a disciplined and technical profession.
Initially software testers were untrained and did not follow any methodology, as the software was
simpler and manageable. However, testing has now become a matured discipline and supports
sophisticated techniques with good support of tools and also provides a rewarding career for the
testers.
2.4 Software Testing Terms and Definitions
Let us understand some important software testing terms:
Software Quality:
Software quality is impacted by bugs. It is essential that the software is bug free or defect free and meets
the requirements, specifications, and expectations of the client.
Verification and Validation:
Verification is the process of discovering the possible failures in the software before the commencement
of the testing phase. It involves reviews, inspections, meetings, code reviews, and specifications. It
answers the question.” Are we building the product right?”
Validation occurs after the verification process and the actual testing of the product happens at a later
stage. Defects which occur due to discrepancies in functionality and specifications are detected in this
phase. It answers the question, “Are we building the right product?”
Quality Assurance (QA) Vs Quality Control:
Quality Assurance and Quality Control are terms that define the quality management activities of a
project. While quality assurance refers to the planned and systematic activities that monitor and ensure
that the development and maintenance process meets its objectives, quality control refers to a set of
activities that are designed to evaluate a developed product.
Quality assurance is more a verification process, whereas quality control is more a validation process.
The activities are more generic and can encompass the whole development process. The activities of
quality assurance can be performed while the product is being developed, whereas the activities of
quality control are performed after the product is being developed.
The main aim of quality assurance is to prevent defects, and thus it focuses on the process of product or
application building. Quality assurance can be performed by a manager or even a third party
professional. Quality assurance ensures that the process is well defined and is performed through the
life cycle of the product. The activities include quality management review functions like process
checklists, project audits, and standards development for development in coding. Quality assurance
22 LOVELY PROFESSIONAL UNIVERSITY