ABSTRACT Aspects and Transformations to Support Evolution in(8)
发布时间:2021-06-07
发布时间:2021-06-07
A key benefit of system and software modeling is the ability to explore various design alternatives to reach a fixedpoint representation of a concrete system design. Among a diverse set of configuration possibilities, a model engineer must be able to explo
Considering Figure 3, to perform the equivalent transformation manually would require the insertion of over 120 new modeling elements and almost 150 connections between all of the new elements. Such a manual task is time consuming and prone to error. Furthermore, the real disadvantage of a manual process to replication can be seen when the next design alternative needs to be considered (e.g., scaling to 20 sites with 12 gateways per site), which requires a whole new set of manual modifications. The model transformation of Listing 2 can flexibly handle such replication through parameterization of the specific strategies.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 { findModel("Site " + intToString(site)).addGateWay_r(1, numGW); } strategy addGateWay_r(curr, numGW : integer) { if (curr <= numGW) then addGateWay(curr); addGateWay_r(curr+1, numGW); endif; } strategy addGateWay(num : integer) { declare site_gw : atom; declare ec : model; site_gw := addAtom("CORBA_Gateway", "CORBA_Gateway" + intToString(num)); ec := findModel("Event_Channel"); addConnection("LocalGateway_EC", site_gw, ec); }
Listing 2. Model transformation to expand the number of CORBA gateways at a specific site.
Tool support for programming language environments is much more advanced than the current capabilities offered in modeling tools. Integrated Development Environments (IDEs) for programming languages provide numerous features for comprehending and evolving large code bases (e.g., automated refactoring, code navigation and visualization). Despite recent advances in modeling tools, there are still many tasks that can benefit from increased automation. Our experience has led us to believe that model transformation can provide a common technology for implementing various kinds of model evolution. In particular, our C-SAW transformation engine has been applied to several modeling languages in the domain of distributed real-time and embedded system in order to modularize crosscutting properties and replicate elements of a core model. We are exploring several additions that will provide extra value to the transformation process, such as testing and debugging support for the ECL to detect and find errors that may exist in a transformation specification.
Acknowledgements
The initial investigation of this research was made possible by previous support from the DARPA PCES program. Current support from the NSF CSR-SMA program is enabling the application of these ideas toward evolution of performance modeling for distributed design patterns.
上一篇:照明工程合同书
下一篇:2FSK数字传输系统仿真及设计