Software Quality Assurance
Software Quality Assurance
Software Quality Assurance
Project Planning
- Quality Concepts - Quality - Quality Control - Quality Assurance - Cost of Quality - Software Quality Assurance - Software Reviews - Formal Technical Reviews - The Review Meeting - Review Reporting and Record Keeping - Review Guidelines - Formal Approaches to SQA - Statistical Quality Assurance - Software Reliability - The SQA Plan
Quality Concepts
Software quality assurance is an umbrella activity that is applied throughout the software process. SQA encompasses:
(1) a quality management approach (2) effective software engineering technology (3) formal technical reviews (4) a multi-tiered testing strategy (5) document change control (6) software development standard and its control procedure (7) measurement and reporting mechanism
Quality --> refers to measurable characteristics of a software. These items can be compared based on a given standard Two types of quality control: - Quality design -> the characteristics that designers specify for an item. --> includes: requirements, specifications, and the design of the system. - Quality of conformance -> the degree to which the design specification are followed. It focuses on implementation based on the design.
Quality Control
What is quality control -- the series of inspections, reviews, and test used throughout the develop cycle of a software product Quality control includes a feedback loop to the process. Objective ---> minimize the produced defects, increase the product quality Implementation approaches: - Fully automated - Entirely manual - Combination of automated tools and human interactions Key concept of quality control: --> compare the work products with the specified and measurable standards Quality assurance consists of: - the auditing and reporting function of management Goal --> provide management with the necessary data about product quality. --> gain the insight and confidence of product quality
Cost of Quality
Cost of quality --> includes all costs incurred in the pursuit of quality or perform quality related work Quality cost includes: - prevention cost: - quality planning - formal technical reviews - testing equipment - training - appraisal cost: - in-process and inter-process inspection - equipment calibration and maintenance - testing - failure cost: internal failure cost: - rework, repair, and failure mode analysis external failure cost: - complaint resolution - product return and replacement - help line support - warranty work
SQA Group
Who involves quality assurance activities? Software engineers, project managers, customers, sale people, SQA group Engineers involved the quality assurance work: - apply technical methods and measures - conduct formal technical review - perform well-planned software testing The SQA groups role -> serves as the customers in-house representative assist the software engineering team in achieving high-quality The SQA groups responsibility: - quality assurance planning oversight, record keeping, analysis and reporting The SQA groups tasks: - Prepare a SQA plan for a project - Participate in the development of the projects 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
Software Reviews
What is software reviews? - a filter for the software engineering process. Purpose: serves to uncover errors in analysis, design, coding, and testing. Why software reviews? - To err is human - Easy to catch the errors in engineers work A review --> a way to - identify the needed improvements of the parts in a product - confirm the improvement parts of a product. - achieve technical work of more uniform, predicable, and manageable. Different types of reviews: - Informal reviews: informal meeting and informal desk checking - Formal reviews: (design to an audience of customers, management, and staff) Walkthrough, inspection, and round-robin reviews The terms defect and fault are synonymous --> quality problems found after software release Software error refers to a quality problem found b y engineers before software release
A minimum set of guidelines for FTR: - Review the product, not the producer - Set an agenda and maintain it - Limit debate and rebuttal - Enunciate problem areas, but dont attempt to solve every problem noted - Take written notes - Limit the number of participants and insist upon advance preparation - Develop a checklist for each work product that is likely to be reviewed - Allocate resources and time schedule for FTRs - Conduct meaningful training for all reviewers - Review your early reviews