Software Quality Control and Quality Assurance Introduction Ashima

  • Slides: 18
Download presentation
Software Quality Control and Quality Assurance: Introduction Ashima Wadhwa

Software Quality Control and Quality Assurance: Introduction Ashima Wadhwa

Quality definition: “Conformance to explicitly stated functional and performance requirements, explicitly documented development standards,

Quality definition: “Conformance to explicitly stated functional and performance requirements, explicitly documented development standards, and implicit characteristics that expected from a professional developed software. ”

Software Quality Management • Concerned with ensuring the required level of quality is achieved

Software Quality Management • Concerned with ensuring the required level of quality is achieved in a software product. • Involves the definition of appropriate quality standards and the definition of procedures to ensure that these standards are followed. • Works best when a ‘quality culture’ is created where quality if seen as everyone’s responsibility.

Quality Management Activities • Quality assurance – establishing organizational quality standards and procedures •

Quality Management Activities • Quality assurance – establishing organizational quality standards and procedures • Quality planning – selecting and modifying applicable quality standards and procedures for a particular project • Quality control – ensuring quality standards and procedures are followed by development team Note: Quality management should be separated from project management to ensure independence.

Software Quality Assurance • Goal: to achieve high-quality software product • Three import points

Software Quality Assurance • Goal: to achieve high-quality software product • Three import points for quality measurement: - Use requirements as the foundation - Use specified standards as the criteria - Considering implicit requirements • About quality assurance: • - The first formal quality assurance and control function was introduced at Bell Labs in 1916 in the manufacturing world. • - During the 1950 s and 1960 s, the programmers controls their product quality. • - During the 1970 s, quality assurance standards were introduced first in military contract software development.

What is Quality Assurance? • Quality Assurance is defined as the auditing and reporting

What is Quality Assurance? • Quality Assurance is defined as the auditing and reporting procedures used to provide the stakeholders with data needed to make wellinformed decisions. • It is the Degree to which a system meets specified requirements and customer expectations. It is also monitoring the processes and products throughout the SDLC.

SQA Group Who involves quality assurance activities? Software engineers, project managers, customers, sale people

SQA Group Who involves quality assurance activities? Software engineers, project managers, customers, sale people know as SQA group Engineers involved the quality assurance work: - apply technical methods and measures - conduct formal technical review - perform well-planned software testing The SQA group’s role -> serves as the customer’s in-house representative assist the software engineering team in achieving high-quality The SQA group’s responsibility: - quality assurance planning oversight, record keeping, analysis and reporting

The SQA group’s tasks: - Prepare a SQA plan for a project - Participate

The SQA group’s tasks: - Prepare a SQA plan for a project - Participate in the development of the project’s software process description - Review engineering activities to verify compliance with the defined process - Audits designated software work products to verify compliance the defined process - Ensure the deviations in software work and products according to a documented procedure - Records any noncompliance and reports to senior management

Quality Assurance Criteria: • • • correctness efficiency flexibility integrity interoperability maintainability portability reliability

Quality Assurance Criteria: • • • correctness efficiency flexibility integrity interoperability maintainability portability reliability reusability testability usability

Quality Plan • Identifies the most significant quality attributes appropriate for the product •

Quality Plan • Identifies the most significant quality attributes appropriate for the product • Defines the assessment process in detail for each quality attribute • Indicates which organization standards should be applied and defines new standards as necessary

Quality Control • Examines the software development process to ensure that all relevant procedures

Quality Control • Examines the software development process to ensure that all relevant procedures and standards are being followed • Two basic approaches – Quality reviews – Software measurement and assessment

Quality Reviews • Reviews are the principle means of validating both process and product

Quality Reviews • Reviews are the principle means of validating both process and product quality • Basic procedure is to have a group of people examine a process to find potential problems • Common software review types include – Defect inspection and removal (product) – Progress reviews (product and process) – Quality reviews (product and standards)

Quality Reviews • Group of knowledgeable people examines a software component and its documentation

Quality Reviews • Group of knowledgeable people examines a software component and its documentation • Code, design models, specifications, test plans, standards, etc. can be subjected to review • Once an artifact has been reviewed and ‘signed off’ by the reviewers, management has given its approval to proceed to the next stage of development

Quality Review Process • • • Select a review team Arrange a time and

Quality Review Process • • • Select a review team Arrange a time and place for the review Distribute documents to review Conduct the review Complete the review forms Decide whether to approve artifacts or have them reworked and review them again

Review Purposes • Quality function – part of the general quality management process •

Review Purposes • Quality function – part of the general quality management process • Project management function – provide information to project managers • Training and communication function – product knowledge is shared among development team members

Quality Review Results • Results are the discovery of system defects and inconsistencies •

Quality Review Results • Results are the discovery of system defects and inconsistencies • Review comments need to be classified as – No action (no changes to artifact are required) – Refer for repair (author needs to correct faults) – Reconsider overall design (problem identified impacts other design components) • Requirement and specification problems may require involvement of client to resolve

Software Quality Assurance (SQA) Software Quality Control (SQC) Definition SQA is a set of

Software Quality Assurance (SQA) Software Quality Control (SQC) Definition SQA is a set of activities for ensuring quality in software engineering processes (that ultimately result in quality in software products). The activities establish and evaluate the processes that produce products. SQC is a set of activities for ensuring quality in software products. The activities focus on identifying defects in the actual products produced. Focus Orientation Process focused Prevention oriented Product focused Detection oriented Breadth Organization wide Product/project specific Scope Relates to all products that will ever be created by a process Relates to specific product Activities • Process Definition and Implementation • Audits • Training • Reviews • Testing Criteria

Thank You!!

Thank You!!