This article enlightens how a quality of software can be increased to an extent. The most expert and experience software developers say that high quality software is an important view. There are certain questions may come in your mind that how do we define quality? It is said that “Every program does what is expected as well as may be what is not expected by the user. There are many definitions of software quality are available. For our purposes, software quality is defined as
“Conformance for the explicitly stated functional and performance requirements; explicitly documented development standards and implicit characteristics that are expected of all professional development software”.
This definition serves to focus on three important points.
1. Foundation for quality measure is software requirements. Back quality is lack of conformance to requirements.
2. Specified standards enables a set of development criteria that direct the way in which software is engineered. If the criteria are not obeyed lack of quality will be final result.
3. There are two requirements like implicit and external. A set of implicit requirement s could be the desire for ease of use and good maintainability .If software ensures to its explicit requirements fail to achieve implicit requirements software quality is not good.
Software quality assurance is made up of a variety of tasks associated with two different constituencies.
1. The software engineers who perform technical work and
2. The SQA group that has responsibility for quality assurance planning, record keeping analysis, etc.
3. Software requirement apply the quality using solid technical methods and measures .they conduct formal technical reviews, walkthroughs and perform well planned software testing using different methods.
4. The main objective of the SQA group is to help and support the software team in achieving a high quality final software product.
The SQA advise a set of SQA activities that states quality assurance planning, maintainability oversight, record keeping, analysis and reporting.
These activities are done by an independent SQA group that conducts the following activities:
1. Prepare an SQA plan for a project (initial stage)
In this stage is developed and is reviewed by all the people who are involved in the project. Development teams as well as SQA groups are governed by this plan. This plan identifies the important things like evaluation to be performed, audits and review to be performed, Standards that are applicable to project, procedures for error reporting and tracking and amount of feedback provided to software team.
2. Participants in the development of the project’s software process description.
3. Reviews software engineering activities to verify compliance with the defined software process (compliance with software process).
4. Audits designed software work product to verify compliance with those defined software process (compliance with software activities).
5. Ensures that deviations in software work and work product are documented and handled according to a documented procedure(implementations are recorded ).
6. Records any noncompliance and reports to senior management (detect non compliance activities).
7. With all activities above the SQA group coordinates to control and change management to help to collect and analyze software metrics.