Model transformation is a core mechanism for Model-Driven Engineering (MDE). Writing complex programs such as model transformations (MT) is error-prone, and efficient testing techniques are required for their quality assurance. There are several challenges when it comes to testing MT, including the automatic generation of suitable input test models and the construction of test oracles based on verification properties. Many approaches to generating input models ensure coverage of a certain level of the source meta-model and some input/output model constraints. Furthermore, most transformation testing techniques are tailored to specific implementation languages or quality properties, which makes it difficult to reuse testing techniques for different languages due to their language-specific nature. The diversity of languages and verification properties raises the need for a black-box testing framework of MT that is independent of transformation implementation languages as well as supports systematic verification of the quality properties. In this paper, we clarify the basic elements of such a framework, and how to apply this framework for systematically testing MT. The main tasks of the model transformation testing process, including test design, test execution and evaluation, are defined and realized within this integrated framework.
Unmanned aerial vehicles (UAVs) are essential in sixth-generation (6G) networks as they can operate as data relay devices or even a dynamic base station between the source and the destination. In this paper, we study a radio communication system with the support of the UAV to cope with the harsh propagation environment. Besides, caching and backscatter technologies are exploited to boost network efficiency. Specifically, the caching technology reduces network propagation delay, while the backscatter technology provides energy transmitted by the source to the UAV to extend its lifetime. We design the UAV trajectory by formulating and solving the total data throughput at the destination over a time window with respect to the limited energy and the quality of service requirement. The effective algorithm is based on the back-tracking method, which can obtain the solution in polynomial time. Numerical results demonstrate an improvement of the sum data throughput by exploiting the proposed algorithm design compared with the different fixed UAV path planning benchmarks.
Model transformations play an essential role in model-driven engineering. However, model transformations are often complex to develop, maintain, and ensure quality. Platform-independent specification languages for transformations are required to fully and accurately express requirements of transformation systems and to offer support for realization and verification tasks. Several specification languages have been proposed, but it still lacks a strong one based on a solid formal foundation for both high expressiveness and usability. This paper introduces a language called TC4MT to precisely specify requirements of transformations. The language is designed based on a combination of a contract-based approach and the graph theory foundation of triple graph grammar. Specifically, we consider graph patterns as core elements of our language and provide a concrete syntax in the form of UML class diagrams together with OCL conditions to visually and intuitively represent such pattern-based specifications. We develop a support tool and evaluate our proposed method by comparing it with current methods in literature.
The stringent control of access rights during business processes execution is an important technique to ensure systems security. Business processes are often designed and operated based on models represented by domain-specific languages, such as BPMN. Moreover, access control policies are often studied and specified based on access control models, such as Role-based Access Control (RBAC) and Attribute-based Access Control (ABAC). These security techniques have several challenges that need to be addressed, such as (1) ensuring consistency of RBAC/ABAC policy specifications and (2) ensuring compliance with RBAC/ABAC policies when executing a business process. In this paper, we propose using a metamodeling technique to take advantage of UML and OCL’s expressive power in order to facilitate validation and verification of RBAC/ABAC policies. Within our approach, the RBAC metamodel is extended so that ABAC constraints for complex business rules could be captured and checked. We build a support tool by incorporating Activiti (the support tool for specifying and implementing BPMN models) with USE (UML-based Specification Environment). The proposed method is experimented and evaluated for the process of liquidating the individual teaching contracts of a training management system.
Model transformation plays a critical role of model-driven approaches and is a significant quality factor for final products. Among current approaches to testing transformations, specification-driven testing gains much attention of research community since the black-box testing has many advantages including understandability for modelers and independence of transformation languages. One of the main challenges for this approach is how to systematically and effectively generate test cases from a transformation specification, i.e, rather than from its implementation. This paper aims to introduce a language on the one hand to precisely specify transformation requirements and on the other hand to facilitate the verification and validation of MTs. Within our approach, such a transformation specification language is defined based on triple-graph-grammar (TGG) rules and graph patterns that allow us to express transformation requirements in a visual, precise, and declarative way. Besides, we introduce a systematic testing framework to ensure many important properties of MTs such as syntactical correctness, completeness, functional behavior, and information preservation.
Quality model transformations play a key role in the successful realization of Model Driven Engineering in practice. In the relational model transformations, rule dependency relations directly impact quality properties such as correctness, completeness, and information preservation. The analysis of rule dependencies from the declarative specification is expected to bring advantages for testing transformation properties.In this paper, we proposed a black-box approach for testing relational model transformations based on the analysis of the declarative specification using Triple Graph Grammar (TGG) rules. We exploit declarative TGG rules to capture the rule dependencies. Then, rule dependencies are combined together using the t-way testing technique to create test case descriptions. We transform patterns representing the input test condition and the oracle function of a test case description into OCL (Object Constraint Language) constraints to facilitate automatically generating input test models by solving constraints and querying interesting properties on the output models.
Target coverage and connectivity are two main challenging and important issues in wireless sensor networks. The former is for providing sufficient monitoring quality where all points of interest in the network are covered by sensor nodes and the latter is for guaranteeing satisfactory communicating capability where all sensors can connect to at least one sink via relay nodes. In this paper, we focus on minimizing the number of nodes (i.e., sensor nodes and relay nodes) to provide target coverage and connectivity in wireless sensor networks with multiple sinks. We formulate the problem as two sub-problems. The first one (named as TC) is for placing sensor nodes to cover all targets and the second one (named as NC) is for placing relay nodes to connect sensor nodes to the sinks. We then propose a heuristic algorithm for the TC problem that exploits clustering technique. We also propose two heuristic algorithms for the NC problem that base on greedy approach and spanning tree. The experiment results show that our protocols can significantly reduce the number of required nodes in comparison with existing protocols.
Model transformations play a critical role in Model Driven Engineering. Such an importance has created a demand for transformation testing strategies and tools. This paper introduces an approach for testing model transformations using classifying terms. Classifying terms give a fine-grained control over the selection of input data and test oracles. By integrating this technique into graph-based transformation frameworks like RTL, we provide a way to validate model transformations using a graphical interface, in which the generation of input models and validation of output models are handled automatically.
Use cases have been widely employed as an efficient means to capture and structure software requirements. A use case model is often represented by a loose combination between a UML use case diagram and a textual description in natural language. The use case model expressed in such a form often contains ambiguous and imprecise parts. This prevents integrating it into model-driven approaches, where use case models are often taken as the source of transformations. This paper introduces a domain specific language named the Use case Specification Language (USL) to precisely specify use cases with two main features: (1) The USL has a concrete syntax in graphical form that allows us to achieve the usability goal; (2) The precise semantics of USL that is defined by mapping the USL to a Labelled Transition System (LTS) opens a possibility for transformations from USL models to other artifacts such as test cases and analysis class models.