Thesis full text (PDF) - Politecnico di Milano
Thesis full text (PDF) - Politecnico di Milano
Thesis full text (PDF) - Politecnico di Milano
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
4. Implementation Experience<br />
The concepts presented so far have been implemented in the con<strong>text</strong> of the WebML 2 design<br />
approach [3]. While other implementation approaches could have been followed, the one based<br />
on WebML seemed to be the more convenient and productive. Indeed, other existing UML<br />
C.A.S.E. tools would have been less effective, since they could have helped in producing the<br />
Java code of the components by provi<strong>di</strong>ng only a set of interfaces and / or stub classes, while all<br />
the co<strong>di</strong>ng of the business logics and of the front end Web application would have been manual.<br />
Vice versa, thanks to the WebML model and associated design tools, the components can be<br />
quickly designed and integrated in the visual design of the Web application, whose code can then<br />
be automatically generated. The conceptual components specified in Section 3 have been<br />
implemented once and for all as WebML primitives, which can be reused in the design. A set of<br />
WebML modeling and code generation facilities take care of the Web page implementation of<br />
the method invocations, and of the parameters between components.<br />
4.1 WebML and WebRatio background<br />
This Subsection summarizes the basic concepts of WebML and WebRatio that are needed for<br />
understan<strong>di</strong>ng the extensions that have been devised in this work. WebML is a Domain Specific<br />
Model for Web application design and development. It allows specifying the conceptual<br />
modeling of Web application hyper<strong>text</strong>s (site views) built on top of a content model of the<br />
application data. A site view is a graph of pages. Pages consist of connected units, representing<br />
at a conceptual level the publishing primitives that extract content from the database: a unit<br />
<strong>di</strong>splays instances of an entity, possibly restricted by a selector. Units are related to each other<br />
through hyper<strong>text</strong>ual links, representing navigational paths and carrying data from a unit to<br />
another. WebML allows specifying also operations updating the underlying data or performing<br />
other actions.<br />
2 http://www.webml.com<br />
66