Then, the public asked questions to the panelists and a debate was conducted. The main conclusions of the panel are outlined in the present blog post.
This is the title of a Panel hold during the Engineering Interactive Computing Systems (EICS) 2010 Conference in Berlin, Germany. I was invited to participate together with Fabio PaternĂ˛ (CNR-ISTI, Italy), Jean Vanderdonckt (UniversitĂ¨ Catholique de Louvain, Belgium) and Philippe Palanque (UniversitĂ¨ Paul Sabatier, Toulouse, France). The panel moderator was Nick Graham (Queens University, Canada).
First of all, Nick Graham asked us to talk, for about 8 minutes, about the success stories and failures of Model-Based and Model-Driven approaches, challenges and perspectives. Here are the slides:
There was a general agreement on different technologies available today that are a direct result of the application of model-based approaches, including: W3C XForms, PaternĂ˛’s Concurrent Task Trees (CTT) and adaptation frameworks for the Mobile Web, being MyMobileWeb the open source reference implementation. Concerning failures the panelists remarked that Model-based approaches are powerful but at the cost of a limited flexibility. In fact It has been proved that typical CRUD applications benefit from this approach, but it is hard and sometimes unviable to engineer complex interactive systems using models and automatic code generation. Furthermore Model-Based/Driven approaches suffer when a high level of customization and creativity is needed when devising a new user interface. There is still an open issue concerning how UI designers (the “artists”) can start using models, particulary Concrete UI Models.
The panelists felt that it is still a challenge to apply Model-Based/Driven approaches to emerging scenarios: multiuser, multirole, multimodal systems, post-WIMP and tangible interfaces, ambient intelligence spaces, and the like. Other important issues discussed were the absence of open standards, open source projects, industry adoption, the existence of powerful authoring environments and the modularity and extensibility of the meta-models.
On the other hand the usage of Model-Based/Driven approaches requires abstraction skills which are not often found among the community of mainstream developers. However, it seems that they are already using Model-Based approaches for building applications. One example is the popular agile web development framework ‘Ruby on Rails’ (RoR). RoR provides a ’scaffolding’ process intended to create a complete new CRUD (Web) application starting from the description of a data model. The lesson learnt from agile web frameworks is the necesity of decreasing the cost of model development. Principles such as “Don’t Repeat Yourself” (DRY) and Convention over Configuration (CoC) should be also applied to model-based approaches.
This led us to the question whether Model-Based Approaches for engineering interactive systems, particularly the Cameleon Reference Framework, were agile or not. This is due to the fact that the more abstraction layers you have (task and domain, AUI, CUI, FUI) to deal with, the more likeness to repeat yourself, thus not being agile.
Concerning perspectives, there was agreement that for certain kind of interactive applications, for example those that have to be adapted to multiple contexts of use, model-based approaches are the only viable approach. To this aim the upcoming FP7 Call 5 project Serenoa will research on the usage of models for the automatic adaptation to the multiple dimensions of the context of use (Platform, User, Environment), covering the whole adaptation lifecycle.
Finally, standards were considered as a must, as they can set up the baseline and common ground for enabling new research and innovation cycles. The results of the W3C MBUI XG and the W3C Rome Workshop are promising. A new W3C Group on Model-Based UIs will be created on 2011 chartered to create common meta-models for the Task and AUI abstraction levels.
Next EICS Symposium will be in Pisa on June 2011. I look forward meeting you there.