Write a Blog >>
ASE 2020
Mon 21 - Fri 25 September 2020 Melbourne, Australia
Thu 24 Sep 2020 16:40 - 17:00 at Wombat - Model-Driven Development Chair(s): Marianne Huchard

Context: Emergent behaviors are behaviors not included in a system specification, but that can still happen at runtime. When using scenario-based modeling to design a concurrent system, we can detect such behaviors as implied scenarios (ISs). Analogously to emergent behaviors, an IS is not included in the system model but can arise at runtime. If left untreated, ISs can cause damage if they lead to unwanted behaviors, which can, in turn, affect the reliability of the system. Several approaches to detect ISs have been devised. However, existing approaches stop after the detection process and do not go further in the analysis and treatment process. Additionally, they can output several implied scenarios, which can be cumbersome to the user as they are detected and dealt with on a one-on-one basis. Furthermore, since these approaches do not investigate the relationship between different ISs, they could misguide the user on how to deal with such scenarios.

Objective: In this work, we propose a methodology to fill in the literature gap, which is achieved by finding common behaviors (CBs) among detected ISs that lead the system to unexpected behavior. We enable the user to analyze ISs as groups, which allows fixing multiple emergent behaviors at the same time.

Methodology: The methodology consists of the characterization of ISs as families of CBs, comprising three main steps: (i) collect multiple ISs; (ii) detect CBs among them; and, (iii) characterize such CBs as families. Firstly our approach iteratively collects multiple ISs without the need for user interaction. Next, from these collected ISs, we extract the underlying CBs. The CBs are groups of ISs that have common traces, and are defined as shared sequences of messages among various ISs. Following, a characterization process is performed to define families of CBs. For this purpose, we use the Smith-Waterman algorithm, which is used to find which parts of two sequences have the most in common. In our work, the benefits of using this algorithm are two-fold: (i) it can be used to find shared traces of messages among different CBs, and (ii) the score calculated can be used as a clustering metric, which assists the user to define the families of CBs. By these means, we limit the problem space of IS detection by treating the ISs as a group, instead of individually.

Results: We performed seven case studies %with system specifications reported in the literature to validate our methodology, where a total of 1,798 ISs were collected. From these ISs, our methodology was able to identify only 14 families of CBs, where each system specification in those studies had at most three families, and each family required a single fix. Overall, our methodology also managed to significantly reduce the timespan of the detection process from nearly 37 hours to under 24 minutes and mere 3.2s to run our clusterization process in those case studies. Additionally, we provide quantitative evidence that the unwanted behaviors have been effectively removed as all seven case studies had their reliability increase to 100%.

Conclusion: We have proposed a methodology to deal with multiple ISs at large. This is achieved by detecting CBs among these scenarios. Furthermore, we introduce a method to group similar CBs into families, further reducing the elements the user needs to analyze. Thus, our approach allows the user to investigate and treat multiple ISs at once.

Journal Paper: The full paper was published at the Journal of Systems and Software, and is available at https://doi.org/10.1016/j.jss.2019.110425. All tools and data used for the experiments are available at https://git.io/JfCJp.

Thu 24 Sep
Times are displayed in time zone: (UTC) Coordinated Universal Time

16:00 - 17:00: Model-Driven Development Research Papers / Journal-first Papers at Wombat
Chair(s): Marianne HuchardLIRMM
16:00 - 16:20
Talk
Synthesis-Based Resolution of Feature Interactions in Cyber-Physical Systems
Research Papers
Benjamin GaffordGrinnell College, Tobias DürschmidCarnegie Mellon University, Institute for Software Research, Gabriel A. MorenoCarnegie Mellon University, USA, Eunsuk KangCarnegie Mellon University, USA
16:20 - 16:40
Talk
MoFuzz: A Fuzzer Suite for Testing Model-Driven Software Engineering Tools
Research Papers
Hoang Lam NguyenHumboldt-Universität zu Berlin, Nebras NassarPhilipps-Universität Marburg, Timo KehrerHumboldt-Universtität zu Berlin, Lars GrunskeHumboldt-Universität zu Berlin
16:40 - 17:00
Talk
Characterization of Implied Scenarios as Families of Common Behavior
Journal-first Papers
Caio Batista de MeloUniversity of California, Irvine, André Luiz Fernandes CançadoUniversity of Brasília, Genaína Nunes RodriguesUniversity of Brasília
Link to publication DOI Pre-print