The definition of the ISO 8204 for quality:
“Totality of characteristics of an entity that bears on its ability to satisfy stated and implied needs.”
This means that the Software product conforms to requirements defined.
Description of Phases:
Software Quality Management (SQM) describes the processes that ensure that the Software Project would reach its goals i.e. meet the client’s expectations.
Any phase of SDLC has its own independent stages of planning, execution, monitoring, control & reporting. Likewise Software Quality Management has the following three categories or key phases:
1. Quality Planning
2. Quality Assurance
3. Quality Control
Quality Planning is one of the most important parts of Software Quality Management. It is the start activity of SQM. Through proper planning we can ensure that the processes that make a product are audited correctly to meet the overall project objective. The staring of Quality Planning process is followed differently by different Organization. It has been described in different Quality Policy and Documentation across various Organizations.
Other industry standards related to the Software Project can be referred to Planning phases when needed. These act as Standard inputs for some specific projects. The Planning stage is having following inputs:-
1. Quality Policy of a Company
2. Organization Standards
3. Referencing Industry Standards
4. Regulatory compliances
5. Statement Of Work
6. Project specific Requirements
Quality planning process can ensure that standards are as per client’s expectations. The outcomes of Quality Planning process are as follows:-
1. Standards defined for the project
2. Quality Plan
Various tools and techniques are used to create the quality plan. Few of these tools and techniques are briefly described in this article. Here are some over views:-
Benchmark: Deciding on the present product standards by comparing with the performances of similar products which is already exist in the market.
Cost of Quality: The total cost of quality is a summation of prevention, appraisal and failure costs.
Design of Experiments: Statistical data can be used to determine the factors influencing the Quality of the product.
Other tools: There are various tools used in the Planning process such as Cost Benefit Analysis, Cause and Effect Diagrams, System Flow Charectistics.
All of the above key points aids in the formation of a Quality Management Plan for a particular project.
Quality Plan which is created during planning is the input to Quality Assurance Process. The Assurance stage is having the following inputs:
1. Quality Audits
2. Various Techniques used to evaluate performance of project
Quality Assurance Process helps us to ensure that the Project is following the Quality Management Plan. The tools and techniques which are used in Planning Process such as System Flow Charectistics, Design of Experiments, Cause and Effect Diagrams can be implemented here too, as per requirements.
The next step to Quality Assurance Process is Quality Control. The Control stage is having following inputs:
1. Quality Management Plan.
2. Quality Standards for the Project.
3. Actual Observations and Measurements of the work done or work in Progress.
The Quality Control Processes use various tools to Observe and Measure if the work done or not. If the Work done and it is found that the deliverable is not satisfactory then it can be sent back to the development team for fixes.
If the work done meets the requirements as defined then it is accepted and released to the clients.
Documentation as perceived as an integral part of SQM:
In Software Quality Management Processes, documentation part is of utmost importance. User Requirements of any Software Project needs to be sufficiently documented. Otherwise software projects fail to monitor various stages of the life cycle. A scenario where the Requirements of any Software Project are not sufficiently documented, it is quite possible that there can be a situation where client’s expectations are not known to testers. As a result, testing team will not be able to test the developed software project according to the client’s requirements or expectation.
The insufficient information may result in inadequate “Software Quality”.
Add a Comment