Model-Driven Generation of Web Applications in UWE
International Conference on Web Engineering
Model-driven engineering (MDE) techniques address rapid changes in Web languages and platforms by lifting the abstraction level from code to models. On the one hand models are transformed for model elaboration and translation to code; on the other hand models can be executable. We demonstrate how both approaches are used in a complementary way in UML-based Web Engineering (UWE). Rule-based transformations written in ATL are defined for all model-to-model transitions, and model-to-code
... tions pertaining to content, navigation and presentation. An UWE run-time environment allows for direct execution of UML activity models of business processes. 1 This research has been partially supported by the project MAEWA "Model Driven Development of Web Applications" (WI841/7-1) of the Deutsche Forschungsgemeinschaft (DFG), Germany and the EC 6th Framework project SENSORIA "Software Engineering for Service-Oriented Overlay Computers" (IST 016004). 2 Object Management Group (OMG). MDA Guide Version 1.0.1. omg/2003-06-01, http://www.omg.org/docs/omg/03-06-01.pdf The development process of the UML-based Web Engineering (UWE ) approach is evolving from a manual process (based on the Unified Process ) through a semiautomatic model-driven process (based on different types of model transformations ) to a model-driven development process that can be traversed fully automatically in order to produce first versions of Web applications. A table of mapping rules is shown in . The UWE approach uses recently emerged technologies: model transformation languages like ATL 3 and QVT 4 . In this paper we present a fully implemented version using the ATLAS environment and based on ATL transformations. UWE applies the MDA pattern to the Web application domain from the top to the bottom, i.e. from analysis to the generated implementation (). Model transformations play an important role at every stage of the development process. Transformations at the platform independent level support the systematic development of models, for instance in deriving a default presentation model from the navigation model. Then transformation rules that depend on a specific platform are used to translate the platform independent models describing the structural aspects of the Web application into models for the specific platform. Finally, these platform specific models are transformed (or serialized) to code by model-to-text transformations. In a complementary way platform independent models describing the business processes are executed by a virtual machine thus providing a seamless bridge between modeling and programming. The UWE approach is completely based on standards -in the same way as MDA -facilitating extensibility and reusability. The remainder of this paper is structured as follows: First we give a brief overview on model-driven Web engineering. Next we present the UWE approach to MDWE and focus on the model-based generation of Web application using the model transformation language ATL and the run-time environment for executable business processes. We conclude with a discussion on related work, some remarks and an outline of our future plans on the use of model transformation languages.