[UP]
Top
|
|
|
WDialog - Toolkit for Dialog-Centric Web Applications WDialog is an advanced system to create dialog-centric web
applications. It focuses on user interfaces with many input elements
that need strict control of the possible user interactions
(e.g. editors for structured data, form centers, workflows). The key
features can be summarized as follows: The definition of the user interface (UI) is strictly
separated from the backend program (model) carrying out the actions
triggered by the user. The UI is described in an XML file that can be
developed independently of the backend program. This improves the
software engineering process, as developers for the UI part and the
backend part can concentrate on their own skills, and need not to be
experts for the other part. The developers are encouraged to adopt a
modular programming style even for the UI part. Last but not least,
the UI part can be re-designed and localized without having to
understand the rest of the application. The XML document type for the UI part provides a rich
language that specifies the dialog structure of the user interface,
and the persistence properties of the dialogs. It further includes
integrated HTML form elements, and a macro/template calculus. The
nature of this UI language allows it to develop a prototype
of the user interface that is mature enough for early presentations
although the backend is not yet available (rapid prototyping). Session
persistency is defined on the level of the UI language, so dialog
variables do not forget their state even in the early development
stages. The UI language determines the possible ways the user can take
through the application (storyboard). Although it has been tries to
make the UI language a powerful input/output processor, some features
are intentionally not available. It is not possible to develop real
algorithms in the UI language, and external stores (databases) are not
directly accessible. The interactive parts of the dialogs are modeled like
classic GUI widget sets, i.e. the HTML interactors can be used like
widgets visualizing the current state of the dialogs, and user clicks
are considered as events that can be handled by configurable callback
methods. The callbacks are programmed in a real programming
language (Objective Caml, or Perl). The callbacks usually implement
the algorithmic part of the application, and have access to all system
resources. There are several runtime environments for the final
application: It can be run as CGI program, but also as dedicated
application server to improve the performance. The WDialog toolkit itself does not require any
database system as background store, and provides several high performance
alternatives. As security issues become more and more important in
these days, it should be mentioned that WDialog includes features that
gives the security of web applications a solid and trustworthy
basis. Error-prone tasks such as handling escape encodings, parameter
passing, and implementing persistency are taken away from the
application developer, and are realized in a sound way by the WDialog
toolkit. Furthermore, the framework nature of WDialog enforces a
certain structure of the application, and keeps developers away from
adventurous designs.
These are only the highlights of the WDialog feature list,
making it a somewhat different web toolkit. This manual gives an
introduction to WDialog explaining its innovative concepts for
newcomers. The reference part describes every little piece of the
toolkit in detail.
|