SlideShare a Scribd company logo
G Sreenivasulu
M.Tech(Ph.D)
Assistant Professor
Dept. of CSE
STM Text Book:Boris Beizer
Introduction to Testing
Purpose of Testing:
What is testing?
Testing is the process of exercise or verify a system by manual or automated
that satisfies specified requirements.
Purpose of Testing:
The purpose of testing is to find the error that led to the program's failure.
Productivity and Quality in Software:
Phases in a tester's mental life:
tester's mental life can be categorized into the following 5 phases
Phases in a tester's mental life
• Phase 0: (Until 1956: Debugging Oriented) There is no difference
between testing and debugging.
• Phase 1: (1957-1978: Demonstration Oriented) the purpose of
testing here is to show that software works. Highlighted during the late
1970s.
• Phase 2: (1979-1982: Destruction Oriented) the purpose of testing is
to show that software doesn’t work.
• Phase 3: (1983-1987: Evaluation Oriented) the purpose of testing is
not to prove anything but to reduce the risk of not working
• Phase 4: (1988-2000: Prevention Oriented) it is the process to
reduce the labor of testing. By dividing testable and non- testable
code.
Test Design/Testing Process:
Tests should be properly designed and tested before applying it to
the actual code.
Testing isn’t everything:
There are approaches other than testing to create better software.
Methods other than testing include
Inspection Methods: Methods like walkthroughs,formal inspections
Design Style: While designing the software itself, adopting stylistic
objectives
Static Analysis Methods: Includes formal analysis of source code
during compilation
Languages: The source language can help reduce certain kinds of bugs
Development Methodologies and Development Environment:
Dichotomies:(contrast between two things)
• Testing Versus Debugging:
Testing starts with known conditions Debugging starts from unknown conditions
Testing can and should be planned Debugging can and should not be planned
testing can be done without design knowledge Debugging is impossible without design knowledge
Testing can often be done by an outsider Debugging must be done by an insider
Test execution and design can be automated. Automated debugging is still a dream
Function versus Structure:
Functional testing basically concern about only results but not processing
Structural testing basically concern about only results but processing
Designer versus Tester:
Designer is the person who designs the tests
Tester is the one actually tests the code
Modularity versus Efficiency:
A module is a discrete, well-defined, small component of a system
Smaller the modules, difficult to integrate; larger the modules, difficult to understand
Small versus Large:
Programming in large means constructing programs that consists of many
components written by many different programmers
Programming in the small is what we do for ourselves in the privacy of our own
offices
Builder versus Buyer:
Builder: Who designs the system and is accountable to the buyer.
Buyer: Who pays for the system for profits from providing services.
User: Ultimate beneficiary or victim of the system.
Tester: Who is dedicated to the builder's destruction.
Operator: Who has to live with the builders mistakes, the buyers
unclear specifications, testers' oversights and the users' complaints.
Model for Testing:
• Environment :
A Program's environment is the hardware and software required to make it
run
• Program:
Most programs are too complicated to understand in detail.
The concept of the program is to be simplified in order to test it
• Tests:
Tests are formal procedures, Inputs must be prepared, Outcomes should be
predict
tests should be documented, commands need to be executed, and results are to
be observed.
• Bugs:
An unexpected test result may lead us to change the code
Three distinct kinds of testing on a typical software system
Levels of Testing:
Unit / Component Testing:
A Unit is the smallest testable piece of software that can be compiled,
assembled, linked, loaded etc.
Integration Testing:
Integration is the process by which components are aggregated to
create larger components
System Testing:
A System is a big component. System Testing is aimed at revealing
bugs that cannot be attributed to components
Limitations of Testing:
• You cannot test a program completely(total testing is impossible)
• You cannot test every statement of the program
• You cannot test every path
• You cannot test every true and false condition
• You cannot test every condition of a decision node
• You cannot test every valid input
• You cannot test every invalid input
• You can only test against system requirements
• It requires more time and resources to accomplish quality in testing
CONSEQUENCES OF BUGS
Importance of bugs: The importance of bugs depends on
frequency, correction cost, installation cost, and consequences.
• Frequency: How often does that kind of bug occur? Pay more attention
to the more frequent bug types.
• Correction Cost: What does it cost to correct the bug after it is found?
The cost is the sum of 2 factors: (1) the cost of discovery (2) the cost of
correction
• Installation Cost: Installation cost depends on the number of
installations
• Consequences:(Impact/Effect) Consequences of the bug can range
from mild to catastrophic.
Importance($) = Frequency * (Correction cost + Installation cost +
Consequential cost)
The consequences of a bug can be measure in terms of human rather than
machine. Some consequences of a bug on a scale of one to ten are
1. Mild: The effect of this kind of bug is gently (misspelled output )
2. Moderate: The effect of this kind of bug impacts the system's
performance. (Outputs are misleading )
3. Annoying: The effect of this kind of bug impacts system's behavior
(Names are truncated/cutting)
4. Disturbing: The effect of this kind of bug refuses transactions (ATM
won’t give you money or credit card is declared invalid)
5. Serious: The effect of this kind of bug loses its transactions
(Accountability is lost)
6. Very Serious: The effect of this kind of bug causes the system to do
the wrong transactions(system credits it to another account)
7. Extreme: The effect of this kind of bug problems aren't limited to a
few users or to few transaction types
8. Intolerable: The effect of this kind of bug Long term unrecoverable
(corruption of the database occurs)
9. Catastrophic: The effect of this kind of bug decision to shut down is
taken out of our hands because the system fails.
10. Infectious: The effect of this kind of bug What can be worse than a
failed system? One that corrupt other systems
TAXONOMY or TYPE OF BUGS:
The major categories are
(1) Requirements, Features and Functionality Bugs
(2) Structural Bugs
(3) Data Bugs
(4) Coding Bugs
(5) Interface, Integration and System Bugs
(6) Test and Test Design Bugs.
Software Testing Models
MITS – R18 ST
V-Model
V-Shaped SDLC Model
• A variant of the Waterfall
emphasizes the verification and
validation of the product.
• Testing of the product is planned
in parallel with a corresponding
phase of development
V-Shaped Steps
• Project and Requirements Planning – allocate resources
• Product Requirements and Specification Analysis – complete specification of
the software system
• Architecture or High-Level Design – defines how software functions fulfil
the design
• Detailed Design – develop algorithms for each architectural component
• Production, operation and maintenance – provide for enhancement and
corrections
• System and acceptance testing – check the entire software system in its
environment
• Integration and Testing – check that modules interconnect correctly
• Unit testing – check that each module acts as expected
• Coding – transform algorithms into software
• Emphasize planning for verification and validation of the
product in the early stages of product development
• Each deliverable must be testable
• Project management can track progress by milestones
• Easy to use
V-Shaped Strengths
V-Shaped Weaknesses
• Does not easily handle concurrent events
• Does not handle iterations or phases
• Does not easily handle dynamic changes in requirements
• Does not contain risk analysis activities

More Related Content

Similar to ST UNIT-1.pptx

Testing concepts [3] - Software Testing Techniques (CIS640)
Testing concepts [3] - Software Testing Techniques (CIS640)Testing concepts [3] - Software Testing Techniques (CIS640)
Testing concepts [3] - Software Testing Techniques (CIS640)
Venkatesh Prasad Ranganath
 
SE Group H.pptx
SE Group H.pptxSE Group H.pptx
SE Group H.pptx
StudyvAbhi
 
STM-UNIT-1.pptx
STM-UNIT-1.pptxSTM-UNIT-1.pptx
STM-UNIT-1.pptx
nischal55
 
stm f.pdf
stm f.pdfstm f.pdf
stm f.pdf
HarshNagda5
 
SOFTWARE TESTING
SOFTWARE TESTINGSOFTWARE TESTING
SOFTWARE TESTING
acemindia
 
T0 numtq0nje=
T0 numtq0nje=T0 numtq0nje=
Software testing and introduction to quality
Software testing and introduction to qualitySoftware testing and introduction to quality
Software testing and introduction to quality
DhanashriAmbre
 
testing strategies and tactics
 testing strategies and tactics testing strategies and tactics
testing strategies and tactics
Preeti Mishra
 
Software test life cycle
Software test life cycleSoftware test life cycle
Software Testing
Software TestingSoftware Testing
Ch 2 Apraoaches Of Software Testing
Ch 2 Apraoaches Of Software Testing Ch 2 Apraoaches Of Software Testing
Ch 2 Apraoaches Of Software Testing
Prof .Pragati Khade
 
Aim (A).pptx
Aim (A).pptxAim (A).pptx
Aim (A).pptx
14941
 
Reading Summary - Effective Software Defect Tracking + Pragmatic Unit Testing
Reading Summary - Effective Software Defect Tracking + Pragmatic Unit TestingReading Summary - Effective Software Defect Tracking + Pragmatic Unit Testing
Reading Summary - Effective Software Defect Tracking + Pragmatic Unit Testing
Artemisa Yescas Engler
 
Software testing
Software testingSoftware testing
Software testing
Nitin Dhanuka
 
Structured system analysis and design
Structured system analysis and design Structured system analysis and design
Structured system analysis and design
Jayant Dalvi
 
Object oriented sad 6
Object oriented sad 6Object oriented sad 6
Object oriented sad 6
Bisrat Girma
 
Software testing
Software testingSoftware testing
Software testing
Rtr Sasi Tharan
 
Software testing methods
Software testing methodsSoftware testing methods
Software testing methods
Homa Pourmohammadi
 
Software testing
Software testingSoftware testing
Software testing
Eng Ibrahem
 
Fundamentals of Testing Section 1/6
Fundamentals of Testing   Section 1/6Fundamentals of Testing   Section 1/6
Fundamentals of Testing Section 1/6
International Personal Finance Plc
 

Similar to ST UNIT-1.pptx (20)

Testing concepts [3] - Software Testing Techniques (CIS640)
Testing concepts [3] - Software Testing Techniques (CIS640)Testing concepts [3] - Software Testing Techniques (CIS640)
Testing concepts [3] - Software Testing Techniques (CIS640)
 
SE Group H.pptx
SE Group H.pptxSE Group H.pptx
SE Group H.pptx
 
STM-UNIT-1.pptx
STM-UNIT-1.pptxSTM-UNIT-1.pptx
STM-UNIT-1.pptx
 
stm f.pdf
stm f.pdfstm f.pdf
stm f.pdf
 
SOFTWARE TESTING
SOFTWARE TESTINGSOFTWARE TESTING
SOFTWARE TESTING
 
T0 numtq0nje=
T0 numtq0nje=T0 numtq0nje=
T0 numtq0nje=
 
Software testing and introduction to quality
Software testing and introduction to qualitySoftware testing and introduction to quality
Software testing and introduction to quality
 
testing strategies and tactics
 testing strategies and tactics testing strategies and tactics
testing strategies and tactics
 
Software test life cycle
Software test life cycleSoftware test life cycle
Software test life cycle
 
Software Testing
Software TestingSoftware Testing
Software Testing
 
Ch 2 Apraoaches Of Software Testing
Ch 2 Apraoaches Of Software Testing Ch 2 Apraoaches Of Software Testing
Ch 2 Apraoaches Of Software Testing
 
Aim (A).pptx
Aim (A).pptxAim (A).pptx
Aim (A).pptx
 
Reading Summary - Effective Software Defect Tracking + Pragmatic Unit Testing
Reading Summary - Effective Software Defect Tracking + Pragmatic Unit TestingReading Summary - Effective Software Defect Tracking + Pragmatic Unit Testing
Reading Summary - Effective Software Defect Tracking + Pragmatic Unit Testing
 
Software testing
Software testingSoftware testing
Software testing
 
Structured system analysis and design
Structured system analysis and design Structured system analysis and design
Structured system analysis and design
 
Object oriented sad 6
Object oriented sad 6Object oriented sad 6
Object oriented sad 6
 
Software testing
Software testingSoftware testing
Software testing
 
Software testing methods
Software testing methodsSoftware testing methods
Software testing methods
 
Software testing
Software testingSoftware testing
Software testing
 
Fundamentals of Testing Section 1/6
Fundamentals of Testing   Section 1/6Fundamentals of Testing   Section 1/6
Fundamentals of Testing Section 1/6
 

Recently uploaded

The History of Stoke Newington Street Names
The History of Stoke Newington Street NamesThe History of Stoke Newington Street Names
The History of Stoke Newington Street Names
History of Stoke Newington
 
Top five deadliest dog breeds in America
Top five deadliest dog breeds in AmericaTop five deadliest dog breeds in America
Top five deadliest dog breeds in America
Bisnar Chase Personal Injury Attorneys
 
Main Java[All of the Base Concepts}.docx
Main Java[All of the Base Concepts}.docxMain Java[All of the Base Concepts}.docx
Main Java[All of the Base Concepts}.docx
adhitya5119
 
A Strategic Approach: GenAI in Education
A Strategic Approach: GenAI in EducationA Strategic Approach: GenAI in Education
A Strategic Approach: GenAI in Education
Peter Windle
 
South African Journal of Science: Writing with integrity workshop (2024)
South African Journal of Science: Writing with integrity workshop (2024)South African Journal of Science: Writing with integrity workshop (2024)
South African Journal of Science: Writing with integrity workshop (2024)
Academy of Science of South Africa
 
DRUGS AND ITS classification slide share
DRUGS AND ITS classification slide shareDRUGS AND ITS classification slide share
DRUGS AND ITS classification slide share
taiba qazi
 
Introduction to AI for Nonprofits with Tapp Network
Introduction to AI for Nonprofits with Tapp NetworkIntroduction to AI for Nonprofits with Tapp Network
Introduction to AI for Nonprofits with Tapp Network
TechSoup
 
বাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdf
বাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdfবাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdf
বাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdf
eBook.com.bd (প্রয়োজনীয় বাংলা বই)
 
Exploiting Artificial Intelligence for Empowering Researchers and Faculty, In...
Exploiting Artificial Intelligence for Empowering Researchers and Faculty, In...Exploiting Artificial Intelligence for Empowering Researchers and Faculty, In...
Exploiting Artificial Intelligence for Empowering Researchers and Faculty, In...
Dr. Vinod Kumar Kanvaria
 
Pride Month Slides 2024 David Douglas School District
Pride Month Slides 2024 David Douglas School DistrictPride Month Slides 2024 David Douglas School District
Pride Month Slides 2024 David Douglas School District
David Douglas School District
 
Advanced Java[Extra Concepts, Not Difficult].docx
Advanced Java[Extra Concepts, Not Difficult].docxAdvanced Java[Extra Concepts, Not Difficult].docx
Advanced Java[Extra Concepts, Not Difficult].docx
adhitya5119
 
Digital Artifact 1 - 10VCD Environments Unit
Digital Artifact 1 - 10VCD Environments UnitDigital Artifact 1 - 10VCD Environments Unit
Digital Artifact 1 - 10VCD Environments Unit
chanes7
 
clinical examination of hip joint (1).pdf
clinical examination of hip joint (1).pdfclinical examination of hip joint (1).pdf
clinical examination of hip joint (1).pdf
Priyankaranawat4
 
Executive Directors Chat Leveraging AI for Diversity, Equity, and Inclusion
Executive Directors Chat  Leveraging AI for Diversity, Equity, and InclusionExecutive Directors Chat  Leveraging AI for Diversity, Equity, and Inclusion
Executive Directors Chat Leveraging AI for Diversity, Equity, and Inclusion
TechSoup
 
How to Manage Your Lost Opportunities in Odoo 17 CRM
How to Manage Your Lost Opportunities in Odoo 17 CRMHow to Manage Your Lost Opportunities in Odoo 17 CRM
How to Manage Your Lost Opportunities in Odoo 17 CRM
Celine George
 
Natural birth techniques - Mrs.Akanksha Trivedi Rama University
Natural birth techniques - Mrs.Akanksha Trivedi Rama UniversityNatural birth techniques - Mrs.Akanksha Trivedi Rama University
Natural birth techniques - Mrs.Akanksha Trivedi Rama University
Akanksha trivedi rama nursing college kanpur.
 
Azure Interview Questions and Answers PDF By ScholarHat
Azure Interview Questions and Answers PDF By ScholarHatAzure Interview Questions and Answers PDF By ScholarHat
Azure Interview Questions and Answers PDF By ScholarHat
Scholarhat
 
World environment day ppt For 5 June 2024
World environment day ppt For 5 June 2024World environment day ppt For 5 June 2024
World environment day ppt For 5 June 2024
ak6969907
 
S1-Introduction-Biopesticides in ICM.pptx
S1-Introduction-Biopesticides in ICM.pptxS1-Introduction-Biopesticides in ICM.pptx
S1-Introduction-Biopesticides in ICM.pptx
tarandeep35
 
Assessment and Planning in Educational technology.pptx
Assessment and Planning in Educational technology.pptxAssessment and Planning in Educational technology.pptx
Assessment and Planning in Educational technology.pptx
Kavitha Krishnan
 

Recently uploaded (20)

The History of Stoke Newington Street Names
The History of Stoke Newington Street NamesThe History of Stoke Newington Street Names
The History of Stoke Newington Street Names
 
Top five deadliest dog breeds in America
Top five deadliest dog breeds in AmericaTop five deadliest dog breeds in America
Top five deadliest dog breeds in America
 
Main Java[All of the Base Concepts}.docx
Main Java[All of the Base Concepts}.docxMain Java[All of the Base Concepts}.docx
Main Java[All of the Base Concepts}.docx
 
A Strategic Approach: GenAI in Education
A Strategic Approach: GenAI in EducationA Strategic Approach: GenAI in Education
A Strategic Approach: GenAI in Education
 
South African Journal of Science: Writing with integrity workshop (2024)
South African Journal of Science: Writing with integrity workshop (2024)South African Journal of Science: Writing with integrity workshop (2024)
South African Journal of Science: Writing with integrity workshop (2024)
 
DRUGS AND ITS classification slide share
DRUGS AND ITS classification slide shareDRUGS AND ITS classification slide share
DRUGS AND ITS classification slide share
 
Introduction to AI for Nonprofits with Tapp Network
Introduction to AI for Nonprofits with Tapp NetworkIntroduction to AI for Nonprofits with Tapp Network
Introduction to AI for Nonprofits with Tapp Network
 
বাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdf
বাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdfবাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdf
বাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdf
 
Exploiting Artificial Intelligence for Empowering Researchers and Faculty, In...
Exploiting Artificial Intelligence for Empowering Researchers and Faculty, In...Exploiting Artificial Intelligence for Empowering Researchers and Faculty, In...
Exploiting Artificial Intelligence for Empowering Researchers and Faculty, In...
 
Pride Month Slides 2024 David Douglas School District
Pride Month Slides 2024 David Douglas School DistrictPride Month Slides 2024 David Douglas School District
Pride Month Slides 2024 David Douglas School District
 
Advanced Java[Extra Concepts, Not Difficult].docx
Advanced Java[Extra Concepts, Not Difficult].docxAdvanced Java[Extra Concepts, Not Difficult].docx
Advanced Java[Extra Concepts, Not Difficult].docx
 
Digital Artifact 1 - 10VCD Environments Unit
Digital Artifact 1 - 10VCD Environments UnitDigital Artifact 1 - 10VCD Environments Unit
Digital Artifact 1 - 10VCD Environments Unit
 
clinical examination of hip joint (1).pdf
clinical examination of hip joint (1).pdfclinical examination of hip joint (1).pdf
clinical examination of hip joint (1).pdf
 
Executive Directors Chat Leveraging AI for Diversity, Equity, and Inclusion
Executive Directors Chat  Leveraging AI for Diversity, Equity, and InclusionExecutive Directors Chat  Leveraging AI for Diversity, Equity, and Inclusion
Executive Directors Chat Leveraging AI for Diversity, Equity, and Inclusion
 
How to Manage Your Lost Opportunities in Odoo 17 CRM
How to Manage Your Lost Opportunities in Odoo 17 CRMHow to Manage Your Lost Opportunities in Odoo 17 CRM
How to Manage Your Lost Opportunities in Odoo 17 CRM
 
Natural birth techniques - Mrs.Akanksha Trivedi Rama University
Natural birth techniques - Mrs.Akanksha Trivedi Rama UniversityNatural birth techniques - Mrs.Akanksha Trivedi Rama University
Natural birth techniques - Mrs.Akanksha Trivedi Rama University
 
Azure Interview Questions and Answers PDF By ScholarHat
Azure Interview Questions and Answers PDF By ScholarHatAzure Interview Questions and Answers PDF By ScholarHat
Azure Interview Questions and Answers PDF By ScholarHat
 
World environment day ppt For 5 June 2024
World environment day ppt For 5 June 2024World environment day ppt For 5 June 2024
World environment day ppt For 5 June 2024
 
S1-Introduction-Biopesticides in ICM.pptx
S1-Introduction-Biopesticides in ICM.pptxS1-Introduction-Biopesticides in ICM.pptx
S1-Introduction-Biopesticides in ICM.pptx
 
Assessment and Planning in Educational technology.pptx
Assessment and Planning in Educational technology.pptxAssessment and Planning in Educational technology.pptx
Assessment and Planning in Educational technology.pptx
 

ST UNIT-1.pptx

  • 1. G Sreenivasulu M.Tech(Ph.D) Assistant Professor Dept. of CSE STM Text Book:Boris Beizer
  • 2. Introduction to Testing Purpose of Testing: What is testing? Testing is the process of exercise or verify a system by manual or automated that satisfies specified requirements. Purpose of Testing: The purpose of testing is to find the error that led to the program's failure. Productivity and Quality in Software: Phases in a tester's mental life: tester's mental life can be categorized into the following 5 phases
  • 3. Phases in a tester's mental life • Phase 0: (Until 1956: Debugging Oriented) There is no difference between testing and debugging. • Phase 1: (1957-1978: Demonstration Oriented) the purpose of testing here is to show that software works. Highlighted during the late 1970s. • Phase 2: (1979-1982: Destruction Oriented) the purpose of testing is to show that software doesn’t work. • Phase 3: (1983-1987: Evaluation Oriented) the purpose of testing is not to prove anything but to reduce the risk of not working • Phase 4: (1988-2000: Prevention Oriented) it is the process to reduce the labor of testing. By dividing testable and non- testable code.
  • 4. Test Design/Testing Process: Tests should be properly designed and tested before applying it to the actual code. Testing isn’t everything: There are approaches other than testing to create better software. Methods other than testing include Inspection Methods: Methods like walkthroughs,formal inspections Design Style: While designing the software itself, adopting stylistic objectives Static Analysis Methods: Includes formal analysis of source code during compilation Languages: The source language can help reduce certain kinds of bugs Development Methodologies and Development Environment:
  • 5. Dichotomies:(contrast between two things) • Testing Versus Debugging: Testing starts with known conditions Debugging starts from unknown conditions Testing can and should be planned Debugging can and should not be planned testing can be done without design knowledge Debugging is impossible without design knowledge Testing can often be done by an outsider Debugging must be done by an insider Test execution and design can be automated. Automated debugging is still a dream
  • 6. Function versus Structure: Functional testing basically concern about only results but not processing Structural testing basically concern about only results but processing Designer versus Tester: Designer is the person who designs the tests Tester is the one actually tests the code Modularity versus Efficiency: A module is a discrete, well-defined, small component of a system Smaller the modules, difficult to integrate; larger the modules, difficult to understand Small versus Large: Programming in large means constructing programs that consists of many components written by many different programmers Programming in the small is what we do for ourselves in the privacy of our own offices
  • 7. Builder versus Buyer: Builder: Who designs the system and is accountable to the buyer. Buyer: Who pays for the system for profits from providing services. User: Ultimate beneficiary or victim of the system. Tester: Who is dedicated to the builder's destruction. Operator: Who has to live with the builders mistakes, the buyers unclear specifications, testers' oversights and the users' complaints.
  • 9. • Environment : A Program's environment is the hardware and software required to make it run • Program: Most programs are too complicated to understand in detail. The concept of the program is to be simplified in order to test it • Tests: Tests are formal procedures, Inputs must be prepared, Outcomes should be predict tests should be documented, commands need to be executed, and results are to be observed. • Bugs: An unexpected test result may lead us to change the code
  • 10. Three distinct kinds of testing on a typical software system Levels of Testing: Unit / Component Testing: A Unit is the smallest testable piece of software that can be compiled, assembled, linked, loaded etc. Integration Testing: Integration is the process by which components are aggregated to create larger components System Testing: A System is a big component. System Testing is aimed at revealing bugs that cannot be attributed to components
  • 11. Limitations of Testing: • You cannot test a program completely(total testing is impossible) • You cannot test every statement of the program • You cannot test every path • You cannot test every true and false condition • You cannot test every condition of a decision node • You cannot test every valid input • You cannot test every invalid input • You can only test against system requirements • It requires more time and resources to accomplish quality in testing
  • 12. CONSEQUENCES OF BUGS Importance of bugs: The importance of bugs depends on frequency, correction cost, installation cost, and consequences. • Frequency: How often does that kind of bug occur? Pay more attention to the more frequent bug types. • Correction Cost: What does it cost to correct the bug after it is found? The cost is the sum of 2 factors: (1) the cost of discovery (2) the cost of correction • Installation Cost: Installation cost depends on the number of installations • Consequences:(Impact/Effect) Consequences of the bug can range from mild to catastrophic. Importance($) = Frequency * (Correction cost + Installation cost + Consequential cost)
  • 13. The consequences of a bug can be measure in terms of human rather than machine. Some consequences of a bug on a scale of one to ten are 1. Mild: The effect of this kind of bug is gently (misspelled output ) 2. Moderate: The effect of this kind of bug impacts the system's performance. (Outputs are misleading ) 3. Annoying: The effect of this kind of bug impacts system's behavior (Names are truncated/cutting) 4. Disturbing: The effect of this kind of bug refuses transactions (ATM won’t give you money or credit card is declared invalid) 5. Serious: The effect of this kind of bug loses its transactions (Accountability is lost)
  • 14. 6. Very Serious: The effect of this kind of bug causes the system to do the wrong transactions(system credits it to another account) 7. Extreme: The effect of this kind of bug problems aren't limited to a few users or to few transaction types 8. Intolerable: The effect of this kind of bug Long term unrecoverable (corruption of the database occurs) 9. Catastrophic: The effect of this kind of bug decision to shut down is taken out of our hands because the system fails. 10. Infectious: The effect of this kind of bug What can be worse than a failed system? One that corrupt other systems
  • 15. TAXONOMY or TYPE OF BUGS: The major categories are (1) Requirements, Features and Functionality Bugs (2) Structural Bugs (3) Data Bugs (4) Coding Bugs (5) Interface, Integration and System Bugs (6) Test and Test Design Bugs.
  • 16.
  • 19. V-Shaped SDLC Model • A variant of the Waterfall emphasizes the verification and validation of the product. • Testing of the product is planned in parallel with a corresponding phase of development
  • 20. V-Shaped Steps • Project and Requirements Planning – allocate resources • Product Requirements and Specification Analysis – complete specification of the software system • Architecture or High-Level Design – defines how software functions fulfil the design • Detailed Design – develop algorithms for each architectural component • Production, operation and maintenance – provide for enhancement and corrections • System and acceptance testing – check the entire software system in its environment • Integration and Testing – check that modules interconnect correctly • Unit testing – check that each module acts as expected • Coding – transform algorithms into software
  • 21. • Emphasize planning for verification and validation of the product in the early stages of product development • Each deliverable must be testable • Project management can track progress by milestones • Easy to use V-Shaped Strengths
  • 22. V-Shaped Weaknesses • Does not easily handle concurrent events • Does not handle iterations or phases • Does not easily handle dynamic changes in requirements • Does not contain risk analysis activities