Software Quality Assurance measures the quality of processes used to create a quality product. It does this by means of audits of the quality management system under which the software system is created. The intention is to breakdown the Software product into attributes that can be measured (in terms of cost benefit). Examples of these attributes are Supportability, Adaptability, Usability and Functionality.
Software Quality Assurance (‘SQA’ or ‘QA’) intend to improve all activities associated with software development, from requirements gathering, design and reviews to coding, testing and implementation. It involves the entire software development process – monitoring and improving the process, making sure that any agreed-upon standards and procedures are followed, and ensuring that problems are found and dealt with, at the earliest possible stage. Unlike testing, which is mainly a ‘detection’ process, QA is ‘preventative’ in that it aims to ensure quality in the methods & processes – and therefore reduce the prevalence of errors in the software....
Software quality measures how well software is designed (quality of design), and how well the software conforms to that design (quality of conformance). Quality of conformance is concerned with implementation and quality of design measures how valid the design and requirements are in creating a worthwhile product.
Quality starts and ends with documentation, if you have no documentation, then you can have no quality. We write down what is supposed to happen. Then we write down what actually happens. Software that contains few faults is considered by some to have higher quality than software that contains many faults....
Testing in itself cannot ensure the quality of software. All testing can do is give you a certain level of assurance (confidence) in the software. On its own, the only thing that testing proves is that under specific controlled conditions, the software functioned as expected by the test cases executed.
Software bugs will almost always exist in any software module with moderate size: not because programmers are careless or irresponsible, but because the complexity of software is generally and design defects can never be completely ruled out....
Software Testing is the process of executing software in a controlled manner with the intent of finding software bugs. Testing software is operating the software under controlled conditions, to:
1. Verify the software behaviour
Verification is the checking or testing of items, including software, for conformance and consistency by evaluating the results against pre-specified requirements. [Verification: Are we building the system right?]...