SlideShare une entreprise Scribd logo
1  sur  25
SOFTWARETESTING ANDSOFTWARETESTING AND
SOFTWARE DEVELOPMENTSOFTWARE DEVELOPMENT
PROCESS (SDP)PROCESS (SDP)
Aloysius Ochola
2010/HD18/431U
MAKERERE UNIVERSITY
School of Computing and InformaticsTechnology
MCN 8108MCN 8108 Software Quality Assurance & TestingSoftware Quality Assurance & Testing
MscCS Class Presentations. Nov. 2011
SoftwareTestingSoftwareTesting
Programs are implemented to provide a concrete
representation of an algorithm
◦ major concern is with the correctness and performance of the
implementation.
Engineers must then ensure that their software
systems achieve an appropriate level of quality
Software verification (through correctness proof)
◦ Technique to assist during the specification, design, and
implementation of a software system
Software testing (alternative for verification)
◦ Process of assessing the functionality and correctness of a
program through execution or analysis
◦ Basically a methodology to find bugs in a software with an
intent to fix them
2 Software Testing and the SDP
SoftwareTesting (cont)SoftwareTesting (cont)
Software testing is more than just error detection.
Looked at as operating the software under
controlled conditions to verify that it behaves as
specified to detect errors and validate that what has
been specified is what the user actually wanted.
◦ Verification - check or test items, including software,
for conformance and consistency by evaluating the
results against pre-specified requirements. 
 Check if we are building what the customer wants
 Qn. Are we building the system right?
◦ Error Detection - Testing should intentionally attempt
to make things go wrong.
 Determine if things happen when they shouldn’t or things don’t
happen when they should.
3 Software Testing and the SDP
SoftwareTesting (cont)SoftwareTesting (cont)
◦ Validation (system correctness) - process of
checking that what has been specified is what
the user actually wanted. 
 Check if we are building that system correctly
 Qn. Are we building the right system?
Both verification and validation are
necessary, but different components of any
testing activity.
4 Software Testing and the SDP
Limits of SoftwareTestingLimits of SoftwareTesting
Can not test a program completely
◦ Completeness means that at the end of testing,
there are no undiscovered software errors.
Whether they've been fixed is a different issue,
but all problems must be known and
understood
◦ Why complete testing is impossible
 The domain of possible inputs is too large to test
 There are too many possible paths through the
program to test
 The user interface issues (and thus the design issues)
are too complex to completely test
5 Software Testing and the SDP
Limits of S.T(cont…)Limits of S.T(cont…)
Testing can only prove the presence of bugs
but never their absence
You can not test the program’s response to
every possible input
◦ The number of test inputs, even for this simple a
program, is huge.
You can not test every path the program can
take
◦ As with testing input data, it is important to realize
that you have not completely tested the program
unless you have exercised every path.
◦ No such paths as safe to skip
Software Testing and the SDP6
Limits of S.T(cont…)Limits of S.T(cont…)
You can not find every design error
◦ A program meets the specification by doing
exactly what a specification says it should
◦ If specification goes wrong? Ex.Asks for 1x1=11
◦ Being in the specification doesn't make them right
◦ You can't completely test a program if you can't
find all of its design errors
You can not prove programs correct using
logic
◦ can only validate the internal consistency of the
program
◦ What if the specifications were wrong?
Software Testing and the SDP7
Limits of S.T(cont…)Limits of S.T(cont…)
You can not verify that the program works
correctly
◦ A tester is interested in verifying the program
◦ How? If the program can not be tested
completely
Software Testing and the SDP8
Objectives of Testing SoftwareObjectives of Testing Software
The purpose of testing is verification,
validation and error detection in order to
find problems. And the purpose of finding
those problems is to get them fixed.
Testing Software to Find Problems
◦ Executing a program with the intent of finding an
error
◦ Check if the system meets the requirements and
be executed successfully in the Intended
environment
◦ Check if the system is “ Fit for purpose”
◦ Check if system does what it is expected to do
9 Software Testing and the SDP
Objectives of Testing SoftwareObjectives of Testing Software
Finding Problems to Fix them
◦ One benefit of testing is that it results in
improved quality
◦ uncovering yet undiscovered errors
◦ Fixing bugs
◦ You take a destructive attitude toward the
program when you test
Software Testing and the SDP10
Testing Life-Cycle PhasesTesting Life-Cycle Phases
Basically 5 stages involved include
Requirements Study
◦ Understanding of the requirements is very essential for
testing a product
◦ So we set a starting point to the study of the client’s
requirements
◦ Involves the analysis and planning phase, encapsulates
 Test objective and coverage
 Overall schedule
 Standards and Methodologies
 Resources required, including necessary training
 Roles and responsibilities of the team members
 Tools used
Software Testing and the SDP11
Testing Life-cycle phasesTesting Life-cycle phases
Test Case Design and Development
◦ Identify Components
◦ Test Specification Design
◦ Test Specification Reviews
Test Execution
◦ Code Review
◦ Test execution and evaluation
◦ Performance and simulation
Test Closure
◦ Test summary report
◦ Project Documentation
Test Process Analysis
◦ Done on the reports and improving the performance of
application by implementing new technology.
Software Testing and the SDP12
SoftwareTesting TechniquesSoftwareTesting Techniques
 Different techniques are used for software techniques.
The commonly used are the following
 Black BoxTesting (functional/behavioural)
◦ No knowledge of internal design or code required.
13 Software Testing and the SDP
◦ focus on outputs in
response to
selected inputs and
execution
conditions
◦ Tests are based on
requirements and
functionality.
White box testingWhite box testing (Glass box)
◦ Takes into account the internal mechanism of the
system
◦ White Box is most appropriate when we must
assure that the calculations are correct.
◦ Covering every possible path through a module is
usually not practical
 Goal is to ensure that all conditional statements have
been executed at least once
◦ Requirements fulfilments and interface availability
and working assurance
 Grey BoxTestingGrey BoxTesting
◦ The combination of White and Black box testing
Software Testing and the SDP14
Stages of SoftwareTestingStages of SoftwareTesting
UnitTesting
 Micro scale of testing done on particular functions or code
modules
 Internal program design and code knowledge is required
 Thus, done by Programmers after modules have been coded.
 Objectives
◦ To test the function of a program or unit of code such as a module
◦ To test internal logic
◦ To verify internal design
◦ To test path and conditions coverage
◦ To test exception conditions & error handling
 White box testing and test coverage techniques deployed
 Tools guiding unit testing include; Debug, Re-structure, code
analyzers and path coverage tools
Software Testing and the SDP15
IntegratedTesting
 Testing of combined parts of an application to determine
their functional correctness
 Done to technically verify proper interfacing between modules
and within sub-systems.
 Always carried out by developers after modules are unit
tested
 White Box, Black box and configuration management,
techniques used.
 Types of Integrated Testing
◦ Bottom - up testing (test harness)
◦ Top - down testing (stubs).
◦ Modified top - down testing - test levels independently.
◦ Big Bang
◦ Sandwich testing
Software Testing and the SDP16
SystemTesting
Major objectives include
◦ Verify that system components perform control
functions
◦ To perform inter-system test
◦ To perform appropriate types of tests relating to
transaction flows, installation, reliability, regression, etc
It is done by both users and the development
team after integration testing
System integrated testing is often carried out
after system testing but outside the project life
cycle
◦ Tests the co-existence of products and applications
that are required to perform together in a production-
like operational environment
Software Testing and the SDP17
AcceptanceTesting
This is performed by the end users
To verify that the system meets their
requirements.
Black box technique is applied
Tools used may include:
◦ Comparison
◦ Keystroke capture
◦ Playback
◦ Regression testing
Software Testing and the SDP18
Types of SoftwareTestingTypes of SoftwareTesting
We have come across so many types of
software testing
Two major approaches of software testing
◦ Manual testing – done by man. Tester runs the
software for errors. Consumes a lot of time
because testing has to be repeated after every
change (regression testing)
◦ Automated testing – Testing employing software
tools which execute tests without manual
intervention
 performed by writing test drivers that can run
automatically and produce test results
19 Software Testing and the SDP
Major Types of TestingMajor Types of Testing
 LoadTesting
◦ Testing an application under heavy loads
◦ Ex,Testing of a web site under a range of loads to determine,
when the system response time degraded or fails.
 StressTesting
◦ Program is checked to see how well it deals with abnormal
resource demands
◦ Testing under heavy loads, heavy repetition of certain actions
or inputs
◦ Ex. input of large numerical values, large complex queries to a
database
Software Testing and the SDP20
 PerformanceTesting
◦ Tests the run-time performance of software
◦ How well does the application comply to performance
requirements?
 RecoveryTesting
◦ Checks system’s ability to recover from failures
◦ How well can it recovers from crashes, hardware failures or
other problems?
 ConversionTesting
◦ Testing of programs or procedures used to convert data from
existing systems for use in replacement system
◦ Ensures that the existing data should not change,
while converting it into the new updated version of the
application
Software Testing and the SDP21
 UsabilityTesting
◦ A method by which users of a product are asked to
perform certain tasks in an effort to measure the
product's ease-of-use, task time, and the user's
perception of the experience
◦ Testing the ease with which users can learn and use a
product
 ConfigurationTesting
◦ Focuses on measuring a human-made product's capacity
to meet its intended purpose
◦ Causes the application to fail to meet its configurability
requirements so that the underlying defects can be
identified, analyzed, fixed, and prevented in the future
Software Testing and the SDP22
Software Development ProcessSoftware Development Process
 A structure imposed on the development of a software
product
 There are several models for such processes, each describing
approaches to a variety of tasks or activities that take place
during the process.
 Activities involved
◦ Planning
◦ Design
◦ Coding and Documentation
◦ Testing and Fixing
◦ Post-Release Maintenance and Enhancement
Testing is involved mainly in the functional phases of the
software development process.
It is necessary that it is encapsulated in the whole process
23 Software Testing and the SDP
SummarySummary
Testing in itself cannot ensure the quality
of software
Only gives us a certain level of confidence
in the software
Testing though, proves that under specific
controlled conditions, the software
functioned as expected by the test cases
executed
Testing never ends as long as a software is
still in use
24 Software Testing and the SDP
ReferencesReferences
 Manish Parashar: Software Testing, Introduction to Software
Engineering; Lecture Notes
 C. Kaner , J. Falk and H.Q Nguyen:Testing Computer Software.
 Different types of software retrieved Nov 2011 from
http://www.wisegeek.com/what-are-the-different-types-of-system-
software.htm
 Roger S. Pressman: Software Engineering; 5th
Edition.
 Ram Chillarege (1999): Software Testing Best Practices, IBM Research
Technical Report
 What is Software Testing … ? Retrieved Nov. 2011 from:
http://bazman.tripod.com/what_testing.html
 Antonia Bertolino (2001): SoftwareTesting
25 Software Testing and the SDP

Contenu connexe

Tendances

Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software EngineeringSaqib Raza
 
Unit 1 - Introduction to Software Engineering.ppt
Unit 1 - Introduction to Software Engineering.pptUnit 1 - Introduction to Software Engineering.ppt
Unit 1 - Introduction to Software Engineering.pptDrTThendralCompSci
 
Software Cost Estimation Techniques
Software Cost Estimation TechniquesSoftware Cost Estimation Techniques
Software Cost Estimation TechniquesSanthi thi
 
Software Engineering concept
Software Engineering concept Software Engineering concept
Software Engineering concept Atamjitsingh92
 
INTRODUCTION TO SOFTWARE ENGINEERING
INTRODUCTION TO SOFTWARE ENGINEERINGINTRODUCTION TO SOFTWARE ENGINEERING
INTRODUCTION TO SOFTWARE ENGINEERINGProf Ansari
 
Lecture 01 Introduction to Software Engineering
Lecture 01 Introduction to Software EngineeringLecture 01 Introduction to Software Engineering
Lecture 01 Introduction to Software EngineeringAchmad Solichin
 
Quality and productivity factors
Quality and productivity factorsQuality and productivity factors
Quality and productivity factorsNancyBeaulah_R
 
Modules and modularization criteria
Modules and modularization criteriaModules and modularization criteria
Modules and modularization criteriaUmaselvi_R
 
Designing Techniques in Software Engineering
Designing Techniques in Software EngineeringDesigning Techniques in Software Engineering
Designing Techniques in Software Engineeringkirupasuchi1996
 
Programming team structure
Programming team structureProgramming team structure
Programming team structureNancyBeaulah_R
 
Software Engineering : Requirement Analysis & Specification
Software Engineering : Requirement Analysis & SpecificationSoftware Engineering : Requirement Analysis & Specification
Software Engineering : Requirement Analysis & SpecificationAjit Nayak
 
Software Process Models
Software Process ModelsSoftware Process Models
Software Process ModelsHassan A-j
 
Theory of programming
Theory of programmingTheory of programming
Theory of programmingtcc_joemarie
 

Tendances (20)

Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software Engineering
 
Unit 1 - Introduction to Software Engineering.ppt
Unit 1 - Introduction to Software Engineering.pptUnit 1 - Introduction to Software Engineering.ppt
Unit 1 - Introduction to Software Engineering.ppt
 
Software Cost Estimation Techniques
Software Cost Estimation TechniquesSoftware Cost Estimation Techniques
Software Cost Estimation Techniques
 
Waterfall model in SDLC
Waterfall model in SDLCWaterfall model in SDLC
Waterfall model in SDLC
 
Software Engineering concept
Software Engineering concept Software Engineering concept
Software Engineering concept
 
INTRODUCTION TO SOFTWARE ENGINEERING
INTRODUCTION TO SOFTWARE ENGINEERINGINTRODUCTION TO SOFTWARE ENGINEERING
INTRODUCTION TO SOFTWARE ENGINEERING
 
Lecture 01 Introduction to Software Engineering
Lecture 01 Introduction to Software EngineeringLecture 01 Introduction to Software Engineering
Lecture 01 Introduction to Software Engineering
 
3. ch 2-process model
3. ch 2-process model3. ch 2-process model
3. ch 2-process model
 
Quality and productivity factors
Quality and productivity factorsQuality and productivity factors
Quality and productivity factors
 
Design notation
Design notationDesign notation
Design notation
 
Modules and modularization criteria
Modules and modularization criteriaModules and modularization criteria
Modules and modularization criteria
 
Designing Techniques in Software Engineering
Designing Techniques in Software EngineeringDesigning Techniques in Software Engineering
Designing Techniques in Software Engineering
 
Sdlc models
Sdlc modelsSdlc models
Sdlc models
 
Programming team structure
Programming team structureProgramming team structure
Programming team structure
 
Software Engineering : Requirement Analysis & Specification
Software Engineering : Requirement Analysis & SpecificationSoftware Engineering : Requirement Analysis & Specification
Software Engineering : Requirement Analysis & Specification
 
Software process model
Software process modelSoftware process model
Software process model
 
Software Process Models
Software Process ModelsSoftware Process Models
Software Process Models
 
SDLC Models
SDLC ModelsSDLC Models
SDLC Models
 
software engineering
software engineeringsoftware engineering
software engineering
 
Theory of programming
Theory of programmingTheory of programming
Theory of programming
 

Similaire à Software testing and software development process

Structured system analysis and design
Structured system analysis and design Structured system analysis and design
Structured system analysis and design Jayant Dalvi
 
SOFTWARE TESTING
SOFTWARE TESTINGSOFTWARE TESTING
SOFTWARE TESTINGacemindia
 
Object Oriented Testing(OOT) presentation slides
Object Oriented Testing(OOT) presentation slidesObject Oriented Testing(OOT) presentation slides
Object Oriented Testing(OOT) presentation slidesPunjab University
 
An introduction to Software Testing and Test Management
An introduction to Software Testing and Test ManagementAn introduction to Software Testing and Test Management
An introduction to Software Testing and Test ManagementAnuraj S.L
 
Software Testing (1).pptx
Software Testing (1).pptxSoftware Testing (1).pptx
Software Testing (1).pptxSarowarSuman
 
Fundamentals of software testing
Fundamentals of software testingFundamentals of software testing
Fundamentals of software testingNoha Gamal
 
Software Testing - A sneak preview By Srikanth
Software Testing - A sneak preview By SrikanthSoftware Testing - A sneak preview By Srikanth
Software Testing - A sneak preview By SrikanthSrikanth Krishnamoorthy
 
Solution Evaluation (BA Role)
Solution Evaluation (BA Role)   Solution Evaluation (BA Role)
Solution Evaluation (BA Role) Shwetha-BA
 
Role of BA in Testing
Role of BA in TestingRole of BA in Testing
Role of BA in TestingShwetha-BA
 
Role of BA in Testing
Role of BA in TestingRole of BA in Testing
Role of BA in TestingLakshmi-BA
 
Role of BA in Testing
Role of BA in TestingRole of BA in Testing
Role of BA in TestingSwatiS-BA
 
Role of BA in Testing
Role of BA in TestingRole of BA in Testing
Role of BA in TestingVeneet-BA
 
Software Testing
Software TestingSoftware Testing
Software TestingSengu Msc
 
Objectorientedtesting 160320132146
Objectorientedtesting 160320132146Objectorientedtesting 160320132146
Objectorientedtesting 160320132146vidhyyav
 

Similaire à Software testing and software development process (20)

Software testing
Software testingSoftware testing
Software testing
 
Types of testing
Types of testingTypes of testing
Types of testing
 
Structured system analysis and design
Structured system analysis and design Structured system analysis and design
Structured system analysis and design
 
SOFTWARE TESTING
SOFTWARE TESTINGSOFTWARE TESTING
SOFTWARE TESTING
 
Object Oriented Testing(OOT) presentation slides
Object Oriented Testing(OOT) presentation slidesObject Oriented Testing(OOT) presentation slides
Object Oriented Testing(OOT) presentation slides
 
An introduction to Software Testing and Test Management
An introduction to Software Testing and Test ManagementAn introduction to Software Testing and Test Management
An introduction to Software Testing and Test Management
 
Software testing strategies
Software testing strategiesSoftware testing strategies
Software testing strategies
 
L software testing
L   software testingL   software testing
L software testing
 
Abc of testing
Abc of testingAbc of testing
Abc of testing
 
Software Testing (1).pptx
Software Testing (1).pptxSoftware Testing (1).pptx
Software Testing (1).pptx
 
Fundamentals of software testing
Fundamentals of software testingFundamentals of software testing
Fundamentals of software testing
 
Software Testing - A sneak preview By Srikanth
Software Testing - A sneak preview By SrikanthSoftware Testing - A sneak preview By Srikanth
Software Testing - A sneak preview By Srikanth
 
Solution Evaluation (BA Role)
Solution Evaluation (BA Role)   Solution Evaluation (BA Role)
Solution Evaluation (BA Role)
 
SDLCTesting
SDLCTestingSDLCTesting
SDLCTesting
 
Role of BA in Testing
Role of BA in TestingRole of BA in Testing
Role of BA in Testing
 
Role of BA in Testing
Role of BA in TestingRole of BA in Testing
Role of BA in Testing
 
Role of BA in Testing
Role of BA in TestingRole of BA in Testing
Role of BA in Testing
 
Role of BA in Testing
Role of BA in TestingRole of BA in Testing
Role of BA in Testing
 
Software Testing
Software TestingSoftware Testing
Software Testing
 
Objectorientedtesting 160320132146
Objectorientedtesting 160320132146Objectorientedtesting 160320132146
Objectorientedtesting 160320132146
 

Dernier

Micro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdfMicro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdfPoh-Sun Goh
 
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
 
Food safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdfFood safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdfSherif Taha
 
Single or Multiple melodic lines structure
Single or Multiple melodic lines structureSingle or Multiple melodic lines structure
Single or Multiple melodic lines structuredhanjurrannsibayan2
 
ICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptxICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptxAreebaZafar22
 
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
 
Wellbeing inclusion and digital dystopias.pptx
Wellbeing inclusion and digital dystopias.pptxWellbeing inclusion and digital dystopias.pptx
Wellbeing inclusion and digital dystopias.pptxJisc
 
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...pradhanghanshyam7136
 
Graduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - EnglishGraduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - Englishneillewis46
 
Towards a code of practice for AI in AT.pptx
Towards a code of practice for AI in AT.pptxTowards a code of practice for AI in AT.pptx
Towards a code of practice for AI in AT.pptxJisc
 
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdfUGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdfNirmal Dwivedi
 
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...Nguyen Thanh Tu Collection
 
General Principles of Intellectual Property: Concepts of Intellectual Proper...
General Principles of Intellectual Property: Concepts of Intellectual  Proper...General Principles of Intellectual Property: Concepts of Intellectual  Proper...
General Principles of Intellectual Property: Concepts of Intellectual Proper...Poonam Aher Patil
 
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptxBasic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptxDenish Jangid
 
Making communications land - Are they received and understood as intended? we...
Making communications land - Are they received and understood as intended? we...Making communications land - Are they received and understood as intended? we...
Making communications land - Are they received and understood as intended? we...Association for Project Management
 
Key note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfKey note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfAdmir Softic
 
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
 
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
 

Dernier (20)

Micro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdfMicro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdf
 
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
 
Food safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdfFood safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdf
 
Single or Multiple melodic lines structure
Single or Multiple melodic lines structureSingle or Multiple melodic lines structure
Single or Multiple melodic lines structure
 
ICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptxICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.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
 
Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024
 
Wellbeing inclusion and digital dystopias.pptx
Wellbeing inclusion and digital dystopias.pptxWellbeing inclusion and digital dystopias.pptx
Wellbeing inclusion and digital dystopias.pptx
 
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
 
Spatium Project Simulation student brief
Spatium Project Simulation student briefSpatium Project Simulation student brief
Spatium Project Simulation student brief
 
Graduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - EnglishGraduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - English
 
Towards a code of practice for AI in AT.pptx
Towards a code of practice for AI in AT.pptxTowards a code of practice for AI in AT.pptx
Towards a code of practice for AI in AT.pptx
 
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdfUGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
 
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...
 
General Principles of Intellectual Property: Concepts of Intellectual Proper...
General Principles of Intellectual Property: Concepts of Intellectual  Proper...General Principles of Intellectual Property: Concepts of Intellectual  Proper...
General Principles of Intellectual Property: Concepts of Intellectual Proper...
 
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptxBasic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
 
Making communications land - Are they received and understood as intended? we...
Making communications land - Are they received and understood as intended? we...Making communications land - Are they received and understood as intended? we...
Making communications land - Are they received and understood as intended? we...
 
Key note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfKey note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdf
 
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)
 
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 testing and software development process

  • 1. SOFTWARETESTING ANDSOFTWARETESTING AND SOFTWARE DEVELOPMENTSOFTWARE DEVELOPMENT PROCESS (SDP)PROCESS (SDP) Aloysius Ochola 2010/HD18/431U MAKERERE UNIVERSITY School of Computing and InformaticsTechnology MCN 8108MCN 8108 Software Quality Assurance & TestingSoftware Quality Assurance & Testing MscCS Class Presentations. Nov. 2011
  • 2. SoftwareTestingSoftwareTesting Programs are implemented to provide a concrete representation of an algorithm ◦ major concern is with the correctness and performance of the implementation. Engineers must then ensure that their software systems achieve an appropriate level of quality Software verification (through correctness proof) ◦ Technique to assist during the specification, design, and implementation of a software system Software testing (alternative for verification) ◦ Process of assessing the functionality and correctness of a program through execution or analysis ◦ Basically a methodology to find bugs in a software with an intent to fix them 2 Software Testing and the SDP
  • 3. SoftwareTesting (cont)SoftwareTesting (cont) Software testing is more than just error detection. Looked at as operating the software under controlled conditions to verify that it behaves as specified to detect errors and validate that what has been specified is what the user actually wanted. ◦ Verification - check or test items, including software, for conformance and consistency by evaluating the results against pre-specified requirements.   Check if we are building what the customer wants  Qn. Are we building the system right? ◦ Error Detection - Testing should intentionally attempt to make things go wrong.  Determine if things happen when they shouldn’t or things don’t happen when they should. 3 Software Testing and the SDP
  • 4. SoftwareTesting (cont)SoftwareTesting (cont) ◦ Validation (system correctness) - process of checking that what has been specified is what the user actually wanted.   Check if we are building that system correctly  Qn. Are we building the right system? Both verification and validation are necessary, but different components of any testing activity. 4 Software Testing and the SDP
  • 5. Limits of SoftwareTestingLimits of SoftwareTesting Can not test a program completely ◦ Completeness means that at the end of testing, there are no undiscovered software errors. Whether they've been fixed is a different issue, but all problems must be known and understood ◦ Why complete testing is impossible  The domain of possible inputs is too large to test  There are too many possible paths through the program to test  The user interface issues (and thus the design issues) are too complex to completely test 5 Software Testing and the SDP
  • 6. Limits of S.T(cont…)Limits of S.T(cont…) Testing can only prove the presence of bugs but never their absence You can not test the program’s response to every possible input ◦ The number of test inputs, even for this simple a program, is huge. You can not test every path the program can take ◦ As with testing input data, it is important to realize that you have not completely tested the program unless you have exercised every path. ◦ No such paths as safe to skip Software Testing and the SDP6
  • 7. Limits of S.T(cont…)Limits of S.T(cont…) You can not find every design error ◦ A program meets the specification by doing exactly what a specification says it should ◦ If specification goes wrong? Ex.Asks for 1x1=11 ◦ Being in the specification doesn't make them right ◦ You can't completely test a program if you can't find all of its design errors You can not prove programs correct using logic ◦ can only validate the internal consistency of the program ◦ What if the specifications were wrong? Software Testing and the SDP7
  • 8. Limits of S.T(cont…)Limits of S.T(cont…) You can not verify that the program works correctly ◦ A tester is interested in verifying the program ◦ How? If the program can not be tested completely Software Testing and the SDP8
  • 9. Objectives of Testing SoftwareObjectives of Testing Software The purpose of testing is verification, validation and error detection in order to find problems. And the purpose of finding those problems is to get them fixed. Testing Software to Find Problems ◦ Executing a program with the intent of finding an error ◦ Check if the system meets the requirements and be executed successfully in the Intended environment ◦ Check if the system is “ Fit for purpose” ◦ Check if system does what it is expected to do 9 Software Testing and the SDP
  • 10. Objectives of Testing SoftwareObjectives of Testing Software Finding Problems to Fix them ◦ One benefit of testing is that it results in improved quality ◦ uncovering yet undiscovered errors ◦ Fixing bugs ◦ You take a destructive attitude toward the program when you test Software Testing and the SDP10
  • 11. Testing Life-Cycle PhasesTesting Life-Cycle Phases Basically 5 stages involved include Requirements Study ◦ Understanding of the requirements is very essential for testing a product ◦ So we set a starting point to the study of the client’s requirements ◦ Involves the analysis and planning phase, encapsulates  Test objective and coverage  Overall schedule  Standards and Methodologies  Resources required, including necessary training  Roles and responsibilities of the team members  Tools used Software Testing and the SDP11
  • 12. Testing Life-cycle phasesTesting Life-cycle phases Test Case Design and Development ◦ Identify Components ◦ Test Specification Design ◦ Test Specification Reviews Test Execution ◦ Code Review ◦ Test execution and evaluation ◦ Performance and simulation Test Closure ◦ Test summary report ◦ Project Documentation Test Process Analysis ◦ Done on the reports and improving the performance of application by implementing new technology. Software Testing and the SDP12
  • 13. SoftwareTesting TechniquesSoftwareTesting Techniques  Different techniques are used for software techniques. The commonly used are the following  Black BoxTesting (functional/behavioural) ◦ No knowledge of internal design or code required. 13 Software Testing and the SDP ◦ focus on outputs in response to selected inputs and execution conditions ◦ Tests are based on requirements and functionality.
  • 14. White box testingWhite box testing (Glass box) ◦ Takes into account the internal mechanism of the system ◦ White Box is most appropriate when we must assure that the calculations are correct. ◦ Covering every possible path through a module is usually not practical  Goal is to ensure that all conditional statements have been executed at least once ◦ Requirements fulfilments and interface availability and working assurance  Grey BoxTestingGrey BoxTesting ◦ The combination of White and Black box testing Software Testing and the SDP14
  • 15. Stages of SoftwareTestingStages of SoftwareTesting UnitTesting  Micro scale of testing done on particular functions or code modules  Internal program design and code knowledge is required  Thus, done by Programmers after modules have been coded.  Objectives ◦ To test the function of a program or unit of code such as a module ◦ To test internal logic ◦ To verify internal design ◦ To test path and conditions coverage ◦ To test exception conditions & error handling  White box testing and test coverage techniques deployed  Tools guiding unit testing include; Debug, Re-structure, code analyzers and path coverage tools Software Testing and the SDP15
  • 16. IntegratedTesting  Testing of combined parts of an application to determine their functional correctness  Done to technically verify proper interfacing between modules and within sub-systems.  Always carried out by developers after modules are unit tested  White Box, Black box and configuration management, techniques used.  Types of Integrated Testing ◦ Bottom - up testing (test harness) ◦ Top - down testing (stubs). ◦ Modified top - down testing - test levels independently. ◦ Big Bang ◦ Sandwich testing Software Testing and the SDP16
  • 17. SystemTesting Major objectives include ◦ Verify that system components perform control functions ◦ To perform inter-system test ◦ To perform appropriate types of tests relating to transaction flows, installation, reliability, regression, etc It is done by both users and the development team after integration testing System integrated testing is often carried out after system testing but outside the project life cycle ◦ Tests the co-existence of products and applications that are required to perform together in a production- like operational environment Software Testing and the SDP17
  • 18. AcceptanceTesting This is performed by the end users To verify that the system meets their requirements. Black box technique is applied Tools used may include: ◦ Comparison ◦ Keystroke capture ◦ Playback ◦ Regression testing Software Testing and the SDP18
  • 19. Types of SoftwareTestingTypes of SoftwareTesting We have come across so many types of software testing Two major approaches of software testing ◦ Manual testing – done by man. Tester runs the software for errors. Consumes a lot of time because testing has to be repeated after every change (regression testing) ◦ Automated testing – Testing employing software tools which execute tests without manual intervention  performed by writing test drivers that can run automatically and produce test results 19 Software Testing and the SDP
  • 20. Major Types of TestingMajor Types of Testing  LoadTesting ◦ Testing an application under heavy loads ◦ Ex,Testing of a web site under a range of loads to determine, when the system response time degraded or fails.  StressTesting ◦ Program is checked to see how well it deals with abnormal resource demands ◦ Testing under heavy loads, heavy repetition of certain actions or inputs ◦ Ex. input of large numerical values, large complex queries to a database Software Testing and the SDP20
  • 21.  PerformanceTesting ◦ Tests the run-time performance of software ◦ How well does the application comply to performance requirements?  RecoveryTesting ◦ Checks system’s ability to recover from failures ◦ How well can it recovers from crashes, hardware failures or other problems?  ConversionTesting ◦ Testing of programs or procedures used to convert data from existing systems for use in replacement system ◦ Ensures that the existing data should not change, while converting it into the new updated version of the application Software Testing and the SDP21
  • 22.  UsabilityTesting ◦ A method by which users of a product are asked to perform certain tasks in an effort to measure the product's ease-of-use, task time, and the user's perception of the experience ◦ Testing the ease with which users can learn and use a product  ConfigurationTesting ◦ Focuses on measuring a human-made product's capacity to meet its intended purpose ◦ Causes the application to fail to meet its configurability requirements so that the underlying defects can be identified, analyzed, fixed, and prevented in the future Software Testing and the SDP22
  • 23. Software Development ProcessSoftware Development Process  A structure imposed on the development of a software product  There are several models for such processes, each describing approaches to a variety of tasks or activities that take place during the process.  Activities involved ◦ Planning ◦ Design ◦ Coding and Documentation ◦ Testing and Fixing ◦ Post-Release Maintenance and Enhancement Testing is involved mainly in the functional phases of the software development process. It is necessary that it is encapsulated in the whole process 23 Software Testing and the SDP
  • 24. SummarySummary Testing in itself cannot ensure the quality of software Only gives us a certain level of confidence in the software Testing though, proves that under specific controlled conditions, the software functioned as expected by the test cases executed Testing never ends as long as a software is still in use 24 Software Testing and the SDP
  • 25. ReferencesReferences  Manish Parashar: Software Testing, Introduction to Software Engineering; Lecture Notes  C. Kaner , J. Falk and H.Q Nguyen:Testing Computer Software.  Different types of software retrieved Nov 2011 from http://www.wisegeek.com/what-are-the-different-types-of-system- software.htm  Roger S. Pressman: Software Engineering; 5th Edition.  Ram Chillarege (1999): Software Testing Best Practices, IBM Research Technical Report  What is Software Testing … ? Retrieved Nov. 2011 from: http://bazman.tripod.com/what_testing.html  Antonia Bertolino (2001): SoftwareTesting 25 Software Testing and the SDP