Model-based Test Case Generation for (Dynamic) Software Product Lines

Size: px
Start display at page:

Download "Model-based Test Case Generation for (Dynamic) Software Product Lines"

Transcription

1 Model-based Test Case Generation for (Dynamic) Software Product Lines The 6th Meeting on Feature-oriented Software Development 2014, May Schloss Dagstuhl, Germany DFG Priority Programme 1593 Design for Future Managed Software Evolution Johannes Bürdek Tel ES Real-Time Systems Lab Prof. Dr. rer. nat. Andy Schürr Dept. of Electrical Engineering and Information Technology Dept. of Computer Science (adjunct Professor) author(s) of these slides 2008 including research results of the research network ES and TU Darmstadt otherwise as specified at the respective slide

2 Test Suites Test Models Products Testing Software Product Lines P1 = {f1} P2 = {f2} P3 = {f1,f3} S5 2 5/8/2014 Model-based Test Case Generation for (Dynamic) Software Product Lines [Cichos et al. 2011] ES Real-Time Systems Lab

3 Test Suites Test Models Products Testing Software Product Lines P1 = {f1} P2 = {f2} P3 = {f1,f3} S5 Generate test cases for every product individually is inefficient! 3 5/8/2014 Model-based Test Case Generation for (Dynamic) Software Product Lines [Cichos et al. 2011] ES Real-Time Systems Lab

4 Test Suites 150% Test Model Test Models Products Testing Software Product Lines P1 = {f1} P2 = {f2} P3 = {f1,f3} S5 f2 f1 & f3 S5 f1 4 5/8/2014 Model-based Test Case Generation for (Dynamic) Software Product Lines [Cichos et al. 2011] ES Real-Time Systems Lab

5 Test Suites 150% Test Model Test Models Products Testing Software Product Lines P1 = {f1} P2 = {f2} P3 = {f1,f3} S5 f1 & f3 S5 f2 f1 ISO 9001, ISO 26262, ISO require certain model coverage for test case generation 5 5/8/2014 Model-based Test Case Generation for (Dynamic) Software Product Lines [Cichos et al. 2011] ES Real-Time Systems Lab

6 SPL Test Suite Generation Feature Model r 150% Test Model f1 f2 exclude f3 f1 & f3 S5 f2 f1 SPL Test Suite (State Coverage) Config. / TC S5 (r, f1) X (r, f2) X (r, f1, f3) X X [Cichos et al. 2011], [Cichos et al. 2012], [Lochau et al. 2014] 6 5/8/2014 Model-based Test Case Generation for (Dynamic) Software Product Lines ES Real-Time Systems Lab

7 Using Symbolic Model Checking for Test Case Generation f1 f2 S5 S6 1. : int x = y + 10; 3. : if (y < 15) { 5. : dosth1(); 7. : dosth2(); Generate C-Code from Model and enrich it with more C-Code 7 5/8/2014 Model-based Test Case Generation for (Dynamic) Software Product Lines ES Real-Time Systems Lab

8 Using Symbolic Model Checking for Test Case Generation f1 f2 S5 S6 f1 root f2 1. : int x = y + 10; 3. : if (y < 15) { 5. : dosth1(); 7. : dosth2(); Impl. Variability Model-Checker CPAchecker Achieve state coverage for test model 8 5/8/2014 Model-based Test Case Generation for (Dynamic) Software Product Lines ES Real-Time Systems Lab

9 Test Case Derivation from Counterexamples 1. : int x = y + 10; 3. : if (y < 15) { 5. : dosth1(); 7. : dosth2(); (r,f1) (r,f2) TC1 TC1 TC1 TC1 TC3 TC2 S5 TC3 TC2 S6 TC1 TC1 Assignment Assumption 9 5/8/2014 Model-based Test Case Generation for (Dynamic) Software Product Lines Path Condition Path Condition Path Condition [Beyer et al. 2004], [Rhein et al. 2011], [Apel et al. 2013] 7 Test Cases TC1 y=5, x=15 TC2 y=11, x=1 f1 f2 TC3 ES Real-Time y=11, x=1 Systems f1 Lab f2

10 Test Case Derivation from Counterexamples 1. : int x = y + 10; 3. : if (y < 15) { 5. : dosth1(); 7. : dosth2(); (r,f1) (r,f2) TC1 TC1 TC1 TC1 TC3 TC2 S5 TC3 TC2 S6 TC1 TC1 10 5/8/2014 Model-based Test Case Generation for (Dynamic) Software Product Lines assign(x = y + 10) assume(x 15) assume(x < 15) assume(f1) [Beyer et al. 2004], [Rhein et al. 2011], [Apel et al. 2013] 9 assume( f1) 7 assume(f2) Test Cases TC1 y=5, x=15 TC2 y=11, x=1 f1 f2 TC3 ES Real-Time y=11, x=1 Systems f1 Lab f2

11 Test Case Derivation from Counterexamples 1. : int x = y + 10; 3. : if (y < 15) { 5. : dosth1(); 7. : dosth2(); (r,f1) (r,f2) TC1 TC1 TC1 TC1 TC3 TC2 S5 TC3 TC2 S6 TC1 TC1 SMT Solver: y = 5 x = 15 f1 = f2 = 11 5/8/2014 Model-based Test Case Generation for (Dynamic) Software Product Lines true ((f1 f2) ( f1 f2)) assign(x = y + 10) assume(x 15) assume(x < 15) x = y + 10 x 15 ((f1...) assume(f1) [Beyer et al. 2004], [Rhein et al. 2011], [Apel et al. 2013] 9 assume( f1) 7 assume(f2) Test Cases TC1 y=5, x=15 TC2 y=11, x=1 f1 f2 TC3 ES Real-Time y=11, x=1 Systems f1 Lab f2

12 Test Case Derivation from Counterexamples 1. : int x = y + 10; 3. : if (y < 15) { 5. : dosth1(); 7. : dosth2(); (r,f1) (r,f2) TC1 TC1 TC1 TC1 TC3 TC2 S5 TC3 TC2 S6 TC1 TC1 SMT Solver: y = 5 x = 15 f1 = f2 = 12 5/8/2014 Model-based Test Case Generation for (Dynamic) Software Product Lines true ((f1 f2) ( f1 f2)) assign(x = y + 10) assume(x 15) assume(x < 15) x = y + 10 x 15 ((f1...) assume(f1) [Beyer et al. 2004], [Rhein et al. 2011], [Apel et al. 2013] 9 assume( f1) 7 assume(f2) Test Cases TC1 y=5, x=15 TC2 y=11, x=1 f1 f2 TC3 ES Real-Time y=11, x=1 Systems f1 Lab f2

13 Test Case Derivation from Counterexamples 1. : int x = y + 10; 3. : if (y < 15) { 5. : dosth1(); 7. : dosth2(); (r,f1) (r,f2) TC1 TC1 TC1 TC1 TC3 TC2 S5 TC3 TC2 S6 TC1 TC1 13 5/8/2014 Model-based Test Case Generation for (Dynamic) Software Product Lines true ((f1 f2) ( f1 f2)) assign(x = y + 10) assume(x 15) assume(x < 15) x = y + 10 x 15 ((f1...) assume(f1) [Beyer et al. 2004], [Rhein et al. 2011], [Apel et al. 2013] 9 (x = y + 10) (x < 15) ((f1...) assume( f1) 7 assume(f2) Test Cases TC1 y=5, x=15 TC2 y=11, x=1 f1 f2 TC3 ES Real-Time y=11, x=1 Systems f1 Lab f2

14 Test Case Derivation from Counterexamples 1. : int x = y + 10; 3. : if (y < 15) { 5. : dosth1(); 7. : dosth2(); (r,f1) (r,f2) TC1 TC1 TC1 TC1 TC3 TC2 S5 TC3 TC2 S6 TC1 TC1 14 5/8/2014 Model-based Test Case Generation for (Dynamic) Software Product Lines true ((f1 f2) ( f1 f2)) assign(x = y + 10) assume(x 15) assume(x < 15) x = y + 10 x 15 ((f1...) assume(f1) 4 SMT Solver: y = x = 11 f1 = false f2 = true 7 [Beyer et al. 2004], [Rhein et al. 2011], [Apel et al. 2013] 9 (x = y + 10) (x < 15) ((f1...) assume( f1) assume(f2) Test Cases TC1 y=5, x=15 TC2 y=11, x=1 f1 f2 TC3 ES Real-Time y=11, x=1 Systems f1 Lab f2

15 Test Case Derivation from Counterexamples 1. : int x = y + 10; 3. : if (y < 15) { 5. : dosth1(); 7. : dosth2(); (r,f1) (r,f2) TC1 TC1 TC1 TC1 TC3 TC2 S5 TC3 TC2 S6 TC1 TC1 15 5/8/2014 Model-based Test Case Generation for (Dynamic) Software Product Lines true ((f1 f2) ( f1 f2)) assign(x = y + 10) assume(x 15) assume(x < 15) x = y + 10 x 15 ((f1...) assume(f1) (f1 f2) [Beyer et al. 2004], [Rhein et al. 2011], [Apel et al. 2013] 9 (x = y + 10) (x < 15) ((f1...) assume( f1) 7 assume(f2) Test Cases TC1 y=5, x=15 TC2 y=11, x=1 f1 f2 TC3 ES Real-Time y=11, x=1 Systems f1 Lab f2

16 Test Case Derivation from Counterexamples 1. : int x = y + 10; 3. : if (y < 15) { 5. : dosth1(); 7. : dosth2(); (r,f1) (r,f2) TC1 TC1 TC1 TC1 TC3 TC2 S5 TC3 TC2 S6 TC1 TC1 16 5/8/2014 Model-based Test Case Generation for (Dynamic) Software Product Lines 1 2 SMT Solver: y = 1 3 x = 11 f1 = true f2 = false 11 true ((f1 f2) ( f1 f2)) assign(x = y + 10) assume(x 15) assume(x < 15) x = y + 10 x 15 ((f1...) assume(f1) (f1 f2) [Beyer et al. 2004], [Rhein et al. 2011], [Apel et al. 2013] 9 (x = y + 10) (x < 15) ((f1...) assume( f1) 7 assume(f2) Test Cases TC1 y=5, x=15 TC2 y=11, x=1 f1 f2 TC3 ES Real-Time y=11, x=1 Systems f1 Lab f2

17 Test Case Derivation from Counterexamples 1. : int x = y + 10; 3. : if (y < 15) { 5. : dosth1(); 7. : dosth2(); (r,f1) (r,f2) TC1 TC1 TC1 TC1 TC3 TC2 S5 TC3 TC2 S6 TC1 TC1 A BDD analysis checks 11 if a location ((f1...) may be reached by a path with another feature configuration. 17 5/8/2014 Model-based Test Case Generation for (Dynamic) Software Product Lines true ((f1 f2) ( f1 f2)) assign(x = y + 10) assume(x 15) assume(x < 15) x = y + 10 x 15 assume(f1) (f1 f2) [Beyer et al. 2004], [Rhein et al. 2011], [Apel et al. 2013] 9 (x = y + 10) (x < 15) ((f1...) assume( f1) S5 may assume(f2) also be covered in the 7 variant (r,f1) Test Cases TC1 y=5, x=15 TC2 y=11, x=1 f1 f2 TC3 ES Real-Time y=11, x=1 Systems f1 Lab f2

18 Test Case Derivation from Counterexamples 1. : int x = y + 10; 3. : if (y < 15) { 5. : dosth1(); 7. : dosth2(); (r,f1) (r,f2) TC1 TC1 TC1 TC1 TC3 TC2 S5 TC3 TC2 S6 TC1 TC1 (( f1 f2) (f1 f2)) 18 5/8/2014 Model-based Test Case Generation for (Dynamic) Software Product Lines true ((f1 f2) ( f1 f2)) assign(x = y + 10) assume(x 15) assume(x < 15) x = y + 10 x 15 ((f1...) assume(f1) (f1 f2) [Beyer et al. 2004], [Rhein et al. 2011], [Apel et al. 2013] 9 (x = y + 10) (x < 15) ((f1...) assume( f1) 7 assume(f2) Test Cases TC1 y=5, x=15 TC2 y=11, x=1 f1 f2 TC3 ES Real-Time y=11, x=1 Systems f1 Lab f2

19 Test Case Derivation from Counterexamples 1. : int x = y + 10; 3. : if (y < 15) { 5. : dosth1(); 7. : dosth2(); (r,f1) (r,f2) TC1 TC1 TC1 TC1 TC3 TC2 S5 TC3 TC2 S6 TC1 TC1 (( f1 f2) (f1 f2)) 19 5/8/2014 Model-based Test Case Generation for (Dynamic) Software Product Lines true ((f1 f2) ( f1 f2)) assign(x = y + 10) assume(x 15) assume(x < 15) x = y + 10 x 15 ((f1...) assume(f1) (f1 f2) [Beyer et al. 2004], [Rhein et al. 2011], [Apel et al. 2013] 9 (x = y + 10) (x < 15) ((f1...) assume( f1) 7 assume(f2) Test Cases TC1 y=5, x=15 TC2 y=11, x=1 f1 f2 TC3 ES Real-Time y=11, x=1 Systems f1 Lab f2

20 Testing Dynamic Software Product Lines - Testing SPLs: test that every derivable variant is correctly implemented - Testing DSPLs: test that all possible reconfigurations are correct Environment Program Reconfiguration 1. : int x = y + 10; 3. : if (y < 15) { 5. : dosth1(); 7. : dosth2(); C1 C3 C2 Non-deterministic behavior Non-deterministic influence on program variables Non-deterministic influence on feature variables 20 5/8/2014 Model-based Test Case Generation for (Dynamic) Software Product Lines ES Real-Time Systems Lab

21 Testing Dynamic Software Product Lines - Testing SPLs: test that every derivable variant is correctly implemented - Testing DSPLs: test that all possible reconfigurations are correct Environment Program Reconfiguration 1. : int x = y + 10; 3. : if (y < 15) { 5. : dosth1(); 7. : dosth2(); C1 C3 C2 Non-deterministic behavior - CPAchecker offers techniques to handle non-deterministic behavior 21 5/8/2014 Model-based Test Case Generation for (Dynamic) Software Product Lines ES Real-Time Systems Lab

22 Testing Dynamic Software Product Lines - Testing SPLs: test that every derivable variant is correctly implemented - Testing DSPLs: test that all possible reconfigurations are correct Environment Program 1. : int x = y + 10; 3. : if (y < 15) { 5. : dosth1(); 7. : dosth2(); Reconfiguration Non-deterministic behavior - CPAchecker offers techniques to handle non-deterministic behavior C1 C3 C2 1. How to test reconfigurations efficiently? 2. What is a suitable coverage criteria? 3. How to ensure liveness of the reconfiguration life cycle? 22 5/8/2014 Model-based Test Case Generation for (Dynamic) Software Product Lines ES Real-Time Systems Lab

23 List of Literature [Cichos et al. 2011] H. Cichos, S. Oster, M. Lochau, A. Schürr : Model-Based Coverage- Driven Test Suite Generation for Software Product Lines. MoDELS 2011: [Cichos et al. 2012] H. Cichos, M. Lochau, S. Oster, A. Schürr : Reduktion von Testsuiten für Software-Produktlinien. Software Engineering 2012: [Lochau et al. 2014] M. Lochau, J. Bürdek, S. Lity, M. Hagner, C. Legat, U. Goltz, A. Schürr : Applying Model-based Software Product Line Testing Approaches to the Automation Engineering Domain. AT Journal 2014 (submitted) [Holzer et al. 2011] A. Holzer, M. Tautschnig, C. Schallhart, H. Veith : An Introduction to Test Specification in FQL. In S. Barner, I. Harris, D. Kroening, and O. Raz, editors, Hardware and Software: Verification and Testing, volume 6504 of Lecture Notes in Computer Science, pages Springer Berlin Heidelberg, [Beyer et al. 2011] D. Beyer and M. E. Keremoglu : CPAchecker: A Tool for Configurable Software Verification. In Proc. CAV, pages , Springer, [Holzmann 1997] G. J. Holzmann : The Model Checker Spin, IEEE Trans. on Software Engineering, Vol. 23, No. 5, May 1997, pp /8/2014 Model-based Test Case Generation for (Dynamic) Software Product Lines ES Real-Time Systems Lab

24 List of Literature (2/2) [Beyer et al. 2004] D. Beyer, A. J. Chlipala, T. A. Henzinger, R. Jhala, and R. Majumdar. Generating Test from Counterexamples. In Proc. of the 26th ICSE, pages , [Rhein et al. 2011] A. von Rhein, S. Apel, F. Raimondi : Introducing Binary Decision Diagrams in the Explicit-State Verification of Java Code. Java Pathfinder Workshop (co-located with ASE'11), [Apel et al. 2013] S. Apel, A. von Rhein, P. Wendler, A. Größlinger, D. Beyer : Strategies for Product-Line Verification: Case Studies and Experiments. In Proceedings of the IEEE/ACM International Conference on Software Engineering (ICSE), pages IEEE Computer Society, /8/2014 Model-based Test Case Generation for (Dynamic) Software Product Lines ES Real-Time Systems Lab

Staged Configuration of Dynamic Software Product Lines with Complex Binding Time Constraints

Staged Configuration of Dynamic Software Product Lines with Complex Binding Time Constraints Staged Configuration of Dynamic Software Product Lines with Complex Binding Time The 8th International Workshop on Variability Modelling of Software-intensive Systems 2014, January 22-24 Nice, France Johannes

More information

InvGen: An Efficient Invariant Generator

InvGen: An Efficient Invariant Generator InvGen: An Efficient Invariant Generator Ashutosh Gupta and Andrey Rybalchenko Max Planck Institute for Software Systems (MPI-SWS) Abstract. In this paper we present InvGen, an automatic linear arithmetic

More information

Quality Assurance by Means of Feature Models

Quality Assurance by Means of Feature Models Faculty of Computer Science, Institute of Software- and Multimedia-Technology, Chair for Software Technology Quality Assurance by Means of Feature Models David Gollasch FOSD Meeting 2014, Dagstuhl, 07.05.2014

More information

An Aspect-Oriented Product Line Framework to Support the Development of Software Product Lines of Web Applications

An Aspect-Oriented Product Line Framework to Support the Development of Software Product Lines of Web Applications An Aspect-Oriented Product Line Framework to Support the Development of Software Product Lines of Web Applications Germán Harvey Alférez Salinas Department of Computer Information Systems, Mission College,

More information

Incremental Model-based Testing of Delta-oriented Software Product Lines

Incremental Model-based Testing of Delta-oriented Software Product Lines Incremental Model-based Testing of Delta-oriented Software Product Lines Ina Schaefer (joint work with Malte Lochau and Sascha Lity) IFIP WG 2.11 Meeting, Halmstad, 26 June 2012 Software Product Line Engineering

More information

Safe Generation in Feature-Oriented Software Development Sven Apel

Safe Generation in Feature-Oriented Software Development Sven Apel Safe Generation in Feature-Oriented Software Development Sven Apel Lehrstuhl für Programmierung Universität Passau Software Product Line Engineering OS FAME-DBMS BufferMgr Statistics Storage Domain Analysis

More information

Continual Verification of Non-Functional Properties in Cloud-Based Systems

Continual Verification of Non-Functional Properties in Cloud-Based Systems Continual Verification of Non-Functional Properties in Cloud-Based Systems Invited Paper Radu Calinescu, Kenneth Johnson, Yasmin Rafiq, Simos Gerasimou, Gabriel Costa Silva and Stanimir N. Pehlivanov Department

More information

Using Patterns and Composite Propositions to Automate the Generation of Complex LTL

Using Patterns and Composite Propositions to Automate the Generation of Complex LTL University of Texas at El Paso DigitalCommons@UTEP Departmental Technical Reports (CS) Department of Computer Science 8-1-2007 Using Patterns and Composite Propositions to Automate the Generation of Complex

More information

Model-based Quality Assurance of Automotive Software

Model-based Quality Assurance of Automotive Software Model-based Quality Assurance of Automotive Software Jan Jürjens 1, Daniel Reiss 2, David Trachtenherz 3 1 Open University (GB) and Microsoft Research (Cambridge) 2 Elektrobit (Germany) 3 TU Munich (Germany)

More information

Model Checking: An Introduction

Model Checking: An Introduction Announcements Model Checking: An Introduction Meeting 2 Office hours M 1:30pm-2:30pm W 5:30pm-6:30pm (after class) and by appointment ECOT 621 Moodle problems? Fundamentals of Programming Languages CSCI

More information

Model Checking based Software Verification

Model Checking based Software Verification Model Checking based Software Verification 18.5-2006 Keijo Heljanko [email protected] Department of Computer Science and Engineering Helsinki University of Technology http://www.tcs.tkk.fi/~kepa/ 1/24

More information

Test Modeling of Dynamic Variable Systems using Feature Petri Nets

Test Modeling of Dynamic Variable Systems using Feature Petri Nets Test Modeling of Dynamic Variable Systems using Feature Petri Nets Georg Püschel, Christoph Seidl, Mathias Neufert, André Gorzel, and Uwe Aßmann University of Technology Dresden, Department of Computer

More information

Table-based Software Designs: Bounded Model Checking and Counterexample Tracking

Table-based Software Designs: Bounded Model Checking and Counterexample Tracking Table-based Software Designs: Bounded Model Checking and Counterexample Tracking Noriyuki Katahira 1, Weiqiang Kong 1, Wanpeng Qian 1, Masahiko Watanabe 2, Tetsuro Katayama 3, Akira Fukuda 4 1 Fukuoka

More information

Towards a Framework for Generating Tests to Satisfy Complex Code Coverage in Java Pathfinder

Towards a Framework for Generating Tests to Satisfy Complex Code Coverage in Java Pathfinder Towards a Framework for Generating Tests to Satisfy Complex Code Coverage in Java Pathfinder Matt Department of Computer Science and Engineering University of Minnesota [email protected] Abstract We present

More information

Software safety - DEF-STAN 00-55

Software safety - DEF-STAN 00-55 Software safety - DEF-STAN 00-55 Where safety is dependent on the safety related software (SRS) fully meeting its requirements, demonstrating safety is equivalent to demonstrating correctness with respect

More information

Formal Verification by Model Checking

Formal Verification by Model Checking Formal Verification by Model Checking Natasha Sharygina Carnegie Mellon University Guest Lectures at the Analysis of Software Artifacts Class, Spring 2005 1 Outline Lecture 1: Overview of Model Checking

More information

Trace Server: A Tool for Storing, Querying and Analyzing Execution Traces

Trace Server: A Tool for Storing, Querying and Analyzing Execution Traces Trace Server: A Tool for Storing, Querying and Analyzing Execution Traces Igor Andjelkovic University of Belgrade Belgrade, Serbia [email protected] Cyrille Artho RCIS/AIST, Tsukuba, Japan [email protected]

More information

Test Coverage Criteria for Autonomous Mobile Systems based on Coloured Petri Nets

Test Coverage Criteria for Autonomous Mobile Systems based on Coloured Petri Nets 9th Symposium on Formal Methods for Automation and Safety in Railway and Automotive Systems Institut für Verkehrssicherheit und Automatisierungstechnik, TU Braunschweig, 2012 FORMS/FORMAT 2012 (http://www.forms-format.de)

More information

Development of Tool Extensions with MOFLON

Development of Tool Extensions with MOFLON Development of Tool Extensions with MOFLON Ingo Weisemöller, Felix Klar, and Andy Schürr Fachgebiet Echtzeitsysteme Technische Universität Darmstadt D-64283 Darmstadt, Germany {weisemoeller klar schuerr}@es.tu-darmstadt.de

More information

Colligens: A Tool to Support the Development of Preprocessor-based Software Product Lines in C

Colligens: A Tool to Support the Development of Preprocessor-based Software Product Lines in C Colligens: A Tool to Support the Development of Preprocessor-based Software Product Lines in C Flávio Medeiros 1, Thiago Lima 2, Francisco Dalton 2, Márcio Ribeiro 2, Rohit Gheyi 1, Baldoino Fonseca 2

More information

Graph-Grammar Based Completion and Transformation of SDL/UML-Diagrams

Graph-Grammar Based Completion and Transformation of SDL/UML-Diagrams Graph-Grammar Based Completion and Transformation of SDL/UML-Diagrams Position Paper Ulrich A. Nickel, Robert Wagner University of Paderborn Warburger Straße 100 D-33098 Paderborn Germany [duke, wag25]@uni-paderborn.de

More information

A Model-Driven Approach for Developing Self-Adaptive Pervasive Systems

A Model-Driven Approach for Developing Self-Adaptive Pervasive Systems A Model-Driven Approach for Developing Self-Adaptive Pervasive Systems Carlos Cetina, Pau Giner, Joan Fons and Vicente Pelechano Research Center on Software Production Methods Universidad Politécnica de

More information

Generating Test Cases With High Branch Coverage for Web Applications

Generating Test Cases With High Branch Coverage for Web Applications Generating Test Cases With High Branch Coverage for Web Applications Andrey Zakonov and Anatoly Shalyto National Research University of Information Technologies, Mechanics and Optics, Saint-Petersburg,

More information

jeti: A Tool for Remote Tool Integration

jeti: A Tool for Remote Tool Integration jeti: A Tool for Remote Tool Integration Tiziana Margaria 1, Ralf Nagel 2, and Bernhard Steffen 2 1 Service Engineering for Distributed Systems, Institute for Informatics, University of Göttingen, Germany

More information

Optimised Realistic Test Input Generation

Optimised Realistic Test Input Generation Optimised Realistic Test Input Generation Mustafa Bozkurt and Mark Harman {m.bozkurt,m.harman}@cs.ucl.ac.uk CREST Centre, Department of Computer Science, University College London. Malet Place, London

More information

Hybrid Concolic Testing

Hybrid Concolic Testing Hybrid Concolic Testing Rupak Majumdar CS Department, UC Los Angeles, USA [email protected] Koushik Sen EECS Department, UC Berkeley, USA [email protected] Abstract We present hybrid concolic testing,

More information

PLEDGE: A Product Line Editor and Test Generation Tool

PLEDGE: A Product Line Editor and Test Generation Tool PLEDGE: A Product Line Editor and Test Generation Tool Christopher Henard [email protected] Jacques Klein [email protected] Mike Papadakis [email protected] Yves Le Traon [email protected]

More information

Regression Testing Based on Comparing Fault Detection by multi criteria before prioritization and after prioritization

Regression Testing Based on Comparing Fault Detection by multi criteria before prioritization and after prioritization Regression Testing Based on Comparing Fault Detection by multi criteria before prioritization and after prioritization KanwalpreetKaur #, Satwinder Singh * #Research Scholar, Dept of Computer Science and

More information

Generative Software Product Line Development using Variability-Aware Design Patterns

Generative Software Product Line Development using Variability-Aware Design Patterns Platzhalter für Bild, Bild auf Titelfolie hinter das Logo einsetzen Generative Software Product Line Development using Variability-Aware Design Patterns Christoph Seidl, Sven Schuster, Ina Schaefer May

More information

A Comprehensive Safety Engineering Approach for Software Intensive Systems based on STPA

A Comprehensive Safety Engineering Approach for Software Intensive Systems based on STPA www.uni-stuttgart.de A Comprehensive Safety Engineering Approach for Software Intensive Systems based on STPA STPA-based Approach STPA Safety Analysis Asim Abdulkhaleq, Ph.D Candidate Institute of Software

More information

Exercise 12 " Project Management "

Exercise 12  Project Management Universität Stuttgart Institute of Industrial Automation and Software Engineering Prof. Dr.-Ing. M. Weyrich Exercise 12 " Project Management " Question 12.1 Cost Estimation with COCOMO One of the methods

More information

A Testing Tool for Web Applications Using a Domain-Specific Modelling Language and the NuSMV Model Checker

A Testing Tool for Web Applications Using a Domain-Specific Modelling Language and the NuSMV Model Checker A Testing Tool for Web Applications Using a Domain-Specific Modelling Language and the NuSMV Model Checker Arne-Michael Törsel Fachhochschule Stralsund Zur Schwedenschanze 15 18435, Stralsund, Germany

More information

Checking Memory Safety with Blast

Checking Memory Safety with Blast Checking Memory Safety with Blast Dirk Beyer 1, Thomas A. Henzinger 1,2, Ranjit Jhala 3, and Rupak Majumdar 4 1 EPFL, Switzerland 2 University of California, Berkeley 3 University of California, San Diego

More information

LOCAL SURFACE PATCH BASED TIME ATTENDANCE SYSTEM USING FACE. [email protected]

LOCAL SURFACE PATCH BASED TIME ATTENDANCE SYSTEM USING FACE. indhubatchvsa@gmail.com LOCAL SURFACE PATCH BASED TIME ATTENDANCE SYSTEM USING FACE 1 S.Manikandan, 2 S.Abirami, 2 R.Indumathi, 2 R.Nandhini, 2 T.Nanthini 1 Assistant Professor, VSA group of institution, Salem. 2 BE(ECE), VSA

More information

Formal Verification Problems in a Bigdata World: Towards a Mighty Synergy

Formal Verification Problems in a Bigdata World: Towards a Mighty Synergy Dept. of Computer Science Formal Verification Problems in a Bigdata World: Towards a Mighty Synergy Matteo Camilli [email protected] http://camilli.di.unimi.it ICSE 2014 Hyderabad, India June 3,

More information

Software Verification: Infinite-State Model Checking and Static Program

Software Verification: Infinite-State Model Checking and Static Program Software Verification: Infinite-State Model Checking and Static Program Analysis Dagstuhl Seminar 06081 February 19 24, 2006 Parosh Abdulla 1, Ahmed Bouajjani 2, and Markus Müller-Olm 3 1 Uppsala Universitet,

More information

An Approach to Detect the Origin and Distribution of Software Defects in an Evolving Cyber-Physical System

An Approach to Detect the Origin and Distribution of Software Defects in an Evolving Cyber-Physical System An Approach to Detect the Origin and Distribution of Software Defects in an Evolving Cyber-Physical System Christian Manz, Michael Schulze 2, and Manfred Reichert Group Research & Advanced Engineering

More information

Textual Modeling Languages

Textual Modeling Languages Textual Modeling Languages Slides 4-31 and 38-40 of this lecture are reused from the Model Engineering course at TU Vienna with the kind permission of Prof. Gerti Kappel (head of the Business Informatics

More information

Requirements Traceability. Mirka Palo

Requirements Traceability. Mirka Palo Requirements Traceability Mirka Palo Seminar Report Department of Computer Science University of Helsinki 30 th October 2003 Table of Contents 1 INTRODUCTION... 1 2 DEFINITION... 1 3 REASONS FOR REQUIREMENTS

More information

Traceability Method for Software Engineering Documentation

Traceability Method for Software Engineering Documentation www.ijcsi.org 216 Traceability Method for Software Engineering Documentation Nur Adila Azram 1 and Rodziah Atan 2 1 Department of Information System, Universiti Putra Malaysia, Company Serdang, Selangor,

More information

Keywords: - Software Product Lines (SPLs), Product Line Engineering (PLE), Core Assets, Software Product Line Development.

Keywords: - Software Product Lines (SPLs), Product Line Engineering (PLE), Core Assets, Software Product Line Development. Volume 4, Issue 1, January 2014 ISSN: 2277 128X International Journal of Advanced Research in Computer Science and Software Engineering Research Paper Available online at: www.ijarcsse.com Systematic Review

More information

A Quality Requirements Safety Model for Embedded and Real Time Software Product Quality

A Quality Requirements Safety Model for Embedded and Real Time Software Product Quality A Quality Requirements Safety Model for Embedded and Real Time Product Quality KHALID T. AL-SARAYREH Department of Engineering Hashemite University Zarqa 13115, Jordan [email protected] Abstract safety

More information

ONLINE EXERCISE SYSTEM A Web-Based Tool for Administration and Automatic Correction of Exercises

ONLINE EXERCISE SYSTEM A Web-Based Tool for Administration and Automatic Correction of Exercises ONLINE EXERCISE SYSTEM A Web-Based Tool for Administration and Automatic Correction of Exercises Daniel Baudisch, Manuel Gesell and Klaus Schneider Embedded Systems Group, University of Kaiserslautern,

More information

An Overview of Challenges of Component Based Software Engineering

An Overview of Challenges of Component Based Software Engineering An Overview of Challenges of Component Based Software Engineering Shabeeh Ahmad Siddiqui Sr Lecturer, Al-Ahgaff University, Yemen Abstract Nowadays there is trend of using components in development of

More information

Demonstration of an Automated Integrated Test Environment for Web-based Applications

Demonstration of an Automated Integrated Test Environment for Web-based Applications Demonstration of an Automated Integrated Test Environment for Web-based Applications Tiziana Margaria 1,2, Oliver Niese 2, and Bernhard Steffen 2 1 METAFrame Technologies GmbH, Dortmund, Germany [email protected]

More information

µfup: A Software Development Process for Embedded Systems

µfup: A Software Development Process for Embedded Systems µfup: A Software Development Process for Embedded Systems Leif Geiger, Jörg Siedhof, Albert Zündorf University of Kassel, Software Engineering Research Group, Department of Computer Science and Electrical

More information

25.1 Translational Frameworks (MDA with transformations)

25.1 Translational Frameworks (MDA with transformations) Literature TU Dresden Fakultät für Informatik Institut für Software- und Multimediatechnik 25. From Code Frameworks to Model-Driven Architecture (MDA) and Component-Based Software Development (CBSD) Prof.

More information

Concern Driven Software Development

Concern Driven Software Development Concern Driven Software Development Omar Alam School of Computer Science, McGill University, Montreal, Canada [email protected] Abstract Model Driven Engineering (MDE) has achieved success in many

More information

Development of Enterprise Architecture of PPDR Organisations W. Müller, F. Reinert

Development of Enterprise Architecture of PPDR Organisations W. Müller, F. Reinert Int'l Conf. Software Eng. Research and Practice SERP'15 225 Development of Enterprise Architecture of PPDR Organisations W. Müller, F. Reinert Fraunhofer Institute of Optronics, System Technologies and

More information

Research Overview in. Formal Method in Software Engineering Laboratory

Research Overview in. Formal Method in Software Engineering Laboratory Research Overview in Formal Method in Software Engineering Laboratory Head of Lab: Prof. Belawati H Widjaja, Ph.D Presented By: Dr. Ade Azurat Wednesday 21 January 2015 FMSE Workshop 2015 @ Fasilkom UI

More information

Generating Graphical User Interfaces for Software Product Lines: A Constraint-based Approach

Generating Graphical User Interfaces for Software Product Lines: A Constraint-based Approach Publiziert in: Alt et al. (Hrsg.), Tagungsband 15. Interuniversitäres Doktorandenseminar Wirtschaftsinformatik der Universitäten Chemnitz, Dresden, Freiberg, Halle-Wittenberg, Jena und Leipzig, Leipzig,

More information

Verification of Software Product Lines Using Contracts

Verification of Software Product Lines Using Contracts Verification of Software Product Lines Using Contracts Thomas Thüm School of Computer Science University of Magdeburg Magdeburg, Germany Abstract Software product lines are widely used to achieve high

More information

Tool Support for Software Variability Management and Product Derivation in Software Product Lines

Tool Support for Software Variability Management and Product Derivation in Software Product Lines Tool Support for Software Variability Management and Product Derivation in Software s Hassan Gomaa 1, Michael E. Shin 2 1 Dept. of Information and Software Engineering, George Mason University, Fairfax,

More information

Software Construction

Software Construction Software Construction Staff Faculty: Univ.-Prof. Dr. rer. nat. Horst Lichter [email protected] Secretary: Bärbel Kronewetter Phone: +49 241 80 21 330 Fax: +49 241 80 22 352 Research Assistants:

More information

A New Programmable RF System for System-on-Chip Applications

A New Programmable RF System for System-on-Chip Applications Vol. 6, o., April, 011 A ew Programmable RF System for System-on-Chip Applications Jee-Youl Ryu 1, Sung-Woo Kim 1, Jung-Hun Lee 1, Seung-Hun Park 1, and Deock-Ho Ha 1 1 Dept. of Information and Communications

More information

The Role of Controlled Experiments in Software Engineering Research

The Role of Controlled Experiments in Software Engineering Research The Role of Controlled Experiments in Software Engineering Research Victor R. Basili 1 The Experimental Discipline in Software Engineering Empirical studies play an important role in the evolution of the

More information

Automata-Based Verification of Temporal Properties on Running Programs Dimitra Giannakopoulou Klaus Havelund

Automata-Based Verification of Temporal Properties on Running Programs Dimitra Giannakopoulou Klaus Havelund Automata-Based Verification of Temporal Properties on Running Programs Dimitra Giannakopoulou Klaus Havelund RIACS Technical Report 01.21 August 2001 Presented at the 16 th IEEE International Conference

More information

FoREnSiC An Automatic Debugging Environment for C Programs

FoREnSiC An Automatic Debugging Environment for C Programs FoREnSiC An Automatic Debugging Environment for C Programs Roderick Bloem 1, Rolf Drechsler 2, Görschwin Fey 2, Alexander Finder 2, Georg Hofferek 1, Robert Könighofer 1, Jaan Raik 3, Urmas Repinski 3,

More information

Combining Security Risk Assessment and Security Testing based on Standards

Combining Security Risk Assessment and Security Testing based on Standards Jürgen Großmann (FhG Fokus) Fredrik Seehusen (SINTEF ICT) Combining Security Risk Assessment and Security Testing based on Standards 3 rd RISK Workshop at OMG TC in Berlin, 2015-06-16 3 rd RISK Workshop

More information

Automated assessment of C++ exercises with unit tests

Automated assessment of C++ exercises with unit tests Automated assessment of C++ exercises with unit tests Workshop Automatische Bewertung von Programmieraufgaben Tom-Michael Hesse, Axel Wagner, Barbara Paech Institute of Computer Science Chair of Software

More information

J-Sim: An Integrated Environment for Simulation and Model Checking of Network Protocols

J-Sim: An Integrated Environment for Simulation and Model Checking of Network Protocols J-Sim: An Integrated Environment for Simulation and Model Checking of Network Protocols Ahmed Sobeih, Mahesh Viswanathan, Darko Marinov and Jennifer C. Hou Department of Computer Science University of

More information

Reasoning about Edits to Feature Models

Reasoning about Edits to Feature Models Reasoning about Edits to Feature Models Thomas Thüm School of Computer Science University of Magdeburg [email protected] Don Batory Dept. of Computer Science University of Texas at Austin [email protected]

More information

Inter-domain Routing

Inter-domain Routing Inter-domain Routing The structure of Internet Qinsi Wang Computer Science Department, Carnegie Mellon September 15, 2010 Outline Lecture 4: Interdomain Routing; L. Gao, On inferring autonomous system

More information

ProGUM-Web: Tool Support for Model-Based Development of Web Applications

ProGUM-Web: Tool Support for Model-Based Development of Web Applications ProGUM-Web: Tool Support for Model-Based Development of Web Applications Marc Lohmann 1, Stefan Sauer 1, and Tim Schattkowsky 2 1 University of Paderborn, Computer Science, D 33095 Paderborn, Germany {mlohmann,sauer}@upb.de

More information

A Tool for Generating Partition Schedules of Multiprocessor Systems

A Tool for Generating Partition Schedules of Multiprocessor Systems A Tool for Generating Partition Schedules of Multiprocessor Systems Hans-Joachim Goltz and Norbert Pieth Fraunhofer FIRST, Berlin, Germany {hans-joachim.goltz,nobert.pieth}@first.fraunhofer.de Abstract.

More information

Software Verification/Validation Methods and Tools... or Practical Formal Methods

Software Verification/Validation Methods and Tools... or Practical Formal Methods Software Verification/Validation Methods and Tools... or Practical Formal Methods John Rushby Computer Science Laboratory SRI International Menlo Park, CA John Rushby, SR I Practical Formal Methods: 1

More information