尊敬的 微信汇率:1円 ≈ 0.046166 元 支付宝汇率:1円 ≈ 0.046257元 [退出登录]
SlideShare a Scribd company logo
Software Quality Assurance
By Mr. Fazal Wahab
What is Software?
According to the IEEE
Software is:
“Computer programs, procedures, and possibly
associated documentation and data pertaining to
the operation of a computer system”.
What is Software Quality ?
According to the IEEE
 Software quality is:
1. The degree to which a system, component, or process
meets specified requirements.
2. The degree to which a system, component, or process
meets customer or user needs or expectations.
According to Pressman
“Conformance to explicitly stated functional and performance
requirements, explicitly documented development standards, and
implicit characteristics that are expected of all professionally
developed software”.
What is Software Quality?
 “Achieving high levels of user satisfaction, portability,
maintainability, robustness, and fitness for use” by
Dr. Barry Boehm.
 Quality means “conformance to user requirements”
by Phil Crosby.
 Edwards Deming considers quality to be “striving for
excellence” in reliability and functions by continuous
improvement in the process of development, support
by statistical analysis of the causes of failure.
What is Software Quality?
 Watts Humphrey, of the SEI, tends to speak of
quality as “achieving excellent levels of fitness for
use, conformance to requirements, reliability and
maintainability.”
 James Martin said that software quality means being
on time, within budget and meeting user needs
 Tom McCabe, the software complexity specialist,
defines quality as “high level of user satisfaction and
low defect levels, often associated with low
complexity
What is Software Quality?
 John Musa of Bell Laboratories states that
quality means combination of “low defect
levels, adherence of software functions to
users needs, and high reliability”
 Bill Perry, head of Quality Assurance Institute
has defined quality as “high levels of user
satisfaction and adherence to requirements”.
Why Quality is Important?
 Quality is critical for survival and success.
 Customers demand quality.
 Everybody seems to understand quality.
 Everybody wants quality
 Everybody has a different perception of
quality.
 Essentially quality means satisfying
customer.
Why Quality is Important?
 Why business should be concerned with
quality:
– Quality is competitive issue now
– Quality is a must for survival
– Quality gives you the global reach
– Quality is cost effective
– Quality helps retain customers and increase
profits
– Quality is the hallmarks of world-class business
Importance of Software Quality
 Software is a major component of computer systems
 (about 80% of the cost) – used for
– communication (e.g. phone system, email system)
– health monitoring,
– transportation (e.g. automobile, aeronautics),
– economic exchanges (e.g. ecommerce),
– entertainment,
– etc.
 Software defects are extremely costly in term of
– money
– reputation
– loss of life
Importance of Software Quality
 Several historic disasters attributed to software
– 1988 shooting down of Airbus 320 by the USS Vincennes cryptic and
misleading output displayed by tracking software
– 1991 patriot missile failure inaccurate calculation of time due to computer
arithmetic errors.
– London Ambulance Service Computer Aided Dispatch System – several
deaths
– On June 3, 1980, the North American Aerospace Defense Command
(NORAD) reported that the U.S. was under missile attack.
– First operational launch attempt of the space shuttle, whose real-time
operating software consists of about 500,000 lines of code, failed
synchronization problem among its flight control computers.
– 9 hour breakdown of AT&T's long distance telephone network caused by
an untested code patch
Software Quality Factors
 Correctness
– accuracy, completeness of required output
– upto-dateness, availability of the information
 Reliability
– Minimum failure rate
 Efficiency
resources needed to perform software function
 Integrity
– software system security, access rights
 Usability
– ability to learn, perform required task
Software Quality Factors
 Maintainability
– effort to identify and fix software failures (modularity, documentation, etc)
 Flexibility
– degree of adaptability (to new customers, tasks, etc)
 Testability
– support for testing (e.g. log files, automatic diagnostics, etc)
 Portability
– adaptation to other environments (hardware, software)
 Reusability
– use of software components for other projects
 Interoperability
– ability to interface with other components/systems
Elements of Quality Definition
Quality factors Predictable Measurable
Defect Level Yes Yes
Defect Origins Yes Yes
Defect Severity Yes Yes
Defect Removal Efficiency Yes Yes
Product Complexity Yes Yes
Project Reliability Yes Yes
Project Maintainability Yes Yes
Project schedules Yes Yes
Project budgets Yes Yes
Portability Yes Yes
Conformance to requirements No Yes
User Satisfaction No Yes
Fitness for Use No Yes
Robustness No No
Software Quality Challenges
 The measures for quality differ from project to project
and organization to organization
– Quality measures used for small systems may not be
appropriate for the large ones.
 Criteria for quality vary as a function of the specific
characteristics of the project, the needs of the users
and stakeholders, and the application requirements
of the system and software.
– Criteria for quality applied to real-time applications are not
always relevant when dealing with systems that are not
real-time.
What is Software Quality
Assurance?
According to the IEEE
Software quality assurance is:
1. A planned and systematic pattern of all actions
necessary to provide adequate confidence that an
item or product conforms to established technical
requirements.
2. A set of activities designed to evaluate the process
by which the products are developed or
manufactured. Contrast with: quality control.
What is Software Quality
Assurance?
According to D. Galin
Software quality assurance is:
“A systematic, planned set of actions necessary to provide
adequate confidence that the software development process
or the maintenance process of a software system product
conforms to established functional technical requirements
as well as with the managerial requirements of keeping the
schedule and operating within the budgetary confines.”
Objectives of SQA
Development:
 Assuring an acceptable level of confidence that the software will conform to
functional technical requirements.
 Assuring an acceptable level of confidence that the software will conform to
managerial scheduling and budgetary requirements.
 Initiation and management of activities for the improvement and greater
efficiency of software development and SQA activities.
Maintenance:
 Assuring an acceptable level of confidence that the software maintenance
activities will conform to the functional technical requirements.
 Assuring an acceptable level of confidence that the software maintenance
activities will conform to managerial scheduling and budgetary requirements.
 Initiate and manage activities to improve and increase the efficiency of software
maintenance and SQA activities.
Three General Principles of QA
Know what you are doing
Know what you should be doing
Know how to measure the difference
Three General Principles of QA
Know what you are doing
 understand what is being built, how it is being built
and what it currently does.
 suppose a software development process with
– management structure (milestones, scheduling)
– reporting policies
– tracking
Three General Principles of QA
 Know what you should be doing
– having explicit requirements and specifications
– suppose a software development process with
 requirements analysis,
 acceptance tests,
 frequent user feedback
Three General Principles of QA
 Know how to measure the difference
– having explicit measures comparing what is being
done from what should be done
– four complementary methods:
 formal methods – verify mathematically specified properties
 testing – explicit input to exercise software and check for
expected output
 inspections – human examination of requirements, design,
code, ... based on checklists
 metrics – measures a known set of properties related to
quality.
Software Quality Challenges
 Complex Software requires different monitoring
procedures than trivial applications.
 Quality criteria vary dramatically depending on the
phase of the project at which the evaluation takes
place
 The measures of the quality must be specific to the
project being evaluated and must assess the
effectiveness of the entire development process, not
just individual segments.
Software Quality Challenges
 Quality cannot be directly checked in the product; it
must planned right from the beginning.
 Quality goals must be clearly defined, effectively
monitored, and rigorously enforced.
 The project must focus on the quality issues of the
project from the beginning, ensuring that quality
criteria are consistent with defined requirements.
 Quality must be planed into the project structure,
constantly evaluated, and corrections applied when
deficiencies are identified.
Changing View of Quality
Past Present
Quality is the responsibility of blue
collar workers and direct labor
employees working on the product
Quality is everyone’s responsibility,
including, white-collar workers, the
indirect labor force and the
overhead staff
Quality defects should be hidden
from the customers and
management
Defects should be highlighted and
brought to the surface for corrective
actions
Quality problems lead to blame,
faulty justification and excuses
Quality problems lead to
cooperative solutions
Corrections-to-quality problems
should be accompanied with
minimum documentation
Documentation is essential for
“lessons learnt” so the mistakes are
not repeated.
Changing View of Quality
Past Present
Increased quality will increase
project costs
Improved quality saves money and
increase business
Quality is internally focused Quality is customer focused
Quality will not occur without close
supervision of people
People want to produce quality
products
Quality occurs during project
execution
Quality occurs at project initiation
and must be planned for within the
project
Quality Control v/s Quality Assurance
 Quality means meeting requirements and meeting
customer needs, which means a defect-free product
from both the producer’s and the customer’s
viewpoint.
 Both quality control and quality assurance are used
to make quality happen.
 Quality is an attribute of a product. A product is
something produced, such as a requirement
document, test data, source code etc.
Quality Control v/s Quality Assurance
Quality Assurance Quality Control
Quality Assurance (QA) is
the set of activities (including
facilitation, training,
measurement and analysis)
needed to provide adequate
confidence that processes
are established and
continuously improved in
order to produce products or
services that conform to
requirements and are fit for
use.
Quality Control (QC) is
defined as the processes and
methods used to compare
product quality to
requirements and applicable
standards, and the action
taken when a
nonconformance is detected.
Quality Control v/s Quality Assurance
Quality Assurance Quality Control
QA is an activity that
establishes and evaluates
the processes that
produce the products. If
there is no process, there
is no role for QA.
QC is an activity that
verifies whether or not the
product produced meets
standards.
Quality Control v/s Quality Assurance
Quality Assurance Quality Control
QA helps establish
processes
QC relates to a specific
product or service
QA sets up measurement
programs to evaluate
processes
QC verified whether
particular attributes exist,
or do not exist, in a
specific product or service
QA identifies weakness in
processes and improves
them
QC identifies defect for the
primary purpose of
correcting defects.
Quality Control v/s Quality Assurance
Quality Assurance Quality Control
QA is a management
responsibility, frequently
performed by a staff
function
QC is the responsibility of
the worker
QA evaluates whether or
not quality control is working
for the primary purpose of
determining whether or not
there is weakness in the
process
Quality Control v/s Quality Assurance
Quality Assurance Quality Control
Defining Processes Walkthrough
Quality Audit Testing
Selection of Tools Inspection
Training Checkpoint review
Impediments to Software Quality
Control
 Quality control is often viewed as a police
action
 IT is often considered an art
 Unclear or ineffective standards and
processes
 Lack of process training
Impediments to Software Quality
Assurance
 Management does not insist on compliance to processes
 Workers are not convinced of the value of processes
 Processes become obsolete
 Processes are difficult to use
 Workers lack training in processes
 Processes are not measurable
 Measurement can threaten employees
 Processes do not focus on critical aspects of products
Quality Assurance at each phase of
SDLC
 Requirements Analysis Phase:
 Three major activities that foster quality
– Measurement of process attributes
– Verification and Validation
– Management
 Managing quality in the analysis stage is a
challenge.
Quality Assurance at each phase of
SDLC
 Good Quality Requirements
– They are precise, with no room for
misinterpretation by users or implementers
– They specify just what the system must do, not
how to do it. They avoid specifying
implementation details
– They show conceptual integrity, building on a
simple set of facilities that interact well with each
other
Quality Assurance at each phase of
SDLC
 Major management deficiencies in most
software development projects:
– Incorrect schedules
– Incorrect cost estimates
– Inadequate project accountability procedures
– Inadequate quality assurance procedures
– Imprecise goals and success criteria
Quality Assurance at each phase of
SDLC
 Design phase:
 A lack of quality in the design process can
invalidate good requirements specification
and can make correct implementation
impossible.
 Industry practice shows that use of checklist
during design helps improve design quality.

More Related Content

What's hot

Software maintenance Unit5
Software maintenance  Unit5Software maintenance  Unit5
Software maintenance Unit5
Mohammad Faizan
 
Software configuration management
Software configuration managementSoftware configuration management
Software configuration management
fizamustanser
 
Software development life cycle (SDLC)
Software development life cycle (SDLC)Software development life cycle (SDLC)
Software development life cycle (SDLC)
Simran Kaur
 
SOFTWARE TESTING
SOFTWARE TESTINGSOFTWARE TESTING
SOFTWARE TESTING
Priyanka Karancy
 
Software Quality Attributes
Software Quality AttributesSoftware Quality Attributes
Software Quality Attributes
Hayim Makabee
 
Cost of software quality ( software quality assurance )
Cost of software quality ( software quality assurance )Cost of software quality ( software quality assurance )
Cost of software quality ( software quality assurance )
Kiran Hanjar
 
Software Testing Fundamentals
Software Testing FundamentalsSoftware Testing Fundamentals
Software Testing Fundamentals
Chankey Pathak
 
Software design
Software designSoftware design
Ch 3 software quality factor
Ch 3 software quality factorCh 3 software quality factor
Ch 3 software quality factor
Kittitouch Suteeca
 
What is Integration Testing? | Edureka
What is Integration Testing? | EdurekaWhat is Integration Testing? | Edureka
What is Integration Testing? | Edureka
Edureka!
 
Requirement Analysis
Requirement AnalysisRequirement Analysis
Requirement Analysis
SADEED AMEEN
 
Unit I Software Testing and Quality Assurance
Unit I Software Testing and Quality AssuranceUnit I Software Testing and Quality Assurance
Unit I Software Testing and Quality Assurance
VinothkumaR Ramu
 
Software requirement and specification
Software requirement and specificationSoftware requirement and specification
Software requirement and specification
Aman Adhikari
 
Software quality assurance
Software quality assuranceSoftware quality assurance
Software quality assurance
Aman Adhikari
 
Software metrics
Software metricsSoftware metrics
Software metrics
syeda madeha azmat
 
Requirements analysis
Requirements analysisRequirements analysis
Requirements analysis
asimnawaz54
 
Requirements Validation
Requirements ValidationRequirements Validation
Requirements Validation
Antonio Villegas
 
10 software maintenance
10 software maintenance10 software maintenance
10 software maintenance
akiara
 
Software Engineering (Software Quality Assurance)
Software Engineering (Software Quality Assurance)Software Engineering (Software Quality Assurance)
Software Engineering (Software Quality Assurance)
ShudipPal
 
Quality assurance and management, software engineering
Quality assurance and management, software engineeringQuality assurance and management, software engineering
Quality assurance and management, software engineering
Rupesh Vaishnav
 

What's hot (20)

Software maintenance Unit5
Software maintenance  Unit5Software maintenance  Unit5
Software maintenance Unit5
 
Software configuration management
Software configuration managementSoftware configuration management
Software configuration management
 
Software development life cycle (SDLC)
Software development life cycle (SDLC)Software development life cycle (SDLC)
Software development life cycle (SDLC)
 
SOFTWARE TESTING
SOFTWARE TESTINGSOFTWARE TESTING
SOFTWARE TESTING
 
Software Quality Attributes
Software Quality AttributesSoftware Quality Attributes
Software Quality Attributes
 
Cost of software quality ( software quality assurance )
Cost of software quality ( software quality assurance )Cost of software quality ( software quality assurance )
Cost of software quality ( software quality assurance )
 
Software Testing Fundamentals
Software Testing FundamentalsSoftware Testing Fundamentals
Software Testing Fundamentals
 
Software design
Software designSoftware design
Software design
 
Ch 3 software quality factor
Ch 3 software quality factorCh 3 software quality factor
Ch 3 software quality factor
 
What is Integration Testing? | Edureka
What is Integration Testing? | EdurekaWhat is Integration Testing? | Edureka
What is Integration Testing? | Edureka
 
Requirement Analysis
Requirement AnalysisRequirement Analysis
Requirement Analysis
 
Unit I Software Testing and Quality Assurance
Unit I Software Testing and Quality AssuranceUnit I Software Testing and Quality Assurance
Unit I Software Testing and Quality Assurance
 
Software requirement and specification
Software requirement and specificationSoftware requirement and specification
Software requirement and specification
 
Software quality assurance
Software quality assuranceSoftware quality assurance
Software quality assurance
 
Software metrics
Software metricsSoftware metrics
Software metrics
 
Requirements analysis
Requirements analysisRequirements analysis
Requirements analysis
 
Requirements Validation
Requirements ValidationRequirements Validation
Requirements Validation
 
10 software maintenance
10 software maintenance10 software maintenance
10 software maintenance
 
Software Engineering (Software Quality Assurance)
Software Engineering (Software Quality Assurance)Software Engineering (Software Quality Assurance)
Software Engineering (Software Quality Assurance)
 
Quality assurance and management, software engineering
Quality assurance and management, software engineeringQuality assurance and management, software engineering
Quality assurance and management, software engineering
 

Viewers also liked

Software Quality Assurance
Software Quality AssuranceSoftware Quality Assurance
Software Quality Assurance
lakshmi1693
 
Software Quality Assurance
Software Quality AssuranceSoftware Quality Assurance
Software Quality Assurance
university of education,Lahore
 
Introduction To Software Quality Assurance
Introduction To Software Quality AssuranceIntroduction To Software Quality Assurance
Introduction To Software Quality Assurance
ruth_reategui
 
Quality Assurance in Software Ind.
Quality Assurance in Software Ind.Quality Assurance in Software Ind.
Quality Assurance in Software Ind.
Heritage Institute Of Tech,India
 
Software Quality Assurance
Software Quality AssuranceSoftware Quality Assurance
Software Quality Assurance
Sachithra Gayan
 
ppt on sOFTWARE DEVELOPMENT LIFE CYCLE
 ppt on sOFTWARE DEVELOPMENT LIFE CYCLE ppt on sOFTWARE DEVELOPMENT LIFE CYCLE
ppt on sOFTWARE DEVELOPMENT LIFE CYCLE
Swarnima Tiwari
 
Software quality
Software qualitySoftware quality
Software quality
jagadeesan
 

Viewers also liked (7)

Software Quality Assurance
Software Quality AssuranceSoftware Quality Assurance
Software Quality Assurance
 
Software Quality Assurance
Software Quality AssuranceSoftware Quality Assurance
Software Quality Assurance
 
Introduction To Software Quality Assurance
Introduction To Software Quality AssuranceIntroduction To Software Quality Assurance
Introduction To Software Quality Assurance
 
Quality Assurance in Software Ind.
Quality Assurance in Software Ind.Quality Assurance in Software Ind.
Quality Assurance in Software Ind.
 
Software Quality Assurance
Software Quality AssuranceSoftware Quality Assurance
Software Quality Assurance
 
ppt on sOFTWARE DEVELOPMENT LIFE CYCLE
 ppt on sOFTWARE DEVELOPMENT LIFE CYCLE ppt on sOFTWARE DEVELOPMENT LIFE CYCLE
ppt on sOFTWARE DEVELOPMENT LIFE CYCLE
 
Software quality
Software qualitySoftware quality
Software quality
 

Similar to Software quality assurance lecture 1

Quality software management
Quality software managementQuality software management
Quality software management
Arun Kumar
 
Software_Verification_and_Validation.ppt
Software_Verification_and_Validation.pptSoftware_Verification_and_Validation.ppt
Software_Verification_and_Validation.ppt
Saba651353
 
Softwaretesting
SoftwaretestingSoftwaretesting
Softwaretesting
nazeer pasha
 
Software testing kn husainy
Software testing kn husainySoftware testing kn husainy
Software testing kn husainy
khalid noman husainy
 
Slides chapters 26-27
Slides chapters 26-27Slides chapters 26-27
Slides chapters 26-27
Priyanka Shetty
 
M017548895
M017548895M017548895
M017548895
IOSR Journals
 
Software testing ppt
Software testing pptSoftware testing ppt
Software testing ppt
Poonkodi Jayakumar
 
Software quality assurance
Software quality assuranceSoftware quality assurance
Software quality assurance
lokareminakshi
 
Software quality assurance
Software quality assuranceSoftware quality assurance
Software quality assurance
Er. Nancy
 
Software Engineering Practices and Issues.pptx
Software Engineering Practices and Issues.pptxSoftware Engineering Practices and Issues.pptx
Software Engineering Practices and Issues.pptx
Nikilesh8
 
09 fse qualitymanagement
09 fse qualitymanagement09 fse qualitymanagement
09 fse qualitymanagement
Mohesh Chandran
 
Software Quality Assurance-se412-v11.ppt
Software Quality Assurance-se412-v11.pptSoftware Quality Assurance-se412-v11.ppt
Software Quality Assurance-se412-v11.ppt
TaghreedAltamimi
 
22317-DIPLOMA_SEM4_software_engg-chap-06.ppt
22317-DIPLOMA_SEM4_software_engg-chap-06.ppt22317-DIPLOMA_SEM4_software_engg-chap-06.ppt
22317-DIPLOMA_SEM4_software_engg-chap-06.ppt
Deepgaichor1
 
SQA-Lecture-4.pptx
SQA-Lecture-4.pptxSQA-Lecture-4.pptx
SQA-Lecture-4.pptx
SaritaAgrahari2
 
SQA Lecture 01 (Introduction) - Testing and SQA
SQA Lecture 01 (Introduction) - Testing and SQASQA Lecture 01 (Introduction) - Testing and SQA
SQA Lecture 01 (Introduction) - Testing and SQA
sunena224
 
free training on Quality Management systems in software industry.Iso 9000,ISO...
free training on Quality Management systems in software industry.Iso 9000,ISO...free training on Quality Management systems in software industry.Iso 9000,ISO...
free training on Quality Management systems in software industry.Iso 9000,ISO...
aaditya
 
Quality Management
Quality ManagementQuality Management
Quality Management
Buchiri
 
Ch27
Ch27Ch27
Ch27
phanleson
 
Quality Mangt
Quality MangtQuality Mangt
Quality Mangt
ajithsrc
 
16. cmm pgp
16. cmm pgp16. cmm pgp

Similar to Software quality assurance lecture 1 (20)

Quality software management
Quality software managementQuality software management
Quality software management
 
Software_Verification_and_Validation.ppt
Software_Verification_and_Validation.pptSoftware_Verification_and_Validation.ppt
Software_Verification_and_Validation.ppt
 
Softwaretesting
SoftwaretestingSoftwaretesting
Softwaretesting
 
Software testing kn husainy
Software testing kn husainySoftware testing kn husainy
Software testing kn husainy
 
Slides chapters 26-27
Slides chapters 26-27Slides chapters 26-27
Slides chapters 26-27
 
M017548895
M017548895M017548895
M017548895
 
Software testing ppt
Software testing pptSoftware testing ppt
Software testing ppt
 
Software quality assurance
Software quality assuranceSoftware quality assurance
Software quality assurance
 
Software quality assurance
Software quality assuranceSoftware quality assurance
Software quality assurance
 
Software Engineering Practices and Issues.pptx
Software Engineering Practices and Issues.pptxSoftware Engineering Practices and Issues.pptx
Software Engineering Practices and Issues.pptx
 
09 fse qualitymanagement
09 fse qualitymanagement09 fse qualitymanagement
09 fse qualitymanagement
 
Software Quality Assurance-se412-v11.ppt
Software Quality Assurance-se412-v11.pptSoftware Quality Assurance-se412-v11.ppt
Software Quality Assurance-se412-v11.ppt
 
22317-DIPLOMA_SEM4_software_engg-chap-06.ppt
22317-DIPLOMA_SEM4_software_engg-chap-06.ppt22317-DIPLOMA_SEM4_software_engg-chap-06.ppt
22317-DIPLOMA_SEM4_software_engg-chap-06.ppt
 
SQA-Lecture-4.pptx
SQA-Lecture-4.pptxSQA-Lecture-4.pptx
SQA-Lecture-4.pptx
 
SQA Lecture 01 (Introduction) - Testing and SQA
SQA Lecture 01 (Introduction) - Testing and SQASQA Lecture 01 (Introduction) - Testing and SQA
SQA Lecture 01 (Introduction) - Testing and SQA
 
free training on Quality Management systems in software industry.Iso 9000,ISO...
free training on Quality Management systems in software industry.Iso 9000,ISO...free training on Quality Management systems in software industry.Iso 9000,ISO...
free training on Quality Management systems in software industry.Iso 9000,ISO...
 
Quality Management
Quality ManagementQuality Management
Quality Management
 
Ch27
Ch27Ch27
Ch27
 
Quality Mangt
Quality MangtQuality Mangt
Quality Mangt
 
16. cmm pgp
16. cmm pgp16. cmm pgp
16. cmm pgp
 

More from Abdul Basit

Atlassian git cheatsheet
Atlassian git cheatsheetAtlassian git cheatsheet
Atlassian git cheatsheet
Abdul Basit
 
Github git-cheat-sheet
Github git-cheat-sheetGithub git-cheat-sheet
Github git-cheat-sheet
Abdul Basit
 
White box testing
White box testingWhite box testing
White box testing
Abdul Basit
 
Web testing
Web testingWeb testing
Web testing
Abdul Basit
 
Testing the documentation
Testing the documentationTesting the documentation
Testing the documentation
Abdul Basit
 
Testing software security
Testing software securityTesting software security
Testing software security
Abdul Basit
 
Testing fundamentals
Testing fundamentalsTesting fundamentals
Testing fundamentals
Abdul Basit
 
Test planning
Test planningTest planning
Test planning
Abdul Basit
 
Test cases planning
Test cases planningTest cases planning
Test cases planning
Abdul Basit
 
Software Testing
Software TestingSoftware Testing
Software Testing
Abdul Basit
 
Software Compatibility testing
Software Compatibility testingSoftware Compatibility testing
Software Compatibility testing
Abdul Basit
 
Black box testing
Black box testingBlack box testing
Black box testing
Abdul Basit
 
Software Automated testing and tools
Software Automated testing and toolsSoftware Automated testing and tools
Software Automated testing and tools
Abdul Basit
 
Why test software
Why test softwareWhy test software
Why test software
Abdul Basit
 
Git Developer Cheatsheet
Git Developer CheatsheetGit Developer Cheatsheet
Git Developer Cheatsheet
Abdul Basit
 
Static white box testing lecture 12
Static white box testing lecture 12Static white box testing lecture 12
Static white box testing lecture 12
Abdul Basit
 
Software testing lecture 10
Software testing lecture 10Software testing lecture 10
Software testing lecture 10
Abdul Basit
 
Software testing lecture 9
Software testing lecture 9Software testing lecture 9
Software testing lecture 9
Abdul Basit
 
Software measurement lecture 7
Software measurement lecture 7Software measurement lecture 7
Software measurement lecture 7
Abdul Basit
 
Planning for software quality assurance lecture 6
Planning for software quality assurance lecture 6Planning for software quality assurance lecture 6
Planning for software quality assurance lecture 6
Abdul Basit
 

More from Abdul Basit (20)

Atlassian git cheatsheet
Atlassian git cheatsheetAtlassian git cheatsheet
Atlassian git cheatsheet
 
Github git-cheat-sheet
Github git-cheat-sheetGithub git-cheat-sheet
Github git-cheat-sheet
 
White box testing
White box testingWhite box testing
White box testing
 
Web testing
Web testingWeb testing
Web testing
 
Testing the documentation
Testing the documentationTesting the documentation
Testing the documentation
 
Testing software security
Testing software securityTesting software security
Testing software security
 
Testing fundamentals
Testing fundamentalsTesting fundamentals
Testing fundamentals
 
Test planning
Test planningTest planning
Test planning
 
Test cases planning
Test cases planningTest cases planning
Test cases planning
 
Software Testing
Software TestingSoftware Testing
Software Testing
 
Software Compatibility testing
Software Compatibility testingSoftware Compatibility testing
Software Compatibility testing
 
Black box testing
Black box testingBlack box testing
Black box testing
 
Software Automated testing and tools
Software Automated testing and toolsSoftware Automated testing and tools
Software Automated testing and tools
 
Why test software
Why test softwareWhy test software
Why test software
 
Git Developer Cheatsheet
Git Developer CheatsheetGit Developer Cheatsheet
Git Developer Cheatsheet
 
Static white box testing lecture 12
Static white box testing lecture 12Static white box testing lecture 12
Static white box testing lecture 12
 
Software testing lecture 10
Software testing lecture 10Software testing lecture 10
Software testing lecture 10
 
Software testing lecture 9
Software testing lecture 9Software testing lecture 9
Software testing lecture 9
 
Software measurement lecture 7
Software measurement lecture 7Software measurement lecture 7
Software measurement lecture 7
 
Planning for software quality assurance lecture 6
Planning for software quality assurance lecture 6Planning for software quality assurance lecture 6
Planning for software quality assurance lecture 6
 

Recently uploaded

MySQL InnoDB Storage Engine: Deep Dive - Mydbops
MySQL InnoDB Storage Engine: Deep Dive - MydbopsMySQL InnoDB Storage Engine: Deep Dive - Mydbops
MySQL InnoDB Storage Engine: Deep Dive - Mydbops
Mydbops
 
DynamoDB to ScyllaDB: Technical Comparison and the Path to Success
DynamoDB to ScyllaDB: Technical Comparison and the Path to SuccessDynamoDB to ScyllaDB: Technical Comparison and the Path to Success
DynamoDB to ScyllaDB: Technical Comparison and the Path to Success
ScyllaDB
 
Poznań ACE event - 19.06.2024 Team 24 Wrapup slidedeck
Poznań ACE event - 19.06.2024 Team 24 Wrapup slidedeckPoznań ACE event - 19.06.2024 Team 24 Wrapup slidedeck
Poznań ACE event - 19.06.2024 Team 24 Wrapup slidedeck
FilipTomaszewski5
 
intra-mart Accel series 2024 Spring updates_En
intra-mart Accel series 2024 Spring updates_Enintra-mart Accel series 2024 Spring updates_En
intra-mart Accel series 2024 Spring updates_En
NTTDATA INTRAMART
 
Northern Engraving | Modern Metal Trim, Nameplates and Appliance Panels
Northern Engraving | Modern Metal Trim, Nameplates and Appliance PanelsNorthern Engraving | Modern Metal Trim, Nameplates and Appliance Panels
Northern Engraving | Modern Metal Trim, Nameplates and Appliance Panels
Northern Engraving
 
Building a Semantic Layer of your Data Platform
Building a Semantic Layer of your Data PlatformBuilding a Semantic Layer of your Data Platform
Building a Semantic Layer of your Data Platform
Enterprise Knowledge
 
Real-Time Persisted Events at Supercell
Real-Time Persisted Events at  SupercellReal-Time Persisted Events at  Supercell
Real-Time Persisted Events at Supercell
ScyllaDB
 
ScyllaDB Leaps Forward with Dor Laor, CEO of ScyllaDB
ScyllaDB Leaps Forward with Dor Laor, CEO of ScyllaDBScyllaDB Leaps Forward with Dor Laor, CEO of ScyllaDB
ScyllaDB Leaps Forward with Dor Laor, CEO of ScyllaDB
ScyllaDB
 
CNSCon 2024 Lightning Talk: Don’t Make Me Impersonate My Identity
CNSCon 2024 Lightning Talk: Don’t Make Me Impersonate My IdentityCNSCon 2024 Lightning Talk: Don’t Make Me Impersonate My Identity
CNSCon 2024 Lightning Talk: Don’t Make Me Impersonate My Identity
Cynthia Thomas
 
Discover the Unseen: Tailored Recommendation of Unwatched Content
Discover the Unseen: Tailored Recommendation of Unwatched ContentDiscover the Unseen: Tailored Recommendation of Unwatched Content
Discover the Unseen: Tailored Recommendation of Unwatched Content
ScyllaDB
 
Introducing BoxLang : A new JVM language for productivity and modularity!
Introducing BoxLang : A new JVM language for productivity and modularity!Introducing BoxLang : A new JVM language for productivity and modularity!
Introducing BoxLang : A new JVM language for productivity and modularity!
Ortus Solutions, Corp
 
ScyllaDB Real-Time Event Processing with CDC
ScyllaDB Real-Time Event Processing with CDCScyllaDB Real-Time Event Processing with CDC
ScyllaDB Real-Time Event Processing with CDC
ScyllaDB
 
MongoDB to ScyllaDB: Technical Comparison and the Path to Success
MongoDB to ScyllaDB: Technical Comparison and the Path to SuccessMongoDB to ScyllaDB: Technical Comparison and the Path to Success
MongoDB to ScyllaDB: Technical Comparison and the Path to Success
ScyllaDB
 
Containers & AI - Beauty and the Beast!?!
Containers & AI - Beauty and the Beast!?!Containers & AI - Beauty and the Beast!?!
Containers & AI - Beauty and the Beast!?!
Tobias Schneck
 
An Introduction to All Data Enterprise Integration
An Introduction to All Data Enterprise IntegrationAn Introduction to All Data Enterprise Integration
An Introduction to All Data Enterprise Integration
Safe Software
 
Communications Mining Series - Zero to Hero - Session 2
Communications Mining Series - Zero to Hero - Session 2Communications Mining Series - Zero to Hero - Session 2
Communications Mining Series - Zero to Hero - Session 2
DianaGray10
 
Fuxnet [EN] .pdf
Fuxnet [EN]                                   .pdfFuxnet [EN]                                   .pdf
Fuxnet [EN] .pdf
Overkill Security
 
Chapter 5 - Managing Test Activities V4.0
Chapter 5 - Managing Test Activities V4.0Chapter 5 - Managing Test Activities V4.0
Chapter 5 - Managing Test Activities V4.0
Neeraj Kumar Singh
 
Session 1 - Intro to Robotic Process Automation.pdf
Session 1 - Intro to Robotic Process Automation.pdfSession 1 - Intro to Robotic Process Automation.pdf
Session 1 - Intro to Robotic Process Automation.pdf
UiPathCommunity
 
Automation Student Developers Session 3: Introduction to UI Automation
Automation Student Developers Session 3: Introduction to UI AutomationAutomation Student Developers Session 3: Introduction to UI Automation
Automation Student Developers Session 3: Introduction to UI Automation
UiPathCommunity
 

Recently uploaded (20)

MySQL InnoDB Storage Engine: Deep Dive - Mydbops
MySQL InnoDB Storage Engine: Deep Dive - MydbopsMySQL InnoDB Storage Engine: Deep Dive - Mydbops
MySQL InnoDB Storage Engine: Deep Dive - Mydbops
 
DynamoDB to ScyllaDB: Technical Comparison and the Path to Success
DynamoDB to ScyllaDB: Technical Comparison and the Path to SuccessDynamoDB to ScyllaDB: Technical Comparison and the Path to Success
DynamoDB to ScyllaDB: Technical Comparison and the Path to Success
 
Poznań ACE event - 19.06.2024 Team 24 Wrapup slidedeck
Poznań ACE event - 19.06.2024 Team 24 Wrapup slidedeckPoznań ACE event - 19.06.2024 Team 24 Wrapup slidedeck
Poznań ACE event - 19.06.2024 Team 24 Wrapup slidedeck
 
intra-mart Accel series 2024 Spring updates_En
intra-mart Accel series 2024 Spring updates_Enintra-mart Accel series 2024 Spring updates_En
intra-mart Accel series 2024 Spring updates_En
 
Northern Engraving | Modern Metal Trim, Nameplates and Appliance Panels
Northern Engraving | Modern Metal Trim, Nameplates and Appliance PanelsNorthern Engraving | Modern Metal Trim, Nameplates and Appliance Panels
Northern Engraving | Modern Metal Trim, Nameplates and Appliance Panels
 
Building a Semantic Layer of your Data Platform
Building a Semantic Layer of your Data PlatformBuilding a Semantic Layer of your Data Platform
Building a Semantic Layer of your Data Platform
 
Real-Time Persisted Events at Supercell
Real-Time Persisted Events at  SupercellReal-Time Persisted Events at  Supercell
Real-Time Persisted Events at Supercell
 
ScyllaDB Leaps Forward with Dor Laor, CEO of ScyllaDB
ScyllaDB Leaps Forward with Dor Laor, CEO of ScyllaDBScyllaDB Leaps Forward with Dor Laor, CEO of ScyllaDB
ScyllaDB Leaps Forward with Dor Laor, CEO of ScyllaDB
 
CNSCon 2024 Lightning Talk: Don’t Make Me Impersonate My Identity
CNSCon 2024 Lightning Talk: Don’t Make Me Impersonate My IdentityCNSCon 2024 Lightning Talk: Don’t Make Me Impersonate My Identity
CNSCon 2024 Lightning Talk: Don’t Make Me Impersonate My Identity
 
Discover the Unseen: Tailored Recommendation of Unwatched Content
Discover the Unseen: Tailored Recommendation of Unwatched ContentDiscover the Unseen: Tailored Recommendation of Unwatched Content
Discover the Unseen: Tailored Recommendation of Unwatched Content
 
Introducing BoxLang : A new JVM language for productivity and modularity!
Introducing BoxLang : A new JVM language for productivity and modularity!Introducing BoxLang : A new JVM language for productivity and modularity!
Introducing BoxLang : A new JVM language for productivity and modularity!
 
ScyllaDB Real-Time Event Processing with CDC
ScyllaDB Real-Time Event Processing with CDCScyllaDB Real-Time Event Processing with CDC
ScyllaDB Real-Time Event Processing with CDC
 
MongoDB to ScyllaDB: Technical Comparison and the Path to Success
MongoDB to ScyllaDB: Technical Comparison and the Path to SuccessMongoDB to ScyllaDB: Technical Comparison and the Path to Success
MongoDB to ScyllaDB: Technical Comparison and the Path to Success
 
Containers & AI - Beauty and the Beast!?!
Containers & AI - Beauty and the Beast!?!Containers & AI - Beauty and the Beast!?!
Containers & AI - Beauty and the Beast!?!
 
An Introduction to All Data Enterprise Integration
An Introduction to All Data Enterprise IntegrationAn Introduction to All Data Enterprise Integration
An Introduction to All Data Enterprise Integration
 
Communications Mining Series - Zero to Hero - Session 2
Communications Mining Series - Zero to Hero - Session 2Communications Mining Series - Zero to Hero - Session 2
Communications Mining Series - Zero to Hero - Session 2
 
Fuxnet [EN] .pdf
Fuxnet [EN]                                   .pdfFuxnet [EN]                                   .pdf
Fuxnet [EN] .pdf
 
Chapter 5 - Managing Test Activities V4.0
Chapter 5 - Managing Test Activities V4.0Chapter 5 - Managing Test Activities V4.0
Chapter 5 - Managing Test Activities V4.0
 
Session 1 - Intro to Robotic Process Automation.pdf
Session 1 - Intro to Robotic Process Automation.pdfSession 1 - Intro to Robotic Process Automation.pdf
Session 1 - Intro to Robotic Process Automation.pdf
 
Automation Student Developers Session 3: Introduction to UI Automation
Automation Student Developers Session 3: Introduction to UI AutomationAutomation Student Developers Session 3: Introduction to UI Automation
Automation Student Developers Session 3: Introduction to UI Automation
 

Software quality assurance lecture 1

  • 2. What is Software? According to the IEEE Software is: “Computer programs, procedures, and possibly associated documentation and data pertaining to the operation of a computer system”.
  • 3. What is Software Quality ? According to the IEEE  Software quality is: 1. The degree to which a system, component, or process meets specified requirements. 2. The degree to which a system, component, or process meets customer or user needs or expectations. According to Pressman “Conformance to explicitly stated functional and performance requirements, explicitly documented development standards, and implicit characteristics that are expected of all professionally developed software”.
  • 4. What is Software Quality?  “Achieving high levels of user satisfaction, portability, maintainability, robustness, and fitness for use” by Dr. Barry Boehm.  Quality means “conformance to user requirements” by Phil Crosby.  Edwards Deming considers quality to be “striving for excellence” in reliability and functions by continuous improvement in the process of development, support by statistical analysis of the causes of failure.
  • 5. What is Software Quality?  Watts Humphrey, of the SEI, tends to speak of quality as “achieving excellent levels of fitness for use, conformance to requirements, reliability and maintainability.”  James Martin said that software quality means being on time, within budget and meeting user needs  Tom McCabe, the software complexity specialist, defines quality as “high level of user satisfaction and low defect levels, often associated with low complexity
  • 6. What is Software Quality?  John Musa of Bell Laboratories states that quality means combination of “low defect levels, adherence of software functions to users needs, and high reliability”  Bill Perry, head of Quality Assurance Institute has defined quality as “high levels of user satisfaction and adherence to requirements”.
  • 7. Why Quality is Important?  Quality is critical for survival and success.  Customers demand quality.  Everybody seems to understand quality.  Everybody wants quality  Everybody has a different perception of quality.  Essentially quality means satisfying customer.
  • 8. Why Quality is Important?  Why business should be concerned with quality: – Quality is competitive issue now – Quality is a must for survival – Quality gives you the global reach – Quality is cost effective – Quality helps retain customers and increase profits – Quality is the hallmarks of world-class business
  • 9. Importance of Software Quality  Software is a major component of computer systems  (about 80% of the cost) – used for – communication (e.g. phone system, email system) – health monitoring, – transportation (e.g. automobile, aeronautics), – economic exchanges (e.g. ecommerce), – entertainment, – etc.  Software defects are extremely costly in term of – money – reputation – loss of life
  • 10. Importance of Software Quality  Several historic disasters attributed to software – 1988 shooting down of Airbus 320 by the USS Vincennes cryptic and misleading output displayed by tracking software – 1991 patriot missile failure inaccurate calculation of time due to computer arithmetic errors. – London Ambulance Service Computer Aided Dispatch System – several deaths – On June 3, 1980, the North American Aerospace Defense Command (NORAD) reported that the U.S. was under missile attack. – First operational launch attempt of the space shuttle, whose real-time operating software consists of about 500,000 lines of code, failed synchronization problem among its flight control computers. – 9 hour breakdown of AT&T's long distance telephone network caused by an untested code patch
  • 11. Software Quality Factors  Correctness – accuracy, completeness of required output – upto-dateness, availability of the information  Reliability – Minimum failure rate  Efficiency resources needed to perform software function  Integrity – software system security, access rights  Usability – ability to learn, perform required task
  • 12. Software Quality Factors  Maintainability – effort to identify and fix software failures (modularity, documentation, etc)  Flexibility – degree of adaptability (to new customers, tasks, etc)  Testability – support for testing (e.g. log files, automatic diagnostics, etc)  Portability – adaptation to other environments (hardware, software)  Reusability – use of software components for other projects  Interoperability – ability to interface with other components/systems
  • 13. Elements of Quality Definition Quality factors Predictable Measurable Defect Level Yes Yes Defect Origins Yes Yes Defect Severity Yes Yes Defect Removal Efficiency Yes Yes Product Complexity Yes Yes Project Reliability Yes Yes Project Maintainability Yes Yes Project schedules Yes Yes Project budgets Yes Yes Portability Yes Yes Conformance to requirements No Yes User Satisfaction No Yes Fitness for Use No Yes Robustness No No
  • 14. Software Quality Challenges  The measures for quality differ from project to project and organization to organization – Quality measures used for small systems may not be appropriate for the large ones.  Criteria for quality vary as a function of the specific characteristics of the project, the needs of the users and stakeholders, and the application requirements of the system and software. – Criteria for quality applied to real-time applications are not always relevant when dealing with systems that are not real-time.
  • 15. What is Software Quality Assurance? According to the IEEE Software quality assurance is: 1. A planned and systematic pattern of all actions necessary to provide adequate confidence that an item or product conforms to established technical requirements. 2. A set of activities designed to evaluate the process by which the products are developed or manufactured. Contrast with: quality control.
  • 16. What is Software Quality Assurance? According to D. Galin Software quality assurance is: “A systematic, planned set of actions necessary to provide adequate confidence that the software development process or the maintenance process of a software system product conforms to established functional technical requirements as well as with the managerial requirements of keeping the schedule and operating within the budgetary confines.”
  • 17. Objectives of SQA Development:  Assuring an acceptable level of confidence that the software will conform to functional technical requirements.  Assuring an acceptable level of confidence that the software will conform to managerial scheduling and budgetary requirements.  Initiation and management of activities for the improvement and greater efficiency of software development and SQA activities. Maintenance:  Assuring an acceptable level of confidence that the software maintenance activities will conform to the functional technical requirements.  Assuring an acceptable level of confidence that the software maintenance activities will conform to managerial scheduling and budgetary requirements.  Initiate and manage activities to improve and increase the efficiency of software maintenance and SQA activities.
  • 18. Three General Principles of QA Know what you are doing Know what you should be doing Know how to measure the difference
  • 19. Three General Principles of QA Know what you are doing  understand what is being built, how it is being built and what it currently does.  suppose a software development process with – management structure (milestones, scheduling) – reporting policies – tracking
  • 20. Three General Principles of QA  Know what you should be doing – having explicit requirements and specifications – suppose a software development process with  requirements analysis,  acceptance tests,  frequent user feedback
  • 21. Three General Principles of QA  Know how to measure the difference – having explicit measures comparing what is being done from what should be done – four complementary methods:  formal methods – verify mathematically specified properties  testing – explicit input to exercise software and check for expected output  inspections – human examination of requirements, design, code, ... based on checklists  metrics – measures a known set of properties related to quality.
  • 22. Software Quality Challenges  Complex Software requires different monitoring procedures than trivial applications.  Quality criteria vary dramatically depending on the phase of the project at which the evaluation takes place  The measures of the quality must be specific to the project being evaluated and must assess the effectiveness of the entire development process, not just individual segments.
  • 23. Software Quality Challenges  Quality cannot be directly checked in the product; it must planned right from the beginning.  Quality goals must be clearly defined, effectively monitored, and rigorously enforced.  The project must focus on the quality issues of the project from the beginning, ensuring that quality criteria are consistent with defined requirements.  Quality must be planed into the project structure, constantly evaluated, and corrections applied when deficiencies are identified.
  • 24. Changing View of Quality Past Present Quality is the responsibility of blue collar workers and direct labor employees working on the product Quality is everyone’s responsibility, including, white-collar workers, the indirect labor force and the overhead staff Quality defects should be hidden from the customers and management Defects should be highlighted and brought to the surface for corrective actions Quality problems lead to blame, faulty justification and excuses Quality problems lead to cooperative solutions Corrections-to-quality problems should be accompanied with minimum documentation Documentation is essential for “lessons learnt” so the mistakes are not repeated.
  • 25. Changing View of Quality Past Present Increased quality will increase project costs Improved quality saves money and increase business Quality is internally focused Quality is customer focused Quality will not occur without close supervision of people People want to produce quality products Quality occurs during project execution Quality occurs at project initiation and must be planned for within the project
  • 26. Quality Control v/s Quality Assurance  Quality means meeting requirements and meeting customer needs, which means a defect-free product from both the producer’s and the customer’s viewpoint.  Both quality control and quality assurance are used to make quality happen.  Quality is an attribute of a product. A product is something produced, such as a requirement document, test data, source code etc.
  • 27. Quality Control v/s Quality Assurance Quality Assurance Quality Control Quality Assurance (QA) is the set of activities (including facilitation, training, measurement and analysis) needed to provide adequate confidence that processes are established and continuously improved in order to produce products or services that conform to requirements and are fit for use. Quality Control (QC) is defined as the processes and methods used to compare product quality to requirements and applicable standards, and the action taken when a nonconformance is detected.
  • 28. Quality Control v/s Quality Assurance Quality Assurance Quality Control QA is an activity that establishes and evaluates the processes that produce the products. If there is no process, there is no role for QA. QC is an activity that verifies whether or not the product produced meets standards.
  • 29. Quality Control v/s Quality Assurance Quality Assurance Quality Control QA helps establish processes QC relates to a specific product or service QA sets up measurement programs to evaluate processes QC verified whether particular attributes exist, or do not exist, in a specific product or service QA identifies weakness in processes and improves them QC identifies defect for the primary purpose of correcting defects.
  • 30. Quality Control v/s Quality Assurance Quality Assurance Quality Control QA is a management responsibility, frequently performed by a staff function QC is the responsibility of the worker QA evaluates whether or not quality control is working for the primary purpose of determining whether or not there is weakness in the process
  • 31. Quality Control v/s Quality Assurance Quality Assurance Quality Control Defining Processes Walkthrough Quality Audit Testing Selection of Tools Inspection Training Checkpoint review
  • 32. Impediments to Software Quality Control  Quality control is often viewed as a police action  IT is often considered an art  Unclear or ineffective standards and processes  Lack of process training
  • 33. Impediments to Software Quality Assurance  Management does not insist on compliance to processes  Workers are not convinced of the value of processes  Processes become obsolete  Processes are difficult to use  Workers lack training in processes  Processes are not measurable  Measurement can threaten employees  Processes do not focus on critical aspects of products
  • 34. Quality Assurance at each phase of SDLC  Requirements Analysis Phase:  Three major activities that foster quality – Measurement of process attributes – Verification and Validation – Management  Managing quality in the analysis stage is a challenge.
  • 35. Quality Assurance at each phase of SDLC  Good Quality Requirements – They are precise, with no room for misinterpretation by users or implementers – They specify just what the system must do, not how to do it. They avoid specifying implementation details – They show conceptual integrity, building on a simple set of facilities that interact well with each other
  • 36. Quality Assurance at each phase of SDLC  Major management deficiencies in most software development projects: – Incorrect schedules – Incorrect cost estimates – Inadequate project accountability procedures – Inadequate quality assurance procedures – Imprecise goals and success criteria
  • 37. Quality Assurance at each phase of SDLC  Design phase:  A lack of quality in the design process can invalidate good requirements specification and can make correct implementation impossible.  Industry practice shows that use of checklist during design helps improve design quality.
  翻译: