{"title":"Efficient construction of family-based behavioral models from adaptively learned models","authors":"Shaghayegh Tavassoli, Ramtin Khosravi","doi":"10.1007/s10270-024-01199-5","DOIUrl":"https://doi.org/10.1007/s10270-024-01199-5","url":null,"abstract":"<p>Family-based behavioral models capture the behavior of a software product line (SPL) in a single model, incorporating the variability among the products. In representing these models, a common technique is to annotate well-known behavioral modeling notations with features, e.g., featured finite state machine (FFSM) as an extension to the well-known finite state machine notation. It is not always the case that family-based behavioral models are prepared before developing an SPL, or kept up-to-date during the development and maintenance. Model learning is helpful in such situations. Taking advantage of the commonality among the SPL products, it is possible to reuse the product models in learning the behavior of the entire SPL. In this paper, the process of constructing FFSM models for SPLs is enhanced. Model learning is performed using an adaptive learning algorithm called PL*. Regarding the model learning step, we introduce a new heuristic method for determining the product learning orders with high learning efficiency. The proposed heuristic takes into account the complexity of features added by each product and improves the previous heuristics for learning order. To construct the whole family-based behavioral model of an SPL, the behavioral models of individual products are iteratively merged into the whole family-based model. A similarity metric is used to determine which states of the two models are merged with each other. By providing a formalization for the existing FFSM<sub>Diff</sub> algorithm for this purpose, we prove that in the FFSM constructed by this algorithm, the choice of the similarity metric does not affect the observable behavior of the constructed FFSM. We study the efficiency of three similarity metrics, two of which are local metrics, in the sense that they determine the similarity of two states only in terms of their adjacent transitions. On the other hand, a global similarity metric takes into account not only the adjacent transitions, but also the similarity of their adjacent states. It is shown by experimentation on two case studies that local similarity metrics can result in constructing FFSMs as concise as the FFSM resulting from the global similarity metric. The results also show that local similarity metrics increase the efficiency and scalability while maintaining the effectiveness of the FFSM construction.</p>","PeriodicalId":49507,"journal":{"name":"Software and Systems Modeling","volume":"27 1","pages":""},"PeriodicalIF":2.0,"publicationDate":"2024-08-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"141945496","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}
Jörg Holtmann, Jennifer Horkoff, Rebekka Wohlrab, Victoria Vu, Rashidah Kasauli, Salome Maro, Jan-Philipp Steghöfer, Eric Knauss
{"title":"Using boundary objects and methodological island (BOMI) modeling in large-scale agile systems development","authors":"Jörg Holtmann, Jennifer Horkoff, Rebekka Wohlrab, Victoria Vu, Rashidah Kasauli, Salome Maro, Jan-Philipp Steghöfer, Eric Knauss","doi":"10.1007/s10270-024-01193-x","DOIUrl":"https://doi.org/10.1007/s10270-024-01193-x","url":null,"abstract":"<p>Large-scale systems development commonly faces the challenge of managing relevant knowledge between different organizational groups, particularly in increasingly agile contexts. Here, there is a conflict between coordination and group autonomy, and it is challenging to determine what necessary coordination information must be shared by what teams or groups, and what can be left to local team management. We introduce a way to manage this complexity using a modeling framework based on two core concepts: methodological islands (i.e., groups using different development methods than the surrounding organization) and boundary objects (i.e., artifacts that create a common understanding across team borders). However, we found that companies often lack a systematic way of assessing coordination issues and the use of boundary objects between methodological islands. As part of an iterative design science study, we have addressed this gap by producing a modeling framework (BOMI: Boundary Objects and Methodological Islands) to better capture and analyze coordination and knowledge management in practice. This framework includes a metamodel, as well as a list of bad smells over this metamodel that can be leveraged to detect inter-team coordination issues. The framework also includes a methodology to suggest concrete modeling steps and broader guidelines to help apply the approach successfully in practice. We have developed Eclipse-based tool support for the BOMI method, allowing for both graphical and textual model creation, and including an implementation of views over BOMI instance models in order to manage model complexity. We have evaluated these artifacts iteratively together with five large-scale companies developing complex systems. In this work, we describe the BOMI framework and its iterative evaluation in several real cases, reporting on lessons learned and identifying future work. We have produced a matured and stable modeling framework which facilitates understanding and reflection over complex organizational configurations, communication, governance, and coordination of knowledge artifacts in large-scale agile system development.</p>","PeriodicalId":49507,"journal":{"name":"Software and Systems Modeling","volume":"33 1","pages":""},"PeriodicalIF":2.0,"publicationDate":"2024-08-05","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"141945497","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}
Hendrik Göttmann, Birte Caesar, Lasse Beers, Malte Lochau, Andy Schürr, Alexander Fay
{"title":"Cost-sensitive precomputation of real-time-aware reconfiguration strategies based on stochastic priced timed games","authors":"Hendrik Göttmann, Birte Caesar, Lasse Beers, Malte Lochau, Andy Schürr, Alexander Fay","doi":"10.1007/s10270-024-01195-9","DOIUrl":"https://doi.org/10.1007/s10270-024-01195-9","url":null,"abstract":"<p>In many recent application domains, software systems must repeatedly reconfigure themselves at runtime to satisfy changing contextual requirements. To decide which next configuration is presumably best suited is a very challenging task as it involves not only functional requirements but also non-functional properties (NFP). NFP include multiple, potentially contradicting, criteria like real-time constraints and cost measures like energy consumption. Effectiveness of context-aware reconfiguration decisions further depends on mostly uncertain future contexts which makes greedy one-step decision heuristics potentially misleading. Moreover, the computational runtime overhead for reconfiguration planning should not nullify the benefits. Nevertheless, entirely pre-planning reconfiguration decisions during design time is also not feasible due to missing knowledge about runtime contexts. In this article, we propose a model-based technique for precomputing context-aware reconfiguration decisions under partially uncertain real-time constraints and cost measures. We employ a game-theoretic approach based on stochastic priced timed game automata as reconfiguration model. This formal model allows us to automatically synthesize winning strategies for the first player (the system) which efficiently delivers presumably best-fitting reconfiguration decisions as reactions to moves of the second player (the context) at runtime. Our tool implementation copes with the high computational complexity of strategy synthesis by utilizing the statistical model checker <span>Uppaal Stratego</span> to approximate near-optimal solutions. We applied our tool to a real-world example consisting of a reconfigurable robot support system for the construction of aircraft fuselages. Our evaluation results show that <span>Uppaal Stratego</span> is indeed able to precompute effective reconfiguration strategies within a reasonable amount of time.</p>","PeriodicalId":49507,"journal":{"name":"Software and Systems Modeling","volume":"1 1","pages":""},"PeriodicalIF":2.0,"publicationDate":"2024-08-05","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"141945498","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}
Daniel Farias, Bruno Nogueira, Ivaldir Farias Júnior, Ermeson Andrade
{"title":"A modeling-based approach for dependability analysis of a constellation of satellites","authors":"Daniel Farias, Bruno Nogueira, Ivaldir Farias Júnior, Ermeson Andrade","doi":"10.1007/s10270-024-01197-7","DOIUrl":"https://doi.org/10.1007/s10270-024-01197-7","url":null,"abstract":"<p>Satellite constellations play critical roles across various sectors, encompassing communication, Earth observation and space exploration. Ensuring the dependable operation of these constellations is of utmost importance. This paper introduces a dependability modeling approach using stochastic Petri nets to analyze satellite constellations. The primary focus is on improving operational efficiency through the assessment of availability, reliability and maintainability. The approach helps satellite designers make informed decisions when selecting constellation configurations by assessing various dependability metrics. Using a global navigation satellite system as a case study, we conduct extensive numerical experiments to evaluate the feasibility of our approach. The results demonstrate quantitatively the significant impact of redundant components on both reliability and availability. They also illustrate how utilizing satellites in repair and operational orbits can influence these metrics and highlight the direct correlation between reliability and maintainability.</p>","PeriodicalId":49507,"journal":{"name":"Software and Systems Modeling","volume":"69 1","pages":""},"PeriodicalIF":2.0,"publicationDate":"2024-07-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"141774104","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}
{"title":"Modeling for sustainability: Sustainable Development Goals (SDG) of the United Nations","authors":"Benoit Combemale, Jeff Gray, Bernhard Rumpe","doi":"10.1007/s10270-024-01196-8","DOIUrl":"https://doi.org/10.1007/s10270-024-01196-8","url":null,"abstract":"","PeriodicalId":49507,"journal":{"name":"Software and Systems Modeling","volume":"63 1","pages":""},"PeriodicalIF":2.0,"publicationDate":"2024-07-18","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"141742289","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}
{"title":"Systematizing modeler experience (MX) in model-driven engineering success stories","authors":"Reyhaneh Kalantari, Julian Oertel, Joeri Exelmans, Satrio Adi Rukmono, Vasco Amaral, Matthias Tichy, Katharina Juhnke, Jan-Philipp Steghöfer, Silvia Abrahão","doi":"10.1007/s10270-024-01194-w","DOIUrl":"https://doi.org/10.1007/s10270-024-01194-w","url":null,"abstract":"<p>Modeling is often associated with complex and heavy tooling, leading to a negative perception among practitioners. However, alternative paradigms, such as everything-as-code or low-code, are gaining acceptance due to their perceived ease of use. This paper explores the dichotomy between these perceptions through the lens of “modeler experience” (MX). MX includes factors such as user experience, motivation, integration, collaboration and versioning, and language complexity. We examine the relationships between these factors and their impact on different modeling usage scenarios. Our findings highlight the importance of considering MX when understanding how developers interact with modeling tools and the complexities of modeling and associated tooling.</p>","PeriodicalId":49507,"journal":{"name":"Software and Systems Modeling","volume":"31 1","pages":""},"PeriodicalIF":2.0,"publicationDate":"2024-07-11","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"141586653","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}
Jörg Kienzle, Steffen Zschaler, William Barnett, Timur Sağlam, Antonio Bucchiarone, Silvia Abrahão, Eugene Syriani, Dimitris Kolovos, Timothy Lethbridge, Sadaf Mustafiz, Sofia Meacham
{"title":"Requirements for modelling tools for teaching","authors":"Jörg Kienzle, Steffen Zschaler, William Barnett, Timur Sağlam, Antonio Bucchiarone, Silvia Abrahão, Eugene Syriani, Dimitris Kolovos, Timothy Lethbridge, Sadaf Mustafiz, Sofia Meacham","doi":"10.1007/s10270-024-01192-y","DOIUrl":"https://doi.org/10.1007/s10270-024-01192-y","url":null,"abstract":"<p>Modelling is an important activity in software development and it is essential that students learn the relevant skills. Modelling relies on dedicated tools and these can be complex to install, configure, and use—distracting students from learning key modelling concepts and creating accidental complexity for teachers. To address these challenges, we believe that modelling tools specifically aimed at use in teaching are required. Based on discussions at a working session organised at MODELS 2023 and the results from an internationally shared questionnaire, we report on requirements for such modelling tools for teaching. We also present examples of existing modelling tools for teaching and how they address some of the requirements identified.</p>","PeriodicalId":49507,"journal":{"name":"Software and Systems Modeling","volume":"22 1","pages":""},"PeriodicalIF":2.0,"publicationDate":"2024-07-09","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"141575178","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}
Charlotte Verbruggen, Alexandre Goossens, Johannes De Smedt, Jan Vanthienen, Monique Snoeck
{"title":"iDOCEM","authors":"Charlotte Verbruggen, Alexandre Goossens, Johannes De Smedt, Jan Vanthienen, Monique Snoeck","doi":"10.1007/s10270-024-01191-z","DOIUrl":"https://doi.org/10.1007/s10270-024-01191-z","url":null,"abstract":"<p>In the business process lifecycle, models can be approached from two perspectives: on the one hand, models are used to create systems in the design phase, and on the other hand, systems in use produce (event) logs that are used to discover the models representing the structure of the systems. These discovered models can be the starting point of a new cycle of analysis, redesign, implementation, etc. Therefore, proper logging of implemented processes in line with system design is a critical element for process discovery. Recently, the consideration of the integration of data and process aspects has seen a surge in interest in both the model-for-design domain as in the automated-model-discovery domain. However, it seems that these domains use different conceptualizations of data/object-aware systems. A definition of how the captured event logs are related to the structure of the global system they are extracted from or are trying to discover is still missing. Especially the concept of an event needs to be aligned, as this is the main concept that the domains have in common. This paper investigates the concepts and terminology used in the different phases of the business process lifecycle: the design phase, the implementation phase (including the implementation of logging) and the discovery phase. The paper contains an extensive running example that is used to illustrate five misalignment issues. The main contribution of this paper is a meta-model that presents a unified terminology for modelling both domains and is demonstrated using the running example. The paper also shows how the concepts of iDOCEM relate to the concepts of a conceptual modelling approach and several event logging formats. iDOCEM is validated with the implementation of a log generator for the running case, demonstrating the feasibility of generating DOCEL-compliant logs from an application.</p>","PeriodicalId":49507,"journal":{"name":"Software and Systems Modeling","volume":"66 1","pages":""},"PeriodicalIF":2.0,"publicationDate":"2024-07-09","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"141575179","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}
Balbir S. Barn, Kurt Sandkuhl, Souvik Barat, Tony Clark
{"title":"Guest editorial to the special section on PoEM’2022","authors":"Balbir S. Barn, Kurt Sandkuhl, Souvik Barat, Tony Clark","doi":"10.1007/s10270-024-01189-7","DOIUrl":"https://doi.org/10.1007/s10270-024-01189-7","url":null,"abstract":"<p>This guest editorial presents the papers contributing to the 15th IFIP WG 8.1 Working Conference on the Practice of Enterprise Modelling (PoEM 2022). The best papers were selected for invitation for revision and significant expansion. Five papers were finally accepted in the special section. Collectively, these papers provide an excellent representation of the state of the art of Enterprise Modelling in both research and practice.</p>","PeriodicalId":49507,"journal":{"name":"Software and Systems Modeling","volume":"8 1","pages":""},"PeriodicalIF":2.0,"publicationDate":"2024-07-03","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"141551165","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}
Alireza Parvizimosaed, Marco Roveri, Aidin Rasti, Amal Ahmed Anda, Sofana Alfuhaid, Daniel Amyot, Luigi Logrippo, John Mylopoulos
{"title":"SymboleoPC: checking properties of legal contracts","authors":"Alireza Parvizimosaed, Marco Roveri, Aidin Rasti, Amal Ahmed Anda, Sofana Alfuhaid, Daniel Amyot, Luigi Logrippo, John Mylopoulos","doi":"10.1007/s10270-024-01180-2","DOIUrl":"https://doi.org/10.1007/s10270-024-01180-2","url":null,"abstract":"<p>Legal contracts specify requirements for business transactions. <span>Symboleo</span> was recently proposed as a formal specification language for legal contracts. It allows the specification of the contractual requirements by specifying the obligations and powers of the parties, as well as specifying the events that can occur in a contract’s lifecycle. With appropriate tool support, <span>Symboleo</span> can allow monitoring the contract lifecycle. However, because of mistakes in contract interpretation or formal specification, specified contracts may violate properties expected by contracting parties. This paper presents <span>SymboleoPC</span>, a tool for analyzing <span>Symboleo</span> contracts using the <span>nuXmv</span> model checker, where properties can be expressed in both Linear Temporal Logic and Computation Tree Logic. The presentation highlights the architecture, implementation, and testing of the tool, as well as a scalability evaluation, based on performance data. The performance of the tool was evaluated with respect to varying numbers of obligations and powers, with varying numbers of inter-dependencies among them, with parameters derived from the analysis of real contracts. These results suggest that <span>SymboleoPC</span> can be usefully applied to the analysis of formal specifications of contracts with real-life sizes and structures.</p>","PeriodicalId":49507,"journal":{"name":"Software and Systems Modeling","volume":"137 1","pages":""},"PeriodicalIF":2.0,"publicationDate":"2024-07-03","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"141551164","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}