0% found this document useful (0 votes)
11 views33 pages

Quality Control

The document discusses software quality assurance and control. It outlines the key elements of a software quality plan including quality goals, review activities, testing plans, acceptance testing for external software, and configuration management. It differentiates between quality assurance and quality control, with quality assurance focusing on prevention and quality control focusing on detection and correction. Finally, it describes different types of quality control reviews including walkthroughs, checklists, and inspections.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
11 views33 pages

Quality Control

The document discusses software quality assurance and control. It outlines the key elements of a software quality plan including quality goals, review activities, testing plans, acceptance testing for external software, and configuration management. It differentiates between quality assurance and quality control, with quality assurance focusing on prevention and quality control focusing on detection and correction. Finally, it describes different types of quality control reviews including walkthroughs, checklists, and inspections.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 33

Software Quality Assurance

(SQA) - SWE 333

Software quality planning and control

Dr. Khalid Alnafjan.


L. Wea’am Alrashed.

Galin, SQA from theory to implementation © Pearson Education Limited 2004


Outline
• Quality plan
• Elements of a software quality plan
• Quality Control and Quality Assurance
• Quality Control Review types

Galin, SQA from theory to implementation © Pearson Education Limited 2004


Quality Plan

Quality plan Defines the Quality goals and


activities performed to ensure the
satisfaction of these goals.

Galin, SQA from theory to implementation © Pearson Education Limited 2004


Elements of a software quality plan

1. List of quality goals.


2. Review activities.
3. Software tests.
4. Planned acceptance tests for externally
developed software.
5. Configuration management plans: tools,
procedures and data for version releases.

Galin, SQA from theory to implementation © Pearson Education Limited 2004


Elements of a software quality plan
1. Quality goals

Refers to the developed software quality requirements.

The quality goals should reflect the major acceptance


criteria indicated in the customer’s requirement
document (i.e., the RFP document). As such, quality
goals serve as measures of the successful achievement
of the customer’s quality requirements.

Galin, SQA from theory to implementation © Pearson Education Limited 2004


Quality goal example

A software system to serve the help desk operations of


an electrical appliance manufacturer is to be developed.
The help desk system (HDS) is intended to operate for
100 hours per week.
The software quality assurance team was requested to
prepare a list of quantitative quality goals appropriate to
certain qualitative requirements, as shown in Table 6.1.

Galin, SQA from theory to implementation © Pearson Education Limited 2004


Galin, SQA from theory to implementation © Pearson Education Limited 2004
Elements of a software quality plan
2. Planned review activities
• A list of all SDLC activities and deliverables to be
reviewed to ensure that quality meets requirements.

• Example: Development plan review, software


requirements specification review, preliminary design
review, detailed design review, database design review,
test plan review, software test procedure review, operator
manual review, installation plan review, training
objectives review, code inspections, …
Galin, SQA from theory to implementation © Pearson Education Limited 2004
Elements of a software quality plan
2. Planned review activities
The following should be determined for each activity:
• The scope of the review activity
• The type of the review activity
• The schedule of review activities (as defined by its
priority and the succeeding activities of the project
process)
• The specific procedures to be applied
• Who is responsible for carrying out the review activity?

Galin, SQA from theory to implementation © Pearson Education Limited 2004


Elements of a software quality plan
3. Planned software tests

The quality plan should provide a complete list of


planned software tests, with the following designated
for each test:
• The unit, integration or the complete system to be tested.
• The type of testing activities to be carried out.
• The planned test schedule.
• The specific procedures to be applied.
• Who is responsible for carrying out the test.

Galin, SQA from theory to implementation © Pearson Education Limited 2004


Elements of a software quality plan
4. Planned acceptance tests for externally
developed software

• A complete list of the acceptance tests planned for


externally developed software should be provided
within the quality plan.

• The acceptance tests for externally developed


software should parallel those used for internally
developed software tests.
Galin, SQA from theory to implementation © Pearson Education Limited 2004
Elements of a software quality plan
5. Configuration management

The quality plan should specify configuration


management tools and procedures, including those
change-control procedures meant to be applied
throughout the project.

Galin, SQA from theory to implementation © Pearson Education Limited 2004


Elements of a software quality plan
5. Configuration management - Example

Version Control:
The project will be using GitHub for managing the
work as well as the different versions.

Galin, SQA from theory to implementation © Pearson Education Limited 2004


Quality Control and Quality assurance
• Quality control is designed to: detect and correct
defects,
• whereas quality assurance is oriented toward:
preventing them.

• Quality assurance is a managerial function that


prevents problems by heading them off, and by
advising restraint and redirection.

Galin, SQA from theory to implementation © Pearson Education Limited 2004


Quality Control
• Quality control consists of well-defined checks on a
product that are specified in the product quality
plan.

• For software products, quality control typically


includes specification reviews, inspections of code
and documents, and checks for user deliverables.

Galin, SQA from theory to implementation © Pearson Education Limited 2004


Quality Control
• Quality control is defined as the processes and
methods used to monitor work and observe
whether requirements are met. It focuses on reviews
and removal of defects before shipment of products.

• This involves checking the software development


process to ensure that procedures and standards are
being followed.

Galin, SQA from theory to implementation © Pearson Education Limited 2004


Quality Control
• Quality control is usually performed using two
methods.
• Reviews of documents such as requirements
documents and design documents.
• And testing of code and modules

Galin, SQA from theory to implementation © Pearson Education Limited 2004


Quality Assurance vs. Quality Control

Quality Assurance Quality Control


An overall management A series of analytical
plan to guarantee the measurements used
integrity of data to assess the quality of
(The “system”) the analytical data
(The “tools”)

Galin, SQA from theory to implementation © Pearson Education Limited 2004


Quality Assurance vs. Quality Control
• Quality assurance prevents mistakes by several
means such as training and the use of quality tools
(Guidelines, User manuals, Standards, Checklists,
Templates).

• Quality control tries to detect and correct mistakes


using reviews for documentation and testing for
coding.

Galin, SQA from theory to implementation © Pearson Education Limited 2004


Reviews
• This is the principal method of validating the quality of a process
or of a product.
• A group of people carefully examine part or all of a software
system and its associated documentation to find potential problems.
• Code, designs, specifications, test plans, standards, etc. can all be
reviewed.
• Software or documents may be 'signed off' at a review which
signifies that progress to the next development stage has been
approved by management.
Galin, SQA from theory to implementation © Pearson Education Limited 2004
Some common reviews
DPR – Development Plan Review
SRSR – Software Requirement Specification Review
PDR – Preliminary Design Review
DDR – Detailed Design Review
DBDR – Data Base Design Review
TPR – Test Plan Review
STPR – Software Test Procedure Review
VDR – Version Description Review
OMR – Operator Manual Review
SMR – Support Manual Review
TRR – Test Readiness Review
PRR – Product Release Review
IPR – Installation Plan Review
Galin, SQA from theory to implementation © Pearson Education Limited 2004
Quality Control Review types
• The main technique for achieving quality control is the
software checklist, walkthrough and inspection.
• These are different types of reviews
• Walkthrough is an informal review performed by peers. It
need no prior preparation.
• Checklists are list of items that should be checked during the
review.

Galin, SQA from theory to implementation © Pearson Education Limited 2004


Walkthrough
• In Walkthrough a piece of work is given to one or more
colleague.
• They review that work and give their comments in order to
enhance the job.
• Comments are usually in terms of problems detected or
suggestions for further improvement.
• Walkthrough is informal and hence these comments might
not be made.

Galin, SQA from theory to implementation © Pearson Education Limited 2004


Inspection
• Inspection is the most formal review type
• In an inspection a piece of document is given to group of
inspectors in advance with the specific intent of finding errors
in it.
• The inspection group usually includes:

Moderator - leads the inspection, schedules meetings, controls


the meetings, reports inspection results, and follows up on rework
issues.
Galin, SQA from theory to implementation © Pearson Education Limited 2004
Inspection
Author - created or maintains the work product being inspected.
The author may answer questions asked about the product during
the inspection, and he also looks for defects. The author cannot
serve as moderator, reader, or recorder.

Reader - describes the sections of the work product to the team


as they proceed through the inspection. The reader may
paraphrase what is happening in the product, such as describing
what a section of code is supposed to do, but he does not usually
read the product verbatim.

Galin, SQA from theory to implementation © Pearson Education Limited 2004


Inspection
Inspector - attempts to find errors in the product.

All participants actually are acting as inspectors, in addition to


any other responsibilities.

Galin, SQA from theory to implementation © Pearson Education Limited 2004


Quality Control - Inspection

Inspection is a formal type of review. It requires


preparation on the part the review team members before
the inspection meeting takes place. A follow- up stage
is also a requirement of the inspection. This ensures that
any re-working is carried out correctly.

Galin, SQA from theory to implementation © Pearson Education Limited 2004


Inspection and walkthrough
• Inspections and walkthroughs are primarily intended
to discover defects in software code or
documentation..
• Inspections and walkthrough can be held a various
points in development process.
• Inspections and walkthrough have proven to be very
successful tools for improving software quality.

Galin, SQA from theory to implementation © Pearson Education Limited 2004


Checklists
• Checklists are useful to support reviews, inspections,
walkthroughs
• Expertise is captured in a list format
– Less experienced people can use
• Straightforward to use (each check should be
clear, simple to assess/apply)
– Improve consistency of assessments

Galin, SQA from theory to implementation © Pearson Education Limited 2004


Quality Control
Checklist for reviewing java code
Checklist for java code:
• are any while or if conditions closed with semicolon
“;” ?
• are all variables declared ?
• does every ‘‘{’’ have a matching ‘‘}’’?
• does every equality comparison have a double ‘‘=’’?

Galin, SQA from theory to implementation © Pearson Education Limited 2004


Quality Control
Checklist for reviewing software design
Checklist for reviewing software design:
¨Are all significant functions shown in design?
¨Are all significant attributes specified in design?
¨Are all names related to purpose and type and are they
unambiguous?
¨Are all relationships between classes specified?
¨Do all functions have the data necessary for the
function to execute?
Galin, SQA from theory to implementation © Pearson Education Limited 2004
In brief:
Quality assurance is a prevention
strategy, while quality control is a
detection strategy.

Galin, SQA from theory to implementation © Pearson Education Limited 2004


Summary
• There are five element in quality plan.
• Quality control and quality assurance activities serve
different objectives.
• Quality control activities are only a part of the total range
of quality assurance activities.
• checklist, walkthrough and inspection are the main
technique for achieving quality control is the software.

Galin, SQA from theory to implementation © Pearson Education Limited 2004

You might also like