2.2 PIM–PSM Transformations
For the transformation of the structural model we use
Hibernate which provides an implicit PSM (relational
model) so we does not deal with issues of this kind
of model transformation. Composition and naviga-
tional models are used to formalize page templates
along with presentational model. These templates are
used to generate concrete pages using W3C’s XForms
standard for handling user inputs. The PSMs are rep-
resented with XML documents which allow XSLT to
be used for the page generation from templates.
2.3 Code Generation
We use the Eclipse Modeling Framework to create
the conceptual models. In the deployed application,
all the communication is based on XML documents.
When a user interacts with the system by filling and
submitting forms, an XML document is created and
passed to the server side. However, user-supplied data
should be validated against the data model. Since
XML documents’ validation are based on any of
the well-known XML schema languages (e.g., DTD,
XML Schema, RelaxNG), a schema was needed. A
freely available Eclipse plug-in called hyperModel
(http://www.xmlmodeling.com/hypermodel) is able
to transform a UML2 class diagram into an XML
Schema, therefore we applied it in our process.
The generated XML Schema is one of the most
important part of our architecture since it is used as
the base of the generation of XForms pages. On the
other hand, it is applied for validating all the XML
documents which are used for intra-system commu-
nication, as well. XForms pages might be embedded
in more complex XHTML pages which conform to
the composition and navigational model defined at the
conceptual modeling phase.
For creating models, OMG’s XML Metadata In-
terchange (XMI) gives the possibility of a kind of
tool-independence. As XMI is being an industrial
standard for exchanging metadata of UML models in
XML format, it is supported by all the major model-
ing tools so—in a collaborative environment—teams
might use different tools. First of all, UML diagrams
should be saved in an XMI-compliant format. After-
wards, XMI should be imported to Eclipse and let
hyperModel do the transformation to XML Schema
(.xsd). XForms pages are generated directly from
the .xsd using an XSLT. The whole process is shown
in Figure 3.
Figure 3: Using UML and XML technologies to create pro-
totypes.
3 FUTURE WORK
The presented approach is applicable for rapid design
and development of data-driven Web applications us-
ing MDA. We merely focused on building rapid pro-
totypes based on XForms pages generated from an
XML Schema.
Obviously, the current state of our work could
only be a part of a more comprehensive WIS develop-
ment framework. Due to the lack of space, we could
only enumerate our future plans: include modeling
of personalization and presentation (Fraternali, 1999);
presentational aspects should cover current technolo-
gies like AJAX, OpenLaszlo, etc.; introducing the
concepts of page fragments (portlets). Later on, statis-
tical models should be applied to achieve higher qual-
ity. For the correct measurement we need to identify
operational profiles and applicable statistical models
to find the relevant factors and methods.
REFERENCES
Ceri, S., Fraternali, P., Bongio, A., Brambilla, M., Comai,
S., and Matera, M. (2002). Designing Data-Intensive
Web Applications. Morgan Kaufmann Publishers Inc.,
San Francisco, CA, USA.
Conallen, J. (2000). Building Web applications with
UML. Addison-Wesley Longman Publishing Co.,
Inc., Boston, MA, USA.
Fraternali, P. (1999). Tools and approaches for developing
data-intensive web applications: a survey. ACM Com-
put. Surv., 31(3):227–263.
G
´
omez, J. and Cachero, C. (2003). OO-H method: extend-
ing UML to model web interfaces. pages 144–173.
Koch, N. and Kraus, A. (2003). Towards a common meta-
model for the development of web applications. Cueva
Lovelle, Juan Manuel (ed.) et al., Web engineering.
International conference, ICWE 2003, Oviedo, Spain,
July 14-18, 2003. Proceedings. Berlin: Springer. Lect.
Notes Comput. Sci. 2722, 497-506 (2003).
Schwabe, D. and Rossi, G. (1998). An object oriented
approach to web-based applications design. Theor.
Pract. Object Syst., 4(4):207–225.
MDA-BASED DEVELOPMENT OF DATA-DRIVEN WEB APPLICATIONS
255