Current Topics In Computer
Technology
Software Quality Assurance
Rohana K Amarakoon
B.Sc (SUSL), MBCS (UK), MBA (AUS-Reading)
Content
1. What is testing?
2. Quality Assurance versus Quality Control
3. Software Quality
4. The Cost of Software Quality
5. Types of Test Activities
6. Static and Dynamic Testing
7. White-box and Black-box Testing
8. Fault & Failure Model
9. Observability and Controllability
10. Verification and Validation
2PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
Content
11. Old : Testing at Different Levels
12. New : Test Coverage Criteria
13. New : Agile Testing
14. V Model In Testing (Software Testing Life Cycle)
15. Test First Design (TFD)
16. Continuous Integration Process Flow
17. Test Case Design Flow
Expected Outcomes
3PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
PST 32220 - Current Topics In Computer Technology (Lecturer :
Mr. Rohana K Amarakoon)
4
1. What Is testing
• Software testing consists of the dynamic verification of the behavior of a
program on a finite set of test cases, suitably selected from the usually infinite
executions domain, against the expected behavior.
Source: SWEBOK, Chapter 5, Software Testing, 2004
5PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
1. What Is testing
• Software Faults, Errors & Failures
1. Software Fault : A static defect in the software
Faults in software are design mistakes and will always exist
2. Software Failure : External, incorrect behavior with respect to the requirements or other
description of the expected behavior
• Testing & Debugging
1. Testing : Finding inputs that cause the software to fail
2. Debugging : The process of finding a fault given a failure
6PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
1. What Is testing
7PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
1. What Is testing
8PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
2. Quality Assurance versus Quality Control
9PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
3. Software Quality
• Conformance to requirements (Philip Crosby) –
Producer view: characterized by:
1. Doing the right thing
2. Doing it the right way
3. Doing it right the first time
4. Doing it on time without exceeding cost
10PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
3. Software Quality
• Fit for use (Joseph Juran & Edwards Deming) –
Customer view: characterized by:
1. Receiving the right product for their use
2. Being satisfied that their needs have been met
3. Meeting their expectations
4. Being treated with integrity, courtesy and respect
11PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
4. The Cost of Software Quality
• Prevention Costs
1. Up-front costs for benefits that will be derived later
2. Establishing procedures, training, tools and planning.
3. Spent before the product is actually built.
• Appraisal Costs
1. Review completed products against requirements.
2. Includes the cost of inspections, testing, and reviews.
3. After the product is built but before it is shipped to the user.
• Failure Costs
1. Defects that make it to the user or to production.
2. Repairing products to make them meet requirements.
3. Cost of operating faulty products and operating a Help Desk.
12PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
5. Types of Test Activities
Testing can be broken up into four general types of activities
1.Test Design
• Design test values to satisfy engineering goals, these test values from domain
knowledge and intuition
• Requires knowledge of discrete math, programming and testing
• Requires knowledge of domain, UI, testing
2.Test Case Preparation
• Write test cases manually for each test scenario and keep them for future reference
• Requires good communication and language skills
• Test case values that directly satisfy one test requirement
• Expected result that will be produced when executing the test if the program
satisfies it intended behavior
13PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
5. Types of Test Activities
Testing can be broken up into four general types of activities
3.Test Execution
• Run tests on the software and record the results
• Requires very little knowledge
4.Test Evaluation
• Evaluate results of testing, report to developers
• Requires domain knowledge
Each type of activity requires different skills, background knowledge, education and training. In
software testing single tester should be able to do all four activities.
14PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
6. Static and Dynamic Testing
• Static Testing : Testing without executing the program
1. This include software inspections and some forms of analyses
2. Very effective at finding certain kinds of problems – especially “potential” faults, that is,
problems that could lead to faults when the program is modified
• Dynamic Testing : Testing by executing the program with real inputs
15PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
7. White-box and Black-box Testing
• Black-box testing :
Deriving tests from external descriptions of the software, including
specifications, requirements, and design
• White-box testing :
Deriving tests from the source code internals of the software, specifically
including branches, individual conditions, and statements
16PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
7. White-box and Black-box Testing
• White-box testing : Also know as structural testing.
1. Testing based on analysis of internal logic (design, code, etc.). (But expected results still
come from requirements.)
2. White-box testing concerns techniques for designing tests; it is not a level of testing.
3. White-box testing techniques apply primarily to lower levels of testing (e.g., unit and
component).
17PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
8 Fault & Failure Model
• Three conditions necessary for a failure to be observed
1. Reachability : The location or locations in the program that contain the fault must be
reached
2. Infection : The state of the program must be incorrect
3. Propagation : The infected state must propagate to cause some output of the program to
be incorrect
18PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
9. Observability and Controllability
• Software Observability :
How easy it is to observe the behavior of a program in terms of its outputs, effects on the
environment and other hardware and software components
Software that affects hardware devices, databases, or remote files have low observability
• Software Controllability :
How easy it is to provide a program with the needed inputs, in terms of values, operations,
and behaviors
1. Easy to control software with inputs from keyboards
2. Inputs from hardware sensors or distributed software is harder
3. Data abstraction reduces controllability and observability
19PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
10. Verification and Validation
• Verification :
Verification ensures that the system (software, hardware, documentation, and personnel)
complies with an organization’s standards and processes, relying on review or non-
executable methods.
• Validation :
Validation physically ensures that the system operates according to plan by executing the
system functions through a series of tests that can be observed and evaluated.
20PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
11. Old : Testing at Different Levels
21PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
11. Old : Testing at Different Levels
22PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
• Classic testing
Classic testing is a process that starts with planning the test, creation of test cases in form of written
instructions, manual execution of the tests, creation of test reports, and finally evaluation to see if
more testing is needed.
This process can be started as the project starts up, but often has no or minimal involvement with
the development process.
11. Old : Testing at Different Levels
23PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
11. Old : Testing at Different Levels
24PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
11. Old : Testing at Different Levels
25PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
11. Old : Testing at Different Levels
26PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
11. Old : Testing at Different Levels
27PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
12. New : Test Coverage Criteria
28PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
Now tester’s job is simple : Define a model of the software, then find ways to cover it
• Test Requirements :
Specific things that must be satisfied or covered during testing
• Test Criterion :
A collection of rules and a process that define test requirements
Infeasible test requirements : test requirements that cannot be satisfied
1. No test case values exist that meet the test requirements
2. Dead code
3. Detection of infeasible test requirements is formally undecidable for most test criteria
Thus, 100% coverage is impossible in practice
13. New : Agile Testing
29PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
• The delivery of useful, operational software on a regular and frequent basis is a
goal of a pure agile project.
• Output is going to be a fully-tested, usable piece of functioning software
• Then testing must be an integral part of the team that produces it
BUT on many ‘agile’ projects we find that the necessary specialist testing is not performed within
the agile development team, but instead done as a separate activity some time after the agile
development team delivers their output.
13. New : Agile Testing
30PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
14. V Model In Testing (Software Testing Life
Cycle)
31PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
15. Test First Design (TFD)
32PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
With TFD you write a single test and then just enough
production code to fulfill that test
• Test-Driven Development (TDD) = Refactoring + TFD
• TDD is a continuous confirmatory validation activity
• TDD is also called Behavior Driven Development (BDD)
15. Test First Design (TFD)
33PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
15. Test First Design (TFD)
34PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
15. Test First Design (TFD)
35PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
15. Test First Design (TFD)
36PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
16. Continuous Integration Process Flow
37PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
16. Continuous Integration Process Flow
38PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
17. Test Case Design Example
39PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
17. Test Case Design Example
40PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
17. Test Case Design Example
41PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
17. Test Case Design Example
42PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
Expected Outcomes
• Understand about the why we need Quality Assurance in IT
• Understand about the nature and challenges for the Quality Assurance in IT
• Get to know about the Quality Assurance methods and mechanisms
• Study about how we could use Quality Assurance to make sure our final out come
of the IT project in to perfect.
43PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
Thank You!
44PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)

More Related Content

PDF
Practical DevSecOps Course - Part 1
PDF
Model Based Enterprises MBE WhitePaper US
PDF
Who Is A DevOps Engineer? | DevOps Skills You Must Master | DevOps Engineer M...
PPT
1 Quality Assurance Presentation
PDF
ISO26262-6 Software development process (Ver 3.0)
PPTX
Software quality assurance activites
PPTX
Istqb foundation level
PPTX
DevOps Overview in my own words
Practical DevSecOps Course - Part 1
Model Based Enterprises MBE WhitePaper US
Who Is A DevOps Engineer? | DevOps Skills You Must Master | DevOps Engineer M...
1 Quality Assurance Presentation
ISO26262-6 Software development process (Ver 3.0)
Software quality assurance activites
Istqb foundation level
DevOps Overview in my own words

What's hot (20)

PPTX
Requirements engineering
PPT
extreme Programming
PDF
Root Cause Analysis for Software Testers
PPTX
ISTQB foundation level - day 2
PPTX
Software Quality Assurance: A mind game between you and devil
PPT
Business analyst training in india
PPT
Software Engineering (Introduction to Software Engineering)
PDF
7 QC Tools PowerPoint Presentation Slides
PPTX
SRE-iously! Defining the Principles, Habits, and Practices of Site Reliabilit...
PPTX
DevOps Introduction
PPT
Release Management
PPT
Document Control
PPTX
Fishbone diagam guide
PPTX
Software quality assurance
PPTX
System Design Presentation
PDF
AutoSpice Agile Hand in Hand
PPT
Software Verification & Validation
PPTX
Fish bone examples ppt
PDF
Mobile Device Management Testing
PDF
DevOps : Consulting with Foresight
Requirements engineering
extreme Programming
Root Cause Analysis for Software Testers
ISTQB foundation level - day 2
Software Quality Assurance: A mind game between you and devil
Business analyst training in india
Software Engineering (Introduction to Software Engineering)
7 QC Tools PowerPoint Presentation Slides
SRE-iously! Defining the Principles, Habits, and Practices of Site Reliabilit...
DevOps Introduction
Release Management
Document Control
Fishbone diagam guide
Software quality assurance
System Design Presentation
AutoSpice Agile Hand in Hand
Software Verification & Validation
Fish bone examples ppt
Mobile Device Management Testing
DevOps : Consulting with Foresight
Ad

Similar to Software Quality Assurance (20)

PDF
Unit II Software Testing and Quality Assurance
PPTX
basic concepts & preliminaries Testing.pptx
PPT
Industrial Training in Software Testing
PDF
Istqb intro with question answer for exam preparation
PDF
Software Testing: Test Design and the Project Life Cycle
PDF
st-notes-13-26-software-testing-is-the-act-of-examining-the-artifacts-and-the...
PPTX
Testing throughout the software life cycle (test types)
PPT
Testing
PDF
Istqb lesson1
PPTX
An introduction to Software Testing and Test Management
PPTX
Testing Plan
PPT
A survey of software testing
PPTX
Software testing
PPTX
Quality Analyst Training - Gain America
PPTX
Chapter 1 Fundamentals of Testing
PDF
Fundamentals_of_testing.pdf
PPTX
Software testing(Refer Ron Patton)
PPTX
Software testing
PPT
Verifcation &validation
PPT
Software testing part
Unit II Software Testing and Quality Assurance
basic concepts & preliminaries Testing.pptx
Industrial Training in Software Testing
Istqb intro with question answer for exam preparation
Software Testing: Test Design and the Project Life Cycle
st-notes-13-26-software-testing-is-the-act-of-examining-the-artifacts-and-the...
Testing throughout the software life cycle (test types)
Testing
Istqb lesson1
An introduction to Software Testing and Test Management
Testing Plan
A survey of software testing
Software testing
Quality Analyst Training - Gain America
Chapter 1 Fundamentals of Testing
Fundamentals_of_testing.pdf
Software testing(Refer Ron Patton)
Software testing
Verifcation &validation
Software testing part
Ad

More from Rohana K Amarakoon (20)

PPTX
Importance of education to everyone & how to improve education
PPTX
How to enhance social awareness on NCD's and STD's
DOCX
General data protection regulation - European union
PPTX
What is agile?
PPTX
Effective communication
DOCX
Software Change request form
PPTX
Process for requirement identification & development in software development
DOCX
Project Management - AIB (MBA)
PDF
Entrepreneurship AIB (MBA) 2016
PDF
New Product Management AIB (MBA) 2016
DOC
Operations Management - AIB (MBA) 2015
DOC
Leadership - AIB (MBA) 2015
DOC
Strategic Management - AIB (MBA) 2015
DOC
Corporate Governance - AIB (MBA) 2015
DOC
Strategic Human Resource Management - AIB (MBA) 2015
PPTX
Project Management Best Practices
PPTX
Social & professional issues in IT
PPTX
Policies & Laws in IT industry
PPTX
Security in IT (data and cyber security)
PPTX
Professional bodies in IT
Importance of education to everyone & how to improve education
How to enhance social awareness on NCD's and STD's
General data protection regulation - European union
What is agile?
Effective communication
Software Change request form
Process for requirement identification & development in software development
Project Management - AIB (MBA)
Entrepreneurship AIB (MBA) 2016
New Product Management AIB (MBA) 2016
Operations Management - AIB (MBA) 2015
Leadership - AIB (MBA) 2015
Strategic Management - AIB (MBA) 2015
Corporate Governance - AIB (MBA) 2015
Strategic Human Resource Management - AIB (MBA) 2015
Project Management Best Practices
Social & professional issues in IT
Policies & Laws in IT industry
Security in IT (data and cyber security)
Professional bodies in IT

Recently uploaded (20)

PPTX
ROI from Efficient Content & Campaign Management in the Digital Media Industry
PPTX
Presentation - Summer Internship at Samatrix.io_template_2.pptx
PPTX
Human Computer Interaction lecture Chapter 2.pptx
PDF
Module 1 - Introduction to Generative AI.pdf
PPTX
DevOpsDays Halifax 2025 - Building 10x Organizations Using Modern Productivit...
PPTX
HackYourBrain__UtrechtJUG__11092025.pptx
PPTX
Beige and Black Minimalist Project Deck Presentation (1).pptx
PDF
Streamlining Project Management in Microsoft Project, Planner, and Teams with...
PDF
Top 10 Project Management Software for Small Teams in 2025.pdf
PPTX
Human-Computer Interaction for Lecture 2
PDF
Mobile App Backend Development with WordPress REST API: The Complete eBook
PDF
SOFTWARE ENGINEERING Software Engineering (3rd Edition) by K.K. Aggarwal & Yo...
PPTX
UNIT II: Software design, software .pptx
PPTX
Why 2025 Is the Best Year to Hire Software Developers in India
PDF
What Makes a Great Data Visualization Consulting Service.pdf
PPTX
Chapter 1 - Transaction Processing and Mgt.pptx
PDF
Understanding the Need for Systemic Change in Open Source Through Intersectio...
PPTX
Post-Migration Optimization Playbook: Getting the Most Out of Your New Adobe ...
PPTX
WJQSJXNAZJVCVSAXJHBZKSJXKJKXJSBHJBJEHHJB
PDF
Odoo Construction Management System by CandidRoot
ROI from Efficient Content & Campaign Management in the Digital Media Industry
Presentation - Summer Internship at Samatrix.io_template_2.pptx
Human Computer Interaction lecture Chapter 2.pptx
Module 1 - Introduction to Generative AI.pdf
DevOpsDays Halifax 2025 - Building 10x Organizations Using Modern Productivit...
HackYourBrain__UtrechtJUG__11092025.pptx
Beige and Black Minimalist Project Deck Presentation (1).pptx
Streamlining Project Management in Microsoft Project, Planner, and Teams with...
Top 10 Project Management Software for Small Teams in 2025.pdf
Human-Computer Interaction for Lecture 2
Mobile App Backend Development with WordPress REST API: The Complete eBook
SOFTWARE ENGINEERING Software Engineering (3rd Edition) by K.K. Aggarwal & Yo...
UNIT II: Software design, software .pptx
Why 2025 Is the Best Year to Hire Software Developers in India
What Makes a Great Data Visualization Consulting Service.pdf
Chapter 1 - Transaction Processing and Mgt.pptx
Understanding the Need for Systemic Change in Open Source Through Intersectio...
Post-Migration Optimization Playbook: Getting the Most Out of Your New Adobe ...
WJQSJXNAZJVCVSAXJHBZKSJXKJKXJSBHJBJEHHJB
Odoo Construction Management System by CandidRoot

Software Quality Assurance

  • 1. Current Topics In Computer Technology Software Quality Assurance Rohana K Amarakoon B.Sc (SUSL), MBCS (UK), MBA (AUS-Reading)
  • 2. Content 1. What is testing? 2. Quality Assurance versus Quality Control 3. Software Quality 4. The Cost of Software Quality 5. Types of Test Activities 6. Static and Dynamic Testing 7. White-box and Black-box Testing 8. Fault & Failure Model 9. Observability and Controllability 10. Verification and Validation 2PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
  • 3. Content 11. Old : Testing at Different Levels 12. New : Test Coverage Criteria 13. New : Agile Testing 14. V Model In Testing (Software Testing Life Cycle) 15. Test First Design (TFD) 16. Continuous Integration Process Flow 17. Test Case Design Flow Expected Outcomes 3PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
  • 4. PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon) 4
  • 5. 1. What Is testing • Software testing consists of the dynamic verification of the behavior of a program on a finite set of test cases, suitably selected from the usually infinite executions domain, against the expected behavior. Source: SWEBOK, Chapter 5, Software Testing, 2004 5PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
  • 6. 1. What Is testing • Software Faults, Errors & Failures 1. Software Fault : A static defect in the software Faults in software are design mistakes and will always exist 2. Software Failure : External, incorrect behavior with respect to the requirements or other description of the expected behavior • Testing & Debugging 1. Testing : Finding inputs that cause the software to fail 2. Debugging : The process of finding a fault given a failure 6PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
  • 7. 1. What Is testing 7PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
  • 8. 1. What Is testing 8PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
  • 9. 2. Quality Assurance versus Quality Control 9PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
  • 10. 3. Software Quality • Conformance to requirements (Philip Crosby) – Producer view: characterized by: 1. Doing the right thing 2. Doing it the right way 3. Doing it right the first time 4. Doing it on time without exceeding cost 10PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
  • 11. 3. Software Quality • Fit for use (Joseph Juran & Edwards Deming) – Customer view: characterized by: 1. Receiving the right product for their use 2. Being satisfied that their needs have been met 3. Meeting their expectations 4. Being treated with integrity, courtesy and respect 11PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
  • 12. 4. The Cost of Software Quality • Prevention Costs 1. Up-front costs for benefits that will be derived later 2. Establishing procedures, training, tools and planning. 3. Spent before the product is actually built. • Appraisal Costs 1. Review completed products against requirements. 2. Includes the cost of inspections, testing, and reviews. 3. After the product is built but before it is shipped to the user. • Failure Costs 1. Defects that make it to the user or to production. 2. Repairing products to make them meet requirements. 3. Cost of operating faulty products and operating a Help Desk. 12PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
  • 13. 5. Types of Test Activities Testing can be broken up into four general types of activities 1.Test Design • Design test values to satisfy engineering goals, these test values from domain knowledge and intuition • Requires knowledge of discrete math, programming and testing • Requires knowledge of domain, UI, testing 2.Test Case Preparation • Write test cases manually for each test scenario and keep them for future reference • Requires good communication and language skills • Test case values that directly satisfy one test requirement • Expected result that will be produced when executing the test if the program satisfies it intended behavior 13PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
  • 14. 5. Types of Test Activities Testing can be broken up into four general types of activities 3.Test Execution • Run tests on the software and record the results • Requires very little knowledge 4.Test Evaluation • Evaluate results of testing, report to developers • Requires domain knowledge Each type of activity requires different skills, background knowledge, education and training. In software testing single tester should be able to do all four activities. 14PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
  • 15. 6. Static and Dynamic Testing • Static Testing : Testing without executing the program 1. This include software inspections and some forms of analyses 2. Very effective at finding certain kinds of problems – especially “potential” faults, that is, problems that could lead to faults when the program is modified • Dynamic Testing : Testing by executing the program with real inputs 15PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
  • 16. 7. White-box and Black-box Testing • Black-box testing : Deriving tests from external descriptions of the software, including specifications, requirements, and design • White-box testing : Deriving tests from the source code internals of the software, specifically including branches, individual conditions, and statements 16PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
  • 17. 7. White-box and Black-box Testing • White-box testing : Also know as structural testing. 1. Testing based on analysis of internal logic (design, code, etc.). (But expected results still come from requirements.) 2. White-box testing concerns techniques for designing tests; it is not a level of testing. 3. White-box testing techniques apply primarily to lower levels of testing (e.g., unit and component). 17PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
  • 18. 8 Fault & Failure Model • Three conditions necessary for a failure to be observed 1. Reachability : The location or locations in the program that contain the fault must be reached 2. Infection : The state of the program must be incorrect 3. Propagation : The infected state must propagate to cause some output of the program to be incorrect 18PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
  • 19. 9. Observability and Controllability • Software Observability : How easy it is to observe the behavior of a program in terms of its outputs, effects on the environment and other hardware and software components Software that affects hardware devices, databases, or remote files have low observability • Software Controllability : How easy it is to provide a program with the needed inputs, in terms of values, operations, and behaviors 1. Easy to control software with inputs from keyboards 2. Inputs from hardware sensors or distributed software is harder 3. Data abstraction reduces controllability and observability 19PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
  • 20. 10. Verification and Validation • Verification : Verification ensures that the system (software, hardware, documentation, and personnel) complies with an organization’s standards and processes, relying on review or non- executable methods. • Validation : Validation physically ensures that the system operates according to plan by executing the system functions through a series of tests that can be observed and evaluated. 20PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
  • 21. 11. Old : Testing at Different Levels 21PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
  • 22. 11. Old : Testing at Different Levels 22PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon) • Classic testing Classic testing is a process that starts with planning the test, creation of test cases in form of written instructions, manual execution of the tests, creation of test reports, and finally evaluation to see if more testing is needed. This process can be started as the project starts up, but often has no or minimal involvement with the development process.
  • 23. 11. Old : Testing at Different Levels 23PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
  • 24. 11. Old : Testing at Different Levels 24PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
  • 25. 11. Old : Testing at Different Levels 25PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
  • 26. 11. Old : Testing at Different Levels 26PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
  • 27. 11. Old : Testing at Different Levels 27PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
  • 28. 12. New : Test Coverage Criteria 28PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon) Now tester’s job is simple : Define a model of the software, then find ways to cover it • Test Requirements : Specific things that must be satisfied or covered during testing • Test Criterion : A collection of rules and a process that define test requirements Infeasible test requirements : test requirements that cannot be satisfied 1. No test case values exist that meet the test requirements 2. Dead code 3. Detection of infeasible test requirements is formally undecidable for most test criteria Thus, 100% coverage is impossible in practice
  • 29. 13. New : Agile Testing 29PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon) • The delivery of useful, operational software on a regular and frequent basis is a goal of a pure agile project. • Output is going to be a fully-tested, usable piece of functioning software • Then testing must be an integral part of the team that produces it BUT on many ‘agile’ projects we find that the necessary specialist testing is not performed within the agile development team, but instead done as a separate activity some time after the agile development team delivers their output.
  • 30. 13. New : Agile Testing 30PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
  • 31. 14. V Model In Testing (Software Testing Life Cycle) 31PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
  • 32. 15. Test First Design (TFD) 32PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon) With TFD you write a single test and then just enough production code to fulfill that test • Test-Driven Development (TDD) = Refactoring + TFD • TDD is a continuous confirmatory validation activity • TDD is also called Behavior Driven Development (BDD)
  • 33. 15. Test First Design (TFD) 33PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
  • 34. 15. Test First Design (TFD) 34PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
  • 35. 15. Test First Design (TFD) 35PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
  • 36. 15. Test First Design (TFD) 36PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
  • 37. 16. Continuous Integration Process Flow 37PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
  • 38. 16. Continuous Integration Process Flow 38PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
  • 39. 17. Test Case Design Example 39PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
  • 40. 17. Test Case Design Example 40PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
  • 41. 17. Test Case Design Example 41PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
  • 42. 17. Test Case Design Example 42PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
  • 43. Expected Outcomes • Understand about the why we need Quality Assurance in IT • Understand about the nature and challenges for the Quality Assurance in IT • Get to know about the Quality Assurance methods and mechanisms • Study about how we could use Quality Assurance to make sure our final out come of the IT project in to perfect. 43PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)
  • 44. Thank You! 44PST 32220 - Current Topics In Computer Technology (Lecturer : Mr. Rohana K Amarakoon)