共查询到20条相似文献,搜索用时 46 毫秒
1.
Inter-modelling is the activity of modelling relations between two or more modelling languages. The result of this activity is a model that describes the way in which model instances of these languages can be related. Many tasks in model-driven development can be classified as inter-modelling, for example designing model-to-model transformations, defining model matching and traceability relations, specifying model merging and model weaving, as well as describing mechanisms for inter-model consistency management and model synchronization. This paper presents our approach to inter-modelling in a declarative, relational, visual, and formal style. The approach relies on declarative patterns describing allowed or forbidden relations between two modelling languages. Such specification is then compiled into different operational mechanisms that are tailor-made for concrete inter-modelling scenarios. Up to now, we have used the approach to generate forward and backward transformations from a pattern specification. In this paper we demonstrate that the same specification can be used to derive mechanisms for other inter-modelling tasks, such as model matching and model traceability. In these scenarios the goals are generating the traces between two existing models, checking whether two models are correctly traced, and modifying the traces between two models if they are incorrect. 相似文献
2.
ContextComputation Independent Model (CIM) as a business model describes the requirements and environment of a business system and instructs the designing and development; it is a key to influencing software success. Although many studies currently focus on model driven development (MDD); those researches, to a large extent, study the PIM-level and PSM-level model, and few have dealt with CIM-level modelling for case in which the requirements are unclear or incomplete.ObjectiveThis paper proposes a CIM-level modelling approach, which applies a stepwise refinement approach to modelling the CIM-level model starting from a high-level goal model to a lower-level business process model. A key advantage of our approach is the combination of the requirement model with the business model, which helps software engineers to define business models exactly for cases in which the requirements are unclear or incomplete.MethodThis paper, based on the model driven approach, proposes a set of models at the CIM-level and model transformations to connect these models. Accordingly, the formalisation approach of this paper involves formalising the goal model using the category theory and the scenario model and business process model using Petri nets.ResultsWe have defined a set of metamodels and transformation rules making it possible to obtain automatically a scenario model from the goal model and a business process model from the scenario model. At the same time, we have defined a mapping rule to formalise these models. Our proposed CIM modelling approach and formalisation approach are implemented with an MDA tool, and it has been empirically validated by a travel agency case study.ConclusionThis study shows how a CIM modelling approach helps to build a complete and consistent model at the CIM level for cases in which the requirements are unclear or incomplete in advance. 相似文献
3.
This paper presents a framework for the design of User Interfaces (UIs). By applying model transformations, the framework allows different UIs to be generated for different computing platforms. The tool presented in this work helps designers to build an abstract user interface which is later transformed into a concrete user interface by means of transformation techniques based on graph grammars. These techniques can be used to generate implementation code for several UI platforms including desktop applications, dynamic websites and mobile applications. The generated user interfaces are integrated with a multi-tier application by referencing external services and communicating with the application core over Web Service protocols. Our tool also allows the concrete interfaces to be enhanced before generating the final UI. The approach uses an adaptation of UIML (User Interface Markup Language). The adaptation focuses on defining a data model and a services model, and it also introduces a navigation model that allows data communication from one UI to another. The obtained UIs together with Web Services can conform complete applications instead of just being prototypes. 相似文献
4.
Everton L. G. Alves Patricia D. L. Machado Franklin Ramalho 《Software and Systems Modeling》2014,13(3):1141-1165
Automatic generation of platform-independent and -dependent built-in contract test drivers that check pairwise interactions between client and server components is presented, focusing on the built-in contract testing (BIT) method and the model-driven testing approach. Components are specified by UML diagrams that define the contract between client and server, independent of a specific platform. MDA approaches are applied to formalize and perform automatic transformations from a platform-independent model to a platform-independent test architecture according to a BIT profile. The test architecture is mapped to Java platform models and then to test code. All these transformations are specified by a set of transformation rules written in the Atlas Transformation Language (ATL) that are automatically performed by the ATL engine. The solution named the MoBIT tool is applied to case studies in order to investigate the expected benefits and challenges to be faced. 相似文献
5.
Ileana Ober Marc Palyart Jean-Michel Bruel David Lugato 《Software and Systems Modeling》2018,17(1):319-342
This paper reports on a four-year project that aims to raise the abstraction level through the use of model-driven engineering (MDE) techniques in the development of scientific applications relying on high-performance computing. The development and maintenance of high-performance scientific computing software is reputedly a complex task. This complexity results from the frequent evolutions of supercomputers and the tight coupling between software and hardware aspects. Moreover, current parallel programming approaches result in a mixing of concerns within the source code. Our approach relies on the use of MDE and consists in defining domain-specific modeling languages targeting various domain experts involved in the development of HPC applications, allowing each of them to handle their dedicated model in a both user-friendly and hardware-independent way. The different concerns are separated thanks to the use of several models as well as several modeling viewpoints on these models. Depending on the targeted execution platforms, these abstract models are translated into executable implementations by means of model transformations. To make all of these effective, we have developed a tool chain that is also presented in this paper. The approach is assessed through a multi-dimensional validation that focuses on its applicability, its expressiveness and its efficiency. To capitalize on the gained experience, we analyze some lessons learned during this project. 相似文献
6.
Hans Schippers Pieter Van Gorp Dirk Janssens 《Electronic Notes in Theoretical Computer Science》2005,127(3):5
Model transformation is a fundamental technology in the MDA. Therefore, model transformations should be treated as first class entities, that is, models. One could use the metamodel of SDM, a graph based object transformation language, as the metamodel of such transformation models. However, there are two problems associated with this. First, SDM has a non-standardized metamodel, meaning a specific tool (Fujaba) would be needed to write transformation specifications. Secondly, due to assumptions of the code generator, the transformations could only be deployed on the Fujaba tool itself. In this paper, we describe how these issues have been overcome through the development of a template based code generator that translates instances of a UML profile for SDM to complete model transformation code that complies to the JMI standard. We have validated this approach by specifying a simple visual refactoring in one UML tool and deploying the generated plugin on another UML tool. 相似文献
7.
ContextConstructing bespoke software development methodologies for specific project situations has become a crucial need, giving rise to Situational Method Engineering (SME). Compared with Software Engineering, SME has a long way to go yet; SME approaches are especially deficient as to support for modeling, portability, and automation. Model-Driven Development (MDD) has been effectively used for addressing these issues in Software Engineering, and is also considered a promising approach for resolving them in SME.ObjectiveThis paper aims to address the shortcomings of existing SME approaches by introducing a novel MDD approach, specifically intended for SME purposes, that uses a pattern-based approach for model transformation.MethodDeveloping a MDD approach for SME requires that a modeling framework, consisting of modeling levels, be defined for modeling software development methodologies. Transformation patterns should also be specified for converting the models from one level to the next. A process should then be defined for applying the framework and transformations patterns to real SME projects. The resulting MDD approach requires proper evaluation to demonstrate its applicability.ResultsA framework and a semi-automated process have been proposed that adapt pattern-based model transformation techniques for application to the methodology models used in SME. The transformation patterns have been implemented in the Medini-QVT model transformation tool, along with two supplementary method bases: one for mapping the situational factors of SME projects to requirements, and the other for mapping the requirements to method fragments. The method engineer can produce the methodology models by using the method bases and executing the transformation patterns via the tool.ConclusionThe validity of the proposed approach has been assessed based on special evaluation criteria, and also through application to a real-world project. Evaluation results indicate that the proposed approach addresses the deficiencies of existing approaches, and satisfies the practicality requirements of SME approaches. 相似文献
8.
Frank Hilken Martin Gogolla Loli Burgueño Antonio Vallecillo 《Software and Systems Modeling》2018,17(3):885-912
This paper proposes the use of equivalence partitioning techniques for testing models and model transformations. In particular, we introduce the concept of classifying terms, which are general OCL terms on a class model enriched with OCL constraints. Classifying terms permit defining equivalence classes, in particular for partitioning the source and target model spaces of the transformation, defining for each class a set of equivalent models with regard to the transformation. Using these classes, a model validator tool is able to automatically construct object models for each class, which constitute relevant test cases for the transformation. We show how this approach of guiding the construction of test cases in an orderly, systematic and efficient manner can be effectively used in combination with Tracts for testing both directional and bidirectional model transformations and for analyzing their behavior. 相似文献
9.
Model transformations can be used in many different application scenarios, for instance, to provide interoperability between
models of different size and complexity. As a consequence, they are becoming more and more complex. However, model transformations
are typically developed manually. Several code patterns are implemented repetitively, thus increasing the probability of programming
errors and reducing code reusability. There is not yet a complete solution that automates the development of model transformations.
In this paper, we present a novel approach that uses matching transformations and weaving models to semi-automate the development
of transformations. Weaving models are models that contain different kinds of relationships between model elements. These
relationships capture different transformation patterns. Matching transformations are a special kind of transformations that
implement methods that create weaving models. We present a practical solution that enables the creation and the customization
of different creation methods in an efficient way. We combine different methods, and present a metamodel-based method that
exploits metamodel data to automatically produce weaving models. The weaving models are derived into model integration transformations.
To validate our approach, we present an experiment using metamodels with distinct size and complexity, which show the feasibility
and scalability of our solution.
相似文献
Patrick ValduriezEmail: |
10.
A nonconventional approach to the analysis of dedicated computing structures in which the number of compute cycles is used as a design parameter to determine families of transformations implementable in the structure is presented. Using this approach, a single architecture can be used to implement a family of transformations with varying degrees of complexity. The transformations generated by a matrix multiplication array are considered in detail. It is shown that, for some real-time applications it becomes possible to incorporate the compute time as a constraint for designs based in optimality criteria. In particular, a least square approximation problem is discussed 相似文献
11.
12.
Takuma Torii Tomio Kamada Kiyoshi Izumi Kenta Yamada 《Artificial Life and Robotics》2017,22(3):301-307
Artificial market simulations have the potential to be a strong tool for studying rapid and large market fluctuations and designing financial regulations. High-frequency traders, that exchange multiple assets simultaneously within a millisecond, are said to be a cause of rapid and large market fluctuations. For such a large-scale problem, this paper proposes a software or computing platform for large-scale and high-frequency artificial market simulations (Plham: /pl\(\Lambda\)m). The computing platform, Plham, enables modeling financial markets composed of various brands of assets and a large number of agents trading on a short timescale. The design feature of Plham is the separation of artificial market models (simulation models) from their execution (execution models). This allows users to define their simulation models without parallel computing expertise and to choose one of the execution models they need. This computing platform provides a prototype execution model for parallel simulations, which exploits the variety in trading frequency among traders, that is, the fact that some traders do not require up-to-date information of markets changing in millisecond order. We evaluated a prototype implementation on the K computer using up to 256 computing nodes. 相似文献
13.
A Spatial Access-Oriented Implementation of a 3-D GIS Topological Data Model for Urban Entities 总被引:1,自引:0,他引:1
Jiyeong Lee 《GeoInformatica》2004,8(3):237-264
3-D analysis in GIS is still one of the most challenging topics for research. With the goal being to model possible movement within the built environment, this paper, therefore, proposes a new approach to handling connectivity relationships among 3-D objects in urban environments in order to implement spatial access analyses in 3-D space. To achieve this goal, this paper introduces a 3-D network data model called the geometric network model (GNM), which has been developed by transforming the combinatorial data model (CDM), representing a connectivity relationship among 3-D objects using a dual graph. For the transformation, this paper presents (1) an O(n
2) algorithm for computing a straight medial axis transformation (MAT), (2) the processes for transforming phenomena from 3-D CDM to 3-D GNM, and (3) spatial access algorithms for the 3-D geometric network based upon the Dijkstra algorithm. Using the reconstructed geometric network generated from the transformations, spatial queries based upon the complex connectivity relationships between 3-D urban entities are implemented using Dijkstra algorithm. Finally, the paper presents the results of an experimental implementation of a 3-D network data model (GNM) using GIS data of an area in downtown Columbus, Ohio. 相似文献
14.
K. Lano S. Kolahdouz-Rahimi I. Poernomo J. Terrell S. Zschaler 《Software and Systems Modeling》2014,13(2):873-907
Model transformations are an essential part of model-based development approaches, such as Model-driven Architecture (MDA) and Model-driven Development (MDD). Model transformations are used to refine and abstract models, to re-express models in a new modelling language, and to analyse, refactor, compare and improve models. Therefore, the correctness of model transformations is critically important for successful application of model-based development: software developers should be able to rely upon the correct processing of their models by transformations in the same way that they rely upon compilers to produce correct executable versions of their programs. In this paper, we address this problem by defining standard structures for model transformation specifications and implementations, which serve as patterns and strategies for constructing a wide range of model transformations. These are incorporated into a tool-supported process which automatically synthesises implementations of model transformations from their specifications, these implementations are correct-by-construction with respect to their specifications. 相似文献
15.
16.
The Model Driven Architecture (MDA) is an approach to develop software based on different models. There are separate models for the business logic and for platform specific details. Moreover, code can be generated automatically from these models. This makes transforma- tions a core technology for MDA and for model-based software engineering approaches in general. Query/View/Transformation (QVT) is the transformation technology recently proposed for this purpose by the OMG. Triple Graph Grammars (TGGs) are another transformation technology proposed in the mid-nineties, used for example in the FUJABA CASE tool. In contrast to many other transformation technologies, both QVT and TGGs declaratively define the relation between two models. With this definition, a transformation engine can execute a transformation in either direction and, based on the same definition, can also propagate changes from one model to the other. In this paper, we compare the concepts of the declarative languages of QVT and TGGs. It turns out that TGGs and declarative QVT have many concepts in common. In fact, QVT-Core can be mapped to TGGs. We show that QVT-Core can be implemented by transforming QVT-Core mappings to TGG rules, which can then be executed by a TGG transformation engine that performs the actual QVT transformation. Furthermore, we discuss an approach for mapping QVT-Relations to TGGs. Based on the semantics of TGGs, we clarify semantic gaps that we identified in the declarative languages of QVT and, furthermore, we show how TGGs can benefit from the concepts of QVT. 相似文献
17.
18.
可信平台模块自动化测试研究 总被引:2,自引:0,他引:2
可信平台模块(trusted platform module,TPM)是信息安全领域新发展趋势可信计算的关键部件,对其进行规范符合性测试非常有必要.由于传统测试方法与经验无法满足精确、易被机器处理的测试要求,状态机理论可为符合性测试的正确性提供理论基础,但易于产生状态爆炸问题.因此,基于TPM规范进行了一致性测试建模,提出相应策略提高测试效率,建立了TPM自动化测试工具.该工具能基于数据库自动生成测试用例,根据状态图进行一致性测试或自定义测试,达到过程可视化的效果.针对待测试产品得出了较为全面一致性结论和基本安全分析,为今后的可信产品安全性测试打下基础. 相似文献
19.
Reinaldo B. Braga Igor A. Chaves Carina T. de Oliveira Rossana M.C. Andrade José Neuman de Souza Hervé Martin Bruno Schulze 《Journal of Network and Computer Applications》2013,36(1):274-283
In ad hoc grid environments, resources are not always available since nodes can spontaneously connect and disconnect at any time. Thus, these environments demand the correct execution of tasks to guarantee good performance. However, there are malicious users that affect the normal operation of these grids. These users modify tasks results and even cheat security mechanisms. Therefore, to assure high performance in these grid computing scenarios, it is essential to use punishment procedures based on trust models. These solutions have been used in wireless ad hoc networks, but not in the context of ad hoc grid computing. Thus, in this paper, we first present an analysis of mathematical trust models in ad hoc grid scenarios, using different ways to treat detection information passed on by other nodes. Then, we provide a comparison and a performance evaluation of these models using a grid simulator platform. Besides that, we choose the most accurate trust model among the evaluated ones to propose RETENTION: a reactive trust-based mechanism to detect and punish malicious nodes in ad hoc grid environments. Simulation results demonstrate the effectiveness of the proposed approach in detecting and punishing up to 100% of malicious nodes without generating false-positives. The results can be a valuable tool for network designers in planning trust models in ad hoc grid network deployments. 相似文献
20.
Kevin Lano Shekoufeh Kolahdouz-Rahimi Iman Poernomo 《International Journal of Software and Informatics》2012,6(2):233-269
Model transformations have become a key element of model-driven software development, being used to transform platform-independent models to platform-specific models, to improve model quality, to introduce design patterns and refactorings, and to map models from one language to another. A large number of model transformation notations
and tools exist. However, there are no guidelines on how to select appropriate notations for particular model transformation tasks, and no comprehensive comparisons of the relative merits of particular approaches. In this paper we provide a unified semantic treatment of model transformations, and show how correctness properties of model transformations can be defined using this semantics. We evaluate several approaches which have been developed
for model transformation specification, with respect to their expressivity, complexity and support for verification, and make recommendations for resolving the outstanding problems concerning model transformation specification. 相似文献