SlideShare a Scribd company logo
2
Most read
4
Most read
6
Most read
Why Do We Test
Software?
MD. SHAFIUZZAMAN
ASSISTANT PROFESSOR
DEPT. OF CSE, JUST
 Software defines behavior
 network routers, finance, switching networks, other infrastructure
 Today’s software market:
 is much bigger
 is more competitive
 has more users
 Embedded Control Applications
 airplanes, air traffic control
 spaceships
 watches
 ovens
 remote controllers
 Agile processes put increased pressure on testers
 Programmers must unit test – with no training or education!
 Tests are key to functional requirements – but who builds those tests ?
2
– PDAs
– memory seats
– DVD players
– garage door openers
– cell phones
3
 Software Fault : A static defect in the software. Faults in software are
equivalent to design mistakes in hardware.
 Software Failure : External, incorrect behavior with respect to the
requirements or other description of the expected behavior
 Software Error : An incorrect internal state that is the manifestation of
some fault
4
 A patient gives a doctor a list of symptoms
 Failures
 The doctor tries to diagnose the root cause
 Fault
 The doctor may look for anomalous internal
conditions (high blood pressure, irregular
heartbeat, bacteria in the blood stream)
 Errors
5
6
public static int numZero (int [ ] arr)
{ // Effects: If arr is null throw NullPointerException
// else return the number of occurrences of 0 in arr
int count = 0;
for (int i = 1; i < arr.length; i++)
{
if (arr [ i ] == 0)
{
count++;
}
}
return count;
}
Fault: Should start
searching at 0, not 1
Test 1
[ 2, 7, 0 ]
Expected: 1
Actual: 1
Test 2
[ 0, 2, 7 ]
Expected: 1
Actual: 0
Error: i is 1, not 0, on
the first iteration
Failure: none
Error: i is 1, not 0
Error propagates to the variable count
Failure: count is 0 at the return statement
The Term Bug
 Bug is used informally
 Sometimes speakers mean fault, sometimes
error, sometimes failure … often the speaker
doesn’t know what it means !
7
BUG
Spectacular Software Failures
8
 Intel’s Pentium FDIV fault : Public relations
nightmare
 THERAC-25 radiation machine : Poor
testing of safety-critical software can cost
lives : 3 patients were killed
Mars Polar
Lander crash
site?
THERAC-25 design
Ariane 5:
exception-handling
bug : forced self
destruct on maiden
flight (64-bit to 16-bit
conversion: about
370 million $ lost)
 NASA’s Mars lander: September 1999,
crashed due to a units integration fault
 Ariane 5 explosion : Millions of $$
9
• Healthcare website : Crashed
repeatedly on launch—never load
tested
• Boeing A220 : Engines failed after
software update allowed excessive
vibrations
• Toyota brakes : Dozens dead, thousands of
crashes
• Northeast blackout : 50 million people, $6
billion USD lost … alarm system failed
• Boeing 737 Max : Crashed due to overly
aggressive software flight overrides
(MCAS)
Northeast Blackout of 2003
10
Affected 10 million
people in Ontario,
Canada
Affected 40 million
people in 8 US
states
Financial losses of
$6 Billion USD
508 generating
units and 256
power plants shut
down
The alarm system in the energy management system failed
due to a software error and operators were not informed of
the power overload in the system
Costly Software Failures
11
 NIST report, “The Economic Impacts of Inadequate
Infrastructure for Software Testing” (2002)
– Inadequate software testing costs the US alone between
$22 and $59 billion annually
– Better approaches could cut this amount in half
 Huge losses due to web application failures
– Financial services : $6.5 million per hour (just in USA!)
– Credit card sales applications : $2.4 million per hour (in
USA)
 In Dec 2006, amazon.com’s BOGO offer turned into a
double discount
 2007 : Symantec says that most security
vulnerabilities are due to faulty software
Testing in the 21st Century
 More safety critical, real-time software
 Embedded software is ubiquitous … check your pockets
 Enterprise applications means bigger programs, more
users
 Paradoxically, free software increases our expectations !
 Security is now all about software faults
 Secure software is reliable software
 The web offers a new deployment platform
 Very competitive and very available to more users
 Web apps are distributed
 Web apps must be highly reliable
12
Validation & Verification
 Validation : The process of evaluating software at the end of software
development to ensure compliance with intended usage
 Verification : The process of determining whether the products of a given
phase of the software development process fulfill the requirements
established during the previous phase
IV&V stands for “independent verification and validation”
13
Cost of Late Testing
14
60
50
40
30
20
10
0
Fault origin (%)
Fault detection (%)
Unit cost (X)
Software Engineering Institute; Carnegie Mellon University; Handbook CMU/SEI-96-HB-002
Assume $1000 unit cost, per fault, 100 faults
Summary:
Why Do We Test Software ? 15
A tester’s goal is to eliminate faults
as early as possible
• Improve quality
• Reduce cost
• Preserve customer satisfaction

More Related Content

PDF
User stories
PPT
Software Testing
PPT
Slides chapters 26-27
PPT
Slides chapters 13-14
PPT
Why test software
DOCX
Concept of Failure, error, fault and defect
DOCX
Software testing techniques
PPTX
Software Testing
User stories
Software Testing
Slides chapters 26-27
Slides chapters 13-14
Why test software
Concept of Failure, error, fault and defect
Software testing techniques
Software Testing

What's hot (20)

PPTX
Presentation (software engineering)
PPT
Software Compatibility testing
PPTX
What are the advantages of non functional testing
PDF
Stm unit1
PDF
Most effective QA & testing types
PPSX
Non functional performance requirements v2.2
PPTX
Overview of Software QA and What is Software Quality
PPT
Taxonomy for bugs
PPTX
The importance of non functional testing
PPT
Software and Hardware Reliability
PPT
Software Testing Life Cycle
PPTX
Quality & Reliability in Software Engineering
PPT
Software testing lecture 10
PPTX
Software testing tools and its taxonomy
PPT
Introduction to Software Engineering 1
PDF
Software testing
PDF
Software Testing
PPTX
Software engineering 23 software reliability
PDF
Use case diagrams
PDF
Software reliability
Presentation (software engineering)
Software Compatibility testing
What are the advantages of non functional testing
Stm unit1
Most effective QA & testing types
Non functional performance requirements v2.2
Overview of Software QA and What is Software Quality
Taxonomy for bugs
The importance of non functional testing
Software and Hardware Reliability
Software Testing Life Cycle
Quality & Reliability in Software Engineering
Software testing lecture 10
Software testing tools and its taxonomy
Introduction to Software Engineering 1
Software testing
Software Testing
Software engineering 23 software reliability
Use case diagrams
Software reliability
Ad

Similar to Why do we test software? (20)

PPTX
Ch01-whyTest.pptx
PPTX
Ch01-whyTest.pptx
PPT
lecture02.ppt
PPTX
SOFTWARE BUGS.pptx for computer science and more
PPTX
Defect Tracking Software Project Presentation
PPT
Good Security Starts with Software Assurance - Software Assurance Market Plac...
PPSX
Software Testing Basics
PDF
software testing
PPT
Industrial Training in Software Testing
PDF
Btech chapter jotesjxisnfis sizbsifnssjzbsoxn
DOCX
Software engineering unit 1
PPTX
Innovative Approaches to Software Dev no good at all
PDF
Software Testing - Sajid Sidi
PPTX
T5_Test_08182022T5_Test_08182022T5_Test_08182022
PPT
SOFWARE QUALITY, INTRODUCTION
PDF
SE2018_Lec 19_ Software Testing
PPTX
Nbt con december-2014-slides
PPTX
Nbt con december-2014-slides
PDF
U test whitepaper_10
PDF
Machine programming
Ch01-whyTest.pptx
Ch01-whyTest.pptx
lecture02.ppt
SOFTWARE BUGS.pptx for computer science and more
Defect Tracking Software Project Presentation
Good Security Starts with Software Assurance - Software Assurance Market Plac...
Software Testing Basics
software testing
Industrial Training in Software Testing
Btech chapter jotesjxisnfis sizbsifnssjzbsoxn
Software engineering unit 1
Innovative Approaches to Software Dev no good at all
Software Testing - Sajid Sidi
T5_Test_08182022T5_Test_08182022T5_Test_08182022
SOFWARE QUALITY, INTRODUCTION
SE2018_Lec 19_ Software Testing
Nbt con december-2014-slides
Nbt con december-2014-slides
U test whitepaper_10
Machine programming
Ad

More from Md. Shafiuzzaman Hira (20)

PPTX
Introduction to Web development
PPTX
Software measurement and estimation
PPT
Software Requirements engineering
PPTX
Software architectural patterns
PPTX
Class based modeling
PPTX
Class diagram
PPTX
State diagram
PDF
Use case Modeling
PDF
Agile Methodology
PDF
Software Process Model
PDF
Introduction to Software Engineering Course
PPTX
PPTX
C structures
PPTX
How to Create Python scripts
PPTX
Regular expressions using Python
PPTX
Password locker project
PPTX
Dictionaries in Python
PPTX
Lists in Python
Introduction to Web development
Software measurement and estimation
Software Requirements engineering
Software architectural patterns
Class based modeling
Class diagram
State diagram
Use case Modeling
Agile Methodology
Software Process Model
Introduction to Software Engineering Course
C structures
How to Create Python scripts
Regular expressions using Python
Password locker project
Dictionaries in Python
Lists in Python

Recently uploaded (20)

PDF
Upgrade and Innovation Strategies for SAP ERP Customers
PDF
Understanding Forklifts - TECH EHS Solution
PPTX
Operating system designcfffgfgggggggvggggggggg
PPTX
CHAPTER 12 - CYBER SECURITY AND FUTURE SKILLS (1) (1).pptx
PPTX
Introduction to Artificial Intelligence
PPTX
Lecture 3: Operating Systems Introduction to Computer Hardware Systems
PPTX
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
PDF
Softaken Excel to vCard Converter Software.pdf
PDF
Odoo Companies in India – Driving Business Transformation.pdf
PDF
Navsoft: AI-Powered Business Solutions & Custom Software Development
PDF
Design an Analysis of Algorithms II-SECS-1021-03
PDF
Wondershare Filmora 15 Crack With Activation Key [2025
PPTX
ManageIQ - Sprint 268 Review - Slide Deck
PDF
medical staffing services at VALiNTRY
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 41
PPTX
ai tools demonstartion for schools and inter college
PPTX
L1 - Introduction to python Backend.pptx
PPTX
Odoo POS Development Services by CandidRoot Solutions
PDF
System and Network Administraation Chapter 3
PPTX
Transform Your Business with a Software ERP System
Upgrade and Innovation Strategies for SAP ERP Customers
Understanding Forklifts - TECH EHS Solution
Operating system designcfffgfgggggggvggggggggg
CHAPTER 12 - CYBER SECURITY AND FUTURE SKILLS (1) (1).pptx
Introduction to Artificial Intelligence
Lecture 3: Operating Systems Introduction to Computer Hardware Systems
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
Softaken Excel to vCard Converter Software.pdf
Odoo Companies in India – Driving Business Transformation.pdf
Navsoft: AI-Powered Business Solutions & Custom Software Development
Design an Analysis of Algorithms II-SECS-1021-03
Wondershare Filmora 15 Crack With Activation Key [2025
ManageIQ - Sprint 268 Review - Slide Deck
medical staffing services at VALiNTRY
Internet Downloader Manager (IDM) Crack 6.42 Build 41
ai tools demonstartion for schools and inter college
L1 - Introduction to python Backend.pptx
Odoo POS Development Services by CandidRoot Solutions
System and Network Administraation Chapter 3
Transform Your Business with a Software ERP System

Why do we test software?

  • 1. Why Do We Test Software? MD. SHAFIUZZAMAN ASSISTANT PROFESSOR DEPT. OF CSE, JUST
  • 2.  Software defines behavior  network routers, finance, switching networks, other infrastructure  Today’s software market:  is much bigger  is more competitive  has more users  Embedded Control Applications  airplanes, air traffic control  spaceships  watches  ovens  remote controllers  Agile processes put increased pressure on testers  Programmers must unit test – with no training or education!  Tests are key to functional requirements – but who builds those tests ? 2 – PDAs – memory seats – DVD players – garage door openers – cell phones
  • 3. 3
  • 4.  Software Fault : A static defect in the software. Faults in software are equivalent to design mistakes in hardware.  Software Failure : External, incorrect behavior with respect to the requirements or other description of the expected behavior  Software Error : An incorrect internal state that is the manifestation of some fault 4
  • 5.  A patient gives a doctor a list of symptoms  Failures  The doctor tries to diagnose the root cause  Fault  The doctor may look for anomalous internal conditions (high blood pressure, irregular heartbeat, bacteria in the blood stream)  Errors 5
  • 6. 6 public static int numZero (int [ ] arr) { // Effects: If arr is null throw NullPointerException // else return the number of occurrences of 0 in arr int count = 0; for (int i = 1; i < arr.length; i++) { if (arr [ i ] == 0) { count++; } } return count; } Fault: Should start searching at 0, not 1 Test 1 [ 2, 7, 0 ] Expected: 1 Actual: 1 Test 2 [ 0, 2, 7 ] Expected: 1 Actual: 0 Error: i is 1, not 0, on the first iteration Failure: none Error: i is 1, not 0 Error propagates to the variable count Failure: count is 0 at the return statement
  • 7. The Term Bug  Bug is used informally  Sometimes speakers mean fault, sometimes error, sometimes failure … often the speaker doesn’t know what it means ! 7 BUG
  • 8. Spectacular Software Failures 8  Intel’s Pentium FDIV fault : Public relations nightmare  THERAC-25 radiation machine : Poor testing of safety-critical software can cost lives : 3 patients were killed Mars Polar Lander crash site? THERAC-25 design Ariane 5: exception-handling bug : forced self destruct on maiden flight (64-bit to 16-bit conversion: about 370 million $ lost)  NASA’s Mars lander: September 1999, crashed due to a units integration fault  Ariane 5 explosion : Millions of $$
  • 9. 9 • Healthcare website : Crashed repeatedly on launch—never load tested • Boeing A220 : Engines failed after software update allowed excessive vibrations • Toyota brakes : Dozens dead, thousands of crashes • Northeast blackout : 50 million people, $6 billion USD lost … alarm system failed • Boeing 737 Max : Crashed due to overly aggressive software flight overrides (MCAS)
  • 10. Northeast Blackout of 2003 10 Affected 10 million people in Ontario, Canada Affected 40 million people in 8 US states Financial losses of $6 Billion USD 508 generating units and 256 power plants shut down The alarm system in the energy management system failed due to a software error and operators were not informed of the power overload in the system
  • 11. Costly Software Failures 11  NIST report, “The Economic Impacts of Inadequate Infrastructure for Software Testing” (2002) – Inadequate software testing costs the US alone between $22 and $59 billion annually – Better approaches could cut this amount in half  Huge losses due to web application failures – Financial services : $6.5 million per hour (just in USA!) – Credit card sales applications : $2.4 million per hour (in USA)  In Dec 2006, amazon.com’s BOGO offer turned into a double discount  2007 : Symantec says that most security vulnerabilities are due to faulty software
  • 12. Testing in the 21st Century  More safety critical, real-time software  Embedded software is ubiquitous … check your pockets  Enterprise applications means bigger programs, more users  Paradoxically, free software increases our expectations !  Security is now all about software faults  Secure software is reliable software  The web offers a new deployment platform  Very competitive and very available to more users  Web apps are distributed  Web apps must be highly reliable 12
  • 13. Validation & Verification  Validation : The process of evaluating software at the end of software development to ensure compliance with intended usage  Verification : The process of determining whether the products of a given phase of the software development process fulfill the requirements established during the previous phase IV&V stands for “independent verification and validation” 13
  • 14. Cost of Late Testing 14 60 50 40 30 20 10 0 Fault origin (%) Fault detection (%) Unit cost (X) Software Engineering Institute; Carnegie Mellon University; Handbook CMU/SEI-96-HB-002 Assume $1000 unit cost, per fault, 100 faults
  • 15. Summary: Why Do We Test Software ? 15 A tester’s goal is to eliminate faults as early as possible • Improve quality • Reduce cost • Preserve customer satisfaction

Editor's Notes

  • #15: 28-Oct-2010, at GTAC, added the animation to demonstrate increasing the number of faults found early, thereby decreasing the number of faults found late, and finally saving money. Lots of it! This animation is fairly complicated … must practice first!!