Efficient Testing of Variant-Rich Software Systems

Similar documents
Autotask Integration Guide

POSITIONING SUBWOOFERS

INDIAN INSTITUTE OF TECHNOLOGY KHARAGPUR NPTEL ONLINE CERTIFICATION COURSE. On Industrial Automation and Control

Multi-functional safety relay modules PROTECT SRB-E

Martin Lehmköster

Using the BHM binaural head microphone

The future role of broadcast in a world of wireless broadband ITG Workshop Sound, Vision & Games

Co-location of PMP 450 and PMP 100 systems in the 900 MHz band and migration recommendations

ECE 4220 Real Time Embedded Systems Final Project Spectrum Analyzer

APPLICATION NOTE. Fiber Alignment Now Achievable with Commercial Software

National Park Service Photo Utah 400 Series 1 Digital Routing Switcher

Logic Analysis Basics

Logic Analysis Basics

HCS-4100/20 Series Application Software

Understanding Compression Technologies for HD and Megapixel Surveillance

Atlas SCR. User Guide. Thyristor and Triac Analyser Model SCR100

K.T. Tim Cheng 07_dft, v Testability

HEAD. HEAD VISOR (Code 7500ff) Overview. Features. System for online localization of sound sources in real time

Ford AMS Test Bench Operating Instructions

Contactor Monitoring Relay CMD Cost-Effective Solution for Safe Machines

10GBASE-KR Start-Up Protocol

Data Converters and DSPs Getting Closer to Sensors

VEHICLE TELEMETRY DATA IN THE VERTICAL BLANKING INTERVAL

Online data sheet SGS4-S108P3PS2W03 SLG SWITCHING AUTOMATION LIGHT GRIDS

DESIGN AND SIMULATION OF A CIRCUIT TO PREDICT AND COMPENSATE PERFORMANCE VARIABILITY IN SUBMICRON CIRCUIT

Optical Technologies Micro Motion Absolute, Technology Overview & Programming

From Synchronous to Asynchronous Design

Motion detector theluxa P300 KNX Motion detector theluxa P300 KNX

860 DSP Digital Field Analyzer

Understanding and Managing Conversion Delays in Live Production Systems

Ford AMS Test Bench Operating Instructions

UTTR BEST TELEMETRY SOURCE SELECTOR

Pivoting Object Tracking System

VOB - data over Video Overlay Box

Sample BD Tech Concepts LLC

Avoiding False Pass or False Fail

IQDEC01. Composite Decoder, Synchronizer, Audio Embedder with Noise Reduction - 12 bit. Does this module suit your application?

Failure Modes, Effects and Diagnostic Analysis

User Manual K.M.E. Dante Module

PRACTICAL APPLICATION OF THE PHASED-ARRAY TECHNOLOGY WITH PAINT-BRUSH EVALUATION FOR SEAMLESS-TUBE TESTING

ITU-T Y Specific requirements and capabilities of the Internet of things for big data

Training Note TR-06RD. Schedules. Schedule types

SAFETY SAFETY LIGHT CURTAINS SG EXTENDED FINGER & HAND PROTECTION SG2-M & SG4-E SERIES HIGHLIGHTS APPLICATIONS

KNX Technical Reference Manual Busch-EnergyControl

TEST PATTERNS COMPRESSION TECHNIQUES BASED ON SAT SOLVING FOR SCAN-BASED DIGITAL CIRCUITS

T1 Deframer. LogiCORE Facts. Features. Applications. General Description. Core Specifics

LUT Optimization for Distributed Arithmetic-Based Block Least Mean Square Adaptive Filter

Gamma instabus. Technical product information

Hello and welcome to this presentation of the STM32L4 Analog-to-Digital Converter block. It will cover the main features of this block, which is used

JJMIE Jordan Journal of Mechanical and Industrial Engineering

Instruction manual. DALI Gateway art Installation manual

Prisma Optical Networks Ancillary Modules

Achieving Faster Time to Tapeout with In-Design, Signoff-Quality Metal Fill

Rotary Knife Controller

(Skip to step 11 if you are already familiar with connecting to the Tribot)

Digital Logic Design ENEE x. Lecture 24

Owner's Manual. TOUCH SCREEN CONTROLLER for Air Conditioning Control System. Model BMS-CT5120UL. English

SPG700 Multiformat Reference Sync Generator Release Notes

ni.com Digital Signal Processing for Every Application

Reducing Waste in a Converting Operation Timothy W. Rye P /F

IT T35 Digital system desigm y - ii /s - iii

Introduction This application note describes the XTREME-1000E 8VSB Digital Exciter and its applications.

DEDICATED TO EMBEDDED SOLUTIONS

SigPlay User s Guide

Home Monitoring System Using RP Device

UNIT-3 Part A. 2. What is radio sonde? [ N/D-16]

OPERATIONS SEQUENCING IN A CABLE ASSEMBLY SHOP

Testing in Darkness How to discover test requirements and stay out of the critical path in a crisis. by Hans Schaefer

FullMAX Air Inetrface Parameters for Upper 700 MHz A Block v1.0

UPDATE ON IOT LANDSCAPING

Ydea-C5 System. Automatic Brightness Adjustment_DMX User Manual

Detecting Bosch IVA Events with Milestone XProtect

RADview-PC/TDM. Network Management System for TDM Applications Megaplex RAD Data Communications Publication No.

Design for Testability Part II

LED7706/7/8. LED drivers for backlighting and lighting applications.

VivoSense. User Manual Galvanic Skin Response (GSR) Analysis Module. VivoSense, Inc. Newport Beach, CA, USA Tel. (858) , Fax.

Version 1.10 CRANE SONG LTD East 5th Street Superior, WI USA tel: fax:

How-to Setup Motion Detection on a Dahua DVR/NVR

DT9857E. Key Features: Dynamic Signal Analyzer for Sound and Vibration Analysis Expandable to 64 Channels

give sequence to events have memory (short-term) use feedback from output to input to store information


ITU-T Y.4552/Y.2078 (02/2016) Application support models of the Internet of things

R&S CA210 Signal Analysis Software Offline analysis of recorded signals and wideband signal scenarios

Using minterms, m-notation / decimal notation Sum = Cout = Using maxterms, M-notation Sum = Cout =

FOREST SHUTTLE S / L / M RECEIVER

for Television ---- Formatting AES/EBU Audio and Auxiliary Data into Digital Video Ancillary Data Space

Fast Quadrature Decode TPU Function (FQD)

Guide to designing a device incorporating MEMSbased pico projection

ALGORITHMS IN HW EECS150 ALGORITHMS IN HW. COMBINATIONAL vs. SEQUENTIAL. Sequential Circuits ALGORITHMS IN HW

Co-simulation Techniques for Mixed Signal Circuits

SIL-2 8-Ch Analog Input Series Thermocouple, High Level, Low Level

Hotel Ballroom. Figure 1 above, graphically details this scenario. 8:1 1 of 5. We ve got it under control

PROF. TAJANA SIMUNIC ROSING. Midterm. Problem Max. Points Points Total 150 INSTRUCTIONS:

CEDAR Series. To learn more about Ogden CEDAR series signal processing platform and modular products, please visit

Broadcast Television Measurements

Microbolometer based infrared cameras PYROVIEW with Fast Ethernet interface

Long and Fast Up/Down Counters Pushpinder Kaur CHOUHAN 6 th Jan, 2003

AN4316 Application note

Reconstruction of Ca 2+ dynamics from low frame rate Ca 2+ imaging data CS229 final project. Submitted by: Limor Bursztyn

Analog Dual-Standard Waveform Monitor

Transcription:

Platzhalter für Bild, Bild auf Titelfolie hinter das Logo einsetzen Efficient Testing of Variant-Rich Software Systems Prof. Dr.-Ing. Ina Schaefer Institute of Software Engineering and Automotive Informatics Technische Universität Braunschweig ASQF Testing - Day Niedersachsen, Gifhorn, 11.11.2014

- Fields of Research Automo:ve)) So<ware)Engineering) Efficient Testing of Variant-Rich Software Variability)&)Evolu:on) Modeling) Programming) Quality)Assurance) Re?Engineering) 11 November 2014 Ina Schaefer Efficient Testing of Variant-Rich Software 2

Testing Variant-rich Software Systems Observations: Complex systems with many interacting functions and features Many system variants and versions Consequences: Increasing testing effort Combinatorial explosion during integration and system testing Complete re-test in case of changes mostly infeasible 11 November 2014 Ina Schaefer Efficient Testing of Variant-Rich Software 3

Agenda 1. Describing and Managing Variant-rich Systems 2. Variant Selection Techniques 3. Test effort reduction by incremental testing 11 November 2014 Ina Schaefer Efficient Testing of Variant-Rich Software 4

Describing and Managing Variant-rich Systems 11 November 2014 Ina Schaefer Efficient Testing of Variant-Rich Software 5

Describing and Mangaging Variant-rich Systems Variant-rich systems can be described by features which are either mandatory or optional. There can be further constraints between features Feature A excludes feature B Feature A requires feature B Feature A OR feature B has to be selected How to describe and manage these features and there connections? 11 November 2014 Ina Schaefer Efficient Testing of Variant-Rich Software 6

Feature-Models Kang et al. [Kang90] introduced Feature-Models as possibility to represent SPLs FMs are tree-structures, which represent abstract features and their properties List Queue Stack Functions Priority Peek Priority Sync Undo size Log logger Clear require 11 November 2014 Ina Schaefer Efficient Testing of Variant-Rich Software 7

Feature Interactions A feature is a customer-visible product characteristic. Each feature in isolation satisfies its specification. If features are combined, the single specifications are violated. There are unwanted side effects.! Feature Interaction! 11 November 2014 Ina Schaefer Efficient Testing of Variant-Rich Software 8

Example: Combine Fire and Water Alarms If there is fire, start sprinkling system. If there is water, cut the main water line. 11 November 2014 Ina Schaefer Efficient Testing of Variant-Rich Software 9

Reasons for Feature Interactions Intended Feature Interactions: Communication via shared variables: one feature writes, another feature reads values. Unintended Feature Interactions: Non-synchronized write access to shared resources, such as actuators, memory, shared variables, status flags In general, uncritical: Shared read access to resources, e.g., sensors 11 November 2014 Ina Schaefer Efficient Testing of Variant-Rich Software 10

Efficient Testing of Variant-Rich Software Systems We use a combination of two approaches: Combinatorial Testing: Selection of representative subsets from a large set of possible variants Incremental Regression-based Testing: Reuse test cases and test results in order to efficiently test the selected variants 11 November 2014 Ina Schaefer Efficient Testing of Variant-Rich Software 11

Variant Selection Techniques 11 November 2014 Ina Schaefer Efficient Testing of Variant-Rich Software 12

Sample-based SPL Testing Problem: Number of test cases growths exponentially Solution: Combinatorial Interaction Testing (CIT) 1. Create Feature Model 2. Generate a subset of variants based on the FM, covering relevant combinations of features 3. Apply single system testing to the selected variants Efficiency of t-wise Covering Arrays (CA) " 1-wise CA: 50% of all errors " 2-wise CA: 75% of all errors Trade-Off " 3-wise CA: 95% of all errors 11 November 2014 Ina Schaefer Efficient Testing of Variant-Rich Software 13

Set Covering Problem and Covering Arrays S = {a,b,c,d,e} SPL features M = {{a,b,c}, {b,d}, {c,d}, {d,e}} Valid product configurations Minimal Covering Array L = M 1 + M 4 Feature combinations to test Precondition: All valid product configurations already known SAT-problem, which is NP-complete Fortunately, we deal with realistic FMs 11 November 2014 Ina Schaefer Efficient Testing of Variant-Rich Software 14

Heuristic Solution by Chvátal (1979) Idea of the algorithm: 1. = Ø 2. = Ø,, 1, 2,,., # 3. 4. 2 Worst Case: contains only subsets with different elements Best solution not guaranteed Adaptation for pairwise CA generation is easy! 11 November 2014 Ina Schaefer Efficient Testing of Variant-Rich Software 15

ICPL by Johansen et al. (2012) Adaptation is still slow in computation! (Selected) Improvements " Finding core and dead features quickly " Early identification of invalid t-sets " Parallelization " and several more 11 November 2014 Ina Schaefer Efficient Testing of Variant-Rich Software 16

ICPL - Evaluation ICPL can handle large-scale SPLs Compute 2-wise Covering Array with normal hardware Easily over 90% variant reduction Even with ICPL: Calculation time can be several hours 11 November 2014 Ina Schaefer Efficient Testing of Variant-Rich Software 17

Regression-based Delta-oriented Testing 11 November 2014 Ina Schaefer Efficient Testing of Variant-Rich Software 18

Delta-oriented Testing Approaches Goal: Reduce testing effort by only testing differences between product variants Define Deltas on test-models in model-based testing State Machines Activity Diagrams Architectures Define Deltas on requirements in natural language 11 November 2014 Ina Schaefer Efficient Testing of Variant-Rich Software 19

Delta-oriented Test Modeling Feature- Konfiguration Kernprodukt T1: e1/e2 S1 T2: e3/ T3: e2/ S2 T4: e5/e6 S3 T5: e4/e6 Produkt T7: e1/ S4 T6: e3/ S1 + T7: e1/ Delta 1 Add + + S4 + T6: e3/ S2 + Kern + Delta 1 S1 T1: e1/e2 T2: e3/ T3: e2/ S2 Feature-Modell Application Condition S1 Delta 2 Rem - T1: e1/e2 S2 + Kern + Delta 1 + Delta 2 T4: e5/e6 S3 T5: e4/e6 T7: e1/ S4 T6: e3/ S1 S2 T2: e3/ T3: e2/ T4: e5/e6 S3 T5: e4/e6 T7: e1/ S4 T6: e3/ S3 Delta 3 Mod * S2 T5: e5/e2;e3;e4 + Kern + Delta 1 + Delta 2 + Delta 3 S1 T2: e3/ T3: e2/ S2 T4: e5/e6 S3 T5: e5/e2;e3;e4 11 November 2014 Ina Schaefer Efficient Testing of Variant-Rich Software 20

Classification of Test Cases by Delta-Analysis Invalid V2 Variant 1 Variant 2 [ ] Variant n Test cases V1 Retest V2 Test cases V2 Test cases Vn 11 November 2014 Ina Schaefer Efficient Testing of Variant-Rich Software 21

Delta Testing - Procedure 0. Fully test first product variant 1. Generate test cases for subsequent variants Still valid and reuseable test cases? Invalid test cases? New test cases? 2. Selection of test cases by delta analysis: Always test new test cases Select subset of reuseable test cases for re-test 3. Optionally minimize resulting test suite by redundancy elimination 11 November 2014 Ina Schaefer Efficient Testing of Variant-Rich Software 22

Delta-Testing Strategy Variant 1 Variant 2 Core Product Variant 3 Variant 4 11 November 2014 Ina Schaefer Efficient Testing of Variant-Rich Software 23

Case Study Body Comfort System 28 Features, 11616 Product Variants, 1 Core Product, 40 Deltas 16 Products for Pair-Wise Feature Coverage Body Comfort System Human Machine Interface Door System Security Power Window Exterior Mirror Alarm System Central Locking System require Remote Control Key Status LED Manual Power Window Automatic Power Window Finger Protection Electric Heatable Interior Monitoring Automatic Locking Control Alarm System Safety Function Control Automatic Power Window require require exclude LED Alarm System LED Finger Protection LED Central Locking System LED Power Window LED Exterior Mirror LED Heatable Legende require Mandatory Optional Alternative Or exclude require require 11 November 2014 Ina Schaefer Efficient Testing of Variant-Rich Software 24

Case Study BCM Delta-Testing Results 80 70 60 50 40 Redundant Selektiert MoSo-PoLiTe 30 20 10 0 P0 P1 P2 P3 P4 P5 P6 P7 P8 P9 P10 P11 P12 P13 P14 P15 P16 P17 11 November 2014 Ina Schaefer Efficient Testing of Variant-Rich Software 25

Requirements-Based Delta-oriented Testing Requirements BCS_R1 If an object is detected in the window (window pressure P > threshold), activate the finger protection to prevent the power window from moving any further. BCS_TC1 Precondition: Action: Expected Result: Test cases Window is open and an object is within the window Press move up button Window moves up, until it reaches the objects and stops BCS_R2 If the central locking system is activated and the power window is not in the top position, move the power window up, until it reaches the top position. BCS_TC2 Precondition: Action: Expected Result: CLS is activated & power window is not in top position Press move up button Power window moves to the top position and stops BCS_R3 If the move down button for the power window is pressed and there is no Central locking system, move the power Window down. Otherwise, only move down if the central locking system is deactivated BCS_R3V1 without CLS BCS_R3V2 with CLS BCS_TC3 Precondition: Action: Expected Result: BCS_TC4 Precondition: Action: Expected Result: No CLS installed Press move down button Power window moves to the bottom position and stops CLS installed and deactivated Press move down button Power window moves to the bottom position and stops BCS_R4 After the move up button has been tapped shortly (< 1 sec), the power window moves automatically up until it reaches the top position and then the movement stops. BCS_TC5 Precondition: Action: Expected Result:...... Power window is at bottom position Press move up button for less then 1 second Power window moves to the top position and stops BCS_Rn BCS_TCn 11 November 2014 Ina Schaefer Efficient Testing of Variant-Rich Software 26

Requirements-based Delta-oriented Testing - Classification Pilot Study in Automotive Domain (Relative Figures) 70 65 60 50 50 40 30 32 20 19 18 10 - New Invalid Retest Reuse 3 11 November 2014 Ina Schaefer Efficient Testing of Variant-Rich Software 27

Possible Strategies for Re-Test Selection Manually by test engineer (Semi-)Automatical classification of test cases into variants Formulation of requirements in delta-sets with linking of test cases to requirements Model-based impact analysis of changes by delta analysis 11 November 2014 Ina Schaefer Efficient Testing of Variant-Rich Software 28

Conclusion Variant-rich systems lead to an exponential increasing number of products and test cases Subset selection heuristics reduce number of product variants to a representative subset which is tested. Incremental delta-testing reduces test effort between product variants by test case and test result reuse. 11 November 2014 Ina Schaefer Efficient Testing of Variant-Rich Software 29