SlideShare a Scribd company logo
1 of 22
Testing off the shelf Components

Dr. Himanshu Hora
SRMS College of Engineering & Technology
Bareilly (INDIA)
Outline :
 Introduction to COTS components
 Advantages of COTS components
 Challenges in testing COTS components
 Testing types of COTS components
 References
Introduction:
What is Component Based Software Engineering (CBSE)?
 Idea to develop software systems by selecting appropriate
off-the-shelf components and then assemble them with a
well-defined software architecture.
 CBSE has three major functions:
Developing software from prefabricated, reusable
parts.
The ability to use those parts in other applications.
Easily maintaining and customizing those parts to
produce new functions and features.
What is a COTS component:
What is a Commercial Off the shelf (COTS) component:

 Independent and replaceable part of a system that fulfills a
clear function
 Works in the context of a well defined architecture
 A component communicates with other components by its
interfaces
 Developed by different developers, using different
languages and different platforms
Contd….
Component 1

Component
repository

select

Component 2

Software system

Component n

assemble
Advantages of COTS:
Development cost is reduced
Development time is reduced
Complex systems can be built by reusing pre-existing
components
Testing effort is reduced
Testing Components: Challenges
 COTS is a Black Box
 Lack of Functional and Technical Requirements
 The Level of Quality is Unknown
 Unknown Development Processes and Methods
 Compatibility Issues
 Uncertain Upgrade Schedules and Quality
 Difficulty in Regression Testing and Test Automation
 Interoperability and Integration Issues
Testing techniques:
 Black-box component testing
 System-level fault injection
 Operational system testing
 Software Wrapping

 Interface propagation Analysis
Black box Testing:
 To understand the behavior of a component, various
inputs are executed and outputs are analyzed
 To catch all types of errors all possible combinations of
input values should be executed
 To make testing feasible, test cases are selected
randomly from test case space
Contd….
Fault Injection:

request
Fault
simulation
tool

Erroneous or
malicious input

Component

Fault
simulation
tool

Exceptions, No
response
Contd….

 A technique for improving the coverage of a test by
introducing faults to test code paths
 Fault propagate through to an observable failure follows
a well defined cycle
 When executed, a fault may cause an error, which is an
invalid state within a system boundary
 An error may cause further errors within the system
boundary
 Each new error acts as a fault
 When error states are observed at the system boundary
they are termed failures
 This is termed the fault-error-failure cycle
Contd….
Operational system testing:
 complements system-level fault injection
 System is operated with random inputs (valid and invalid
inputs)

 Provides more accurate assessment of COTS quality
 A key operational testing feature is error detection,
which ensures correct functional implementation
 Operational testing allows component interaction
Software Wrapping :
Input wrapper

Input

Output wrapper

Component

output
Contd….

 Wrapper: generally refers to a type of packaging, such as
a flat sheet to enclose an object
 It is a piece of code that one builds to isolate the
underlying components from other components of the
system
 Glue: A glue component provides the functionality to
combine different components
Interface propagation Analysis:

COTS
Component 1

Fault Injector

 Modify input, call correct method.
 Call correct method, modify output.

COTS
Component 2
Contd….

 Interface Propagation Analysis is used by injecting faults
at one component
 This is done at component integration level

 A known faulty input is injected using fault injector into
the system
 Components effected by this input are observed (how
they handle the faulty input)
Refrences:
 http://www.cigital.com/presentations/zurich98/sld087.h
tm
 http://my.safaribooksonline.com/book/softwareengineering-and-development/softwaretesting/0201325640/testing-interactions/ch06lev1sec4
 http://my.safaribooksonline.com/book/softwareengineering-and-development/softwaretesting/0201325640/testing-interactions/ch06lev1sec4
Thank You

Dr. Himanshu Hora
SRMS College of Engineering & Technology
Bareilly (INDIA)

More Related Content

What's hot

Formal Specification in Software Engineering SE9
Formal Specification in Software Engineering SE9Formal Specification in Software Engineering SE9
Formal Specification in Software Engineering SE9
koolkampus
 
Composition of cots
Composition of cotsComposition of cots
Composition of cots
Saransh Garg
 

What's hot (20)

Software Quality Metrics
Software Quality MetricsSoftware Quality Metrics
Software Quality Metrics
 
Context model
Context modelContext model
Context model
 
Unit 8
Unit 8Unit 8
Unit 8
 
Software requirements specification
Software requirements specificationSoftware requirements specification
Software requirements specification
 
software characteristics
software characteristicssoftware characteristics
software characteristics
 
Virtual machine
Virtual machineVirtual machine
Virtual machine
 
Cost of software quality ( software quality assurance )
Cost of software quality ( software quality assurance )Cost of software quality ( software quality assurance )
Cost of software quality ( software quality assurance )
 
Formal Specification in Software Engineering SE9
Formal Specification in Software Engineering SE9Formal Specification in Software Engineering SE9
Formal Specification in Software Engineering SE9
 
SQA - chapter 13 (Software Quality Infrastructure)
SQA - chapter 13 (Software Quality Infrastructure)SQA - chapter 13 (Software Quality Infrastructure)
SQA - chapter 13 (Software Quality Infrastructure)
 
Software Process Improvement
Software Process ImprovementSoftware Process Improvement
Software Process Improvement
 
Software quality assurance
Software quality assuranceSoftware quality assurance
Software quality assurance
 
Software Configuration Management (SCM)
Software Configuration Management (SCM)Software Configuration Management (SCM)
Software Configuration Management (SCM)
 
Implementation levels of virtualization
Implementation levels of virtualizationImplementation levels of virtualization
Implementation levels of virtualization
 
PAC Learning
PAC LearningPAC Learning
PAC Learning
 
Data Designs (Software Engg.)
Data Designs (Software Engg.)Data Designs (Software Engg.)
Data Designs (Software Engg.)
 
Introdution and designing a learning system
Introdution and designing a learning systemIntrodution and designing a learning system
Introdution and designing a learning system
 
Virtual machines and their architecture
Virtual machines and their architectureVirtual machines and their architecture
Virtual machines and their architecture
 
Composition of cots
Composition of cotsComposition of cots
Composition of cots
 
Component based software engineering
Component based software engineeringComponent based software engineering
Component based software engineering
 
Program security
Program securityProgram security
Program security
 

Viewers also liked

Selecting cots vendor in cbse process
Selecting cots vendor in cbse processSelecting cots vendor in cbse process
Selecting cots vendor in cbse process
Saransh Garg
 
Caught in a COTS Project - Strategies for Requirements Success 2011MAY17
Caught in a COTS Project - Strategies for Requirements Success 2011MAY17Caught in a COTS Project - Strategies for Requirements Success 2011MAY17
Caught in a COTS Project - Strategies for Requirements Success 2011MAY17
Michael Roy
 
Introducing sociotechnical systems
Introducing sociotechnical systemsIntroducing sociotechnical systems
Introducing sociotechnical systems
sommerville-videos
 
Types of software
Types of softwareTypes of software
Types of software
latifah2001
 

Viewers also liked (19)

Cots integration
Cots integrationCots integration
Cots integration
 
Ch16 component based software engineering
Ch16 component based software engineeringCh16 component based software engineering
Ch16 component based software engineering
 
Testing in multiplatform environment
Testing in multiplatform environmentTesting in multiplatform environment
Testing in multiplatform environment
 
Commercial of the shelve software
Commercial of the shelve softwareCommercial of the shelve software
Commercial of the shelve software
 
Selecting cots vendor in cbse process
Selecting cots vendor in cbse processSelecting cots vendor in cbse process
Selecting cots vendor in cbse process
 
Softwareproject planning
Softwareproject planningSoftwareproject planning
Softwareproject planning
 
Build or Buy ?
Build or Buy ?Build or Buy ?
Build or Buy ?
 
Partners and Outsiders
Partners and OutsidersPartners and Outsiders
Partners and Outsiders
 
QMS Audit Process June 2015
QMS Audit Process June 2015QMS Audit Process June 2015
QMS Audit Process June 2015
 
Caught in a COTS Project - Strategies for Requirements Success 2011MAY17
Caught in a COTS Project - Strategies for Requirements Success 2011MAY17Caught in a COTS Project - Strategies for Requirements Success 2011MAY17
Caught in a COTS Project - Strategies for Requirements Success 2011MAY17
 
COTS V Model
COTS V ModelCOTS V Model
COTS V Model
 
Component based-software-engineering
Component based-software-engineeringComponent based-software-engineering
Component based-software-engineering
 
Software product line
Software product lineSoftware product line
Software product line
 
e2e frameworks - czyli kij ma dwa końce
e2e frameworks - czyli kij ma dwa końcee2e frameworks - czyli kij ma dwa końce
e2e frameworks - czyli kij ma dwa końce
 
Building systems from off the shelf components
Building systems from off the shelf componentsBuilding systems from off the shelf components
Building systems from off the shelf components
 
Introducing sociotechnical systems
Introducing sociotechnical systemsIntroducing sociotechnical systems
Introducing sociotechnical systems
 
Types of software
Types of softwareTypes of software
Types of software
 
Ch15 software reuse
Ch15 software reuseCh15 software reuse
Ch15 software reuse
 
Software reuse ppt.
Software reuse ppt.Software reuse ppt.
Software reuse ppt.
 

Similar to Off the-shelf components (cots)

Complex System Engineering
Complex System EngineeringComplex System Engineering
Complex System Engineering
Emmanuel Fuchs
 
Manual Testing Questions
Manual Testing QuestionsManual Testing Questions
Manual Testing Questions
User1test
 
Presentation on component based software engineering(cbse)
Presentation on component based software engineering(cbse)Presentation on component based software engineering(cbse)
Presentation on component based software engineering(cbse)
Chandan Thakur
 
object oriented system analysis and design
object oriented system analysis and designobject oriented system analysis and design
object oriented system analysis and design
wekineheshete
 

Similar to Off the-shelf components (cots) (20)

Object oriented sad 6
Object oriented sad 6Object oriented sad 6
Object oriented sad 6
 
Bt0081 software engineering2
Bt0081 software engineering2Bt0081 software engineering2
Bt0081 software engineering2
 
Complex System Engineering
Complex System EngineeringComplex System Engineering
Complex System Engineering
 
SE2011_10.ppt
SE2011_10.pptSE2011_10.ppt
SE2011_10.ppt
 
Manual Testing Questions
Manual Testing QuestionsManual Testing Questions
Manual Testing Questions
 
Cots testing
Cots testingCots testing
Cots testing
 
LDTT : A Low Level Driver Unit Testing Tool
LDTT : A Low Level Driver Unit Testing Tool LDTT : A Low Level Driver Unit Testing Tool
LDTT : A Low Level Driver Unit Testing Tool
 
unittesting-190620114546 (1).pptx document
unittesting-190620114546 (1).pptx documentunittesting-190620114546 (1).pptx document
unittesting-190620114546 (1).pptx document
 
Unit test Android
Unit test AndroidUnit test Android
Unit test Android
 
System imolementation(Modern Systems Analysis and Design)
System imolementation(Modern Systems Analysis and Design)System imolementation(Modern Systems Analysis and Design)
System imolementation(Modern Systems Analysis and Design)
 
ASPECT ORIENTED PROGRAMING(aop)
ASPECT ORIENTED PROGRAMING(aop)ASPECT ORIENTED PROGRAMING(aop)
ASPECT ORIENTED PROGRAMING(aop)
 
Ch19
Ch19Ch19
Ch19
 
Presentation on component based software engineering(cbse)
Presentation on component based software engineering(cbse)Presentation on component based software engineering(cbse)
Presentation on component based software engineering(cbse)
 
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
 
Slides 6 design of sw arch using add
Slides 6 design of sw arch using addSlides 6 design of sw arch using add
Slides 6 design of sw arch using add
 
Ch 10
Ch 10Ch 10
Ch 10
 
object oriented system analysis and design
object oriented system analysis and designobject oriented system analysis and design
object oriented system analysis and design
 
Programming Fundamentals lecture 3
Programming Fundamentals lecture 3Programming Fundamentals lecture 3
Programming Fundamentals lecture 3
 
Software testing (2)
Software testing (2)Software testing (2)
Software testing (2)
 
Ensuring code quality
Ensuring code qualityEnsuring code quality
Ensuring code quality
 

More from Himanshu

More from Himanshu (20)

Structural patterns
Structural patternsStructural patterns
Structural patterns
 
Shared information systems
Shared information systemsShared information systems
Shared information systems
 
Saam
SaamSaam
Saam
 
Design Pattern
Design PatternDesign Pattern
Design Pattern
 
Creational pattern
Creational patternCreational pattern
Creational pattern
 
Architecture Review
Architecture ReviewArchitecture Review
Architecture Review
 
Reliability and its principals
Reliability and its principalsReliability and its principals
Reliability and its principals
 
Structural and functional testing
Structural and functional testingStructural and functional testing
Structural and functional testing
 
White box black box & gray box testing
White box black box & gray box testingWhite box black box & gray box testing
White box black box & gray box testing
 
Pareto analysis
Pareto analysisPareto analysis
Pareto analysis
 
Load runner & win runner
Load runner & win runnerLoad runner & win runner
Load runner & win runner
 
Crud and jad
Crud and jadCrud and jad
Crud and jad
 
Junit and cactus
Junit and cactusJunit and cactus
Junit and cactus
 
Risk based testing and random testing
Risk based testing and random testingRisk based testing and random testing
Risk based testing and random testing
 
Testing a data warehouses
Testing a data warehousesTesting a data warehouses
Testing a data warehouses
 
Software testing tools and its taxonomy
Software testing tools and its taxonomySoftware testing tools and its taxonomy
Software testing tools and its taxonomy
 
Software reliability engineering process
Software reliability engineering processSoftware reliability engineering process
Software reliability engineering process
 
Software reliability growth model
Software reliability growth modelSoftware reliability growth model
Software reliability growth model
 
Software reliability tools and common software errors
Software reliability tools and common software errorsSoftware reliability tools and common software errors
Software reliability tools and common software errors
 
Regression and performance testing
Regression and performance testingRegression and performance testing
Regression and performance testing
 

Recently uploaded

Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in DelhiRussian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
kauryashika82
 
Beyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactBeyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global Impact
PECB
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
QucHHunhnh
 
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Krashi Coaching
 
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdfBASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
SoniaTolstoy
 

Recently uploaded (20)

Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in DelhiRussian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
 
APM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across SectorsAPM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across Sectors
 
Beyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactBeyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global Impact
 
Measures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SDMeasures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SD
 
Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1
 
Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..
 
Class 11th Physics NEET formula sheet pdf
Class 11th Physics NEET formula sheet pdfClass 11th Physics NEET formula sheet pdf
Class 11th Physics NEET formula sheet pdf
 
Disha NEET Physics Guide for classes 11 and 12.pdf
Disha NEET Physics Guide for classes 11 and 12.pdfDisha NEET Physics Guide for classes 11 and 12.pdf
Disha NEET Physics Guide for classes 11 and 12.pdf
 
Arihant handbook biology for class 11 .pdf
Arihant handbook biology for class 11 .pdfArihant handbook biology for class 11 .pdf
Arihant handbook biology for class 11 .pdf
 
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
 
Mattingly "AI & Prompt Design: The Basics of Prompt Design"
Mattingly "AI & Prompt Design: The Basics of Prompt Design"Mattingly "AI & Prompt Design: The Basics of Prompt Design"
Mattingly "AI & Prompt Design: The Basics of Prompt Design"
 
Measures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeMeasures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and Mode
 
Z Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphZ Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot Graph
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
 
social pharmacy d-pharm 1st year by Pragati K. Mahajan
social pharmacy d-pharm 1st year by Pragati K. Mahajansocial pharmacy d-pharm 1st year by Pragati K. Mahajan
social pharmacy d-pharm 1st year by Pragati K. Mahajan
 
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
 
A Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformA Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy Reform
 
Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104
 
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
 
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdfBASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
 

Off the-shelf components (cots)

  • 1. Testing off the shelf Components Dr. Himanshu Hora SRMS College of Engineering & Technology Bareilly (INDIA)
  • 2. Outline :  Introduction to COTS components  Advantages of COTS components  Challenges in testing COTS components  Testing types of COTS components  References
  • 3. Introduction: What is Component Based Software Engineering (CBSE)?  Idea to develop software systems by selecting appropriate off-the-shelf components and then assemble them with a well-defined software architecture.  CBSE has three major functions: Developing software from prefabricated, reusable parts. The ability to use those parts in other applications. Easily maintaining and customizing those parts to produce new functions and features.
  • 4. What is a COTS component: What is a Commercial Off the shelf (COTS) component:  Independent and replaceable part of a system that fulfills a clear function  Works in the context of a well defined architecture  A component communicates with other components by its interfaces  Developed by different developers, using different languages and different platforms
  • 6. Advantages of COTS: Development cost is reduced Development time is reduced Complex systems can be built by reusing pre-existing components Testing effort is reduced
  • 7. Testing Components: Challenges  COTS is a Black Box  Lack of Functional and Technical Requirements  The Level of Quality is Unknown  Unknown Development Processes and Methods  Compatibility Issues  Uncertain Upgrade Schedules and Quality  Difficulty in Regression Testing and Test Automation  Interoperability and Integration Issues
  • 8. Testing techniques:  Black-box component testing  System-level fault injection  Operational system testing  Software Wrapping  Interface propagation Analysis
  • 9. Black box Testing:  To understand the behavior of a component, various inputs are executed and outputs are analyzed  To catch all types of errors all possible combinations of input values should be executed  To make testing feasible, test cases are selected randomly from test case space
  • 11. Fault Injection: request Fault simulation tool Erroneous or malicious input Component Fault simulation tool Exceptions, No response
  • 12. Contd….  A technique for improving the coverage of a test by introducing faults to test code paths  Fault propagate through to an observable failure follows a well defined cycle  When executed, a fault may cause an error, which is an invalid state within a system boundary  An error may cause further errors within the system boundary  Each new error acts as a fault  When error states are observed at the system boundary they are termed failures  This is termed the fault-error-failure cycle
  • 14.
  • 15.
  • 16. Operational system testing:  complements system-level fault injection  System is operated with random inputs (valid and invalid inputs)  Provides more accurate assessment of COTS quality  A key operational testing feature is error detection, which ensures correct functional implementation  Operational testing allows component interaction
  • 17. Software Wrapping : Input wrapper Input Output wrapper Component output
  • 18. Contd….  Wrapper: generally refers to a type of packaging, such as a flat sheet to enclose an object  It is a piece of code that one builds to isolate the underlying components from other components of the system  Glue: A glue component provides the functionality to combine different components
  • 19. Interface propagation Analysis: COTS Component 1 Fault Injector  Modify input, call correct method.  Call correct method, modify output. COTS Component 2
  • 20. Contd….  Interface Propagation Analysis is used by injecting faults at one component  This is done at component integration level  A known faulty input is injected using fault injector into the system  Components effected by this input are observed (how they handle the faulty input)
  • 22. Thank You Dr. Himanshu Hora SRMS College of Engineering & Technology Bareilly (INDIA)