F. Jouault, M. Méré, M. Brun, Théo Le Calvar, Matthias Pasquier, C. Teodorov
{"title":"From OCL-based model static analysis to quick fixes","authors":"F. Jouault, M. Méré, M. Brun, Théo Le Calvar, Matthias Pasquier, C. Teodorov","doi":"10.1145/3550356.3561562","DOIUrl":"https://doi.org/10.1145/3550356.3561562","url":null,"abstract":"Giving accurate and relevant static analysis feedback to modeling tool users significantly helps them design useful models. This feedback is even more valuable when it comes with completion proposals, called quick fixes, which users can apply to automatically resolve specific issues. However, implementing such static analysis and quick fix tooling is tedious and error prone. For instance, providing accurate messages typically requires decomposing complex model queries into simpler ones, while suitably handling their dependencies. Moreover, each quick fix should actually resolve the issue it is supposed to fix, which is not always easy to ensure. This paper presents an approach that leverages reverse propagation of OCL-like boolean expressions to provide correct-by-construction quick fixes. It only requires adding specific annotations to expressions in order to guide quick fix computation. A proof-of-concept implementation of this approach on the AnimUML partial modeling tool is described. It is able to automatically construct messages, to report different messages depending on which part of a predicate fails, and to provide quick fixes.","PeriodicalId":182662,"journal":{"name":"Proceedings of the 25th International Conference on Model Driven Engineering Languages and Systems: Companion Proceedings","volume":"272 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":"128237003","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":"QoS-aware model-based systems design using systems modeling language","authors":"Christos Kotronis, M. Nikolaidou, C. Bardaki","doi":"10.1145/3550356.3561579","DOIUrl":"https://doi.org/10.1145/3550356.3561579","url":null,"abstract":"Among several parameters involved in Systems Design (SD), Quality of Service (QoS) is a critical factor that constrains design decisions. QoS reflects the operating levels of a system under certain conditions that affect the quality of the provided functionality. Despite it being a clear indicator of the quality of services that end-users of a system are expected to enjoy, there is no complete framework that integrates QoS into design efficiently using Model-Based Systems Design (MBSD) and Systems Modeling Language (SysML). Moreover, the current version of SysML does not directly address QoS concepts. However, the primitive notion of SysML requirements can be used and extended to describe and manage QoS, capturing what the system provides to its users, service-wise, rather than encapsulating system behavior. To evaluate such requirements one has to assess system outcomes, via system analysis, to verify whether the latter satisfy the users (or not). Satisfying certain QoS requirements requires a designer to decide upon different key aspects of the system, such as its configuration. Serving QoS is further tied to the costs needed to acquire/operate the system. The aim of this work is to explore QoS using MBSD and SysML. We build upon the framework of Friedenthal, and Systems Modeling Toolbox (SYS-MOD), and we extend them to manage QoS in an integrated SysML framework. Moreover, we show and validate the applicability of our framework focusing on a Remote Elderly Monitoring System (REMS), that belongs in the healthcare domain. In that particular context, different configuration solutions of the system installed in the patients' home for monitoring their health conditions are explored, considering that the patients' different QoS and budget requirements should be satisfied. Therefore, assessing QoS can contribute to a more effective design and implementation of such systems enhancing user satisfaction.","PeriodicalId":182662,"journal":{"name":"Proceedings of the 25th International Conference on Model Driven Engineering Languages and Systems: Companion Proceedings","volume":"42 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":"128526454","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}
José Antonio Hernández López, Javier Luis Cánovas Izquierdo, J. Cuadrado
{"title":"Using the ModelSet dataset to support machine learning in model-driven engineering","authors":"José Antonio Hernández López, Javier Luis Cánovas Izquierdo, J. Cuadrado","doi":"10.1145/3550356.3559096","DOIUrl":"https://doi.org/10.1145/3550356.3559096","url":null,"abstract":"The availability of curated collections of models is essential for the application of techniques like Machine Learning (ML) and Data Analytics to MDE as well as to boost research activities. However, many applications of ML to address MDE tasks are currently limited to small datasets. In this demo paper, we will present ModelSet, a dataset composed of 5,466 Ecore models and 5,120 UML models which have been manually labelled to support ML tasks (http://modelset.github.io). ModelSet is built upon the models collected by the MAR search engine (http://mar-search.org), which provides more than 500,000 models of different types. We will describe the structure of the dataset and we will explain how to use the associated library to develop ML applications in Python. Finally, we will describe some applications which can be addressed using ModelSet.","PeriodicalId":182662,"journal":{"name":"Proceedings of the 25th International Conference on Model Driven Engineering Languages and Systems: Companion Proceedings","volume":"1 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":"128751009","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 the practical adoption of LIDL: a toolchain for modeling human-machine interface software interactions","authors":"Ning Ge, Yunduo Wang, Yuan Wang, Yong Wang","doi":"10.1145/3550356.3559085","DOIUrl":"https://doi.org/10.1145/3550356.3559085","url":null,"abstract":"The design and implementation of safety-critical human-machine interface (HMI) software typically follow the model-driven development process to guarantee secure reliability pragmatically. Systematic and comprehensive modeling for interactions involved in HMI software is essential when applying the model-driven approach. LIDL Interaction Description Language (LIDL) is an interaction description language well suited to HMI software interaction modeling. Several problems limit the practical adoption of LIDL. LIDL does not have a visual modeling language or debugging tools, resulting in error-prone and inefficient modeling. In addition, there is no toolchain to connect it to the subsequent steps in model-driven development, such as verification and implementation. This paper presents a toolchain developed for LIDL to alleviate the problems it faces in practice. The toolchain consists of three tools, a visual modeling tool, a compiler translating LIDL code to Lustre, and a LIDL debugger. We design the visual modeling tool and debugger to improve LIDL modeling efficiency and the compiler to support the debugger and integrate the LIDL modeling into the whole model-driven development process of the HMI software. Specifically, the modeling tool uses tables and diagrams to visualize LIDL code, pragmatically reducing the possibility of introducing modeling errors while maintaining the semantics of LIDL code. We add management features to LIDL models to form a library of model components that modelers can reuse easily. The modeling tool can also automatically convert LIDL models created by modelers into LIDL code. The debugger helps modelers debug LIDL code to locate problems in the model and correct them quickly.","PeriodicalId":182662,"journal":{"name":"Proceedings of the 25th International Conference on Model Driven Engineering Languages and Systems: Companion Proceedings","volume":"1 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":"130904838","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}
Robert Thorburn, V. Sassone, Asieh Salehi Fathabadi, Leonardo Aniello, Michael J. Butler, Dana Dghaym, Son Hoang
{"title":"A lightweight approach to the concurrent use and integration of SysML and formal methods in systems design","authors":"Robert Thorburn, V. Sassone, Asieh Salehi Fathabadi, Leonardo Aniello, Michael J. Butler, Dana Dghaym, Son Hoang","doi":"10.1145/3550356.3559577","DOIUrl":"https://doi.org/10.1145/3550356.3559577","url":null,"abstract":"Increased systems complexity and ubiquitous computing drive the need for improved systems design. Model-based systems engineering using general purpose languages such as SysML, is a well-established response to this challenge. However, for systems where correctness-by-construction is critical, formal methods are often also deployed. This is a significant undertaking often involving complete model translation. We address this problem by developing a novel requirements interchange system, presented as a SysML model library, to guide the concurrent use of SysML and formal models without requiring complete model translation.","PeriodicalId":182662,"journal":{"name":"Proceedings of the 25th International Conference on Model Driven Engineering Languages and Systems: Companion Proceedings","volume":"1 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":"128977094","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":"Contract-based product-assembly co-design","authors":"Bert Van Acker, J. Denil","doi":"10.1145/3550356.3559575","DOIUrl":"https://doi.org/10.1145/3550356.3559575","url":null,"abstract":"During the product design, special attention is required to ensure that the product can be assembled later on at the manufacturing floor. Front-loading the assembly or production knowledge is advantageous for the efficiency of the product design process as it limits the costly design iterations. However, this front-loading results in a big design-space, requiring computational-intensive exploration mechanisms to find an optimal design. We propose a two-stage exploration and optimization method. Within first stage, both product and assembly knowledge, captured in an ontology and their trade-offs, captured in design contracts, are used to preliminary prune the design-space. Within second stage, we explore the reduced design-space to find optimal design.","PeriodicalId":182662,"journal":{"name":"Proceedings of the 25th International Conference on Model Driven Engineering Languages and Systems: Companion Proceedings","volume":"124 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":"123927374","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":"Multi-paradigm modeling for early analysis of ROS-based robotic applications using a library of AADL models","authors":"E. Senn, L. Bourdon, Dominique Blouin","doi":"10.1145/3550356.3563129","DOIUrl":"https://doi.org/10.1145/3550356.3563129","url":null,"abstract":"ROS, the Robot Operating System, is a middleware that eases the programming of robotic applications significantly, bringing standard communication and synchronization mechanisms to a wide variety of operating systems and computers or embedded computer boards. However, a robotic application is a complex set of many services, with many relations between them, and multiple choices have to be made regarding the software and the hardware architectures. To rely on a formal representation of those two, from which early analysis can be performed, is extremely beneficial since it allows detection of design errors early in the process. This is what we present in this paper. Our approach is based on the Architecture Analysis and Design Language (AADL) and on a set of AADL models to represent both the application and the robot, including its embedded computers and its many devices. Those models are gathered into an open source AADL library from which ROS developers can largely benefit.","PeriodicalId":182662,"journal":{"name":"Proceedings of the 25th International Conference on Model Driven Engineering Languages and Systems: Companion Proceedings","volume":"9 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":"124276500","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":"Migrating from proprietary tools to open-source software for EAST-ADL metamodel generation and evolution","authors":"Jörg Holtmann, Jan-Philipp Steghöfer, Henrik Lönn","doi":"10.1145/3550356.3559084","DOIUrl":"https://doi.org/10.1145/3550356.3559084","url":null,"abstract":"Open-source software has numerous advantages over proprietary commercial-off-the-shelf (COTS) software. However, there are modeling languages, tool chains, and tool frameworks that are developed and maintained in an open-source manner but still incorporate COTS tools. Such an incorporation of COTS tools into an overall open-source approach completely annihilates the actual open-source advantages and goals. In this tool paper, we demonstrate how we eliminated a COTS tool from the otherwise open-source-based generation and evolution workflow of the domain-specific modeling language East-Adl, used in the automotive industry to describe a variety of interdisciplinary aspects of vehicle systems. By switching to a pure open-source solution, East-Adl becomes easier to inspect, evolve, and develop a community around. We compare both the mixed COTS/open-source and the open-source-only workflows, outline the advantages of the open-source-only solution, and show that we achieve equivalent tooling features compared to the original approach.","PeriodicalId":182662,"journal":{"name":"Proceedings of the 25th International Conference on Model Driven Engineering Languages and Systems: Companion Proceedings","volume":"51 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":"117172080","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":"Domain-specific model differencing for graphical domain-specific languages","authors":"Manouchehr Zadahmad Jafarlou","doi":"10.1145/3550356.3552368","DOIUrl":"https://doi.org/10.1145/3550356.3552368","url":null,"abstract":"The evolution of models as a result of collaborative effort must be tracked and maintained. The usage of text-based version control systems is ubiquitous, however, it does not assist domain users in comprehending the semantics of model differences. To overcome these concerns, we propose ---called DSMCompare---, a complete solution. It considers both the abstract and concrete syntax of a domain-specific language (DSL) to express model differences and facilitates the definition of domain-specific semantics for specific difference patterns. The method extends the DSL automatically to allow for the description of modifications and adapts its graphical concrete syntax to visualize the differences. It moreover enables the creation of semantic differencing rules for identifying recurrent domain-specific difference patterns. Because these rules may conflict with one another, we provide algorithms for resolving conflicts and scheduling rules. We report on evaluations based on synthetic models and version histories of models provided by third parties to illustrate the applicability and effectiveness of our approach. We also outline an extension of DSMCompare to three-way differencing.","PeriodicalId":182662,"journal":{"name":"Proceedings of the 25th International Conference on Model Driven Engineering Languages and Systems: Companion Proceedings","volume":"45 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":"123428833","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":"ORM ontologies with executable derivation rules to support semantic search in large-scale data applications","authors":"Márton Búr, R. Stirewalt","doi":"10.1145/3550356.3559576","DOIUrl":"https://doi.org/10.1145/3550356.3559576","url":null,"abstract":"A semantic layer maps complex enterprise data into an ontology with abstract business concepts that are well-known to business users. Chief data officers invest significant effort to create and update these ontologies, while data scientists do feature engineering by combining already existing concepts and features of the domain. However, it is a significant challenge to catalogue and maintain the numerous features pertaining to an ontology, which leads to duplicated features and unnecessary complexity. In this work, we propose to combine ontologies captured using the Object-Role Modeling notation with derivation rules defined in a datalog-like language called Rel, which allows the creation of a semantic layer with feature search capability. Our prototype framework uses the RAI Knowledge Graph Management System, which provides automated and incremental derivation rule evaluation.","PeriodicalId":182662,"journal":{"name":"Proceedings of the 25th International Conference on Model Driven Engineering Languages and Systems: Companion Proceedings","volume":"40 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":"123444024","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}