Mustafa Al-Lail, Antonio Rosales, Hector Cardenas, Lars Hamann, Alfredo J. Perez
{"title":"Transformation of TOCL temporal properties into OCL","authors":"Mustafa Al-Lail, Antonio Rosales, Hector Cardenas, Lars Hamann, Alfredo J. Perez","doi":"10.1145/3550356.3563132","DOIUrl":"https://doi.org/10.1145/3550356.3563132","url":null,"abstract":"Specifying and verifying the temporal properties of UML-based systems can be challenging. Although there exist some extensions of OCL to support the specification of temporal properties, most of the approaches depend on using non-UML formalisms such as LTL, CTL, and CTL*. The approaches also rely on transforming the under-development UML models into non-UML model checking frameworks for verification. These approaches introduce complexities and relies on techniques and tools that are not within the UML spectrum. In this paper, we show how TOCL (one OCL extension for temporal properties specification) can be transformed into OCL for verification purposes. Towards this end, we created a formal EBNF grammar for TOCL, based on which a parser and a MOF metamodel were generated. To facilitate the analysis of the TOCL properties, we formally defined transformation rules from the TOCL metamodel to the OCL metamodel using QVTo. We validated the implementations of the transformation rules using USE.","PeriodicalId":182662,"journal":{"name":"Proceedings of the 25th International Conference on Model Driven Engineering Languages and Systems: Companion Proceedings","volume":"13 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2022-10-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128593732","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}
{"title":"An approach for a simulation-based analysis of business processes using the systems modeling language (SysML)","authors":"Fabian Giertzsch, O. Eichmann, H. Hintze, R. God","doi":"10.1145/3550356.3561535","DOIUrl":"https://doi.org/10.1145/3550356.3561535","url":null,"abstract":"For the design and production of extensive systems with many configuration options, business processes (BPs) for creating and customizing engineering data, e.g. technical drawings or manufacturing orders, are established. Such BPs can include multiple process stations from different departments and companies resulting in a network of highly interrelated process stations that is considered in this paper. A suitable allocation of resources to process stations and a reasonable sequence of inputs to the BP avoids bottlenecks, reduces idle process stations as well as allocated resources, and increases process efficiency. Estimating effects of changes to the process is a challenging task due to the number of involved process stations and their dependencies so that a process simulation is a promising approach. This paper presents a toolbox approach for a simulation-based analysis of such BPs using the Systems Modeling Language (SysML). Motivated by an industrial case study that initiated this toolbox development, SysML was selected as it allows for an interdisciplinary approach, bringing together model-based product-line development often based on SysML and, for example, manufacturing and supply chain process modeling. The toolbox supports the simulation of process scenarios with variable resource allocations and different types and sequences of objects used as process inputs. Objects are allowed to be updated, transformed, split, and merged throughout the BP. Simulation results are average process times, idle times of process stations, and number of queued orders at a process station. Results enable the assessment of scenarios and the selection of a suitable resource allocation and order sequence. In the industrial case study, the toolbox has been practically applied using a specific SysML tool. General and tool-specific observations and experiences are provided and discussed, including possible mitigations for tool limitations.","PeriodicalId":182662,"journal":{"name":"Proceedings of the 25th International Conference on Model Driven Engineering Languages and Systems: Companion Proceedings","volume":"69 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2022-10-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128830771","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}
Timur Saglam, Sebastian Hahner, Jan Willem Wittler, Thomas Kühn
{"title":"Token-based plagiarism detection for metamodels","authors":"Timur Saglam, Sebastian Hahner, Jan Willem Wittler, Thomas Kühn","doi":"10.1145/3550356.3556508","DOIUrl":"https://doi.org/10.1145/3550356.3556508","url":null,"abstract":"Plagiarism is a widespread problem in computer science education. Manual inspection is impractical for large courses, and the risk of detection is thus low. Many plagiarism detectors are available for programming assignments. However, very few approaches are available for modeling assignments. To remedy this, we introduce token-based plagiarism detection for metamodels. To this end, we extend the widely-used software plagiarism detector JPlag. We evaluate our approach with real-world modeling assignments and generated plagiarisms based on obfuscation attack classes. The results show that our approach outperforms the state-of-the-art.","PeriodicalId":182662,"journal":{"name":"Proceedings of the 25th International Conference on Model Driven Engineering Languages and Systems: Companion Proceedings","volume":"44 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2022-10-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128412123","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}
{"title":"Teaching modeling to anyone the aristotelian way: anyone can cook a sound model","authors":"Michel Zam","doi":"10.1145/3550356.3556504","DOIUrl":"https://doi.org/10.1145/3550356.3556504","url":null,"abstract":"Could model-driven engineering --- inspired by classical drama, modern agile practices, and recent findings from neurosciences--- be a way to address gaps and mismatches in designing and modeling better software, empower and engage both students and professionals of any level to learn and share knowledge? In this paper we report on our experiences with teaching and practicing model-driven engineering during 25+ years, we share three original socio-technical strategies we called Aristotelians and invite the reader to join a collaborative open-source gamified initiative for a greater social impact.","PeriodicalId":182662,"journal":{"name":"Proceedings of the 25th International Conference on Model Driven Engineering Languages and Systems: Companion Proceedings","volume":"43 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2022-10-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116403067","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}
Jonas Kirchhoff, Nils Weidmann, Stefan Sauer, G. Engels
{"title":"Situational development of low-code applications in manufacturing companies","authors":"Jonas Kirchhoff, Nils Weidmann, Stefan Sauer, G. Engels","doi":"10.1145/3550356.3561560","DOIUrl":"https://doi.org/10.1145/3550356.3561560","url":null,"abstract":"Companies show an increasing interest in low-code development platforms to facilitate application development by domain experts without sophisticated software development knowledge. Thus, companies aim for a more efficient development of more effective applications since domain experts as so-called citizen developers are no longer limited by the availability and domain knowledge of trained software developers. Nevertheless, efficiency and effectiveness of application development is traditionally also largely influenced by the use of a suitable software development method. Domain experts are, however, not trained in software development methods. This introduces a risk of domain experts creating unusable applications or exceeding the designated time frame of a project (or both). In this paper, we therefore propose an initial version of a situational software development method which supports domain experts in manufacturing companies during the low-code development of applications. The method can be tailored based on situational factors, considering application requirements, features of the used low-code development platform, and characteristics of the development team. We also present feedback corroborating the usefulness of our method and future extension points based on expert interviews.","PeriodicalId":182662,"journal":{"name":"Proceedings of the 25th International Conference on Model Driven Engineering Languages and Systems: Companion Proceedings","volume":"21 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2022-10-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114178515","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}
Prabhsimran Singh, Younes Boubekeur, G. Mussbacher
{"title":"Detecting mistakes in a domain model","authors":"Prabhsimran Singh, Younes Boubekeur, G. Mussbacher","doi":"10.1145/3550356.3561583","DOIUrl":"https://doi.org/10.1145/3550356.3561583","url":null,"abstract":"Domain models are a fundamental part of software engineering, and it is important for every software engineer to be taught the principles of domain modeling. Instructors play a vital role in teaching students the skills required to understand and design domain models. Instructors check models created by students for mistakes by comparing them with a correct solution. While this did not use to be an overwhelming task, this is not the case anymore nowadays due to a rapid increase in the number of students wanting to become software engineers, leading to larger class sizes. Hence, students may need to wait for a longer time to get feedback on their solutions and the feedback may be more superficial due to time constraints. In this paper, we propose a mistake detection system (MDS) that aims to automate the manual approach of checking student solutions and help save both students' and instructors' time. MDS automatically indicates the exact location and the type of the mistake to the student. At present, MDS accurately detects 83 out of 97 identified different types of mistakes that may exist in a student solution. A prototype tool verifies the feasibility of the proposed approach. When synonyms are considered by MDS, recall of 0.93 and precision of 0.79 are achieved based on the results for real student solutions. The proposed MDS takes us one step closer to automating the existing manual approach, freeing up instructor time and helping students learn domain modeling more effectively.","PeriodicalId":182662,"journal":{"name":"Proceedings of the 25th International Conference on Model Driven Engineering Languages and Systems: Companion Proceedings","volume":"87 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2022-10-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114545296","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}
{"title":"Towards a digital Z framework based on a family of architectures and a virtual knowledge graph","authors":"Randy Paredis, H. Vangheluwe","doi":"10.1145/3550356.3561543","DOIUrl":"https://doi.org/10.1145/3550356.3561543","url":null,"abstract":"The purpose of systems engineering is to, often collaboratively and following complex workflows, analyse, design, optimize, operate, and evolve complex, cyber-physical systems. This paper proposes a vision of a general framework for the design, deployment and operation of Digital Z (where Z can be model, shadow, twin, passport, avatar...). Different Digital Zs are used, often in combination, for various purposes during systems engineering. That is why we propose a family of architectures for different Digital Zs. Each Digital Z architecture is constructed based on the engineers' goals. These goals can always be reduced to the observation, satisfaction, or optimization of some Properties of Interest (PoIs). Example PoIs are safety, and average energy consumption. We propose to have one Digital Z architecture per PoI. The different Digital Zs may be combined into an ecosystem. More variability is introduced when we zoom into the deployment of Digital Zs. Common choices for network communication such as DDS and MQTT each have their own strengths and weaknesses which must be taken into account when trying to satisfy non-functional properties such as meeting real-time deadlines. We also introduce the Modelverse, a Virtual (Federated) Knowledge Graph (VKG). It is used as a source of knowledge to aid in the construction of \"experiments\" which answer user's questions about PoIs. These, possibly concurrent, experiments are in essence particular Digital Z ecosystems/architectures. When the experiments provide answers, these are added to the VKG knowledge base in the form (question, experiment architecture, answer). The glue between the above is a template workflow. We sketch the above concepts by means of concrete examples and compare them with existing Digital Z definitions and frameworks such as the \"5D model\".","PeriodicalId":182662,"journal":{"name":"Proceedings of the 25th International Conference on Model Driven Engineering Languages and Systems: Companion Proceedings","volume":"27 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2022-10-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125976054","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}
{"title":"OCL libraries for software specification and representation","authors":"K. Lano, Shekoufeh Kolahdouz Rahimi, Kunxiang Jin","doi":"10.1145/3550356.3561565","DOIUrl":"https://doi.org/10.1145/3550356.3561565","url":null,"abstract":"The OCL 2.4 standard library has a relatively small set of operations for primitive types, and no facilities for common software aspects such as processes and files. In this paper we identify requirements for extended library facilities, based on examination of related specification languages, and on consideration of the need to represent program semantics for software migration. We outline possible libraries and provide example implementations.","PeriodicalId":182662,"journal":{"name":"Proceedings of the 25th International Conference on Model Driven Engineering Languages and Systems: Companion Proceedings","volume":"24 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2022-10-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128324883","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}
Juan Marcelo Parra Ullauri, A. García-Domínguez, N. Bencomo, L. H. Paucar
{"title":"History-aware explanations: towards enabling human-in-the-loop in self-adaptive systems","authors":"Juan Marcelo Parra Ullauri, A. García-Domínguez, N. Bencomo, L. H. Paucar","doi":"10.1145/3550356.3561538","DOIUrl":"https://doi.org/10.1145/3550356.3561538","url":null,"abstract":"The complexity of real-world problems requires modern software systems to autonomously adapt and modify their behaviour at run time to deal with internal and external challenges and contexts. Consequently, these self-adaptive systems (SAS) can show unexpected and surprising behaviours to users, who may not understand or agree with them. This is exacerbated due to the ubiquity and complexity of AI-based systems which are often considered as \"black-boxes\". Users may feel that the decision-making process of SAS is oblivious to the user's own decision-making criteria and priorities. Inevitably, users may mistrust or even avoid using the system. Furthermore, SAS could benefit from the human involvement in satisfying stakeholders' requirements. Accordingly, it is argued that a system should be able to explain its behaviour and how it has reached its current state. A history-aware, human-in-the-loop approach to address these issues is presented in this paper. For this approach, the system should i) offer access and retrieval of historic data about the past behaviour of the system, ii) track over time the reasons for its decisions to show and explain them to the users, and iii) provide capabilities, called effectors, to empower users by allowing them to steer the decision-making based on the information provided by i) and ii). This paper looks into enabling a human-in-the-loop approach into the decision-making of SAS based on the MAPE-K architecture. We present a feedback layer based on temporal graph databases (TGDB) that has been added to the MAPE-K architecture to provide a two-way communication between the human and the SAS. Collaboration, communication and trustworthiness between the human and SAS is promoted by the provision of history-based explanations extracted from the TGDB, and a set of effectors allow human users to influence the system based on the received information. The encouraging results of an application of the approach to a network management case study and a validation from a SAS expert are shown.","PeriodicalId":182662,"journal":{"name":"Proceedings of the 25th International Conference on Model Driven Engineering Languages and Systems: Companion Proceedings","volume":"20 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2022-10-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123382754","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}
Yon Vanommeslaeghe, D. Ceulemans, Bert Van Acker, J. Denil, S. Derammelaere, P. De Meulenaere
{"title":"Validation and uncertainty in model-based design space exploration: an experience report","authors":"Yon Vanommeslaeghe, D. Ceulemans, Bert Van Acker, J. Denil, S. Derammelaere, P. De Meulenaere","doi":"10.1145/3550356.3561581","DOIUrl":"https://doi.org/10.1145/3550356.3561581","url":null,"abstract":"Model-based systems engineering (MBSE) techniques can help manage the growing complexity in the design and development of cyber-physical systems, and can even allow for the optimization of a system under design in simulation. However, models are always an abstraction of the real-world systems they represent. This introduces uncertainty at the model level, which affects the validity of simulation results, and thus also the results of the optimization. This, together with variations in real-world system parameters, significantly complicates the validation of simulation and optimization results. In this experience report, we first use a descriptive process model to describe our efforts to validate the results of a model-based design space exploration (DSE) process given this uncertainty. After this, we discuss lessons learned and insights gained, and identify future challenges. We present a possible prescriptive process model for future validation efforts, which specifically takes into account uncertainty.","PeriodicalId":182662,"journal":{"name":"Proceedings of the 25th International Conference on Model Driven Engineering Languages and Systems: Companion Proceedings","volume":"202 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2022-10-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115024234","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}