SlideShare a Scribd company logo
SOFTWARE ENGINEERING
UNIT-4
ABHIMANYU MISHRA
ASSISTANT PROF.(CSE)
JETGI
24/12/16 1Abhimanyu Mishra(CSE) JETGI
 Testing objectives.
 Unit testing.
 Integration testing.
 Acceptance testing.
 Regression testing.
 Testing for performance.
 Top down & bottom up strategies: Test driver and Test stub.
 Test data suit preparation.
 Apha & Beta testing of products.
 Static testing Strategies: Formal Technical Reviews, walkthrough.
 Compliance with design and coding standards.
CONTENTS
24/12/16 2Abhimanyu Mishra(CSE) JETGI
Software testing is the process of executing a program with the intension of finding
errors in the code. It is a process of evolution of a system or its parts by manual or
automatic means to verify that it is satisfying specified requirements or not.
 Generally no system design is ever perfect due to communication problem
between user & developer, time constrains, or conceptual mistake by developers.
 The purpose of system testing is to check and find out these errors or faults as
early as possible so losses due to it can be saved.
 Testing is the fundamental of software success.
 System testing makes a logical assumption that if all the parts of the system are
working correctly then system goal will be successfully achieved.
 Testing is not a distinct phase in system development life cycle but should be
applicable throughout all phases.
TESTING OBJECTIVES :
24/12/16 3Abhimanyu Mishra(CSE) JETGI
OBJECTIVE OF SOFTWARE TESTING:
i. Software quality improvement- the computer and the software are mainly used for
complex and critical applications and a bug or fault in software causes severe losses.
ii. Verification & Validation- The second main objective of software is to verify the
system and checking its validation. Verification means to test that we are building
the product in right way.
iii. Software reliability estimation- software reliability has important relationship with
many aspects of software development. Its objective is to discover the residual
designing errors before delivery to the customer
24/12/16 4Abhimanyu Mishra(CSE) JETGI
24/12/16 5Abhimanyu Mishra(CSE) JETGI
Softwa
re
Testers
Reliabil
ity
analysi
s
Designe
r
Test inputs Test data
Test outputs
Continue/ change
procedure
Debug system
Evaluate effectiveness of
fixes
Fig- Role of reliability in software testing
24/12/16 6Abhimanyu Mishra(CSE) JETGI
VARIOUS TYPES OF TESTING:
Acceptance
testing
System testing
Integration
testing
Unit testing
Client Needs
Requirements
Design
code
Unit testing focuses verification effort on the smallest unit of software
design the software component or module.
Using the component-level design description as a guide, important
control paths are tested to uncovered errors within the boundary of the
module.
In unit testing individual components are tested to ensure that they are
working properly in the same manner as required.
It is the lowest level of testing of application under test software meet the
requirements.
The main reason for doing unit testing is that:
•The size of single module is small enough that can locate error very easily.
•Due to small size it can be tested in demonstrably in exhaustive fashion.
Unit Testing:
24/12/16 7Abhimanyu Mishra(CSE) JETGI
24/12/16 8Abhimanyu Mishra(CSE) JETGI
M1
M2
M3
M4
M5
M7 M6
Unit testing
INTEGRATION TESTING:
24/12/16 9Abhimanyu Mishra(CSE) JETGI
 Once individuals program component have been tested, they must be integrated
to create a partial or complete system.
 Integrated test should develop during system specification, and this integration
testing should begin as soon as usable versions of some of the system
component are available.
 The primary objective of integration testing is to check the module interface i.e.
way of interaction of module, is not having any kind of errors.
The main integration technique are-
i. Top down integration testing
ii. Bottom up integration testing.
24/12/16 10Abhimanyu Mishra(CSE) JETGI
Top down integration testing- In top down integration testing, the top level usually
one controlling component is tested. Then all components called by tested
component are combined in the same way and tested as a large unit. This process
continues until all components are integrated and then whole system have been
completely tested.
Advantages of top down testing:
 Design errors are detected as early as possible, saving development time and costs
because corrections in the module design can be made before their
implementation.
 The characteristics of a software system are evident from the start, which enables
a simple test of the development state and the acceptance by the user.
 The software system can be tested thoroughly from the start with test cases
without providing test environments.
Disadvantages of top down testing:
 Strict top down testing proves extremely difficult because designing usable
surrogate objects can prove very complicated, especially for complex operation.
 Errors in lower hierarchy levels are hard to localize.
TOP DOWN TESTING:
24/12/16 11Abhimanyu Mishra(CSE) JETGI
BOTTOM-UP INTEGRATION TESTING:
It is very popular approach of merging the components to test a larger system. In
this method each subsystem at the lower level of system hierarchy is tested
individually first. Then the next component who calls the previously tested ones to
be tested.
Advantages of Bottom-Up integrated testing-
 The bottom-up test method is solid & proven. The objects to be tested are
known in full detail. It is often simpler to define relevant test cases and test
data.
 The bottom- up approach is psychologically more satisfying because the tester
can be certain that the foundations for the test objects have been tested in full
detailed.
Disadvantages of Bottom-up integrated testing-
 The characteristics of the finished product are only known after the completion
of all implementation and testing, which means that design error in the upper
level are detected very late
 Testing individual levels also inflicts high costs for providing a suitable test
environment.
24/12/16 12Abhimanyu Mishra(CSE) JETGI
ACCEPTANCE TESTING:
 The purpose of acceptance testing is to confirm that the system meets its
business requirements and to provide confidence that the system is working
properly before it is “hand over” to the customer.
 Acceptance testing is performed by nominated user representatives under
guidance and supervision of testing team and developer.
 During acceptance testing it is very important that there should be an
independent observer of testing process specially when the customer are not
having too much IT knowledge.
 The main way to evaluate the system for acceptance is bench mark test. In
this customer prepare a set of a test cases that represents typical condition
under which the system will operate when actually installed. The customer
evaluate the system performance for each test case.
STRESS TESTING:
 In software testing, stress testing refers to tests that determine the robustness
of software by testing beyond the limits of normal operation. Stress testing is
particularly important for “mission critical” software, but is used for all types
of software.
 Stress tests commonly put a greater emphasis on robustness, availability, and
error handling under a heavy load, then on what would be considered correct
behavior under normal circumstances.
 Stress testing typically involves the independent test team performing the
following testing tasks using the following technique:
i. Test planning
ii. Test reuse
iii. Test design
24/12/16 13Abhimanyu Mishra(CSE) JETGI
24/12/16 14Abhimanyu Mishra(CSE) JETGI
REGRESSION TESTING:
Testing is used to find out errors in the software due to which it is not working properly. When
these errors are found out then different methods are used to correct these errors. But while,
removing process of current errors, some new faults or errors may be generated. Regression
testing is used to identified these new errors or faults.
Regression testing can be applied in development as well as maintenance phase of software
life cycle. In development phase regression testing is done after correcting the errors found
during the testing of software.
A regression test suit contains three different classes of test cases:
 A representative sample of tests that will exercise all software functions.
 Additional tests that focuses on software functions that are likely to be affected by the
change.
 Test that focuses on the software components that have been changed.
TEST DRIVER & TEST STUB:
24/12/16 15Abhimanyu Mishra(CSE) JETGI
“A test driver is a software module or application used to invoke a test and provide
test data, control and monitor execution and execution and reports test outcomes”.
Test driver are used for testing of sub-module in the absence of main control module.
A component driver routine calls a particular component and passes test case to it.
Test stub- Test stubs are specialized implementation of elements used for testing
purpose, which are dummy of a real component. Test stubs are program or
components that have deterministic behavior and are used to interface with sub
system in order to take care of dependencies.
• Basically stubs are used in top down approach.in it the main control module is
tested in the absence of stub-module.
24/12/16 16Abhimanyu Mishra(CSE) JETGI
WHITE BOX TESTING:
White box testing is a software testing approach that examines the program
structure and derives test data from the program logic.
 In this approach, test group must have complete knowledge about the internal
structure of the software.
 White box testing is also called “structural testing”.
 Structural testing is usually applied to relatively small program units such as
subroutine or operations associated with objects.
 The white box testing is also known by name of glass box testing, clear box
testing, open-box testing.
 It is a test case design method that uses the control structure of the procedural
design to drive test cases.
24/12/16 17Abhimanyu Mishra(CSE) JETGI
Fig- White box approach
24/12/16 18Abhimanyu Mishra(CSE) JETGI
BLACK BOX APPROACH:
 In Black-box testing the tester don’t know the internal structure of module, it tests only for
input/output behavior. Black-box testing focuses on the functional requirements of the
software. It enables the software engineer to derive sets of input conditions that will fully
exercise all functional requirements for a program.
 The black box testing is also known by the name of functional testing, exterior testing,
specification testing, data- driven testing and input/output driven.
 The selection of test cases is based on the specification of the test object without
knowledge of its behavior of the test object on erroneous input data.
 In black box test on software design the tester only knows the inputs and what will be
expected outputs and don’t know how the program will arrive at those outputs.
24/12/16 Abhimanyu Mishra(CSE) JETGI 19
Advantage of Black box testing-
 The test is unbiased because the designer and tester are
independent of each other.
 Test is done from the point of view of user not the designer.
 Test cases can be design as soon as specification is
completed.
 For tester there is no need to know any programming
language.
Disadvantage of Black box testing-
 The test can be redundant if software designer has already run a test
case.
 The test cases are difficult to design.
24/12/16 20Abhimanyu Mishra(CSE) JETGI
Fig- Black box testing
24/12/16 Abhimanyu Mishra(CSE) JETGI 21
TEST DATA SUIT PREPARATION:
Testing is the process of executing a program to locate undiscovered errors. The
main aim of program testing is to identify all defects in a program. However, it
is not possible to guarantee that a program is error free.
Following activities are to be performed during testing process-
 Designing test suit
 Running test cases & checking result
 Debugging
 Error correction
24/12/16 22Abhimanyu Mishra(CSE) JETGI
FORMAL TECHNICAL REVIEW:
A formal technical review are filter or software engineering process i.e. review
are applied at various points during software development and serve to
uncover the errors and defects that can be removed. Software reviews
“purifies” the software engineering activities that we have called analysis,
design and coding.
 It is a software quality that assurance activity performed by software
engineers. A FTR is known as WALKTHROUGH or an INSPECTION.
The objective of FTR are:-
 To uncover errors in function, logic or implementation for representation of
software.
 To verify that software under review meets its requirements.
 To ensure that the software has been represented according to predefined
standards.
 To achieve software that is developed in a uniform manner.
24/12/16 23Abhimanyu Mishra(CSE) JETGI
DESIGNING & CODING STANDARDS:
Coding standards are a set of conventions that the programmer follow to
standardize their computer code to some degree and to make the overall program
easier to read and understand.
In other words coding standard as it is sometime called is about how you code so
that the code is easily readable and understandable by a human.
 Coding
 Program Robustness
 I/O Behavior
 Modules & Modular program structure
 Program Testing
 Cohesion Procedure
 Minimize coupling
 Minimize data scope where possible

More Related Content

What's hot

Software engineering unit 1
Software engineering unit 1Software engineering unit 1
Software engineering unit 1
gondwana university
 
Software Testing Strategies
Software Testing StrategiesSoftware Testing Strategies
Software Testing Strategies
Alpana Bhaskar
 
Software Verification & Validation
Software Verification & ValidationSoftware Verification & Validation
Software Verification & Validation
university of education,Lahore
 
Design concept -Software Engineering
Design concept -Software EngineeringDesign concept -Software Engineering
Design concept -Software Engineering
Varsha Ajith
 
software project management Waterfall model
software project management Waterfall modelsoftware project management Waterfall model
software project management Waterfall model
REHMAT ULLAH
 
Se (techniques for black box testing ppt)
Se (techniques for black box testing ppt)Se (techniques for black box testing ppt)
Se (techniques for black box testing ppt)
Mani Kanth
 
Software Test Metrics and Measurements
Software Test Metrics and MeasurementsSoftware Test Metrics and Measurements
Software Test Metrics and Measurements
Davis Thomas
 
Cause effect graphing.ppt
Cause effect graphing.pptCause effect graphing.ppt
Cause effect graphing.ppt
sqpyxfcihpbarzldil
 
Evolutionary process models se.ppt
Evolutionary process models se.pptEvolutionary process models se.ppt
Evolutionary process models se.ppt
bhadjaashvini1
 
Collaboration diagram- UML diagram
Collaboration diagram- UML diagram Collaboration diagram- UML diagram
Collaboration diagram- UML diagram
Ramakant Soni
 
Regression testing
Regression testingRegression testing
Regression testingMohua Amin
 
Ch 2 Apraoaches Of Software Testing
Ch 2 Apraoaches Of Software Testing Ch 2 Apraoaches Of Software Testing
Ch 2 Apraoaches Of Software Testing
Prof .Pragati Khade
 
software quality
software qualitysoftware quality
software quality
preetikapri1
 
Reusibility vs Extensibility in OOAD
Reusibility vs Extensibility in OOADReusibility vs Extensibility in OOAD
Reusibility vs Extensibility in OOAD
Shivani Kapoor
 
Software Testing
Software TestingSoftware Testing
Software Testing
Mousmi Pawar
 
Software Testing Strategies
Software Testing StrategiesSoftware Testing Strategies
Software Testing Strategies
NayyabMirTahir
 
Black & White Box testing
Black & White Box testingBlack & White Box testing
Software Engineering : Requirement Analysis & Specification
Software Engineering : Requirement Analysis & SpecificationSoftware Engineering : Requirement Analysis & Specification
Software Engineering : Requirement Analysis & Specification
Ajit Nayak
 

What's hot (20)

Software engineering unit 1
Software engineering unit 1Software engineering unit 1
Software engineering unit 1
 
Software Testing Strategies
Software Testing StrategiesSoftware Testing Strategies
Software Testing Strategies
 
Software Verification & Validation
Software Verification & ValidationSoftware Verification & Validation
Software Verification & Validation
 
Design concept -Software Engineering
Design concept -Software EngineeringDesign concept -Software Engineering
Design concept -Software Engineering
 
software project management Waterfall model
software project management Waterfall modelsoftware project management Waterfall model
software project management Waterfall model
 
Se (techniques for black box testing ppt)
Se (techniques for black box testing ppt)Se (techniques for black box testing ppt)
Se (techniques for black box testing ppt)
 
Software Test Metrics and Measurements
Software Test Metrics and MeasurementsSoftware Test Metrics and Measurements
Software Test Metrics and Measurements
 
Cause effect graphing.ppt
Cause effect graphing.pptCause effect graphing.ppt
Cause effect graphing.ppt
 
Evolutionary process models se.ppt
Evolutionary process models se.pptEvolutionary process models se.ppt
Evolutionary process models se.ppt
 
Collaboration diagram- UML diagram
Collaboration diagram- UML diagram Collaboration diagram- UML diagram
Collaboration diagram- UML diagram
 
Regression testing
Regression testingRegression testing
Regression testing
 
Ch 2 Apraoaches Of Software Testing
Ch 2 Apraoaches Of Software Testing Ch 2 Apraoaches Of Software Testing
Ch 2 Apraoaches Of Software Testing
 
software quality
software qualitysoftware quality
software quality
 
Black box software testing
Black box software testingBlack box software testing
Black box software testing
 
Reusibility vs Extensibility in OOAD
Reusibility vs Extensibility in OOADReusibility vs Extensibility in OOAD
Reusibility vs Extensibility in OOAD
 
Software Testing
Software TestingSoftware Testing
Software Testing
 
Software Testing Strategies
Software Testing StrategiesSoftware Testing Strategies
Software Testing Strategies
 
Black & White Box testing
Black & White Box testingBlack & White Box testing
Black & White Box testing
 
Software Engineering : Requirement Analysis & Specification
Software Engineering : Requirement Analysis & SpecificationSoftware Engineering : Requirement Analysis & Specification
Software Engineering : Requirement Analysis & Specification
 
3.software testing
3.software testing3.software testing
3.software testing
 

Viewers also liked

How to Achieve and Maintain High Quality SaaS Software in the Cloud
How to Achieve and Maintain High Quality SaaS Software in the CloudHow to Achieve and Maintain High Quality SaaS Software in the Cloud
How to Achieve and Maintain High Quality SaaS Software in the Cloud
XBOSoft
 
Networking in cloud computing
Networking in cloud computingNetworking in cloud computing
Networking in cloud computing
Barani Tharan
 
User interface design(sommerville) bangalore university
User interface design(sommerville) bangalore universityUser interface design(sommerville) bangalore university
User interface design(sommerville) bangalore university
Jaisha Shankar
 
Slides chapter 12
Slides chapter 12Slides chapter 12
Slides chapter 12
Priyanka Shetty
 
Slides chapter 11
Slides chapter 11Slides chapter 11
Slides chapter 11
Priyanka Shetty
 
Unit 7 performing user interface design
Unit 7 performing user interface designUnit 7 performing user interface design
Unit 7 performing user interface design
Preeti Mishra
 
Ch11 input output systems
Ch11 input output systemsCh11 input output systems
Ch11 input output systemsissbp
 
Os2 2
Os2 2Os2 2
Os2 2issbp
 
Class9
 Class9 Class9
Class9issbp
 
Lecture 7: Definite Clause Grammars
Lecture 7: Definite Clause GrammarsLecture 7: Definite Clause Grammars
Lecture 7: Definite Clause Grammars
CS, NcState
 
Os5 2
Os5 2Os5 2
Os5 2issbp
 
Os4 2
Os4 2Os4 2
Os4 2issbp
 
Class5
 Class5 Class5
Class5issbp
 
Os6 2
Os6 2Os6 2
Os6 2issbp
 
Theory of Automata and formal languages Unit 5
Theory of Automata and formal languages Unit 5Theory of Automata and formal languages Unit 5
Theory of Automata and formal languages Unit 5
Abhimanyu Mishra
 

Viewers also liked (20)

Unit 5
Unit 5Unit 5
Unit 5
 
How to Achieve and Maintain High Quality SaaS Software in the Cloud
How to Achieve and Maintain High Quality SaaS Software in the CloudHow to Achieve and Maintain High Quality SaaS Software in the Cloud
How to Achieve and Maintain High Quality SaaS Software in the Cloud
 
Networking in cloud computing
Networking in cloud computingNetworking in cloud computing
Networking in cloud computing
 
User interface design(sommerville) bangalore university
User interface design(sommerville) bangalore universityUser interface design(sommerville) bangalore university
User interface design(sommerville) bangalore university
 
Slides chapter 12
Slides chapter 12Slides chapter 12
Slides chapter 12
 
Slides chapter 11
Slides chapter 11Slides chapter 11
Slides chapter 11
 
Unit 7 performing user interface design
Unit 7 performing user interface designUnit 7 performing user interface design
Unit 7 performing user interface design
 
Ch11 input output systems
Ch11 input output systemsCh11 input output systems
Ch11 input output systems
 
Os2 2
Os2 2Os2 2
Os2 2
 
Os4
Os4Os4
Os4
 
Os6
Os6Os6
Os6
 
Class9
 Class9 Class9
Class9
 
Os2
Os2Os2
Os2
 
Lecture 7: Definite Clause Grammars
Lecture 7: Definite Clause GrammarsLecture 7: Definite Clause Grammars
Lecture 7: Definite Clause Grammars
 
Os5 2
Os5 2Os5 2
Os5 2
 
Os4 2
Os4 2Os4 2
Os4 2
 
Class5
 Class5 Class5
Class5
 
Os6 2
Os6 2Os6 2
Os6 2
 
Theory of Automata and formal languages Unit 5
Theory of Automata and formal languages Unit 5Theory of Automata and formal languages Unit 5
Theory of Automata and formal languages Unit 5
 
Design1
Design1Design1
Design1
 

Similar to Software Engineering unit 4

Different Software Testing Types and CMM Standard
Different Software Testing Types and CMM StandardDifferent Software Testing Types and CMM Standard
Different Software Testing Types and CMM Standard
Dhrumil Panchal
 
Testing type
Testing typeTesting type
Testing type
transformtoit
 
Types
TypesTypes
Software testing
Software testingSoftware testing
Sftwre engg.testng
Sftwre engg.testngSftwre engg.testng
Sftwre engg.testng
kanika20071990
 
What is Software Testing Lifecycle?
What is Software Testing Lifecycle? What is Software Testing Lifecycle?
What is Software Testing Lifecycle?
STEPIN2IT
 
Software Testing
Software TestingSoftware Testing
Software Testing
Sengu Msc
 
softwaretestingppt-FINAL-PPT-1
softwaretestingppt-FINAL-PPT-1softwaretestingppt-FINAL-PPT-1
softwaretestingppt-FINAL-PPT-1FAIZALSAIYED
 
Software testing
Software testingSoftware testing
Software testing
MrsRBoomadeviIT
 
A COMPOSITION ON SOFTWARE TESTING
A COMPOSITION ON SOFTWARE TESTINGA COMPOSITION ON SOFTWARE TESTING
What is integration testing
What is integration testingWhat is integration testing
What is integration testing
TestingXperts
 
Software Testing.pptx
Software Testing.pptxSoftware Testing.pptx
Software Testing.pptx
sonalshitole
 
S.t.
S.t.S.t.
Software test life cycle
Software test life cycleSoftware test life cycle
Session 05 - Testing Concepts
Session 05 - Testing ConceptsSession 05 - Testing Concepts
Session 05 - Testing Concepts
PoojaLQA
 
Software testing
Software testingSoftware testing
Software testing
Sengu Msc
 
Software testing
Software testingSoftware testing
Software testing
Sengu Msc
 
Software Testing
Software Testing Software Testing
Software Testing
MD SALEEM QAISAR
 
Software testing basic
Software testing basicSoftware testing basic
Software testing basic
Rohit Singh
 
Software testing
Software testingSoftware testing
Software testing
Ashu Bansal
 

Similar to Software Engineering unit 4 (20)

Different Software Testing Types and CMM Standard
Different Software Testing Types and CMM StandardDifferent Software Testing Types and CMM Standard
Different Software Testing Types and CMM Standard
 
Testing type
Testing typeTesting type
Testing type
 
Types
TypesTypes
Types
 
Software testing
Software testingSoftware testing
Software testing
 
Sftwre engg.testng
Sftwre engg.testngSftwre engg.testng
Sftwre engg.testng
 
What is Software Testing Lifecycle?
What is Software Testing Lifecycle? What is Software Testing Lifecycle?
What is Software Testing Lifecycle?
 
Software Testing
Software TestingSoftware Testing
Software Testing
 
softwaretestingppt-FINAL-PPT-1
softwaretestingppt-FINAL-PPT-1softwaretestingppt-FINAL-PPT-1
softwaretestingppt-FINAL-PPT-1
 
Software testing
Software testingSoftware testing
Software testing
 
A COMPOSITION ON SOFTWARE TESTING
A COMPOSITION ON SOFTWARE TESTINGA COMPOSITION ON SOFTWARE TESTING
A COMPOSITION ON SOFTWARE TESTING
 
What is integration testing
What is integration testingWhat is integration testing
What is integration testing
 
Software Testing.pptx
Software Testing.pptxSoftware Testing.pptx
Software Testing.pptx
 
S.t.
S.t.S.t.
S.t.
 
Software test life cycle
Software test life cycleSoftware test life cycle
Software test life cycle
 
Session 05 - Testing Concepts
Session 05 - Testing ConceptsSession 05 - Testing Concepts
Session 05 - Testing Concepts
 
Software testing
Software testingSoftware testing
Software testing
 
Software testing
Software testingSoftware testing
Software testing
 
Software Testing
Software Testing Software Testing
Software Testing
 
Software testing basic
Software testing basicSoftware testing basic
Software testing basic
 
Software testing
Software testingSoftware testing
Software testing
 

More from Abhimanyu Mishra

Cd unit i
Cd unit iCd unit i
Cd unit i
Abhimanyu Mishra
 
Presentation1(JIT gnomio)
Presentation1(JIT gnomio)Presentation1(JIT gnomio)
Presentation1(JIT gnomio)
Abhimanyu Mishra
 
Sta unit 5(abimanyu)
Sta unit 5(abimanyu)Sta unit 5(abimanyu)
Sta unit 5(abimanyu)
Abhimanyu Mishra
 
Sta unit 3(abimanyu)
Sta unit 3(abimanyu)Sta unit 3(abimanyu)
Sta unit 3(abimanyu)
Abhimanyu Mishra
 
Sta unit 4(abimanyu)
Sta unit 4(abimanyu)Sta unit 4(abimanyu)
Sta unit 4(abimanyu)
Abhimanyu Mishra
 
Sta unit 3(abimanyu)
Sta unit 3(abimanyu)Sta unit 3(abimanyu)
Sta unit 3(abimanyu)
Abhimanyu Mishra
 
Sta unit 2(abimanyu)
Sta unit 2(abimanyu)Sta unit 2(abimanyu)
Sta unit 2(abimanyu)
Abhimanyu Mishra
 
Unit1
Unit1Unit1
Daa unit 5
Daa unit 5Daa unit 5
Daa unit 5
Abhimanyu Mishra
 
Daa unit 4
Daa unit 4Daa unit 4
Daa unit 4
Abhimanyu Mishra
 
Daa unit 3
Daa unit 3Daa unit 3
Daa unit 3
Abhimanyu Mishra
 
Daa unit 2
Daa unit 2Daa unit 2
Daa unit 2
Abhimanyu Mishra
 
Daa unit 1
Daa unit 1Daa unit 1
Daa unit 1
Abhimanyu Mishra
 
Software Engineering unit 3
Software Engineering unit 3Software Engineering unit 3
Software Engineering unit 3
Abhimanyu Mishra
 
Software Engineering unit 2
Software Engineering unit 2Software Engineering unit 2
Software Engineering unit 2
Abhimanyu Mishra
 
Theory of automata and formal languages Unit 4
Theory of automata and formal languages Unit 4Theory of automata and formal languages Unit 4
Theory of automata and formal languages Unit 4
Abhimanyu Mishra
 
Theory of Automata and formal languages Unit 3
Theory of Automata and formal languages Unit 3Theory of Automata and formal languages Unit 3
Theory of Automata and formal languages Unit 3
Abhimanyu Mishra
 
Theory of Automata and formal languages unit 2
Theory of Automata and formal languages unit 2Theory of Automata and formal languages unit 2
Theory of Automata and formal languages unit 2
Abhimanyu Mishra
 
Theory of Automata and formal languages unit 1
Theory of Automata and formal languages unit 1Theory of Automata and formal languages unit 1
Theory of Automata and formal languages unit 1
Abhimanyu Mishra
 

More from Abhimanyu Mishra (19)

Cd unit i
Cd unit iCd unit i
Cd unit i
 
Presentation1(JIT gnomio)
Presentation1(JIT gnomio)Presentation1(JIT gnomio)
Presentation1(JIT gnomio)
 
Sta unit 5(abimanyu)
Sta unit 5(abimanyu)Sta unit 5(abimanyu)
Sta unit 5(abimanyu)
 
Sta unit 3(abimanyu)
Sta unit 3(abimanyu)Sta unit 3(abimanyu)
Sta unit 3(abimanyu)
 
Sta unit 4(abimanyu)
Sta unit 4(abimanyu)Sta unit 4(abimanyu)
Sta unit 4(abimanyu)
 
Sta unit 3(abimanyu)
Sta unit 3(abimanyu)Sta unit 3(abimanyu)
Sta unit 3(abimanyu)
 
Sta unit 2(abimanyu)
Sta unit 2(abimanyu)Sta unit 2(abimanyu)
Sta unit 2(abimanyu)
 
Unit1
Unit1Unit1
Unit1
 
Daa unit 5
Daa unit 5Daa unit 5
Daa unit 5
 
Daa unit 4
Daa unit 4Daa unit 4
Daa unit 4
 
Daa unit 3
Daa unit 3Daa unit 3
Daa unit 3
 
Daa unit 2
Daa unit 2Daa unit 2
Daa unit 2
 
Daa unit 1
Daa unit 1Daa unit 1
Daa unit 1
 
Software Engineering unit 3
Software Engineering unit 3Software Engineering unit 3
Software Engineering unit 3
 
Software Engineering unit 2
Software Engineering unit 2Software Engineering unit 2
Software Engineering unit 2
 
Theory of automata and formal languages Unit 4
Theory of automata and formal languages Unit 4Theory of automata and formal languages Unit 4
Theory of automata and formal languages Unit 4
 
Theory of Automata and formal languages Unit 3
Theory of Automata and formal languages Unit 3Theory of Automata and formal languages Unit 3
Theory of Automata and formal languages Unit 3
 
Theory of Automata and formal languages unit 2
Theory of Automata and formal languages unit 2Theory of Automata and formal languages unit 2
Theory of Automata and formal languages unit 2
 
Theory of Automata and formal languages unit 1
Theory of Automata and formal languages unit 1Theory of Automata and formal languages unit 1
Theory of Automata and formal languages unit 1
 

Recently uploaded

Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&BDesign and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
Sreedhar Chowdam
 
WATER CRISIS and its solutions-pptx 1234
WATER CRISIS and its solutions-pptx 1234WATER CRISIS and its solutions-pptx 1234
WATER CRISIS and its solutions-pptx 1234
AafreenAbuthahir2
 
在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样
在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样
在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样
obonagu
 
LIGA(E)11111111111111111111111111111111111111111.ppt
LIGA(E)11111111111111111111111111111111111111111.pptLIGA(E)11111111111111111111111111111111111111111.ppt
LIGA(E)11111111111111111111111111111111111111111.ppt
ssuser9bd3ba
 
Courier management system project report.pdf
Courier management system project report.pdfCourier management system project report.pdf
Courier management system project report.pdf
Kamal Acharya
 
Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...
Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...
Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...
Dr.Costas Sachpazis
 
The role of big data in decision making.
The role of big data in decision making.The role of big data in decision making.
The role of big data in decision making.
ankuprajapati0525
 
Automobile Management System Project Report.pdf
Automobile Management System Project Report.pdfAutomobile Management System Project Report.pdf
Automobile Management System Project Report.pdf
Kamal Acharya
 
CME397 Surface Engineering- Professional Elective
CME397 Surface Engineering- Professional ElectiveCME397 Surface Engineering- Professional Elective
CME397 Surface Engineering- Professional Elective
karthi keyan
 
Student information management system project report ii.pdf
Student information management system project report ii.pdfStudent information management system project report ii.pdf
Student information management system project report ii.pdf
Kamal Acharya
 
Final project report on grocery store management system..pdf
Final project report on grocery store management system..pdfFinal project report on grocery store management system..pdf
Final project report on grocery store management system..pdf
Kamal Acharya
 
ASME IX(9) 2007 Full Version .pdf
ASME IX(9)  2007 Full Version       .pdfASME IX(9)  2007 Full Version       .pdf
ASME IX(9) 2007 Full Version .pdf
AhmedHussein950959
 
road safety engineering r s e unit 3.pdf
road safety engineering  r s e unit 3.pdfroad safety engineering  r s e unit 3.pdf
road safety engineering r s e unit 3.pdf
VENKATESHvenky89705
 
Halogenation process of chemical process industries
Halogenation process of chemical process industriesHalogenation process of chemical process industries
Halogenation process of chemical process industries
MuhammadTufail242431
 
HYDROPOWER - Hydroelectric power generation
HYDROPOWER - Hydroelectric power generationHYDROPOWER - Hydroelectric power generation
HYDROPOWER - Hydroelectric power generation
Robbie Edward Sayers
 
H.Seo, ICLR 2024, MLILAB, KAIST AI.pdf
H.Seo,  ICLR 2024, MLILAB,  KAIST AI.pdfH.Seo,  ICLR 2024, MLILAB,  KAIST AI.pdf
H.Seo, ICLR 2024, MLILAB, KAIST AI.pdf
MLILAB
 
Gen AI Study Jams _ For the GDSC Leads in India.pdf
Gen AI Study Jams _ For the GDSC Leads in India.pdfGen AI Study Jams _ For the GDSC Leads in India.pdf
Gen AI Study Jams _ For the GDSC Leads in India.pdf
gdsczhcet
 
block diagram and signal flow graph representation
block diagram and signal flow graph representationblock diagram and signal flow graph representation
block diagram and signal flow graph representation
Divya Somashekar
 
Pile Foundation by Venkatesh Taduvai (Sub Geotechnical Engineering II)-conver...
Pile Foundation by Venkatesh Taduvai (Sub Geotechnical Engineering II)-conver...Pile Foundation by Venkatesh Taduvai (Sub Geotechnical Engineering II)-conver...
Pile Foundation by Venkatesh Taduvai (Sub Geotechnical Engineering II)-conver...
AJAYKUMARPUND1
 
ethical hacking in wireless-hacking1.ppt
ethical hacking in wireless-hacking1.pptethical hacking in wireless-hacking1.ppt
ethical hacking in wireless-hacking1.ppt
Jayaprasanna4
 

Recently uploaded (20)

Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&BDesign and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
 
WATER CRISIS and its solutions-pptx 1234
WATER CRISIS and its solutions-pptx 1234WATER CRISIS and its solutions-pptx 1234
WATER CRISIS and its solutions-pptx 1234
 
在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样
在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样
在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样
 
LIGA(E)11111111111111111111111111111111111111111.ppt
LIGA(E)11111111111111111111111111111111111111111.pptLIGA(E)11111111111111111111111111111111111111111.ppt
LIGA(E)11111111111111111111111111111111111111111.ppt
 
Courier management system project report.pdf
Courier management system project report.pdfCourier management system project report.pdf
Courier management system project report.pdf
 
Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...
Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...
Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...
 
The role of big data in decision making.
The role of big data in decision making.The role of big data in decision making.
The role of big data in decision making.
 
Automobile Management System Project Report.pdf
Automobile Management System Project Report.pdfAutomobile Management System Project Report.pdf
Automobile Management System Project Report.pdf
 
CME397 Surface Engineering- Professional Elective
CME397 Surface Engineering- Professional ElectiveCME397 Surface Engineering- Professional Elective
CME397 Surface Engineering- Professional Elective
 
Student information management system project report ii.pdf
Student information management system project report ii.pdfStudent information management system project report ii.pdf
Student information management system project report ii.pdf
 
Final project report on grocery store management system..pdf
Final project report on grocery store management system..pdfFinal project report on grocery store management system..pdf
Final project report on grocery store management system..pdf
 
ASME IX(9) 2007 Full Version .pdf
ASME IX(9)  2007 Full Version       .pdfASME IX(9)  2007 Full Version       .pdf
ASME IX(9) 2007 Full Version .pdf
 
road safety engineering r s e unit 3.pdf
road safety engineering  r s e unit 3.pdfroad safety engineering  r s e unit 3.pdf
road safety engineering r s e unit 3.pdf
 
Halogenation process of chemical process industries
Halogenation process of chemical process industriesHalogenation process of chemical process industries
Halogenation process of chemical process industries
 
HYDROPOWER - Hydroelectric power generation
HYDROPOWER - Hydroelectric power generationHYDROPOWER - Hydroelectric power generation
HYDROPOWER - Hydroelectric power generation
 
H.Seo, ICLR 2024, MLILAB, KAIST AI.pdf
H.Seo,  ICLR 2024, MLILAB,  KAIST AI.pdfH.Seo,  ICLR 2024, MLILAB,  KAIST AI.pdf
H.Seo, ICLR 2024, MLILAB, KAIST AI.pdf
 
Gen AI Study Jams _ For the GDSC Leads in India.pdf
Gen AI Study Jams _ For the GDSC Leads in India.pdfGen AI Study Jams _ For the GDSC Leads in India.pdf
Gen AI Study Jams _ For the GDSC Leads in India.pdf
 
block diagram and signal flow graph representation
block diagram and signal flow graph representationblock diagram and signal flow graph representation
block diagram and signal flow graph representation
 
Pile Foundation by Venkatesh Taduvai (Sub Geotechnical Engineering II)-conver...
Pile Foundation by Venkatesh Taduvai (Sub Geotechnical Engineering II)-conver...Pile Foundation by Venkatesh Taduvai (Sub Geotechnical Engineering II)-conver...
Pile Foundation by Venkatesh Taduvai (Sub Geotechnical Engineering II)-conver...
 
ethical hacking in wireless-hacking1.ppt
ethical hacking in wireless-hacking1.pptethical hacking in wireless-hacking1.ppt
ethical hacking in wireless-hacking1.ppt
 

Software Engineering unit 4

  • 1. SOFTWARE ENGINEERING UNIT-4 ABHIMANYU MISHRA ASSISTANT PROF.(CSE) JETGI 24/12/16 1Abhimanyu Mishra(CSE) JETGI
  • 2.  Testing objectives.  Unit testing.  Integration testing.  Acceptance testing.  Regression testing.  Testing for performance.  Top down & bottom up strategies: Test driver and Test stub.  Test data suit preparation.  Apha & Beta testing of products.  Static testing Strategies: Formal Technical Reviews, walkthrough.  Compliance with design and coding standards. CONTENTS 24/12/16 2Abhimanyu Mishra(CSE) JETGI
  • 3. Software testing is the process of executing a program with the intension of finding errors in the code. It is a process of evolution of a system or its parts by manual or automatic means to verify that it is satisfying specified requirements or not.  Generally no system design is ever perfect due to communication problem between user & developer, time constrains, or conceptual mistake by developers.  The purpose of system testing is to check and find out these errors or faults as early as possible so losses due to it can be saved.  Testing is the fundamental of software success.  System testing makes a logical assumption that if all the parts of the system are working correctly then system goal will be successfully achieved.  Testing is not a distinct phase in system development life cycle but should be applicable throughout all phases. TESTING OBJECTIVES : 24/12/16 3Abhimanyu Mishra(CSE) JETGI
  • 4. OBJECTIVE OF SOFTWARE TESTING: i. Software quality improvement- the computer and the software are mainly used for complex and critical applications and a bug or fault in software causes severe losses. ii. Verification & Validation- The second main objective of software is to verify the system and checking its validation. Verification means to test that we are building the product in right way. iii. Software reliability estimation- software reliability has important relationship with many aspects of software development. Its objective is to discover the residual designing errors before delivery to the customer 24/12/16 4Abhimanyu Mishra(CSE) JETGI
  • 5. 24/12/16 5Abhimanyu Mishra(CSE) JETGI Softwa re Testers Reliabil ity analysi s Designe r Test inputs Test data Test outputs Continue/ change procedure Debug system Evaluate effectiveness of fixes Fig- Role of reliability in software testing
  • 6. 24/12/16 6Abhimanyu Mishra(CSE) JETGI VARIOUS TYPES OF TESTING: Acceptance testing System testing Integration testing Unit testing Client Needs Requirements Design code
  • 7. Unit testing focuses verification effort on the smallest unit of software design the software component or module. Using the component-level design description as a guide, important control paths are tested to uncovered errors within the boundary of the module. In unit testing individual components are tested to ensure that they are working properly in the same manner as required. It is the lowest level of testing of application under test software meet the requirements. The main reason for doing unit testing is that: •The size of single module is small enough that can locate error very easily. •Due to small size it can be tested in demonstrably in exhaustive fashion. Unit Testing: 24/12/16 7Abhimanyu Mishra(CSE) JETGI
  • 8. 24/12/16 8Abhimanyu Mishra(CSE) JETGI M1 M2 M3 M4 M5 M7 M6 Unit testing
  • 9. INTEGRATION TESTING: 24/12/16 9Abhimanyu Mishra(CSE) JETGI  Once individuals program component have been tested, they must be integrated to create a partial or complete system.  Integrated test should develop during system specification, and this integration testing should begin as soon as usable versions of some of the system component are available.  The primary objective of integration testing is to check the module interface i.e. way of interaction of module, is not having any kind of errors. The main integration technique are- i. Top down integration testing ii. Bottom up integration testing.
  • 10. 24/12/16 10Abhimanyu Mishra(CSE) JETGI Top down integration testing- In top down integration testing, the top level usually one controlling component is tested. Then all components called by tested component are combined in the same way and tested as a large unit. This process continues until all components are integrated and then whole system have been completely tested. Advantages of top down testing:  Design errors are detected as early as possible, saving development time and costs because corrections in the module design can be made before their implementation.  The characteristics of a software system are evident from the start, which enables a simple test of the development state and the acceptance by the user.  The software system can be tested thoroughly from the start with test cases without providing test environments. Disadvantages of top down testing:  Strict top down testing proves extremely difficult because designing usable surrogate objects can prove very complicated, especially for complex operation.  Errors in lower hierarchy levels are hard to localize. TOP DOWN TESTING:
  • 11. 24/12/16 11Abhimanyu Mishra(CSE) JETGI BOTTOM-UP INTEGRATION TESTING: It is very popular approach of merging the components to test a larger system. In this method each subsystem at the lower level of system hierarchy is tested individually first. Then the next component who calls the previously tested ones to be tested. Advantages of Bottom-Up integrated testing-  The bottom-up test method is solid & proven. The objects to be tested are known in full detail. It is often simpler to define relevant test cases and test data.  The bottom- up approach is psychologically more satisfying because the tester can be certain that the foundations for the test objects have been tested in full detailed. Disadvantages of Bottom-up integrated testing-  The characteristics of the finished product are only known after the completion of all implementation and testing, which means that design error in the upper level are detected very late  Testing individual levels also inflicts high costs for providing a suitable test environment.
  • 12. 24/12/16 12Abhimanyu Mishra(CSE) JETGI ACCEPTANCE TESTING:  The purpose of acceptance testing is to confirm that the system meets its business requirements and to provide confidence that the system is working properly before it is “hand over” to the customer.  Acceptance testing is performed by nominated user representatives under guidance and supervision of testing team and developer.  During acceptance testing it is very important that there should be an independent observer of testing process specially when the customer are not having too much IT knowledge.  The main way to evaluate the system for acceptance is bench mark test. In this customer prepare a set of a test cases that represents typical condition under which the system will operate when actually installed. The customer evaluate the system performance for each test case.
  • 13. STRESS TESTING:  In software testing, stress testing refers to tests that determine the robustness of software by testing beyond the limits of normal operation. Stress testing is particularly important for “mission critical” software, but is used for all types of software.  Stress tests commonly put a greater emphasis on robustness, availability, and error handling under a heavy load, then on what would be considered correct behavior under normal circumstances.  Stress testing typically involves the independent test team performing the following testing tasks using the following technique: i. Test planning ii. Test reuse iii. Test design 24/12/16 13Abhimanyu Mishra(CSE) JETGI
  • 14. 24/12/16 14Abhimanyu Mishra(CSE) JETGI REGRESSION TESTING: Testing is used to find out errors in the software due to which it is not working properly. When these errors are found out then different methods are used to correct these errors. But while, removing process of current errors, some new faults or errors may be generated. Regression testing is used to identified these new errors or faults. Regression testing can be applied in development as well as maintenance phase of software life cycle. In development phase regression testing is done after correcting the errors found during the testing of software. A regression test suit contains three different classes of test cases:  A representative sample of tests that will exercise all software functions.  Additional tests that focuses on software functions that are likely to be affected by the change.  Test that focuses on the software components that have been changed.
  • 15. TEST DRIVER & TEST STUB: 24/12/16 15Abhimanyu Mishra(CSE) JETGI “A test driver is a software module or application used to invoke a test and provide test data, control and monitor execution and execution and reports test outcomes”. Test driver are used for testing of sub-module in the absence of main control module. A component driver routine calls a particular component and passes test case to it. Test stub- Test stubs are specialized implementation of elements used for testing purpose, which are dummy of a real component. Test stubs are program or components that have deterministic behavior and are used to interface with sub system in order to take care of dependencies. • Basically stubs are used in top down approach.in it the main control module is tested in the absence of stub-module.
  • 16. 24/12/16 16Abhimanyu Mishra(CSE) JETGI WHITE BOX TESTING: White box testing is a software testing approach that examines the program structure and derives test data from the program logic.  In this approach, test group must have complete knowledge about the internal structure of the software.  White box testing is also called “structural testing”.  Structural testing is usually applied to relatively small program units such as subroutine or operations associated with objects.  The white box testing is also known by name of glass box testing, clear box testing, open-box testing.  It is a test case design method that uses the control structure of the procedural design to drive test cases.
  • 17. 24/12/16 17Abhimanyu Mishra(CSE) JETGI Fig- White box approach
  • 18. 24/12/16 18Abhimanyu Mishra(CSE) JETGI BLACK BOX APPROACH:  In Black-box testing the tester don’t know the internal structure of module, it tests only for input/output behavior. Black-box testing focuses on the functional requirements of the software. It enables the software engineer to derive sets of input conditions that will fully exercise all functional requirements for a program.  The black box testing is also known by the name of functional testing, exterior testing, specification testing, data- driven testing and input/output driven.  The selection of test cases is based on the specification of the test object without knowledge of its behavior of the test object on erroneous input data.  In black box test on software design the tester only knows the inputs and what will be expected outputs and don’t know how the program will arrive at those outputs.
  • 19. 24/12/16 Abhimanyu Mishra(CSE) JETGI 19 Advantage of Black box testing-  The test is unbiased because the designer and tester are independent of each other.  Test is done from the point of view of user not the designer.  Test cases can be design as soon as specification is completed.  For tester there is no need to know any programming language. Disadvantage of Black box testing-  The test can be redundant if software designer has already run a test case.  The test cases are difficult to design.
  • 20. 24/12/16 20Abhimanyu Mishra(CSE) JETGI Fig- Black box testing
  • 21. 24/12/16 Abhimanyu Mishra(CSE) JETGI 21 TEST DATA SUIT PREPARATION: Testing is the process of executing a program to locate undiscovered errors. The main aim of program testing is to identify all defects in a program. However, it is not possible to guarantee that a program is error free. Following activities are to be performed during testing process-  Designing test suit  Running test cases & checking result  Debugging  Error correction
  • 22. 24/12/16 22Abhimanyu Mishra(CSE) JETGI FORMAL TECHNICAL REVIEW: A formal technical review are filter or software engineering process i.e. review are applied at various points during software development and serve to uncover the errors and defects that can be removed. Software reviews “purifies” the software engineering activities that we have called analysis, design and coding.  It is a software quality that assurance activity performed by software engineers. A FTR is known as WALKTHROUGH or an INSPECTION. The objective of FTR are:-  To uncover errors in function, logic or implementation for representation of software.  To verify that software under review meets its requirements.  To ensure that the software has been represented according to predefined standards.  To achieve software that is developed in a uniform manner.
  • 23. 24/12/16 23Abhimanyu Mishra(CSE) JETGI DESIGNING & CODING STANDARDS: Coding standards are a set of conventions that the programmer follow to standardize their computer code to some degree and to make the overall program easier to read and understand. In other words coding standard as it is sometime called is about how you code so that the code is easily readable and understandable by a human.  Coding  Program Robustness  I/O Behavior  Modules & Modular program structure  Program Testing  Cohesion Procedure  Minimize coupling  Minimize data scope where possible