The object-oriented hypermedia design model
Communications of the ACM
Designing Data-Intensive Web Applications
Designing Data-Intensive Web Applications
Story Diagrams: A New Graph Rewrite Language Based on the Unified Modeling Language and Java
TAGT'98 Selected papers from the 6th International Workshop on Theory and Application of Graph Transformations
An Object-Oriented Approach to Automate Web Applications Development
EC-Web 2001 Proceedings of the Second International Conference on Electronic Commerce and Web Technologies
A Model-Driven Development for GWT-Based Rich Internet Applications with OOH4RIA
ICWE '08 Proceedings of the 2008 Eighth International Conference on Web Engineering
Facing Interaction-Rich RIAs: The Orchestration Model
ICWE '08 Proceedings of the 2008 Eighth International Conference on Web Engineering
UWE-R: an extension to a web engineering methodology for rich internet applications
WSEAS Transactions on Information Science and Applications
Building distributed web applications based on model versioning with CoObRa: An experience report
CVSM '09 Proceedings of the 2009 ICSE Workshop on Comparison and Versioning of Software Models
Patterns for the Model-Based Development of RIAs
ICWE '9 Proceedings of the 9th International Conference on Web Engineering
Hi-index | 0.00 |
Building a rich internet application (RIA) requires the programming of various callbacks and listeners. AJAX like server requests require callback handler objects that react to the asynchronous server response. Active Graphical User Interface (GUI) elements like buttons or menu entries require action handlers. Using a timer queue requires appropriate event handlers, too. Programming all these handlers is tedious and error prone. Subsequent steps of e.g. initialization or of a protocol of server requests are scattered over multiple separated blocks of code. The control flow between these blocks is hard to retrieve. Some common variables have to be introduced in order to pass the application state between the different handler blocks. To overcome these problems, we propose to use an extension of UML statecharts, called Action Charts, dedicated to the modeling of callbacks and listeners. All kinds of handlers are modeled in a common uniform statechart notation. States become actions or handlers. Transitions represent the flow of execution. Variables are shared between actions providing a simple mechanism for passing the application state from one handler to the next. From such Action Charts we generate sourcecode that is compliant with the Google Web Toolkit (GWT). The generated code is pure Java code that facilitates validation and debugging of the modeled behavior. It can be translated to JavaScript and run inside the web browser using the GWT crosscompiler. The Action Charts and code generation are implemented as part of the open source CASE tool Fujaba.