SlideShare a Scribd company logo
1 of 20
Download to read offline
Exploring the fault finding
capabilities of online testing in
              OSGi

Michaela Greiler    Hans-Gerhard Gross           Arie van Deursen

                    Technical University Delft
               Software Engineering Research Group
Overview
• Service-Oriented Architectures
      – SOA Challenges
• Online Testing in OSGi
      – A Case Study
      – Seeded Faults
      – Fault Finding Capabilities




                         Technical University Delft – OSGi
14-12-2009
                                Users’Forum 2009
Service-Oriented Architectures


  A software architecture that aims at reusability
    and interoperability by exposing functionality
       as loosely coupled services, that can be
       composed to form business processes.



                   Technical University Delft – OSGi
14-12-2009
                          Users’Forum 2009
SOA Runtime Evolution: Challenge I
Stakeholder Separation

                                      •    Communication
                                      •    Ownership
                                      •    Responsibilities
                                      •    Influence




                   Technical University Delft – OSGi
14-12-2009
                          Users’Forum 2009
SOA Runtime Evolution: Challenge II
Service Integration

                                         • Black-boxes
                                         • Test environment
                                         • (Runtime)-Testability




                      Technical University Delft – OSGi
14-12-2009
                             Users’Forum 2009
SOA Runtime Evolution: Challenge III
Service Versioning and Migration


                                                  • Notification
                                                  • Update Strategy
                                                  • Regression Testing




                    Technical University Delft – OSGi
14-12-2009
                           Users’Forum 2009
SOA Runtime Evolution: Challenge IV
             Service Binding and Reconfiguration




                        Technical University Delft – OSGi
14-12-2009
                               Users’Forum 2009
Case Study Design
• Goal: assess the capabilities of our online testing framework to find typical
  reconfiguration faults
• Approach:
      1.       extend original system with online testing infrastructure
      2.       reconfiguration scenario, were a number of faults have been seeded
• Key Metrics and Execution Environment:
      – Apache Felix 1.8
      – OVTS system: 6 key bundles, 1 utility bundle, 2176 LOCs, 41 classes. 349 LOCs
        dedicated to testing; 39 test cases consisting of 290 LOCs.
• Units of Analysis:
      –      level of provided test isolation
      –      detection rate for the seeded faults
      –      how have they been found, or why couldn’t they be detected?
      –      evaluation of the support of the execution environment to prevent
             inconsistencies in the overall system


                                    Technical University Delft – OSGi
14-12-2009
                                           Users’Forum 2009
Case Study Overview




                  Technical University Delft – OSGi
14-12-2009
                         Users’Forum 2009
Built-in Testing
• Associate the tests to the component
• Isolate effects of testing operations
• Benefits
      –      Simplify the management of the tests
      –      Can add tests at runtime
      –      Components’ functionality is separated from the tests
      –      At anytime of the components can be re-validated,
             whenever needed (eg. after a modification of the system)
• Adoption effort
      – Explicit definition of the tests
      – Testing framework has to be linked with the system
        platform
                              Technical University Delft – OSGi
14-12-2009
                                     Users’Forum 2009
Built-in Online Testing




                   Technical University Delft – OSGi
14-12-2009
                          Users’Forum 2009
Online Tests
• Discovery Tests:
      – Can I find all required services?
      – Are those services the services expected?
• Binding Tests:
      – Can I bind required services?
      – Do they conform syntactically (service descriptions) to my
        expectation?
• Execution Tests:
      – Test invocations looking for:
             • expectations about sequential constraints, i.e., the protocol,
             • simple input-output relations
             • non-functional requirements (e.g., timing)

                                 Technical University Delft – OSGi
14-12-2009
                                        Users’Forum 2009
Test Process




              Technical University Delft – OSGi
14-12-2009
                     Users’Forum 2009
SOA Faults
Fault Classes   Type/ Form
Publishing      Service Description
                Service Deployment
                                                              Publish          Discover
Discovery       No Service Found
                Wrong Service Found
                Timed Out
Composition     No Valid Composition
                Composition Faulty                    Execute                    Composition
                Timed Out
Binding         Binding Denied
                Bound to Wrong Service                                  Bind
                Timed Out
Execution       Service Crashed
                Incorrect Results
                Timed Out
    “A Fault Taxonomy for Service-Oriented Architecture” by Bruning et al. 2007
                                Technical University Delft – OSGi
14-12-2009
                                       Users’Forum 2009
Faults, Forms and Tests
Fault Classes   Type/ Form                      Found by
Publishing      Service Description             Binding Test
                Service Deployment              Binding Test
Discovery       No Service Found                Discovery Test
                Wrong Service Found             Discovery Test
                Timed Out                       Time Test
Composition     No Valid Composition            Composition Test
                Composition Faulty              Composition Test
                Timed Out                       Time Test
Binding         Binding Denied                  Composition Test
                Bound to Wrong Service          X
                Timed Out                       Time Test
Execution       Service Crashed                 Discovery Test
                Incorrect Results               X (unit tests)
                Timed Out                       Time Test

                                Technical University Delft – OSGi
14-12-2009
                                       Users’Forum 2009
Example: Faulty Reconfiguration




                Technical University Delft – OSGi
14-12-2009
                       Users’Forum 2009
Lessons Learned
• Online versus Offline Testing
      – Adequate test environment
      – Current state of the production system
• Shortcomings OSGi Framework
      – Support for overall consistency management
             • Service - Description Mismatch
             • Declaration of Dependencies
             • Export/Import of Packages (e.g. wiring)
      – Middleware versus Application

                              Technical University Delft – OSGi
14-12-2009
                                     Users’Forum 2009
General Technical Issues
      •      Extended Lifecycle Support
      •      Central Auditing Authority
      •      Additional Information
      •      State Transfer
      •      Automated Test Generation
      •      (Runtime)-Testability
      •      Performance Overhead

                         Technical University Delft – OSGi
14-12-2009
                                Users’Forum 2009
Summary
• Online built-in testing framework that
  provides test isolation
• A case study demonstrating the capabilities of
  this online testing framework to detect faults
  during system reconfiguration that could not
  be addressed in the test environment
• OSGi platform should support consistency
  management

                  Technical University Delft – OSGi
14-12-2009
                         Users’Forum 2009
Thank you!
                       Michaela Greiler
                    m.s.greiler@tudelft.nl
                   Technical University Delft
             Software Engineering Research Group



                    Technical University Delft – OSGi
14-12-2009
                           Users’Forum 2009

More Related Content

Viewers also liked

Angajatii Vorbesc ... Despre Ce Mai Conteaza La Un Loc De Munca
Angajatii Vorbesc ... Despre Ce Mai Conteaza La Un Loc De MuncaAngajatii Vorbesc ... Despre Ce Mai Conteaza La Un Loc De Munca
Angajatii Vorbesc ... Despre Ce Mai Conteaza La Un Loc De MuncaCorneliaPopa
 
режущие инструменты
режущие инструментырежущие инструменты
режущие инструментыtjklegion
 
Конкурентоспособность ОАО «Газпром» на европейском рынке газа
Конкурентоспособность ОАО «Газпром» на европейском рынке газаКонкурентоспособность ОАО «Газпром» на европейском рынке газа
Конкурентоспособность ОАО «Газпром» на европейском рынке газаDmitry Potapov
 
Determining Multiple Steady State Zcs Operating Points Of A Switch Mode Conta...
Determining Multiple Steady State Zcs Operating Points Of A Switch Mode Conta...Determining Multiple Steady State Zcs Operating Points Of A Switch Mode Conta...
Determining Multiple Steady State Zcs Operating Points Of A Switch Mode Conta...tchunsen
 
Конкурентоспособность ОАО «Газпром» на европейском рынке газа
Конкурентоспособность ОАО «Газпром» на европейском рынке газаКонкурентоспособность ОАО «Газпром» на европейском рынке газа
Конкурентоспособность ОАО «Газпром» на европейском рынке газаDmitry Potapov
 

Viewers also liked (8)

Angajatii Vorbesc ... Despre Ce Mai Conteaza La Un Loc De Munca
Angajatii Vorbesc ... Despre Ce Mai Conteaza La Un Loc De MuncaAngajatii Vorbesc ... Despre Ce Mai Conteaza La Un Loc De Munca
Angajatii Vorbesc ... Despre Ce Mai Conteaza La Un Loc De Munca
 
режущие инструменты
режущие инструментырежущие инструменты
режущие инструменты
 
Конкурентоспособность ОАО «Газпром» на европейском рынке газа
Конкурентоспособность ОАО «Газпром» на европейском рынке газаКонкурентоспособность ОАО «Газпром» на европейском рынке газа
Конкурентоспособность ОАО «Газпром» на европейском рынке газа
 
TransGrade CRM Intro
TransGrade CRM IntroTransGrade CRM Intro
TransGrade CRM Intro
 
Kristen!
Kristen!Kristen!
Kristen!
 
Determining Multiple Steady State Zcs Operating Points Of A Switch Mode Conta...
Determining Multiple Steady State Zcs Operating Points Of A Switch Mode Conta...Determining Multiple Steady State Zcs Operating Points Of A Switch Mode Conta...
Determining Multiple Steady State Zcs Operating Points Of A Switch Mode Conta...
 
Конкурентоспособность ОАО «Газпром» на европейском рынке газа
Конкурентоспособность ОАО «Газпром» на европейском рынке газаКонкурентоспособность ОАО «Газпром» на европейском рынке газа
Конкурентоспособность ОАО «Газпром» на европейском рынке газа
 
Kristen!
Kristen!Kristen!
Kristen!
 

Similar to Online Testing Fault Detection Capabilities OSGi

Cloud-based Test Microservices JavaOne 2014
Cloud-based Test Microservices JavaOne 2014Cloud-based Test Microservices JavaOne 2014
Cloud-based Test Microservices JavaOne 2014Shelley Lambert
 
Performance Testing Cloud-Based Systems
Performance Testing Cloud-Based SystemsPerformance Testing Cloud-Based Systems
Performance Testing Cloud-Based SystemsTechWell
 
5 Steps to Jump Start Your Test Automation
5 Steps to Jump Start Your Test Automation5 Steps to Jump Start Your Test Automation
5 Steps to Jump Start Your Test AutomationSauce Labs
 
An Automation Culture: The Key to Agile Success
An Automation Culture: The Key to Agile SuccessAn Automation Culture: The Key to Agile Success
An Automation Culture: The Key to Agile SuccessTechWell
 
Testing Applications—For the Cloud and in the Cloud
Testing Applications—For the Cloud and in the CloudTesting Applications—For the Cloud and in the Cloud
Testing Applications—For the Cloud and in the CloudTechWell
 
Response time difference analysis of performance testing tools
Response time difference analysis of performance testing toolsResponse time difference analysis of performance testing tools
Response time difference analysis of performance testing toolsSpoorthi Sham
 
Appium & Selenium Alone vs Appium & Selenium with Perfecto
Appium & Selenium Alone vs Appium & Selenium with PerfectoAppium & Selenium Alone vs Appium & Selenium with Perfecto
Appium & Selenium Alone vs Appium & Selenium with PerfectoLizzy Guido (she/her)
 
Lessons learned in implementing test on-commit for mobile devices
Lessons learned in implementing test on-commit for mobile devicesLessons learned in implementing test on-commit for mobile devices
Lessons learned in implementing test on-commit for mobile devicesJohan Hoberg
 
Test Automation: Investment Today Pays Back Tomorrow
Test Automation: Investment Today Pays Back TomorrowTest Automation: Investment Today Pays Back Tomorrow
Test Automation: Investment Today Pays Back TomorrowTechWell
 
DevOps in the Hybrid Cloud
DevOps in the Hybrid CloudDevOps in the Hybrid Cloud
DevOps in the Hybrid CloudRichard Irving
 
Automation Culture: Essential to Agile Success
Automation Culture: Essential to Agile SuccessAutomation Culture: Essential to Agile Success
Automation Culture: Essential to Agile SuccessTechWell
 
Tips to achieve continuous integration/delivery using HP ALM, Jenkins, and S...
 Tips to achieve continuous integration/delivery using HP ALM, Jenkins, and S... Tips to achieve continuous integration/delivery using HP ALM, Jenkins, and S...
Tips to achieve continuous integration/delivery using HP ALM, Jenkins, and S...Skytap Cloud
 
Continuous Testing through Service Virtualization
Continuous Testing through Service VirtualizationContinuous Testing through Service Virtualization
Continuous Testing through Service VirtualizationTechWell
 
Selenium tutorials
Selenium tutorialsSelenium tutorials
Selenium tutorialsDucat
 
Continuous Testing through Service Virtualization
Continuous Testing through Service VirtualizationContinuous Testing through Service Virtualization
Continuous Testing through Service VirtualizationTechWell
 
Testing in the cloud
Testing in the cloudTesting in the cloud
Testing in the cloudMCARaghu
 
Cloud Native Testing, 2020 Edition: A Modern Blueprint for Pre-production Tes...
Cloud Native Testing, 2020 Edition: A Modern Blueprint for Pre-production Tes...Cloud Native Testing, 2020 Edition: A Modern Blueprint for Pre-production Tes...
Cloud Native Testing, 2020 Edition: A Modern Blueprint for Pre-production Tes...OlyaSurits
 
No Devops Without Continuous Testing
No Devops Without Continuous TestingNo Devops Without Continuous Testing
No Devops Without Continuous TestingParasoft
 
Best Practices In Load And Stress Testing Cmg Seminar[1]
Best Practices In Load And Stress Testing Cmg Seminar[1]Best Practices In Load And Stress Testing Cmg Seminar[1]
Best Practices In Load And Stress Testing Cmg Seminar[1]Munirathnam Naidu
 

Similar to Online Testing Fault Detection Capabilities OSGi (20)

Cloud-based Test Microservices JavaOne 2014
Cloud-based Test Microservices JavaOne 2014Cloud-based Test Microservices JavaOne 2014
Cloud-based Test Microservices JavaOne 2014
 
Performance Testing Cloud-Based Systems
Performance Testing Cloud-Based SystemsPerformance Testing Cloud-Based Systems
Performance Testing Cloud-Based Systems
 
Testing in the cloud
Testing in the cloudTesting in the cloud
Testing in the cloud
 
5 Steps to Jump Start Your Test Automation
5 Steps to Jump Start Your Test Automation5 Steps to Jump Start Your Test Automation
5 Steps to Jump Start Your Test Automation
 
An Automation Culture: The Key to Agile Success
An Automation Culture: The Key to Agile SuccessAn Automation Culture: The Key to Agile Success
An Automation Culture: The Key to Agile Success
 
Testing Applications—For the Cloud and in the Cloud
Testing Applications—For the Cloud and in the CloudTesting Applications—For the Cloud and in the Cloud
Testing Applications—For the Cloud and in the Cloud
 
Response time difference analysis of performance testing tools
Response time difference analysis of performance testing toolsResponse time difference analysis of performance testing tools
Response time difference analysis of performance testing tools
 
Appium & Selenium Alone vs Appium & Selenium with Perfecto
Appium & Selenium Alone vs Appium & Selenium with PerfectoAppium & Selenium Alone vs Appium & Selenium with Perfecto
Appium & Selenium Alone vs Appium & Selenium with Perfecto
 
Lessons learned in implementing test on-commit for mobile devices
Lessons learned in implementing test on-commit for mobile devicesLessons learned in implementing test on-commit for mobile devices
Lessons learned in implementing test on-commit for mobile devices
 
Test Automation: Investment Today Pays Back Tomorrow
Test Automation: Investment Today Pays Back TomorrowTest Automation: Investment Today Pays Back Tomorrow
Test Automation: Investment Today Pays Back Tomorrow
 
DevOps in the Hybrid Cloud
DevOps in the Hybrid CloudDevOps in the Hybrid Cloud
DevOps in the Hybrid Cloud
 
Automation Culture: Essential to Agile Success
Automation Culture: Essential to Agile SuccessAutomation Culture: Essential to Agile Success
Automation Culture: Essential to Agile Success
 
Tips to achieve continuous integration/delivery using HP ALM, Jenkins, and S...
 Tips to achieve continuous integration/delivery using HP ALM, Jenkins, and S... Tips to achieve continuous integration/delivery using HP ALM, Jenkins, and S...
Tips to achieve continuous integration/delivery using HP ALM, Jenkins, and S...
 
Continuous Testing through Service Virtualization
Continuous Testing through Service VirtualizationContinuous Testing through Service Virtualization
Continuous Testing through Service Virtualization
 
Selenium tutorials
Selenium tutorialsSelenium tutorials
Selenium tutorials
 
Continuous Testing through Service Virtualization
Continuous Testing through Service VirtualizationContinuous Testing through Service Virtualization
Continuous Testing through Service Virtualization
 
Testing in the cloud
Testing in the cloudTesting in the cloud
Testing in the cloud
 
Cloud Native Testing, 2020 Edition: A Modern Blueprint for Pre-production Tes...
Cloud Native Testing, 2020 Edition: A Modern Blueprint for Pre-production Tes...Cloud Native Testing, 2020 Edition: A Modern Blueprint for Pre-production Tes...
Cloud Native Testing, 2020 Edition: A Modern Blueprint for Pre-production Tes...
 
No Devops Without Continuous Testing
No Devops Without Continuous TestingNo Devops Without Continuous Testing
No Devops Without Continuous Testing
 
Best Practices In Load And Stress Testing Cmg Seminar[1]
Best Practices In Load And Stress Testing Cmg Seminar[1]Best Practices In Load And Stress Testing Cmg Seminar[1]
Best Practices In Load And Stress Testing Cmg Seminar[1]
 

Online Testing Fault Detection Capabilities OSGi

  • 1. Exploring the fault finding capabilities of online testing in OSGi Michaela Greiler Hans-Gerhard Gross Arie van Deursen Technical University Delft Software Engineering Research Group
  • 2. Overview • Service-Oriented Architectures – SOA Challenges • Online Testing in OSGi – A Case Study – Seeded Faults – Fault Finding Capabilities Technical University Delft – OSGi 14-12-2009 Users’Forum 2009
  • 3. Service-Oriented Architectures A software architecture that aims at reusability and interoperability by exposing functionality as loosely coupled services, that can be composed to form business processes. Technical University Delft – OSGi 14-12-2009 Users’Forum 2009
  • 4. SOA Runtime Evolution: Challenge I Stakeholder Separation • Communication • Ownership • Responsibilities • Influence Technical University Delft – OSGi 14-12-2009 Users’Forum 2009
  • 5. SOA Runtime Evolution: Challenge II Service Integration • Black-boxes • Test environment • (Runtime)-Testability Technical University Delft – OSGi 14-12-2009 Users’Forum 2009
  • 6. SOA Runtime Evolution: Challenge III Service Versioning and Migration • Notification • Update Strategy • Regression Testing Technical University Delft – OSGi 14-12-2009 Users’Forum 2009
  • 7. SOA Runtime Evolution: Challenge IV Service Binding and Reconfiguration Technical University Delft – OSGi 14-12-2009 Users’Forum 2009
  • 8. Case Study Design • Goal: assess the capabilities of our online testing framework to find typical reconfiguration faults • Approach: 1. extend original system with online testing infrastructure 2. reconfiguration scenario, were a number of faults have been seeded • Key Metrics and Execution Environment: – Apache Felix 1.8 – OVTS system: 6 key bundles, 1 utility bundle, 2176 LOCs, 41 classes. 349 LOCs dedicated to testing; 39 test cases consisting of 290 LOCs. • Units of Analysis: – level of provided test isolation – detection rate for the seeded faults – how have they been found, or why couldn’t they be detected? – evaluation of the support of the execution environment to prevent inconsistencies in the overall system Technical University Delft – OSGi 14-12-2009 Users’Forum 2009
  • 9. Case Study Overview Technical University Delft – OSGi 14-12-2009 Users’Forum 2009
  • 10. Built-in Testing • Associate the tests to the component • Isolate effects of testing operations • Benefits – Simplify the management of the tests – Can add tests at runtime – Components’ functionality is separated from the tests – At anytime of the components can be re-validated, whenever needed (eg. after a modification of the system) • Adoption effort – Explicit definition of the tests – Testing framework has to be linked with the system platform Technical University Delft – OSGi 14-12-2009 Users’Forum 2009
  • 11. Built-in Online Testing Technical University Delft – OSGi 14-12-2009 Users’Forum 2009
  • 12. Online Tests • Discovery Tests: – Can I find all required services? – Are those services the services expected? • Binding Tests: – Can I bind required services? – Do they conform syntactically (service descriptions) to my expectation? • Execution Tests: – Test invocations looking for: • expectations about sequential constraints, i.e., the protocol, • simple input-output relations • non-functional requirements (e.g., timing) Technical University Delft – OSGi 14-12-2009 Users’Forum 2009
  • 13. Test Process Technical University Delft – OSGi 14-12-2009 Users’Forum 2009
  • 14. SOA Faults Fault Classes Type/ Form Publishing Service Description Service Deployment Publish Discover Discovery No Service Found Wrong Service Found Timed Out Composition No Valid Composition Composition Faulty Execute Composition Timed Out Binding Binding Denied Bound to Wrong Service Bind Timed Out Execution Service Crashed Incorrect Results Timed Out “A Fault Taxonomy for Service-Oriented Architecture” by Bruning et al. 2007 Technical University Delft – OSGi 14-12-2009 Users’Forum 2009
  • 15. Faults, Forms and Tests Fault Classes Type/ Form Found by Publishing Service Description Binding Test Service Deployment Binding Test Discovery No Service Found Discovery Test Wrong Service Found Discovery Test Timed Out Time Test Composition No Valid Composition Composition Test Composition Faulty Composition Test Timed Out Time Test Binding Binding Denied Composition Test Bound to Wrong Service X Timed Out Time Test Execution Service Crashed Discovery Test Incorrect Results X (unit tests) Timed Out Time Test Technical University Delft – OSGi 14-12-2009 Users’Forum 2009
  • 16. Example: Faulty Reconfiguration Technical University Delft – OSGi 14-12-2009 Users’Forum 2009
  • 17. Lessons Learned • Online versus Offline Testing – Adequate test environment – Current state of the production system • Shortcomings OSGi Framework – Support for overall consistency management • Service - Description Mismatch • Declaration of Dependencies • Export/Import of Packages (e.g. wiring) – Middleware versus Application Technical University Delft – OSGi 14-12-2009 Users’Forum 2009
  • 18. General Technical Issues • Extended Lifecycle Support • Central Auditing Authority • Additional Information • State Transfer • Automated Test Generation • (Runtime)-Testability • Performance Overhead Technical University Delft – OSGi 14-12-2009 Users’Forum 2009
  • 19. Summary • Online built-in testing framework that provides test isolation • A case study demonstrating the capabilities of this online testing framework to detect faults during system reconfiguration that could not be addressed in the test environment • OSGi platform should support consistency management Technical University Delft – OSGi 14-12-2009 Users’Forum 2009
  • 20. Thank you! Michaela Greiler m.s.greiler@tudelft.nl Technical University Delft Software Engineering Research Group Technical University Delft – OSGi 14-12-2009 Users’Forum 2009