By Aneesa S.
Software Quality Management (SQM) manages the quality of software and its development process. At the organizational level, quality management is concerned with establishing a framework of organizational processes and standards that will lead to high-quality software. At the project level, quality management involves the application of specific quality processes and checking that these planned processes have been followed.
The quality plan should set out the quality goals for the project and define what processes and standards are to be used. Quality management provides an independent check on the software development process. The quality management process checks the project deliverables to ensure that they are consistent with organizational standards and goals. The quality team should be independent from the development team so that they can take an objective view of the software. This allows them to report on software quality without being influenced by software development issues. Quality management procedures documented in an organizational quality manual, based on the generic model for a quality manual suggested in the ISO 9001 standard. SQM support whole software development lifecycle. The key processes of Software Quality Management fall into the following three categories:
1) Quality Planning
2) Quality Assurance
3) Quality Control
In the Quality Planning Process we determine the standards that are relevant for the Software Product, the Organization and the means to achieve them. Once the standards are defined and we start building the product. It is very important to have processes that evaluate the project performance and aim to assure that the Quality standards are being followed and the final product will be in compliance. This will be done by Quality Assurance Process. Once the software components are built the results are monitored by Quality control Process to determine if they comply with the standards. The data collected helps in measuring the performance trends and as needed help in identifying defective pieces of code. A set of implicit requirements often goes unmentioned; if software fails to meet implicit requirements.
Software quality is no longer sole responsibility of the programmer. It extends to software engineers, project managers, customers, salespeople, and the SQA group. An effective quality management system reduces IT risk by preventing problems and detecting defects where they occur. Make the quality management discipline a major component of the company’s IT risk reduction strategy.
SQM achieve high customer satisfaction. Transform customer’s requirements into precise definitions of quality and set quality goals. Apply quality classification frameworks to trace back from the customer’s stated and implied needs to quality attributes. SQM measures quality from the perspectives of both the developer and the end user.
There are many attributes of software quality. For e.g.: effectiveness, maintainability, usability, reliability, understandability, modifiability, and testability .
Software quality management is strongly linked with various project management, development and IT operation methods like: “Project management method Prince2” which is focused on quality management system, function of quality control and planning quality. “Quality Review Technique” which is focused on verification if created products fulfills defined quality criteria. Companies like “ISTQB International Software Testing Qualifications Board” non-profit association manages certification process for software testers.