Future software systems will be dynamic service oriented systems. Service-Oriented Architecture (SOA) provides an extensible and dynamic architecture to be used, for example, in smart environments. In such an environment, software has to adapt its behaviour dynamically. Thus, there is a need for Verifying and Validating (V & V) the adaptations at run-time. This paper contributes to that by introducing a novel visualization tool to be used with traditional V & V techniques to aid the software analysts in the verification process of dynamic software systems. When Quality of Service (QoS) of dynamic software systems varies due to the changing environment the Interactive Quality Visualization (IQVis) tool detects these changes and provides analysts an easier way of understanding the changed behaviour of the system.
{"title":"A Demo on Using Visualization to Aid Run-Time Verification of Dynamic Service Systems","authors":"Jarkko Kuusijärvi","doi":"10.1109/ICSTW.2010.40","DOIUrl":"https://doi.org/10.1109/ICSTW.2010.40","url":null,"abstract":"Future software systems will be dynamic service oriented systems. Service-Oriented Architecture (SOA) provides an extensible and dynamic architecture to be used, for example, in smart environments. In such an environment, software has to adapt its behaviour dynamically. Thus, there is a need for Verifying and Validating (V & V) the adaptations at run-time. This paper contributes to that by introducing a novel visualization tool to be used with traditional V & V techniques to aid the software analysts in the verification process of dynamic software systems. When Quality of Service (QoS) of dynamic software systems varies due to the changing environment the Interactive Quality Visualization (IQVis) tool detects these changes and provides analysts an easier way of understanding the changed behaviour of the system.","PeriodicalId":117410,"journal":{"name":"2010 Third International Conference on Software Testing, Verification, and Validation Workshops","volume":"53 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2010-04-06","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121724066","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Experimental work in software testing has generally focused on evaluating the effectiveness and efficiency on various source code programs. However, an important issue of testing efficiency on the model level has not been sufficiently addressed, and hitherto, no empirical studies exist. This paper presents an automated test data generation system for feasible transition paths (FTP) on Extended Finite State Machines (EFSM) models and investigates the statistical properties of testing efficiency using statistical tests for correlation and formalisation according to the test data generated by applying the system on four widely used EFSM models. An important and encouraging finding is a close positive correlation between test generation cost and the number of numerical equal operators in conditions (NNEOC) on a FTP. In addition, as the NNEOC increases, there is a raising correlation between the test generation cost and the length of path with events variables (LPEV) or the number of numerical event variables on a path (NNEV), and NNEV increases linearly with the LPEV. Furthermore, empirical study shows that there is very strong exponential relationship between test generation cost and NNEV or LPEV only when NNEOC is considerable. The results provide a significant guide to predict the testing efficiency for EFSM models.
{"title":"Empirical Study on the Efficiency of Search Based Test Generation for EFSM Models","authors":"Ruilian Zhao, M. Harman, Zheng Li","doi":"10.1109/ICSTW.2010.44","DOIUrl":"https://doi.org/10.1109/ICSTW.2010.44","url":null,"abstract":"Experimental work in software testing has generally focused on evaluating the effectiveness and efficiency on various source code programs. However, an important issue of testing efficiency on the model level has not been sufficiently addressed, and hitherto, no empirical studies exist. This paper presents an automated test data generation system for feasible transition paths (FTP) on Extended Finite State Machines (EFSM) models and investigates the statistical properties of testing efficiency using statistical tests for correlation and formalisation according to the test data generated by applying the system on four widely used EFSM models. An important and encouraging finding is a close positive correlation between test generation cost and the number of numerical equal operators in conditions (NNEOC) on a FTP. In addition, as the NNEOC increases, there is a raising correlation between the test generation cost and the length of path with events variables (LPEV) or the number of numerical event variables on a path (NNEV), and NNEV increases linearly with the LPEV. Furthermore, empirical study shows that there is very strong exponential relationship between test generation cost and NNEV or LPEV only when NNEOC is considerable. The results provide a significant guide to predict the testing efficiency for EFSM models.","PeriodicalId":117410,"journal":{"name":"2010 Third International Conference on Software Testing, Verification, and Validation Workshops","volume":"41 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2010-04-06","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122703168","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Many embedded and distributed applications are based on processing nodes that perform parallel processing tasks. Unfortunately, it is difficult to evaluate the overall behaviour of this kind of applications because the overall behaviour consists of 1) the execution-paths of asynchronous processing nodes and of 2) messages that either activate or deactivate processing nodes to perform parallel processing tasks. In order to facilitate behaviour and reliability evaluation of applications doing parallel processing, we developed a method that: 1) is capable of composing an overall representation for parallel behaviours and recognizing both the defined use cases and undetermined behaviours from this representation and 2) supports calculation of use case-specific reliability values for components. In this paper, we describe the method, present a ComponentBee tool that implements the method and supports behaviour and reliability evaluation of multithreaded Java applications, and finally demonstrate the use of the method with a case study.
{"title":"A Dynamic Behaviour and Reliability Evaluation Method for Applications That Are Based on Asynchronous Processing Nodes","authors":"M. Palviainen","doi":"10.1109/ICSTW.2010.45","DOIUrl":"https://doi.org/10.1109/ICSTW.2010.45","url":null,"abstract":"Many embedded and distributed applications are based on processing nodes that perform parallel processing tasks. Unfortunately, it is difficult to evaluate the overall behaviour of this kind of applications because the overall behaviour consists of 1) the execution-paths of asynchronous processing nodes and of 2) messages that either activate or deactivate processing nodes to perform parallel processing tasks. In order to facilitate behaviour and reliability evaluation of applications doing parallel processing, we developed a method that: 1) is capable of composing an overall representation for parallel behaviours and recognizing both the defined use cases and undetermined behaviours from this representation and 2) supports calculation of use case-specific reliability values for components. In this paper, we describe the method, present a ComponentBee tool that implements the method and supports behaviour and reliability evaluation of multithreaded Java applications, and finally demonstrate the use of the method with a case study.","PeriodicalId":117410,"journal":{"name":"2010 Third International Conference on Software Testing, Verification, and Validation Workshops","volume":"6 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2010-04-06","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"131214785","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Christopher Robinson-Mallett, Matthias Grochtmann, J. Wegener, J. Köhnlein, S. Kühn
The trend towards constantly growing numbers of product variants and features in industry makes the improvement of analysis and specification techniques a key efficiency enabler. The development of a single generic functional specification applicable to a whole product family can help to save costs and time to market significantly. However, the introduction of a product-line approach into a system manufacturer's electronics development process is a challenging task, prone to human error, with the risk of spreading a single fault across a whole platform of product variants. In this contribution, a combined approach on variant-management and model-based requirements analysis and validation is presented. The approach, process and tool presented are generally applicable to functional requirements analysis and specification, since informal specifications or only an abstract idea of the required function are demanded as an input. It has been experienced in several industrial projects that the presented approach may help to reduce redundancies and inconsistencies and as a consequence it may ease and improve subsequent analysis, design and testing activities. Furthermore, the application of the presented variant management approach may benefit from model-based specifications, due to their improved analysability and changeability. In this contribution we present our experiences and results using model-based and variant-management concepts for requirements specification to support system testing. Additionally, we present an extension to integrate testing into the variant-management concept. The presented approach and process are supported by the MERAN tool-suite, which has been developed as an add-in to IBM RationalDOORS.
{"title":"Modelling Requirements to Support Testing of Product Lines","authors":"Christopher Robinson-Mallett, Matthias Grochtmann, J. Wegener, J. Köhnlein, S. Kühn","doi":"10.1109/ICSTW.2010.65","DOIUrl":"https://doi.org/10.1109/ICSTW.2010.65","url":null,"abstract":"The trend towards constantly growing numbers of product variants and features in industry makes the improvement of analysis and specification techniques a key efficiency enabler. The development of a single generic functional specification applicable to a whole product family can help to save costs and time to market significantly. However, the introduction of a product-line approach into a system manufacturer's electronics development process is a challenging task, prone to human error, with the risk of spreading a single fault across a whole platform of product variants. In this contribution, a combined approach on variant-management and model-based requirements analysis and validation is presented. The approach, process and tool presented are generally applicable to functional requirements analysis and specification, since informal specifications or only an abstract idea of the required function are demanded as an input. It has been experienced in several industrial projects that the presented approach may help to reduce redundancies and inconsistencies and as a consequence it may ease and improve subsequent analysis, design and testing activities. Furthermore, the application of the presented variant management approach may benefit from model-based specifications, due to their improved analysability and changeability. In this contribution we present our experiences and results using model-based and variant-management concepts for requirements specification to support system testing. Additionally, we present an extension to integrate testing into the variant-management concept. The presented approach and process are supported by the MERAN tool-suite, which has been developed as an add-in to IBM RationalDOORS.","PeriodicalId":117410,"journal":{"name":"2010 Third International Conference on Software Testing, Verification, and Validation Workshops","volume":"77 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2010-04-06","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123183890","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
This paper describes the development and evolution of LiFT, a framework for writing automated tests in a style that makes them very readable, even for non-programmers. We call this style 'literate testing'. By creating a domain-specific language embedded within Java, we were able to write automated tests that read almost like natural language, allowing business requirements to be expressed very clearly. This allows development to be driven from tests that are created by developers and customers together, helping give all stakeholders confidence that the right things are being tested and hence a correct system being built. We discuss the experiences of a team using these tools and techniques in a large commercial project, and the lessons learned from the experience.
{"title":"LiFT: Driving Development Using a Business-Readable DSL for Web Testing","authors":"Robert Chatley, John Ayres, Tom White","doi":"10.1109/ICSTW.2010.12","DOIUrl":"https://doi.org/10.1109/ICSTW.2010.12","url":null,"abstract":"This paper describes the development and evolution of LiFT, a framework for writing automated tests in a style that makes them very readable, even for non-programmers. We call this style 'literate testing'. By creating a domain-specific language embedded within Java, we were able to write automated tests that read almost like natural language, allowing business requirements to be expressed very clearly. This allows development to be driven from tests that are created by developers and customers together, helping give all stakeholders confidence that the right things are being tested and hence a correct system being built. We discuss the experiences of a team using these tools and techniques in a large commercial project, and the lessons learned from the experience.","PeriodicalId":117410,"journal":{"name":"2010 Third International Conference on Software Testing, Verification, and Validation Workshops","volume":"27 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2010-04-06","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122855760","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
In this paper we consider test suite derivation for nondeterministic Finite State Machines (FSM) w. r. t. the non-separability relation. The improvement to the existing algorithms is proposed for exhaustive test derivation without the explicit enumeration of all possible implementations. One algorithm can be applied when the set of possible implementations is the set of all complete nondeterministic submachines of a given mutation machine. Another algorithm is applied when only the upper bound on the number of states of an IUT is known. As usual, when executing such test suites against an implementation FSM the requirement of "all weather conditions" is not needed.
{"title":"Deriving Exhaustive Test Suits for Nondeterministic FSMs w.r.t. Non-separability Relation","authors":"E. Akenshina, N. Shabaldina, N. Yevtushenko","doi":"10.1109/ICSTW.2010.29","DOIUrl":"https://doi.org/10.1109/ICSTW.2010.29","url":null,"abstract":"In this paper we consider test suite derivation for nondeterministic Finite State Machines (FSM) w. r. t. the non-separability relation. The improvement to the existing algorithms is proposed for exhaustive test derivation without the explicit enumeration of all possible implementations. One algorithm can be applied when the set of possible implementations is the set of all complete nondeterministic submachines of a given mutation machine. Another algorithm is applied when only the upper bound on the number of states of an IUT is known. As usual, when executing such test suites against an implementation FSM the requirement of \"all weather conditions\" is not needed.","PeriodicalId":117410,"journal":{"name":"2010 Third International Conference on Software Testing, Verification, and Validation Workshops","volume":"68 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2010-04-06","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"131054137","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
We present in this paper a technique based on symbolic animation of models that aims at producing model-based tests. In order to guide the animation of the model, we rely on the use of a deterministic finite automaton (DFA) of the model that is built using a well-known machine learning algorithm, that considers a complex model as a black-box component, whose behavior is inferred. Since the DFA obtained in this way may be an over-approximation and, thus, admit traces that were not admitted on the original model, this abstraction is refined using counter-examples made of unfeasible traces. The computation of counter-examples is performed using a systematic coverage of the DFA states and transitions, producing test sequences that are replayed on the model, providing either test cases for offline testing, or counter-examples that aim at refining the abstraction.
{"title":"Model-Based Testing Using Symbolic Animation and Machine Learning","authors":"Pierre-Christophe Bué, Frédéric Dadeau, Pierre-Cyrille Héam","doi":"10.1109/ICSTW.2010.43","DOIUrl":"https://doi.org/10.1109/ICSTW.2010.43","url":null,"abstract":"We present in this paper a technique based on symbolic animation of models that aims at producing model-based tests. In order to guide the animation of the model, we rely on the use of a deterministic finite automaton (DFA) of the model that is built using a well-known machine learning algorithm, that considers a complex model as a black-box component, whose behavior is inferred. Since the DFA obtained in this way may be an over-approximation and, thus, admit traces that were not admitted on the original model, this abstraction is refined using counter-examples made of unfeasible traces. The computation of counter-examples is performed using a systematic coverage of the DFA states and transitions, producing test sequences that are replayed on the model, providing either test cases for offline testing, or counter-examples that aim at refining the abstraction.","PeriodicalId":117410,"journal":{"name":"2010 Third International Conference on Software Testing, Verification, and Validation Workshops","volume":"4020 2 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2010-04-06","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127541260","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Diego Perez-Palacin, R. Mirandola, J. Merseguer, V. Grassi
Adaptable reactive software systems continuously interact with their environment responding to external stimuli and triggering events that may be perceived by their users. Designing and maintaining such systems is a challenging task. A key issue to be faced concerns the assessment of their effectiveness, in terms of the ability to meet their required Quality of Service. This paper introduces a model driven approach to support this assessment, with a focus on performance and dependability attributes. Our approach takes advantage from an existing intermediate modeling language and introduces the necessary extensions to cope with reactive systems. The presented model driven framework exploits the idea of defining a model transformation chain that maps a design oriented model of the system to an analysis oriented model that lends itself to the application of a suitable analysis methodology. We identify some key concepts that should be present in the design model of an adaptable reactive system, and show how to devise a transformation from such a model to a target analysis models.
{"title":"QoS-Based Model Driven Assessment of Adaptive Reactive Systems","authors":"Diego Perez-Palacin, R. Mirandola, J. Merseguer, V. Grassi","doi":"10.1109/ICSTW.2010.20","DOIUrl":"https://doi.org/10.1109/ICSTW.2010.20","url":null,"abstract":"Adaptable reactive software systems continuously interact with their environment responding to external stimuli and triggering events that may be perceived by their users. Designing and maintaining such systems is a challenging task. A key issue to be faced concerns the assessment of their effectiveness, in terms of the ability to meet their required Quality of Service. This paper introduces a model driven approach to support this assessment, with a focus on performance and dependability attributes. Our approach takes advantage from an existing intermediate modeling language and introduces the necessary extensions to cope with reactive systems. The presented model driven framework exploits the idea of defining a model transformation chain that maps a design oriented model of the system to an analysis oriented model that lends itself to the application of a suitable analysis methodology. We identify some key concepts that should be present in the design model of an adaptable reactive system, and show how to devise a transformation from such a model to a target analysis models.","PeriodicalId":117410,"journal":{"name":"2010 Third International Conference on Software Testing, Verification, and Validation Workshops","volume":"45 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2010-04-06","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128803064","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
A. Armando, R. Carbone, L. Compagna, Keqin Li, Giancarlo Pellegrino
Model checking and security testing are two verification techniques available to help finding flaws in security-sensitive, distributed applications. In this paper, we present an approach to security testing of web-based applications in which test cases are automatically derived from counterexamples found through model checking. We illustrate our approach by discussing its application against of the SAML-based Single Sign-On for Google Apps.
{"title":"Model-Checking Driven Security Testing of Web-Based Applications","authors":"A. Armando, R. Carbone, L. Compagna, Keqin Li, Giancarlo Pellegrino","doi":"10.1109/ICSTW.2010.54","DOIUrl":"https://doi.org/10.1109/ICSTW.2010.54","url":null,"abstract":"Model checking and security testing are two verification techniques available to help finding flaws in security-sensitive, distributed applications. In this paper, we present an approach to security testing of web-based applications in which test cases are automatically derived from counterexamples found through model checking. We illustrate our approach by discussing its application against of the SAML-based Single Sign-On for Google Apps.","PeriodicalId":117410,"journal":{"name":"2010 Third International Conference on Software Testing, Verification, and Validation Workshops","volume":"4 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2010-04-06","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121238431","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Software testing is a very important activity of the software development process. To expedite the testing process and improve the quality of the tests, models are increasingly used as a basis to derive test cases automatically - a technique known as model-based testing (MBT). Given a system model and a test suite derived automatically from the model or created by other process, the coverage of the model achieved by the test suite is important to assess the quality and completeness of the test suite early in the software development process. This paper presents a novel tool that shows visually the coverage achieved by a test suite on a UML state machine model. The tool receives as input a UML state machine model represented in XMI and a test suite represented in a XML format, and produces a colored UML state machine model that shows the coverage result. Model test coverage is determined by simulating the execution of the test suite over the model. An example is presented in order to show the features of the tool.
{"title":"Test Coverage Analysis of UML State Machines","authors":"Ricardo D. F. Ferreira, J. Faria, A. C. Paiva","doi":"10.1109/ICSTW.2010.60","DOIUrl":"https://doi.org/10.1109/ICSTW.2010.60","url":null,"abstract":"Software testing is a very important activity of the software development process. To expedite the testing process and improve the quality of the tests, models are increasingly used as a basis to derive test cases automatically - a technique known as model-based testing (MBT). Given a system model and a test suite derived automatically from the model or created by other process, the coverage of the model achieved by the test suite is important to assess the quality and completeness of the test suite early in the software development process. This paper presents a novel tool that shows visually the coverage achieved by a test suite on a UML state machine model. The tool receives as input a UML state machine model represented in XMI and a test suite represented in a XML format, and produces a colored UML state machine model that shows the coverage result. Model test coverage is determined by simulating the execution of the test suite over the model. An example is presented in order to show the features of the tool.","PeriodicalId":117410,"journal":{"name":"2010 Third International Conference on Software Testing, Verification, and Validation Workshops","volume":"75 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2010-04-06","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121873497","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}