Software Quality Assurance(SQA): Plan, Audit & Review
After completion of the seven phases of testing, the results look good. No significant issues occurred in the project Guru99 Bank. You managed the project well, and you were proud of the success of this project
Unfortunately, the Management Board thinks different
You don’t have any evidence to show that you managed this project well. You asked an advisor for a solution. Here is the answer
This answer is a start, but you still have following questions –
This tutorial will help you answer these questions –
Mục lục
What is the Test Management Reviews & Audit?
- Management Review: Management Review is also known as Software Quality Assurance or (SQA). It focuses more on the software process rather than the software work products. Quality Assurance is a set of activities designed to ensure that the project manager follows the standard process which is already pre-defined. In other words, Quality Assurance makes sure the Test Manager is doing the right things in the right way.
- Audit: An audit is the examination of the work products and related information to assesses whether the standard process was followed or not.
Why do we need SQA in Test Management process?
To understand this, consider the following scenario-
In the project Guru99 Bank, handles various test phases like –
As a Test Manager, you are the person who takes in charge these activities. However, you are at the highest position in the project team. Who will review your tasks and check the project management activities are executed to the highest standard?
Well, SQA auditor is the person who reviews and checks the project management activities are executed to the highest possible standard. Only through the result of this review, the Management Board can evaluate the quality of your project handling.
This is the reason why we do need Management Review or SQA in Test Management process.
The SQA interviews you, the Test Manager, to benchmark the project against set standards.
Benefits of SQA are –
How to implement the quality assurance?
Step 1) Develop SQA Plan
Testing activity needs Test Plan likewise SQA activity also needs a plan which is called SQA plan.
The goal of SQA plan is to craft planning processes and procedures to ensure products manufactured, or the service delivered by the organization are of exceptional quality.
During project planning, Test Manager makes an SQA plan where SQA audit is scheduled periodically.
In the SQA Plan, the Test Manager should do as following
Step 1.1) Identify the role and responsibilities of SQA team
In a project team, every member must have responsibility for the quality of his or her work. Each person has to make sure their work meet the QA criteria.
The SQA team is the group of person who plays the major role in the project. Without QA, no business will run successfully. Therefore, the Test Manager has to make clear the responsibility of each SQA member in SQA plan as below:
- Review and evaluate the quality of project activities to meet the QA criteria
- Coordinate with management board and project teams to assess requirements and engage in project review and status meetings.
- Design track and collect metrics to monitor project quality.
- Measure the quality of product; ensure the product meet the customer expectations.
For example, in the SQA Plan of the project Guru99 Bank, you can create the list members of SQA team as below
No
Member
Roles
Responsibility
1
Peter
SQA Leader
Develop and document quality standard and process for all management process
Manage software quality assurance activities for the project
2
James
SQA auditor
Perform SQA tasks, report to SQA leader the result of SQA review.
3
Bean
SQA auditor
Perform SQA tasks, report to SQA leader the result of SQA review.
Step 1.2) List of the work products that the SQA auditor will review and audit
The Test Manager should
- List out all the work products of each Test Management Process
- Define which facilities or equipment the SQA auditor can access to perform SQA tasks such as process evaluations and audits.
For example, for the project Guru99 Bank, you can list out the work products of each Test Management Process and define permission for SQA members to access these work products as per the following table
No
Management Phases
Work product
Path
Permission
Grant to Person
1
Risk analysis
Risk Management document
[Server path]
Read
All SQA team members
2
Estimation
Estimation and Metrics report
…
Read
Peter
3
Planning
Test Planning document
…
Read
All SQA team members
4
Organization
Human resource plan, training plan
…
Read
All SQA team members
5
Monitoring and Control
Collected metrics of project effort
…
Read
Bean
6
Issue Management
Issue management report
…
Read
James
7
Test report
Test Report document
…
Read
All SQA team members
Step 1.3) Create the schedule to perform the SQA tasks
In this step, the Test Manager should describe the tasks to be performed by SQA auditor with special emphasis on SQA activities as well as the work product for each task.
Test Manager also creates the scheduling of those SQA tasks. Normally, the SQA schedule is driven by the project development schedule. Therefore, an SQA task is performed in relationship to what software development activities are taking place.
In the SQA plan, Test Manager makes the schedule for management review. For example
Date
SQA Tasks
Personal in charge
Description
Output
30-Oct-2014
Evaluate project planning, tracking and oversight processes
James
– Software Specification Review
– Estimation, Master Schedule and Project Plan Review
SQA planning report, SQA review minute
15-Dec-2014
Review requirement analysis
James
– Review the software requirement development
Process audit report
30-Mar-2015
Review and Evaluate Test Design
James
– Review the Test Design document
SQA report, SQA review minute
30-Mar-2015
Review release
Bean
– Process Audit: Final Release
SQA process audit report
2-Apr-2015
Review Project closing
Bean
– External review after final delivery to customer
SQA process audit report
Step 2) Define the standards/methodology
To review the Management activities against the standards process, you should do the following steps
- Define the policies and procedures intended to prevent defects from occurring in the management process
- Document the policies & procedures
- Inform and train the staff to use it
Step 3) Review the process
Review project activities to verify compliance with the defined management process. In the management review, the SQA members have to perform 5 SQA reviews as following
Review time for SQA depends on the project’s development lifecycle model. In case of the project Guru99 Bank, the review schedule should be following
In each SQA phase, the SQA members provide consultation and review of the project plans, work product, and procedures regarding compliance to defined organizational policy and standard procedures.
During Audit, the SQA members should use SQA review checklist
After you walk through the 3 steps of software assurance implementation, you have the result of Test Management Review & Audit. This is the evidence to show to your stakeholders about your management quality.
Software quality assurance best practice
Here are some best practices for an effective SQA implementation
- Continuous improvement: All the standard process in SQA must be improved frequently and made official so that the other can follow. This process should be certified by popular organization such as ISO, CMMI… etc.
- Documentation: All the QA policies and methods, which are defined by QA team, should be documented for training and reuse for future projects.
- Experience: Choosing the members who are seasoned SQA auditors is a good way to ensure the quality of management review
- Tool Usage: Utilizing tool such as the tracking tool, management tool for SQA process reduces SQA effort and project cost.
- Metrics: Developing and creating metrics to track the software quality in its current state, as well as to compare the improvement with previous versions, will help increase the value and maturity of the Testing process
- Responsibility: The SQA process is not the SQA member’s task, but everyone’s task. Everybody in the team is responsible for quality of product, not just the test lead or manager.