Pub Date : 2023-10-04DOI: 10.1007/s10270-023-01127-z
Flávia Falcão, Lucas Lima, Augusto Sampaio, Pedro Antonino
{"title":"A formal component model for UML based on CSP aiming at compositional verification","authors":"Flávia Falcão, Lucas Lima, Augusto Sampaio, Pedro Antonino","doi":"10.1007/s10270-023-01127-z","DOIUrl":"https://doi.org/10.1007/s10270-023-01127-z","url":null,"abstract":"","PeriodicalId":49507,"journal":{"name":"Software and Systems Modeling","volume":"58 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2023-10-04","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"135597260","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":3,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 2023-09-29DOI: 10.1007/s10270-023-01123-3
Bentley James Oakes, Javier Troya, Jessie Galasso, Manuel Wimmer
Abstract The verification of model transformations is important for realizing robust model-driven engineering technologies and quality-assured automation. Many approaches for checking properties of model transformations have been proposed. Most of them have focused on the effective and efficient detection of property violations by contract checking. However, there remains the fault localization step between identifying a failing contract for a transformation based on verification feedback and precisely identifying the faulty rules. While there exist fault localization approaches in the model transformation verification literature, these require the creation and maintenance of test cases , which imposes an additional burden on the developer. In this paper, we combine transformation verification based on symbolic execution with spectrum-based fault localization techniques for identifying the faulty rules in DSLTrans model transformations. This fault localization approach operates on the path condition output of symbolic transformation checkers instead of requiring a set of test input models. In particular, we introduce a workflow for running the symbolic execution of a model transformation, evaluating the defined contracts for satisfaction, and computing different measures for tracking the faulty rules. We evaluate the effectiveness of spectrum-based analysis techniques for tracking faulty rules and compare our approach to previous works. We evaluate our technique by introducing known mutations into five model transformations. Our results show that the best spectrum-based analysis techniques allow for effective fault localization, showing an average EXAM score below 0.30 (less than 30% of the transformation needs to be inspected). These techniques are also able to locate the faulty rule in the top-three ranked rules in 70% of all cases. The impact of the model transformation, the type of mutation and the type of contract on the results is discussed. Finally, we also investigate the cases where the technique does not work properly, including discussion of a potential pre-check to estimate the prospects of the technique for a certain transformation.
{"title":"Fault localization in DSLTrans model transformations by combining symbolic execution and spectrum-based analysis","authors":"Bentley James Oakes, Javier Troya, Jessie Galasso, Manuel Wimmer","doi":"10.1007/s10270-023-01123-3","DOIUrl":"https://doi.org/10.1007/s10270-023-01123-3","url":null,"abstract":"Abstract The verification of model transformations is important for realizing robust model-driven engineering technologies and quality-assured automation. Many approaches for checking properties of model transformations have been proposed. Most of them have focused on the effective and efficient detection of property violations by contract checking. However, there remains the fault localization step between identifying a failing contract for a transformation based on verification feedback and precisely identifying the faulty rules. While there exist fault localization approaches in the model transformation verification literature, these require the creation and maintenance of test cases , which imposes an additional burden on the developer. In this paper, we combine transformation verification based on symbolic execution with spectrum-based fault localization techniques for identifying the faulty rules in DSLTrans model transformations. This fault localization approach operates on the path condition output of symbolic transformation checkers instead of requiring a set of test input models. In particular, we introduce a workflow for running the symbolic execution of a model transformation, evaluating the defined contracts for satisfaction, and computing different measures for tracking the faulty rules. We evaluate the effectiveness of spectrum-based analysis techniques for tracking faulty rules and compare our approach to previous works. We evaluate our technique by introducing known mutations into five model transformations. Our results show that the best spectrum-based analysis techniques allow for effective fault localization, showing an average EXAM score below 0.30 (less than 30% of the transformation needs to be inspected). These techniques are also able to locate the faulty rule in the top-three ranked rules in 70% of all cases. The impact of the model transformation, the type of mutation and the type of contract on the results is discussed. Finally, we also investigate the cases where the technique does not work properly, including discussion of a potential pre-check to estimate the prospects of the technique for a certain transformation.","PeriodicalId":49507,"journal":{"name":"Software and Systems Modeling","volume":"52 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2023-09-29","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"135194014","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":3,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 2023-09-16DOI: 10.1007/s10270-023-01126-0
Benoit Combemale, Jeff Gray, Bernhard Rumpe
{"title":"Large language models as an “operating” system for software and systems modeling","authors":"Benoit Combemale, Jeff Gray, Bernhard Rumpe","doi":"10.1007/s10270-023-01126-0","DOIUrl":"https://doi.org/10.1007/s10270-023-01126-0","url":null,"abstract":"","PeriodicalId":49507,"journal":{"name":"Software and Systems Modeling","volume":"13 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2023-09-16","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"135306573","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":3,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 2023-08-28DOI: 10.1007/s10270-023-01121-5
B. Archibald, M. Calder, Michele Sevegnani, Mengwei Xu
{"title":"Quantitative modelling and analysis of BDI agents","authors":"B. Archibald, M. Calder, Michele Sevegnani, Mengwei Xu","doi":"10.1007/s10270-023-01121-5","DOIUrl":"https://doi.org/10.1007/s10270-023-01121-5","url":null,"abstract":"","PeriodicalId":49507,"journal":{"name":"Software and Systems Modeling","volume":"44 1","pages":""},"PeriodicalIF":2.0,"publicationDate":"2023-08-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"80510739","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":3,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 2023-08-17DOI: 10.1007/s10270-023-01125-1
Livia Lestingi, Andrea Manglaviti, D. Marinaro, Luca Marinello, M. Askarpour, M. Bersani, M. Rossi
{"title":"Analyzing the impact of human errors on interactive service robotic scenarios via formal verification","authors":"Livia Lestingi, Andrea Manglaviti, D. Marinaro, Luca Marinello, M. Askarpour, M. Bersani, M. Rossi","doi":"10.1007/s10270-023-01125-1","DOIUrl":"https://doi.org/10.1007/s10270-023-01125-1","url":null,"abstract":"","PeriodicalId":49507,"journal":{"name":"Software and Systems Modeling","volume":"9 1","pages":""},"PeriodicalIF":2.0,"publicationDate":"2023-08-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"82904781","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":3,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 2023-08-11DOI: 10.1007/s10270-023-01122-4
A. Cimatti, Luca Geatti, N. Gigante, A. Montanari, Stefano Tonetta
{"title":"Fairness, assumptions, and guarantees for extended bounded response LTL+P synthesis","authors":"A. Cimatti, Luca Geatti, N. Gigante, A. Montanari, Stefano Tonetta","doi":"10.1007/s10270-023-01122-4","DOIUrl":"https://doi.org/10.1007/s10270-023-01122-4","url":null,"abstract":"","PeriodicalId":49507,"journal":{"name":"Software and Systems Modeling","volume":"173 ","pages":""},"PeriodicalIF":2.0,"publicationDate":"2023-08-11","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"72505481","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":3,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 2023-08-02DOI: 10.1007/s10270-023-01120-6
A. Jalali
{"title":"Evaluating user acceptance of knowledge-intensive business process modeling languages","authors":"A. Jalali","doi":"10.1007/s10270-023-01120-6","DOIUrl":"https://doi.org/10.1007/s10270-023-01120-6","url":null,"abstract":"","PeriodicalId":49507,"journal":{"name":"Software and Systems Modeling","volume":"168 1","pages":""},"PeriodicalIF":2.0,"publicationDate":"2023-08-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"75391687","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":3,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 2023-07-29DOI: 10.1007/s10270-023-01119-z
B. Combemale, J. Gray, Bernhard Rumpe
{"title":"Research software engineering and the importance of scientific models","authors":"B. Combemale, J. Gray, Bernhard Rumpe","doi":"10.1007/s10270-023-01119-z","DOIUrl":"https://doi.org/10.1007/s10270-023-01119-z","url":null,"abstract":"","PeriodicalId":49507,"journal":{"name":"Software and Systems Modeling","volume":"35 1","pages":"1081 - 1083"},"PeriodicalIF":2.0,"publicationDate":"2023-07-29","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"78609552","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":3,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 2023-07-26DOI: 10.1007/s10270-023-01118-0
Cole Vick, Eunsuk Kang, Stavros Tripakis
In model checking, when a model fails to satisfy the desired specification, a typical model checker provides a counterexample that illustrates how the violation occurs. In general, there exist many diverse counterexamples that exhibit distinct violating behaviors, which the user may wish to examine before deciding how to repair the model. Unfortunately, (1) the number of counterexamples may be too large to enumerate one by one, and (2) many of these counterexamples are redundant, in that they describe the same type of violating behavior. In this paper, we propose a technique called counterexample classification. The goal of classification is to cover the space of all counterexamples into a finite set of counterexample classes, each of which describes a distinct type of violating behavior for the given specification. These classes are then presented as a summary of possible violating behaviors in the system, freeing the user from manually having to inspect or analyze numerous counterexamples to extract the same information. We have implemented a prototype of our technique on top of an existing formal modeling and verification tool, the Alloy Analyzer, and evaluated the effectiveness of the technique on case studies involving the well-known Needham–Schroeder and TCP protocols with promising results.
{"title":"Counterexample classification","authors":"Cole Vick, Eunsuk Kang, Stavros Tripakis","doi":"10.1007/s10270-023-01118-0","DOIUrl":"https://doi.org/10.1007/s10270-023-01118-0","url":null,"abstract":"<p>In model checking, when a model fails to satisfy the desired specification, a typical model checker provides a <i>counterexample</i> that illustrates how the violation occurs. In general, there exist many diverse counterexamples that exhibit distinct violating behaviors, which the user may wish to examine before deciding how to repair the model. Unfortunately, (1) the number of counterexamples may be too large to enumerate one by one, and (2) many of these counterexamples are redundant, in that they describe the same type of violating behavior. In this paper, we propose a technique called <i>counterexample classification</i>. The goal of classification is to cover the space of all counterexamples into a finite set of <i>counterexample classes</i>, each of which describes a distinct type of violating behavior for the given specification. These classes are then presented as a summary of possible violating behaviors in the system, freeing the user from manually having to inspect or analyze numerous counterexamples to extract the same information. We have implemented a prototype of our technique on top of an existing formal modeling and verification tool, the Alloy Analyzer, and evaluated the effectiveness of the technique on case studies involving the well-known Needham–Schroeder and TCP protocols with promising results.</p>","PeriodicalId":49507,"journal":{"name":"Software and Systems Modeling","volume":"34 1","pages":""},"PeriodicalIF":2.0,"publicationDate":"2023-07-26","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"138515623","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":3,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 2023-07-22DOI: 10.1007/s10270-023-01115-3
Renata Guizzardi, G. Amaral, G. Guizzardi, J. Mylopoulos
{"title":"An ontology-based approach to engineering ethicality requirements","authors":"Renata Guizzardi, G. Amaral, G. Guizzardi, J. Mylopoulos","doi":"10.1007/s10270-023-01115-3","DOIUrl":"https://doi.org/10.1007/s10270-023-01115-3","url":null,"abstract":"","PeriodicalId":49507,"journal":{"name":"Software and Systems Modeling","volume":"35 1","pages":""},"PeriodicalIF":2.0,"publicationDate":"2023-07-22","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"75307418","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":3,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}