Quality Assurance is often seen as an integral function that monitors and coordinates the quality used within the project management life cycle by evaluating the processes and procedures. Quality control, on the other hand, can be seen as a focused area (such as software testing) that compares the product to the specification or plan, with a focus on detecting and remediating errors or anomalies.
Therefore, the Quality Assurance role is a critical factor in the success of the overall project as it is focused on key quality functions throughout an engagement. In his book “Project Management Nation,” Jason Charvat identifies the following key duties for the role of quality assurance throughout the project management life cycle.
The Role of Quality Assurance on the Project
The person who is responsible for QA has many duties and responsibilities. The following section lists many of the things that a QA person would be expected to do.
- Participate in the change management process to assess the risk of putting fixes into the environment during acceptance testing;
- Assist the test team in isolating the source of discrepancies between expected and actual test results. If the error is in software design, thoroughly analyze the ramifications of any design changes. Design diagrams and structure charts before proceeding with corrections to code;
- Complete preparations for acceptance testing, including the establishment of the acceptance test environment. Unlike system testing, acceptance testing always takes place in the targeted environment. It is therefore extremely important to schedule computer resources well in advance;
- Check the simulated data to ensure that the required test data have been produced;
- Obtain expected results from the acceptance test plan and review them for completeness;
- Calculate any missing expected results;
- Be certain that the introduction of new load modules is according to test configuration management procedures. When a new, corrected load module is received, first rerun tests that previously failed because of software errors. If these tests succeed, proceed with regression testing;
- Analyze and report test results. Evaluate test results as soon as possible after execution. Wherever possible, use automated tools in the analysis process. Record analysis procedures and keep all relevant materials. Remember that records and reports should give complete accounts of the procedures followed. If a test cannot be evaluated, note the fact and report the reasons for it;
- Compare all test results with expected results and note that all defects are documented, regardless of how minor they appear or whether they will be corrected.