SlideShare a Scribd company logo
1 of 29
Software Engineering
(CSI 321)
Software Quality Assurance & Testing:
Supplementary Materials
QA vs. Software Testing
 Software Testing:
• Testing is the process of executing a system or
component under specified conditions with the
intent of finding defects and to verify that it satisfies
specified requirements.
• Testing is a product-oriented activity.
• Testing is oriented to bug-detection.
• Testing is one of the most important parts of quality
assurance (QA).
QA vs. Testing
 Software Quality Assurance:
• Defined as a planned and systematic approach to the
evaluation of the quality of and adherence to software
product standards, processes, and procedures.
• An umbrella activity that is applied throughout the software
process.
• Consists of a means of monitoring the software engineering
processes and methods used to ensure quality.
• An effective approach to producing high quality software.
• QA is a process-oriented activity.
• QA is oriented to bug-prevention.
What is Quality Control(QC)?
• QC is the set of activities designed to evaluate the quality of
developed product.
• QC is a responsibility internal to the team.
• QC is a product-oriented activity.
• The term QC is used in a production/hardware manufacturing
environment, where a large number of physical items are produced
and shipped. Each of the items has to go through a testing process
to ensure that the quality of the product is good enough for
shipment; otherwise the item is rejected. The quality check is
conducted by the quality control group within the manufacturing
organization, and the person who conducts the testing is called a
quality controller.
Verification vs. Validation
• Validation:
– Validation is a process that ensures the software product
meets the customer requirements.
– It is a high-level activity.
– Building the correct product
• Verification:
– Verification is a process that ensures the software product
works properly.
– It is a low-level activity.
– Building the product correctly
Testing Levels
1. Unit Testing
2. Integration Testing
3. System Testing
4. Acceptance Testing
Testing Levels
Unit Testing:
• Testing of individual software components
• First level of dynamic testing
• Typically white-box testing
• Usually done by programmers
• AKA: Component testing, module testing
Testing Levels
Integration Testing:
• Testing of two or more units/modules together
• Objective is to detect Interface defects between
units/modules
Testing Levels
System Testing:
• Conducted on complete, integrated system
• Ensures entire integrated system meets
requirements
• Black-box in nature
• Done before Performance testing
Testing Levels
Acceptance Testing:
• Formal testing for product evaluation
• Performed by customers/end users (preferably)
• Verifies functionality and usability of the software
• Prior to software being released to live operation
Testing Techniques
• Basically two types –
1) White-box testing
2) Black-box testing
BBT vs. WBT
Black box testing:
• View components as opaque
• Based on requirements and functionality
• Without any knowledge of internal design, code or
language.
• AKA : Functional testing, behavioral testing
BBT vs. WBT
White box testing:
• View components as transparent
• Based on knowledge of the internal logic
• Done by programmers (usually)
• AKA: Structural testing, Glass-box testing, Clear-box
testing
Manual Testing vs. Automated Testing
Manual Testing:
• Oldest and most rigorous type of software testing
• Requires a tester to perform manual test operations
– Hard to repeat
– Not always reliable
– Costly (time consuming, labor intensive)
Manual Testing vs. Automated Testing
Automated Testing:
• Testing employing software tools
• Execute tests without manual intervention
– Fast
– Repeatable
– Reliable
– Reusable
– Programmable
– Saves time
Alpha Testing vs. Beta Testing
Alpha testing:
• Alpha testing is performed by potential users/customers or an
independent test team at the developer’s site.
• Conducted when code is mostly complete or contains most of
the functionality and prior to users being involved.
• Minor design changes may still be made as a result of such
testing. Sometimes a select group of users are involved.
Alpha Testing vs. Beta Testing
Beta testing:
• Beta testing is done at the customer’s site by the customer in the open
environment.
• Testing when development and testing are essentially completed and final
bugs and problems need to be found before final release.
• Typically done by end-users or others, not by programmers. Betas are
often widely distributed or even distributed to the public at large in hopes
that they will buy the final product when it is released.
• Selected users receive the system first and report problems back to the
developer.
• Beta testing is a type of acceptance testing involving a software product
to be marketed for use by many users.
What is a Bug?
• A bug is a defect/fault in a system which causes the
system to perform in an unintended or unanticipated
manner.
Bug: Severity vs. Priority
• Severity:
– Severity of a bug is the impact of a bug on the system’s
ability to function.
– Severity is a measure of how bad(impact).
• Priority:
– Priority of a bug is how important it is for a bug to be fixed.
– Priority is a measure of when (time).
What is a Test Plan?
• A test plan is a document that describes the objectives, scope,
approach, resources, schedule and focus of software testing
activities.
• A test plan gives detailed testing information regarding an
upcoming testing effort. In other words, a test plan is a
systematic approach to testing a system and typically
contains a detailed understanding of what the eventual
workflow will be.
• Organizations may follow standard test plan guidelines (e.g.
IEEE, CMM ) or they can have their own customized test plan
outlines.
What is a Test Case?
• A test case is a document that describes an input,
action, or event, and its expected results, in order to
determine if a feature of an application is working
correctly.
• In other words, a test case is document specifying
inputs, predicted results and a set of execution
conditions for a test item.
Test Suite
• The collection of individual test cases that will be run
in a test sequence until some stopping criteria are
satisfied is called a test suite.
• A collection of tests used to validate the behavior of
a product.
Test Log
• A chronological record of all relevant details about
the execution of a test.
Test Bed
• An execution environment configured for testing.
• A test bed may consists of specific hardware, OS,
network topology, configuration of AUT, other
application or system software.
Test Script
• A test script is commonly used to refer to the
instructions for a particular test that will be
carried out by an automated testing tool.
Test Deliverables
 What are the typical Test Deliverables? / What is to
be delivered as part of the test plan?
– Test plan
– Test case
– Test scripts
– Test matrix
– Defect log
– Test Summary Report
What is a successful Test Plan?
• A successful test plan is one that verifies that all
functions specified in the requirements are included
in the final system.
• Such a test plan provides 100% test coverage and is
accomplished with minimum cost to resources and
schedule.
Test Plan: How to develop?
• Test plan is developed based on the requirements
and functionality of the system.
– FRD (Functional Requirements Documents)
– SRS (Software Requirements Specification)
– Technical specifications
– User manuals (if there is any)
– Use Cases
Quality Assurance Beyond Testing
• Although software testing plays a central role in
software quality assurance and is the most
commonly performed QA activity, it is neither the
only viable nor the most effective QA technique
under all circumstances.
• There are many other QA activities beyond testing –
– Review (Inspection/FTR/Walkthrough)
– Formal verification
– Defect prevention
– Fault tolerance

More Related Content

What's hot

Softwarequalityassurance with Abu ul hassan Sahadvi
Softwarequalityassurance with Abu ul hassan SahadviSoftwarequalityassurance with Abu ul hassan Sahadvi
Softwarequalityassurance with Abu ul hassan SahadviAbuulHassan2
 
Software Engineering (Introduction)
Software Engineering (Introduction)Software Engineering (Introduction)
Software Engineering (Introduction)ShudipPal
 
ST-All about Test Case-p3
ST-All about Test Case-p3ST-All about Test Case-p3
ST-All about Test Case-p3Prachi Sasankar
 
testing strategies and tactics
 testing strategies and tactics testing strategies and tactics
testing strategies and tacticsPreeti Mishra
 
Chapter 15 software product metrics
Chapter 15 software product metricsChapter 15 software product metrics
Chapter 15 software product metricsSHREEHARI WADAWADAGI
 
Software Engineering (Software Quality Assurance)
Software Engineering (Software Quality Assurance)Software Engineering (Software Quality Assurance)
Software Engineering (Software Quality Assurance)ShudipPal
 
Software Testing - Software Quality
Software Testing - Software QualitySoftware Testing - Software Quality
Software Testing - Software QualityAjeng Savitri
 
Software Engineering Overview
Software Engineering OverviewSoftware Engineering Overview
Software Engineering OverviewPrachi Sasankar
 
Software Engineering 2 lecture slide
Software Engineering 2 lecture slideSoftware Engineering 2 lecture slide
Software Engineering 2 lecture slideAdil Mehmoood
 
Intro to Software Engineering - Software Quality Assurance
Intro to Software Engineering - Software Quality AssuranceIntro to Software Engineering - Software Quality Assurance
Intro to Software Engineering - Software Quality AssuranceRadu_Negulescu
 
Software engineering
Software engineeringSoftware engineering
Software engineeringGuruAbirami2
 
Types of software testing
Types of software testingTypes of software testing
Types of software testingPrachi Sasankar
 
Unit3 software review control software
Unit3 software review control softwareUnit3 software review control software
Unit3 software review control softwareReetesh Gupta
 
Software Engineering (Metrics for Process and Projects)
Software Engineering (Metrics for Process and Projects)Software Engineering (Metrics for Process and Projects)
Software Engineering (Metrics for Process and Projects)ShudipPal
 

What's hot (20)

Softwarequalityassurance with Abu ul hassan Sahadvi
Softwarequalityassurance with Abu ul hassan SahadviSoftwarequalityassurance with Abu ul hassan Sahadvi
Softwarequalityassurance with Abu ul hassan Sahadvi
 
Software Engineering (Introduction)
Software Engineering (Introduction)Software Engineering (Introduction)
Software Engineering (Introduction)
 
Software testing and analysis
Software testing and analysisSoftware testing and analysis
Software testing and analysis
 
ST-All about Test Case-p3
ST-All about Test Case-p3ST-All about Test Case-p3
ST-All about Test Case-p3
 
Software Quality Metrics
Software Quality MetricsSoftware Quality Metrics
Software Quality Metrics
 
testing strategies and tactics
 testing strategies and tactics testing strategies and tactics
testing strategies and tactics
 
Chapter 15 software product metrics
Chapter 15 software product metricsChapter 15 software product metrics
Chapter 15 software product metrics
 
Software Engineering (Software Quality Assurance)
Software Engineering (Software Quality Assurance)Software Engineering (Software Quality Assurance)
Software Engineering (Software Quality Assurance)
 
Testing Plan
Testing PlanTesting Plan
Testing Plan
 
Software Testing - Software Quality
Software Testing - Software QualitySoftware Testing - Software Quality
Software Testing - Software Quality
 
Software Engineering Overview
Software Engineering OverviewSoftware Engineering Overview
Software Engineering Overview
 
Software Engineering 2 lecture slide
Software Engineering 2 lecture slideSoftware Engineering 2 lecture slide
Software Engineering 2 lecture slide
 
Intro to Software Engineering - Software Quality Assurance
Intro to Software Engineering - Software Quality AssuranceIntro to Software Engineering - Software Quality Assurance
Intro to Software Engineering - Software Quality Assurance
 
Software engineering
Software engineeringSoftware engineering
Software engineering
 
Types of software testing
Types of software testingTypes of software testing
Types of software testing
 
Unit3 software review control software
Unit3 software review control softwareUnit3 software review control software
Unit3 software review control software
 
Software Engineering (Metrics for Process and Projects)
Software Engineering (Metrics for Process and Projects)Software Engineering (Metrics for Process and Projects)
Software Engineering (Metrics for Process and Projects)
 
Software metrics
Software metricsSoftware metrics
Software metrics
 
Software Metrics
Software MetricsSoftware Metrics
Software Metrics
 
Testing Technique
Testing TechniqueTesting Technique
Testing Technique
 

Similar to Software Engineering (Software Quality Assurance & Testing: Supplementary Materials)

Software Quality Assurance
Software Quality AssuranceSoftware Quality Assurance
Software Quality AssuranceSaqib Raza
 
Fundamentals of software part 1
Fundamentals of software part 1Fundamentals of software part 1
Fundamentals of software part 1Siddharth Sharma
 
SENG202-v-and-v-modeling_121810.pptx
SENG202-v-and-v-modeling_121810.pptxSENG202-v-and-v-modeling_121810.pptx
SENG202-v-and-v-modeling_121810.pptxMinsasWorld
 
Software testing-and-analysis
Software testing-and-analysisSoftware testing-and-analysis
Software testing-and-analysisWBUTTUTORIALS
 
Objectorientedtesting 160320132146
Objectorientedtesting 160320132146Objectorientedtesting 160320132146
Objectorientedtesting 160320132146vidhyyav
 
Object oriented testing
Object oriented testingObject oriented testing
Object oriented testingHaris Jamil
 
unit-2_20-july-2018 (1).pptx
unit-2_20-july-2018 (1).pptxunit-2_20-july-2018 (1).pptx
unit-2_20-july-2018 (1).pptxPriyaFulpagare1
 
DISE - Software Testing and Quality Management
DISE - Software Testing and Quality ManagementDISE - Software Testing and Quality Management
DISE - Software Testing and Quality ManagementRasan Samarasinghe
 
Object Oriented Testing(OOT) presentation slides
Object Oriented Testing(OOT) presentation slidesObject Oriented Testing(OOT) presentation slides
Object Oriented Testing(OOT) presentation slidesPunjab University
 
Software Testing Fundamentals
Software Testing FundamentalsSoftware Testing Fundamentals
Software Testing FundamentalsChankey Pathak
 
software testing
 software testing software testing
software testingSara shall
 
Software Testing PPT | Software All Testing
Software Testing PPT | Software All TestingSoftware Testing PPT | Software All Testing
Software Testing PPT | Software All Testingsankalpkumarsahoo174
 
Software testing methods, levels and types
Software testing methods, levels and typesSoftware testing methods, levels and types
Software testing methods, levels and typesConfiz
 
Fundamentals of Software Engineering
Fundamentals of Software Engineering Fundamentals of Software Engineering
Fundamentals of Software Engineering Madhar Khan Pathan
 

Similar to Software Engineering (Software Quality Assurance & Testing: Supplementary Materials) (20)

Software Quality Assurance
Software Quality AssuranceSoftware Quality Assurance
Software Quality Assurance
 
Fundamentals of software part 1
Fundamentals of software part 1Fundamentals of software part 1
Fundamentals of software part 1
 
SENG202-v-and-v-modeling_121810.pptx
SENG202-v-and-v-modeling_121810.pptxSENG202-v-and-v-modeling_121810.pptx
SENG202-v-and-v-modeling_121810.pptx
 
Software testing
Software testingSoftware testing
Software testing
 
Software testing-and-analysis
Software testing-and-analysisSoftware testing-and-analysis
Software testing-and-analysis
 
Objectorientedtesting 160320132146
Objectorientedtesting 160320132146Objectorientedtesting 160320132146
Objectorientedtesting 160320132146
 
Object oriented testing
Object oriented testingObject oriented testing
Object oriented testing
 
unit-2_20-july-2018 (1).pptx
unit-2_20-july-2018 (1).pptxunit-2_20-july-2018 (1).pptx
unit-2_20-july-2018 (1).pptx
 
Software testing
Software testingSoftware testing
Software testing
 
ISTQB foundation level - day 2
ISTQB foundation level - day 2ISTQB foundation level - day 2
ISTQB foundation level - day 2
 
DISE - Software Testing and Quality Management
DISE - Software Testing and Quality ManagementDISE - Software Testing and Quality Management
DISE - Software Testing and Quality Management
 
Object Oriented Testing(OOT) presentation slides
Object Oriented Testing(OOT) presentation slidesObject Oriented Testing(OOT) presentation slides
Object Oriented Testing(OOT) presentation slides
 
Software Testing Fundamentals
Software Testing FundamentalsSoftware Testing Fundamentals
Software Testing Fundamentals
 
software testing
 software testing software testing
software testing
 
UNIT 1.pptx
UNIT 1.pptxUNIT 1.pptx
UNIT 1.pptx
 
Software Testing PPT | Software All Testing
Software Testing PPT | Software All TestingSoftware Testing PPT | Software All Testing
Software Testing PPT | Software All Testing
 
Software testing methods, levels and types
Software testing methods, levels and typesSoftware testing methods, levels and types
Software testing methods, levels and types
 
testing.pptx
testing.pptxtesting.pptx
testing.pptx
 
Fundamentals of Software Engineering
Fundamentals of Software Engineering Fundamentals of Software Engineering
Fundamentals of Software Engineering
 
Software_Testing_ppt.pptx
Software_Testing_ppt.pptxSoftware_Testing_ppt.pptx
Software_Testing_ppt.pptx
 

More from ShudipPal

Software Engineering (Project Planning & Estimation)
Software Engineering (Project Planning &  Estimation)Software Engineering (Project Planning &  Estimation)
Software Engineering (Project Planning & Estimation)ShudipPal
 
Software Engineering (Software Configuration Management)
Software Engineering (Software Configuration Management)Software Engineering (Software Configuration Management)
Software Engineering (Software Configuration Management)ShudipPal
 
Software Engineering (Testing techniques)
Software Engineering (Testing techniques)Software Engineering (Testing techniques)
Software Engineering (Testing techniques)ShudipPal
 
Software Engineering (Risk Management)
Software Engineering (Risk Management)Software Engineering (Risk Management)
Software Engineering (Risk Management)ShudipPal
 
Software Engineering (Project Scheduling)
Software Engineering (Project Scheduling)Software Engineering (Project Scheduling)
Software Engineering (Project Scheduling)ShudipPal
 
Software Engineering (Project Management )
Software Engineering (Project  Management )Software Engineering (Project  Management )
Software Engineering (Project Management )ShudipPal
 
Software Engineering (Introduction to Software Engineering)
Software Engineering (Introduction to Software Engineering)Software Engineering (Introduction to Software Engineering)
Software Engineering (Introduction to Software Engineering)ShudipPal
 

More from ShudipPal (7)

Software Engineering (Project Planning & Estimation)
Software Engineering (Project Planning &  Estimation)Software Engineering (Project Planning &  Estimation)
Software Engineering (Project Planning & Estimation)
 
Software Engineering (Software Configuration Management)
Software Engineering (Software Configuration Management)Software Engineering (Software Configuration Management)
Software Engineering (Software Configuration Management)
 
Software Engineering (Testing techniques)
Software Engineering (Testing techniques)Software Engineering (Testing techniques)
Software Engineering (Testing techniques)
 
Software Engineering (Risk Management)
Software Engineering (Risk Management)Software Engineering (Risk Management)
Software Engineering (Risk Management)
 
Software Engineering (Project Scheduling)
Software Engineering (Project Scheduling)Software Engineering (Project Scheduling)
Software Engineering (Project Scheduling)
 
Software Engineering (Project Management )
Software Engineering (Project  Management )Software Engineering (Project  Management )
Software Engineering (Project Management )
 
Software Engineering (Introduction to Software Engineering)
Software Engineering (Introduction to Software Engineering)Software Engineering (Introduction to Software Engineering)
Software Engineering (Introduction to Software Engineering)
 

Recently uploaded

How to Add New Custom Addons Path in Odoo 17
How to Add New Custom Addons Path in Odoo 17How to Add New Custom Addons Path in Odoo 17
How to Add New Custom Addons Path in Odoo 17Celine George
 
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptxHMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptxEsquimalt MFRC
 
Introduction to TechSoup’s Digital Marketing Services and Use Cases
Introduction to TechSoup’s Digital Marketing  Services and Use CasesIntroduction to TechSoup’s Digital Marketing  Services and Use Cases
Introduction to TechSoup’s Digital Marketing Services and Use CasesTechSoup
 
Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)Jisc
 
Wellbeing inclusion and digital dystopias.pptx
Wellbeing inclusion and digital dystopias.pptxWellbeing inclusion and digital dystopias.pptx
Wellbeing inclusion and digital dystopias.pptxJisc
 
REMIFENTANIL: An Ultra short acting opioid.pptx
REMIFENTANIL: An Ultra short acting opioid.pptxREMIFENTANIL: An Ultra short acting opioid.pptx
REMIFENTANIL: An Ultra short acting opioid.pptxDr. Ravikiran H M Gowda
 
Tatlong Kwento ni Lola basyang-1.pdf arts
Tatlong Kwento ni Lola basyang-1.pdf artsTatlong Kwento ni Lola basyang-1.pdf arts
Tatlong Kwento ni Lola basyang-1.pdf artsNbelano25
 
How to Add a Tool Tip to a Field in Odoo 17
How to Add a Tool Tip to a Field in Odoo 17How to Add a Tool Tip to a Field in Odoo 17
How to Add a Tool Tip to a Field in Odoo 17Celine George
 
HMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptx
HMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptxHMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptx
HMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptxmarlenawright1
 
Transparency, Recognition and the role of eSealing - Ildiko Mazar and Koen No...
Transparency, Recognition and the role of eSealing - Ildiko Mazar and Koen No...Transparency, Recognition and the role of eSealing - Ildiko Mazar and Koen No...
Transparency, Recognition and the role of eSealing - Ildiko Mazar and Koen No...EADTU
 
PANDITA RAMABAI- Indian political thought GENDER.pptx
PANDITA RAMABAI- Indian political thought GENDER.pptxPANDITA RAMABAI- Indian political thought GENDER.pptx
PANDITA RAMABAI- Indian political thought GENDER.pptxakanksha16arora
 
On_Translating_a_Tamil_Poem_by_A_K_Ramanujan.pptx
On_Translating_a_Tamil_Poem_by_A_K_Ramanujan.pptxOn_Translating_a_Tamil_Poem_by_A_K_Ramanujan.pptx
On_Translating_a_Tamil_Poem_by_A_K_Ramanujan.pptxPooja Bhuva
 
Unit 3 Emotional Intelligence and Spiritual Intelligence.pdf
Unit 3 Emotional Intelligence and Spiritual Intelligence.pdfUnit 3 Emotional Intelligence and Spiritual Intelligence.pdf
Unit 3 Emotional Intelligence and Spiritual Intelligence.pdfDr Vijay Vishwakarma
 
FSB Advising Checklist - Orientation 2024
FSB Advising Checklist - Orientation 2024FSB Advising Checklist - Orientation 2024
FSB Advising Checklist - Orientation 2024Elizabeth Walsh
 
On National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan FellowsOn National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan FellowsMebane Rash
 
Model Attribute _rec_name in the Odoo 17
Model Attribute _rec_name in the Odoo 17Model Attribute _rec_name in the Odoo 17
Model Attribute _rec_name in the Odoo 17Celine George
 
Details on CBSE Compartment Exam.pptx1111
Details on CBSE Compartment Exam.pptx1111Details on CBSE Compartment Exam.pptx1111
Details on CBSE Compartment Exam.pptx1111GangaMaiya1
 
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...Pooja Bhuva
 

Recently uploaded (20)

How to Add New Custom Addons Path in Odoo 17
How to Add New Custom Addons Path in Odoo 17How to Add New Custom Addons Path in Odoo 17
How to Add New Custom Addons Path in Odoo 17
 
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptxHMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
 
OS-operating systems- ch05 (CPU Scheduling) ...
OS-operating systems- ch05 (CPU Scheduling) ...OS-operating systems- ch05 (CPU Scheduling) ...
OS-operating systems- ch05 (CPU Scheduling) ...
 
Introduction to TechSoup’s Digital Marketing Services and Use Cases
Introduction to TechSoup’s Digital Marketing  Services and Use CasesIntroduction to TechSoup’s Digital Marketing  Services and Use Cases
Introduction to TechSoup’s Digital Marketing Services and Use Cases
 
Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)
 
Wellbeing inclusion and digital dystopias.pptx
Wellbeing inclusion and digital dystopias.pptxWellbeing inclusion and digital dystopias.pptx
Wellbeing inclusion and digital dystopias.pptx
 
REMIFENTANIL: An Ultra short acting opioid.pptx
REMIFENTANIL: An Ultra short acting opioid.pptxREMIFENTANIL: An Ultra short acting opioid.pptx
REMIFENTANIL: An Ultra short acting opioid.pptx
 
Tatlong Kwento ni Lola basyang-1.pdf arts
Tatlong Kwento ni Lola basyang-1.pdf artsTatlong Kwento ni Lola basyang-1.pdf arts
Tatlong Kwento ni Lola basyang-1.pdf arts
 
How to Add a Tool Tip to a Field in Odoo 17
How to Add a Tool Tip to a Field in Odoo 17How to Add a Tool Tip to a Field in Odoo 17
How to Add a Tool Tip to a Field in Odoo 17
 
HMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptx
HMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptxHMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptx
HMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptx
 
Transparency, Recognition and the role of eSealing - Ildiko Mazar and Koen No...
Transparency, Recognition and the role of eSealing - Ildiko Mazar and Koen No...Transparency, Recognition and the role of eSealing - Ildiko Mazar and Koen No...
Transparency, Recognition and the role of eSealing - Ildiko Mazar and Koen No...
 
PANDITA RAMABAI- Indian political thought GENDER.pptx
PANDITA RAMABAI- Indian political thought GENDER.pptxPANDITA RAMABAI- Indian political thought GENDER.pptx
PANDITA RAMABAI- Indian political thought GENDER.pptx
 
On_Translating_a_Tamil_Poem_by_A_K_Ramanujan.pptx
On_Translating_a_Tamil_Poem_by_A_K_Ramanujan.pptxOn_Translating_a_Tamil_Poem_by_A_K_Ramanujan.pptx
On_Translating_a_Tamil_Poem_by_A_K_Ramanujan.pptx
 
Unit 3 Emotional Intelligence and Spiritual Intelligence.pdf
Unit 3 Emotional Intelligence and Spiritual Intelligence.pdfUnit 3 Emotional Intelligence and Spiritual Intelligence.pdf
Unit 3 Emotional Intelligence and Spiritual Intelligence.pdf
 
FSB Advising Checklist - Orientation 2024
FSB Advising Checklist - Orientation 2024FSB Advising Checklist - Orientation 2024
FSB Advising Checklist - Orientation 2024
 
On National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan FellowsOn National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan Fellows
 
Model Attribute _rec_name in the Odoo 17
Model Attribute _rec_name in the Odoo 17Model Attribute _rec_name in the Odoo 17
Model Attribute _rec_name in the Odoo 17
 
Our Environment Class 10 Science Notes pdf
Our Environment Class 10 Science Notes pdfOur Environment Class 10 Science Notes pdf
Our Environment Class 10 Science Notes pdf
 
Details on CBSE Compartment Exam.pptx1111
Details on CBSE Compartment Exam.pptx1111Details on CBSE Compartment Exam.pptx1111
Details on CBSE Compartment Exam.pptx1111
 
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...
 

Software Engineering (Software Quality Assurance & Testing: Supplementary Materials)

  • 1. Software Engineering (CSI 321) Software Quality Assurance & Testing: Supplementary Materials
  • 2. QA vs. Software Testing  Software Testing: • Testing is the process of executing a system or component under specified conditions with the intent of finding defects and to verify that it satisfies specified requirements. • Testing is a product-oriented activity. • Testing is oriented to bug-detection. • Testing is one of the most important parts of quality assurance (QA).
  • 3. QA vs. Testing  Software Quality Assurance: • Defined as a planned and systematic approach to the evaluation of the quality of and adherence to software product standards, processes, and procedures. • An umbrella activity that is applied throughout the software process. • Consists of a means of monitoring the software engineering processes and methods used to ensure quality. • An effective approach to producing high quality software. • QA is a process-oriented activity. • QA is oriented to bug-prevention.
  • 4. What is Quality Control(QC)? • QC is the set of activities designed to evaluate the quality of developed product. • QC is a responsibility internal to the team. • QC is a product-oriented activity. • The term QC is used in a production/hardware manufacturing environment, where a large number of physical items are produced and shipped. Each of the items has to go through a testing process to ensure that the quality of the product is good enough for shipment; otherwise the item is rejected. The quality check is conducted by the quality control group within the manufacturing organization, and the person who conducts the testing is called a quality controller.
  • 5. Verification vs. Validation • Validation: – Validation is a process that ensures the software product meets the customer requirements. – It is a high-level activity. – Building the correct product • Verification: – Verification is a process that ensures the software product works properly. – It is a low-level activity. – Building the product correctly
  • 6. Testing Levels 1. Unit Testing 2. Integration Testing 3. System Testing 4. Acceptance Testing
  • 7. Testing Levels Unit Testing: • Testing of individual software components • First level of dynamic testing • Typically white-box testing • Usually done by programmers • AKA: Component testing, module testing
  • 8. Testing Levels Integration Testing: • Testing of two or more units/modules together • Objective is to detect Interface defects between units/modules
  • 9. Testing Levels System Testing: • Conducted on complete, integrated system • Ensures entire integrated system meets requirements • Black-box in nature • Done before Performance testing
  • 10. Testing Levels Acceptance Testing: • Formal testing for product evaluation • Performed by customers/end users (preferably) • Verifies functionality and usability of the software • Prior to software being released to live operation
  • 11. Testing Techniques • Basically two types – 1) White-box testing 2) Black-box testing
  • 12. BBT vs. WBT Black box testing: • View components as opaque • Based on requirements and functionality • Without any knowledge of internal design, code or language. • AKA : Functional testing, behavioral testing
  • 13. BBT vs. WBT White box testing: • View components as transparent • Based on knowledge of the internal logic • Done by programmers (usually) • AKA: Structural testing, Glass-box testing, Clear-box testing
  • 14. Manual Testing vs. Automated Testing Manual Testing: • Oldest and most rigorous type of software testing • Requires a tester to perform manual test operations – Hard to repeat – Not always reliable – Costly (time consuming, labor intensive)
  • 15. Manual Testing vs. Automated Testing Automated Testing: • Testing employing software tools • Execute tests without manual intervention – Fast – Repeatable – Reliable – Reusable – Programmable – Saves time
  • 16. Alpha Testing vs. Beta Testing Alpha testing: • Alpha testing is performed by potential users/customers or an independent test team at the developer’s site. • Conducted when code is mostly complete or contains most of the functionality and prior to users being involved. • Minor design changes may still be made as a result of such testing. Sometimes a select group of users are involved.
  • 17. Alpha Testing vs. Beta Testing Beta testing: • Beta testing is done at the customer’s site by the customer in the open environment. • Testing when development and testing are essentially completed and final bugs and problems need to be found before final release. • Typically done by end-users or others, not by programmers. Betas are often widely distributed or even distributed to the public at large in hopes that they will buy the final product when it is released. • Selected users receive the system first and report problems back to the developer. • Beta testing is a type of acceptance testing involving a software product to be marketed for use by many users.
  • 18. What is a Bug? • A bug is a defect/fault in a system which causes the system to perform in an unintended or unanticipated manner.
  • 19. Bug: Severity vs. Priority • Severity: – Severity of a bug is the impact of a bug on the system’s ability to function. – Severity is a measure of how bad(impact). • Priority: – Priority of a bug is how important it is for a bug to be fixed. – Priority is a measure of when (time).
  • 20. What is a Test Plan? • A test plan is a document that describes the objectives, scope, approach, resources, schedule and focus of software testing activities. • A test plan gives detailed testing information regarding an upcoming testing effort. In other words, a test plan is a systematic approach to testing a system and typically contains a detailed understanding of what the eventual workflow will be. • Organizations may follow standard test plan guidelines (e.g. IEEE, CMM ) or they can have their own customized test plan outlines.
  • 21. What is a Test Case? • A test case is a document that describes an input, action, or event, and its expected results, in order to determine if a feature of an application is working correctly. • In other words, a test case is document specifying inputs, predicted results and a set of execution conditions for a test item.
  • 22. Test Suite • The collection of individual test cases that will be run in a test sequence until some stopping criteria are satisfied is called a test suite. • A collection of tests used to validate the behavior of a product.
  • 23. Test Log • A chronological record of all relevant details about the execution of a test.
  • 24. Test Bed • An execution environment configured for testing. • A test bed may consists of specific hardware, OS, network topology, configuration of AUT, other application or system software.
  • 25. Test Script • A test script is commonly used to refer to the instructions for a particular test that will be carried out by an automated testing tool.
  • 26. Test Deliverables  What are the typical Test Deliverables? / What is to be delivered as part of the test plan? – Test plan – Test case – Test scripts – Test matrix – Defect log – Test Summary Report
  • 27. What is a successful Test Plan? • A successful test plan is one that verifies that all functions specified in the requirements are included in the final system. • Such a test plan provides 100% test coverage and is accomplished with minimum cost to resources and schedule.
  • 28. Test Plan: How to develop? • Test plan is developed based on the requirements and functionality of the system. – FRD (Functional Requirements Documents) – SRS (Software Requirements Specification) – Technical specifications – User manuals (if there is any) – Use Cases
  • 29. Quality Assurance Beyond Testing • Although software testing plays a central role in software quality assurance and is the most commonly performed QA activity, it is neither the only viable nor the most effective QA technique under all circumstances. • There are many other QA activities beyond testing – – Review (Inspection/FTR/Walkthrough) – Formal verification – Defect prevention – Fault tolerance