The paper presents a two-step approach for DSM-based generating of substantial parts of tools for legacy-system analysis. In the first step a parser is generated from a formal grammar, representing the syntax of the legacy system's code. This parser is able to recognize the constructs of the legacy code but unaware of any analytic functionality. In the second step the code for the analytic functionality and glue code for integrating the parser-generated code into a framework is generated from a domain-specific model capturing properties of and relations between code constructs to be analyzed. Integration with parser functionality generated in first step and framework is achieved by loading classes and re-trieving information using reflection and annotations in the second step.
{"title":"Generating Code Using Reflection in the Context of Computer-Assisted Legacy System Analyses and Reengineering","authors":"Peter Krall","doi":"10.1145/2688447.2688449","DOIUrl":"https://doi.org/10.1145/2688447.2688449","url":null,"abstract":"The paper presents a two-step approach for DSM-based generating of substantial parts of tools for legacy-system analysis. In the first step a parser is generated from a formal grammar, representing the syntax of the legacy system's code. This parser is able to recognize the constructs of the legacy code but unaware of any analytic functionality. In the second step the code for the analytic functionality and glue code for integrating the parser-generated code into a framework is generated from a domain-specific model capturing properties of and relations between code constructs to be analyzed. Integration with parser functionality generated in first step and framework is achieved by loading classes and re-trieving information using reflection and annotations in the second step.","PeriodicalId":252689,"journal":{"name":"Proceedings of the 14th Workshop on Domain-Specific Modeling","volume":"16 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2014-10-21","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114548963","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}
Material Flow Analysis (MFA) is the procedure of measuring and assessing the mass flows of matter (solid waste, water, food...) and substances (carbon, phosphorus ...) within a process or a system for the period of time. In this paper we propose a Domain-Specific Language (DSL) to model MFA in a waste management modeling context. The result is that we integrate the DSL within a waste management modeling software called EASETECH and we show how the proposed DSL allows the domain experts to extend the software without involving of software developers.
{"title":"Design of a Domain-Specific Language for Material Flow Analysis Using Microsoft DSL Tools: An Experience Paper","authors":"Bahram Zarrin, H. Baumeister","doi":"10.1145/2688447.2688452","DOIUrl":"https://doi.org/10.1145/2688447.2688452","url":null,"abstract":"Material Flow Analysis (MFA) is the procedure of measuring and assessing the mass flows of matter (solid waste, water, food...) and substances (carbon, phosphorus ...) within a process or a system for the period of time. In this paper we propose a Domain-Specific Language (DSL) to model MFA in a waste management modeling context. The result is that we integrate the DSL within a waste management modeling software called EASETECH and we show how the proposed DSL allows the domain experts to extend the software without involving of software developers.","PeriodicalId":252689,"journal":{"name":"Proceedings of the 14th Workshop on Domain-Specific Modeling","volume":"139 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2014-10-21","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115666483","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}
Heiko Kern, Fred Stefan, Vladimir Dimitrieski, Milan Čeliković
The exchange of models between meta-modeling tools is an important requirement. Tools often only cover a certain task in the development process. The exchange of models between different tools is necessary for covering a complete development process. Besides the aspect of cooperation, exchange of models also enables the replacement of old tools by new tools that better fit the customer's needs. In order to avoid the vendor lock-in effect, model exchange allows the reuse of existing models. In this paper, we focus on the problem of model exchange and present an mapping-based approach between different meta-modeling tools. The approach is centered around a declarative mapping language with a graphical notation and a solution for connecting different meta-modeling tools. We apply our approach to exchange models between MetaEdit+ and Microsoft Visio.
{"title":"Mapping-Based Exchange of Models Between Meta-Modeling Tools","authors":"Heiko Kern, Fred Stefan, Vladimir Dimitrieski, Milan Čeliković","doi":"10.1145/2688447.2688453","DOIUrl":"https://doi.org/10.1145/2688447.2688453","url":null,"abstract":"The exchange of models between meta-modeling tools is an important requirement. Tools often only cover a certain task in the development process. The exchange of models between different tools is necessary for covering a complete development process. Besides the aspect of cooperation, exchange of models also enables the replacement of old tools by new tools that better fit the customer's needs. In order to avoid the vendor lock-in effect, model exchange allows the reuse of existing models. In this paper, we focus on the problem of model exchange and present an mapping-based approach between different meta-modeling tools. The approach is centered around a declarative mapping language with a graphical notation and a solution for connecting different meta-modeling tools. We apply our approach to exchange models between MetaEdit+ and Microsoft Visio.","PeriodicalId":252689,"journal":{"name":"Proceedings of the 14th Workshop on Domain-Specific Modeling","volume":"29 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2014-10-21","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123001752","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}
Cyber physical systems (CPSs) by definition involve design constraints addressing the computation and communication necessary to control physical systems. These systems have been modeled using domain specific modeling languages, but some limitations exist in the continued application of such a modeling approach to more complex, or safety-critical, systems. Specifically, it is well known how to formulate constraints in a domain-specific modeling language in order to prevent users from building invalid structures, but existing constraint-based techniques do not take into consideration design requirements that may require analysis in the physical domain (i.e. dynamic constraints). Those analysis results, when interpreted by a domain expert, can inform changes to the model: unfortunately, this ``by hand'' process does not scale. This paper presents an approach to automate the process of evolving models based on dynamic constraints that are not structurally enforceable into the modeling of CPSs. This new methodology---called dynamic constraint feedback (DCF)---is described herein and demonstrated with specific examples derived from the domain of data adaptable reconfigurable embedded systems (DARES). In DCF, expert blocks are integrated with a modeling language to perform dynamic constraint analysis on system models. The results from these analyses are then used to generate model transformations that can be applied to the source models.
{"title":"Generating Model Transformations for Mending Dynamic Constraint Violations in Cyber Physical Systems","authors":"Sean Whitsitt, J. Sprinkle, Roman L. Lysecky","doi":"10.1145/2688447.2688454","DOIUrl":"https://doi.org/10.1145/2688447.2688454","url":null,"abstract":"Cyber physical systems (CPSs) by definition involve design constraints addressing the computation and communication necessary to control physical systems. These systems have been modeled using domain specific modeling languages, but some limitations exist in the continued application of such a modeling approach to more complex, or safety-critical, systems. Specifically, it is well known how to formulate constraints in a domain-specific modeling language in order to prevent users from building invalid structures, but existing constraint-based techniques do not take into consideration design requirements that may require analysis in the physical domain (i.e. dynamic constraints). Those analysis results, when interpreted by a domain expert, can inform changes to the model: unfortunately, this ``by hand'' process does not scale. This paper presents an approach to automate the process of evolving models based on dynamic constraints that are not structurally enforceable into the modeling of CPSs. This new methodology---called dynamic constraint feedback (DCF)---is described herein and demonstrated with specific examples derived from the domain of data adaptable reconfigurable embedded systems (DARES). In DCF, expert blocks are integrated with a modeling language to perform dynamic constraint analysis on system models. The results from these analyses are then used to generate model transformations that can be applied to the source models.","PeriodicalId":252689,"journal":{"name":"Proceedings of the 14th Workshop on Domain-Specific Modeling","volume":"5 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2014-10-21","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132367571","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}
Benoît Langlois, Daniel Exertier, Boubekeur Zendagui
A common need in system, software, and hardware engineering is to describe system architectures, especially in demanding domains such as aeronautics, defence or telecommunications. Kitalpha is an environment to develop and execute MBE (Model-Based Engineering) workbenches for description of system architecture. Kitalpha uses the DSL technique in order to develop such devel-opment environments accurately, quickly, and safely. This paper presents the main features of Kitalpha and lessons learned from a DSL-based development.
{"title":"Development of Modelling Frameworks and Viewpoints with Kitalpha","authors":"Benoît Langlois, Daniel Exertier, Boubekeur Zendagui","doi":"10.1145/2688447.2688451","DOIUrl":"https://doi.org/10.1145/2688447.2688451","url":null,"abstract":"A common need in system, software, and hardware engineering is to describe system architectures, especially in demanding domains such as aeronautics, defence or telecommunications. Kitalpha is an environment to develop and execute MBE (Model-Based Engineering) workbenches for description of system architecture. Kitalpha uses the DSL technique in order to develop such devel-opment environments accurately, quickly, and safely. This paper presents the main features of Kitalpha and lessons learned from a DSL-based development.","PeriodicalId":252689,"journal":{"name":"Proceedings of the 14th Workshop on Domain-Specific Modeling","volume":"25 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2014-10-21","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123610535","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}
J. Sprinkle, M. Rossi, Jeffrey G. Gray, Juha-Pekka Tolvanen
It is our great pleasure to welcome you to the proceedings of the DSM'14 workshop held as part of SPLASH 2014! The 14th Workshop on Domain-Specific Modeling continues the tradition of combining papers and presentations on both practical and theoretical level. Domain-Specific Modeling (DSM) provides a modern solution to demands for higher productivity by constricting the gap between problem and solution modeling. In the past, productivity gains have been sought from new programming languages. Domain-specific modeling languages provide a viable solution for continuing to raise the level of abstraction beyond coding, making development faster and easier. This year's workshop continues the tradition to share experiences and demonstrate the DSM solutions that have been developed by both researchers and practitioners, identify research questions and continuing to build the community. The program contains paper presentations and discussions as well as group work on selected topics. This year we received 15 submissions from 36 authors from 11 countries. Paper review was done by the members of program committee and each paper had at least 3 reviews. Out of 15 submissions 8 were accepted (53%). We hope that you will enjoy this record of the workshop and find the information within the proceedings valuable toward your understanding of the current state-of-the-art in Domain-Specific Modeling.
{"title":"Proceedings of the 14th Workshop on Domain-Specific Modeling","authors":"J. Sprinkle, M. Rossi, Jeffrey G. Gray, Juha-Pekka Tolvanen","doi":"10.1145/2688447","DOIUrl":"https://doi.org/10.1145/2688447","url":null,"abstract":"It is our great pleasure to welcome you to the proceedings of the DSM'14 workshop held as part of SPLASH 2014! The 14th Workshop on Domain-Specific Modeling continues the tradition of combining papers and presentations on both practical and theoretical level. \u0000 \u0000Domain-Specific Modeling (DSM) provides a modern solution to demands for higher productivity by constricting the gap between problem and solution modeling. In the past, productivity gains have been sought from new programming languages. Domain-specific modeling languages provide a viable solution for continuing to raise the level of abstraction beyond coding, making development faster and easier. \u0000 \u0000This year's workshop continues the tradition to share experiences and demonstrate the DSM solutions that have been developed by both researchers and practitioners, identify research questions and continuing to build the community. The program contains paper presentations and discussions as well as group work on selected topics. \u0000 \u0000This year we received 15 submissions from 36 authors from 11 countries. Paper review was done by the members of program committee and each paper had at least 3 reviews. Out of 15 submissions 8 were accepted (53%). We hope that you will enjoy this record of the workshop and find the information within the proceedings valuable toward your understanding of the current state-of-the-art in Domain-Specific Modeling.","PeriodicalId":252689,"journal":{"name":"Proceedings of the 14th Workshop on Domain-Specific Modeling","volume":"37 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2014-10-21","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125595434","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}
Model transformations (MTs) are central artifacts in model-driven engineering (MDE) that define core operations on models. Like other software artifacts, MTs may possess defects (bugs). Some MDE tools provide support for debugging. In this paper, we describe an omniscient debugging technique. Our technique enhances stepwise execution support for MTs by providing the ability to traverse, in either direction, the execution history of a live debugging session. We also introduce a proof of concept prototype applying the described technique and a preliminary study of the scalability, in terms of memory consumption, and performance, in terms of time to execute.
{"title":"Towards Efficient and Scalabale Omniscient Debugging for Model Transformations","authors":"Jonathan Corley, Brian P. Eddy, Jeffrey G. Gray","doi":"10.1145/2688447.2688450","DOIUrl":"https://doi.org/10.1145/2688447.2688450","url":null,"abstract":"Model transformations (MTs) are central artifacts in model-driven engineering (MDE) that define core operations on models. Like other software artifacts, MTs may possess defects (bugs). Some MDE tools provide support for debugging. In this paper, we describe an omniscient debugging technique. Our technique enhances stepwise execution support for MTs by providing the ability to traverse, in either direction, the execution history of a live debugging session. We also introduce a proof of concept prototype applying the described technique and a preliminary study of the scalability, in terms of memory consumption, and performance, in terms of time to execute.","PeriodicalId":252689,"journal":{"name":"Proceedings of the 14th Workshop on Domain-Specific Modeling","volume":"71 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2014-10-21","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127152110","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":"Session details: Topics in Model Transformation","authors":"","doi":"10.1145/3246848","DOIUrl":"https://doi.org/10.1145/3246848","url":null,"abstract":"","PeriodicalId":252689,"journal":{"name":"Proceedings of the 14th Workshop on Domain-Specific Modeling","volume":"2016 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2014-10-21","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121337678","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}
Domain-specific modeling languages effectively constrain structural concepts, but constraints that are not easily captured with structural constraints are still important to fix at design time. In practice these kinds of constraints are implicitly left to be carried out by the domain modelers. This paper explores the process of incorporating system behavioral (not just structural) constraints into a DSML, and studies the way of generating feasible transformation solutions if those constraints fail, based on a transformation library constructed in advance. Our approach is to carry out the verification process through code generation, but utilize the results of verification as an input to a model transformation generator. The output transformation then operates on the original model. As a case study, we applied the approach to finite state machine (FSM) models that control a cyber-physical system.
{"title":"A Closed-loop Model-based Design Approach based on Automatic Verification and Transformation","authors":"Kun Zhang, J. Sprinkle","doi":"10.1145/2688447.2688448","DOIUrl":"https://doi.org/10.1145/2688447.2688448","url":null,"abstract":"Domain-specific modeling languages effectively constrain structural concepts, but constraints that are not easily captured with structural constraints are still important to fix at design time. In practice these kinds of constraints are implicitly left to be carried out by the domain modelers. This paper explores the process of incorporating system behavioral (not just structural) constraints into a DSML, and studies the way of generating feasible transformation solutions if those constraints fail, based on a transformation library constructed in advance. Our approach is to carry out the verification process through code generation, but utilize the results of verification as an input to a model transformation generator. The output transformation then operates on the original model. As a case study, we applied the approach to finite state machine (FSM) models that control a cyber-physical system.","PeriodicalId":252689,"journal":{"name":"Proceedings of the 14th Workshop on Domain-Specific Modeling","volume":"24 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2014-10-21","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114181492","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":"Session details: Tools and Language Design Experiences","authors":"","doi":"10.1145/3246849","DOIUrl":"https://doi.org/10.1145/3246849","url":null,"abstract":"","PeriodicalId":252689,"journal":{"name":"Proceedings of the 14th Workshop on Domain-Specific Modeling","volume":"13 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2014-10-21","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121417988","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}