
Current Research
Domain-specific modeling (DSM) raises the level of abstraction by specifying a metamodel that is aligned to a particular problem domain and constructing model interpreters that synthesize the domain models into software artifacts. In the presence of new stakeholder requirements, it is possible that a metamodel undergoes numerous changes during periods of evolution. Consequently, there is a fundamental problem in keeping the model interpreters up to date with these changes. This research dissertation proposes to formalize model interpreter implementation with the intent to facilitate interpreter evolution in terms of metamodel migration.
Model-driven approaches to software development, when coupled with a domain-specific visual language, have been shown to be beneficial at capturing the essence of a large system in a notation that is familiar to a domain expert. From a high-level domain-specific model, it is possible to concisely describe the configuration features that a system must possess, in addition to checking that the model preserves semantic properties of the domain. With respect to large legacy applications written in disparate programming languages, the primary problem of transformation is the difficulty of adapting the legacy source to match the evolving features specified in the corresponding domain model. This presentation describes a novel approach for uniting model-integrated computing with a mature program transformation engine. A domain-specific graphical modeling language is presented that has been used to model a large avionics product line legacy system. A model-driven program transformation technique is used to perform widespread adaptations of source code from the transformation rules that are generated from a domain-specific modeling environment.
The CORBA Component Model (CCM) has addressed the limitations of earlier CORBA object models by extending features and services that enable developers to develop components that can integrate commonly used CORBA services seamlessly. However, CCM still has some drawbacks such as complexity due to heterogeneity, and lack of support of QoS provisioning for embedded systems that are distributed and must react in real-time. One solution is to combine Model-Integrated Computing (MIC) technologies with CCM. In MIC, domain-specific models are created and then synthesized into different artifacts (e.g., source code, or simulations). The Generic Modeling Environment (GME) is a generic, meta-configurable modeling environment developed by Vanderbilt University that idealizes the principles of MIC. We are using the GME to help model and synthesize standard component-based CCM middleware at high levels of abstraction. To provide better modularization and customizability, we are targeting CIAO (the Component Integrated ACE Orb) from Washington University. Another focus of our integration is the ˇ°Framework for Aspect Composition for an EvenT channelˇ± (FACET), also under development at Washington University. This integration will assist in the modeling of distributed and embedded real-time systems within the GME to facilitate the generation of a componentized CORBA event channel that has been modularized using principles of aspect-orientation.
![]()
*This work is funded by the DARPA Information Exploitation Office (DARPA/IXO), under the Program Composition for Embedded Systems (PCES) program.