Quality Assurance (QA) is the process of implementation of a desired level of quality in a service or product, for IT projects it’s preventing bugs and errors in software products during development and within exploitation by the customer. According to ISO 9000, QA is part of a quality management system focused on the fulfilment of quality requirements.
Quality assurance works in close collaboration with software testing, but QA is process-oriented. Testing is product-oriented and often refers to the quality control (QC).
The key QA document is a quality assurance plan. This is created by the project team and contains documented activities ensuring customer satisfaction.
Product quality depends on a number of internal and external factors.
External factors include:
Internal factors to ensure product quality are:
A quality assurance team is responsible for the formation of the whole process of quality control for the company. In an IT agency, one of the main responsibilities of the QA department is to minimise the risk of errors for each IT project, including the planning of the control points for the testing department.
Based on the QA guidelines, testers perform monitoring and control of the test results. As part of their role, testers can check samples of project documentation, software configuration, UI design, code and overall project operation, providing the quality experts with the test results for final assessment and analysis.
The QA team performs the following functions:
The team also maintains control of: