software quality assurance
TRANSCRIPT
![Page 1: Software quality assurance](https://reader035.vdocuments.net/reader035/viewer/2022071723/55c462dcbb61eb514e8b478d/html5/thumbnails/1.jpg)
Software Quality Assurance
Unit IV
![Page 2: Software quality assurance](https://reader035.vdocuments.net/reader035/viewer/2022071723/55c462dcbb61eb514e8b478d/html5/thumbnails/2.jpg)
Software Quality
Software Quality is defined as:Conformance to
Explicitly stated functional and performance requirements,
Explicitly documented development standards, and
Implicit characteristics that are expected of all professionally developed software"
![Page 3: Software quality assurance](https://reader035.vdocuments.net/reader035/viewer/2022071723/55c462dcbb61eb514e8b478d/html5/thumbnails/3.jpg)
Software Quality
This definition emphasizes three points: Software requirements are the foundation
from which quality is measured; lack of conformance to requirements is lack of quality
Specified standards define a set of development criteria that guide the manner in which software is engineered; if the criteria are not followed, lack of quality will almost surely result
A set of implicit requirements often goes unmentioned; if software fails to meet implicit requirements, software quality is suspect
![Page 4: Software quality assurance](https://reader035.vdocuments.net/reader035/viewer/2022071723/55c462dcbb61eb514e8b478d/html5/thumbnails/4.jpg)
Software Quality Factors
Quality of a software product is associated with the following factors: Portability: a software product is said to be
portable if ▪ It can be easily made to work with different
hardware and operating system environments.▪ It can easily interface with external hardware
devices and software products. Usability: a software has good usability if:▪ Different categories of users (both expert and
novice) can easily invoke the functions of the product.
![Page 5: Software quality assurance](https://reader035.vdocuments.net/reader035/viewer/2022071723/55c462dcbb61eb514e8b478d/html5/thumbnails/5.jpg)
Software Quality
Reusability: a software has good reusability if ▪ Different modules of the software can easily be
reused to develop new products. Correctness: a software product is correct if:▪ Different requirements as specified in the SRS
document have been correctly implemented. Maintainability: a software product is
maintainable if:▪ Errors can be easily corrected as and when they
show up.▪ New functions can be easily added to the product,
and▪ The abilities of the product can be easily modified.
![Page 6: Software quality assurance](https://reader035.vdocuments.net/reader035/viewer/2022071723/55c462dcbb61eb514e8b478d/html5/thumbnails/6.jpg)
Responsibility of Software Quality
Software quality is not the sole responsibility of the programmer It extends to software engineers, project
managers, customers, salespeople, and the SQA group
Software engineers apply solid technical methods and measures, conduct formal technical reviews, and perform well-planned software testing.
![Page 7: Software quality assurance](https://reader035.vdocuments.net/reader035/viewer/2022071723/55c462dcbb61eb514e8b478d/html5/thumbnails/7.jpg)
The SQA Group
Serves as the customer's in-house representative.
Assists the software team in achieving a high-quality product.
Views the software from the customer's point of view Does the software adequately meet quality
factors? Has software development been conducted
according to pre-established standards? Have technical disciplines properly performed
their roles as part of the SQA activity? Performs a set of activities that address
quality assurance planning, record keeping, analysis, and reporting.
![Page 8: Software quality assurance](https://reader035.vdocuments.net/reader035/viewer/2022071723/55c462dcbb61eb514e8b478d/html5/thumbnails/8.jpg)
SQA Activities Prepare an SQA plan for a project Participate in the development of the project's
software process description Review software engineering activities to verify
compliance with the defined software process. Audit designated software work products to verify
compliance with those defined as part of the software process
Ensure that deviations in software work and work products are documented and handled according to a documented procedure
Record any noncompliance and reports to senior management
Coordinate the control and management of change
Helps to collect and analyze software metrics
![Page 9: Software quality assurance](https://reader035.vdocuments.net/reader035/viewer/2022071723/55c462dcbb61eb514e8b478d/html5/thumbnails/9.jpg)
Software Reviews
![Page 10: Software quality assurance](https://reader035.vdocuments.net/reader035/viewer/2022071723/55c462dcbb61eb514e8b478d/html5/thumbnails/10.jpg)
Purpose of Software Review
Serve as a filter for the software process Are applied at various points during the
software process Uncover errors that can then be removed Purify the software analysis, design, coding,
and testing activities Catch large classes of errors that escape
the originator more than other practitioners.
![Page 11: Software quality assurance](https://reader035.vdocuments.net/reader035/viewer/2022071723/55c462dcbb61eb514e8b478d/html5/thumbnails/11.jpg)
Purpose of Software Review
Include the formal technical review (also called a walkthrough or inspection) Acts as the most effective SQA filter
Conducted by software engineers for software engineers
Effectively uncovers errors and improves software quality
Has been shown to be up to 75% effective in uncovering design flaws (which constitute 50-65% of all errors in software)
Require the software engineers to expend time and effort, and the organization to cover the costs
![Page 12: Software quality assurance](https://reader035.vdocuments.net/reader035/viewer/2022071723/55c462dcbb61eb514e8b478d/html5/thumbnails/12.jpg)
Formal Technical Review or Walkthrough
Objectives To uncover errors in function, logic, or
implementation for any representation of the software
To verify that the software under review meets its requirements
To ensure that the software has been represented according to predefined standards
To achieve software that is developed in a uniform manner
To make projects more manageable
![Page 13: Software quality assurance](https://reader035.vdocuments.net/reader035/viewer/2022071723/55c462dcbb61eb514e8b478d/html5/thumbnails/13.jpg)
Formal Technical Review or Walkthrough Serves as a training ground for junior software
engineers to observe different approaches to software analysis, design, and construction
Promotes backup and continuity because a number of people become familiar with other parts of the software
May sometimes be a sample-driven review Project managers must quantify those work
products that are the primary targets for formal technical reviews
The sample of products that are reviewed must be representative of the products as a whole
![Page 14: Software quality assurance](https://reader035.vdocuments.net/reader035/viewer/2022071723/55c462dcbb61eb514e8b478d/html5/thumbnails/14.jpg)
SQA Plan: Purpose and Layout Provides a road map for instituting
software quality assurance in an organization
Developed by the SQA group to serve as a template for SQA activities that are instituted for each software project in an organization
![Page 15: Software quality assurance](https://reader035.vdocuments.net/reader035/viewer/2022071723/55c462dcbb61eb514e8b478d/html5/thumbnails/15.jpg)
SQA Plan: Purpose and Layout Structured as follows:
The purpose and scope of the plan A description of all software engineering work
products that fall within the scope of SQA All applicable standards and practices that are
applied during the software process SQA actions and tasks (including reviews and
audits) and their placement throughout the software process
The tools and methods that support SQA actions and tasks
Methods for assembling, safeguarding, and maintaining all SQA-related records
Organizational roles and responsibilities relative to product quality