regarding:
basic knowledge about web application and its
developing,
knowledge about relational databases and Entity
Relationship Diagrams.
The goal of the course “WebML in practice.
Using the WebRatio” is to provide students
theoretical and practical skills in WebRatio
modelling. It was designed to present students the
main components which may be used to create a
project and the use of best practices for the
implementation of application features. The course
describes the WebML which is graphical notation
useful in designing Web application. It provides a
way of expressing the complete structure of the
application including content, navigation and
presentation. The developing environment WebRatio
is also presented and trained. The complete web
application is also developed by students during the
course.
Main objectives of the course are:
to show students the fundamentals of web
applications development based on WebML using
WebRatio,
to present students models used in WebRatio,
to show students how to use WebML units in
practice,
to present students how to develop complete web
application and integrate it with database.
Students’ background needed contains requirements
regarding:
programming in general.
object oriented programming;
web applications modelling;
relational databases designing and using, entity
relationship diagrams;
some knowledge about HTML and CSS.
The course is composed of two parts: theoretical
lecture and practical lessons.
3.2 Courses Content
The content of the course “Model Driven
Engineering and WebML” has provided as lessons,
in the following areas:
MDE as a general idea, models and
transformations, standards.
WebML as a language of MDE of web
applications.
Structure of web application.
Web Data Modelling - data patterns, derivation,
WebML Object Query Language (OQL).
Web application development model.
The Model Driven Architecture (MDA, 2013) is
the standard presented by the Object Management
Group. It has been presented in details as a initial
idea of MDE. Three different models: Computation
Independent Model (CIM), Platform Independent
Model (PIN) and Platform Specific Model (PSM), as
well as transformations between modes discusses in
the course. Some needs, specifics features and
advantages of the web applications development are
discussed. The solution is appointed: the WebML –
a language for high-level design and develop of web
application intensive using of data (WebML, 2013).
WebML and WebRatio tool are a very good
example of the practical application of the MDE
idea.
The five models used by WebML (ie.: structure,
derivation, composition, navigation, presentation
and personalisation) and its transformation are
explained in details. The data model, its structure
design and development, as well as data structure
patterns and Object Query Language are presented
during the lessons.
The “WebML in practice. Using the WebRatio”
course is divided into two sections. The first one
contains theoretical lecture introducing basics of
web applications development with WebRatio, using
of WebRatio including data model and application
model and features of web application developed
with WebML and BPMN (White, 2009). The course
discusses also using of WebML operation units and
links as well as managing data with content units
(webml.org, webratio.com).
WebML models and units are also explained,
presenting usage of particular unit sets
(page/alternative, links, content units, operation
units, session units, service units, control flow units,
utility units, BPMN units). The lecture gives
students also orientation in data managing rules
including database connection and data model
construction. What is more, the lecture introduces
students into usage and features of WebRatio –
a modelling and software developing tool.
The second part of the course is dedicated to
practical activities using WebRatio (Brambilla,
2010; Kęsik, 2011). Students run example
applications and develop their own. They learn to
use WebML operation units and links in practice as
well as managing data with content units. Students
also design and create a database and fill it with
data. Database connection is also established using
WebRatio. Managing application users and their
views is also performed.
The example application students develop is
small CRM - Customer Relationship Management
system. It is an application dedicated to the
MODELSWARD2014-InternationalConferenceonModel-DrivenEngineeringandSoftwareDevelopment
134