Pattern-Based Specification of Crowdsourcing Applications – ICWE 2014 best paper

I’m really proud to announce that our paper “Pattern-Based Specification of Crowdsourcing Applications” has received the BEST PAPER award at ICWE 2014 (International Conference on Web Engineering), held in Toulouse in July 2014. The paper was authored by Alessandro Bozzon, Marco Brambilla, Stefano Ceri, Andrea Mauri, and Riccardo Volonterio.

The work addresses the fact that in many crowd-based applications, the interaction with performers is decomposed in several tasks that, collectively, produce the desired results.
A number of emerging crowd-based applications cover very different scenarios, including opinion mining, multimedia data annotation, localised information gathering, marketing campaigns, expert response gathering, and so on.
In most of these scenarios, applications can be decomposed in tasks that collectively produce their results; Tasks interactions give rise to arbitrarily complex workflows.

In this paper we propose methods and tools for designing crowd-based workflows as interacting tasks.
We describe the modelling concepts that are useful in such framework, including typical workflow patterns, whose function is to decompose a cognitively complex task into simple interacting tasks so that the complex task is co-operatively solved.
We then discuss how workflows and patterns are managed by CrowdSearcher, a system for designing, deploying and monitoring applications on top of crowd-based systems, including social networks and crowdsourcing platforms. Tasks performed by humans consist of simple operations which apply to homogeneous objects; the complexity of aggregating and interpreting task results is embodied within the framework. We show our approach at work on a validation scenario and we report quantitative findings, which highlight the effect of workflow design on the final results.

Here are the slides presented by Alessandro Bozzon during the ICWE conference:

 

Here is Alessandro Bozzon presenting:

and here is the picture of the actual award:

ICWE 2014 Best Paper Award Certificate to Pattern-Based Specification of Crowdsourcing Applications. Bozzon, Brambilla, Ceri, Mauri, Volonterio

To keep updated on my activities you can subscribe to the RSS feed of my blog or follow my twitter account (@MarcoBrambi).

IFML – Interaction Flow Modeling Language 1.0 – My tutorial on UI and UX modeling & design at ICWE 2014

This year, ICWE – International Conference on Web Engineering, took place in Toulouse, France.

Given the upcoming adoption by the OMG – Object Management Group of IFML, I decided to give a tutorial on it there. IFML, the Interaction Flow Modeling Language (IFML) is designed for expressing content, user interaction and control behaviour of the front-end of software applications, as well as the binding to the persistence and business logic layers. IFML is the missing piece for modeling the front end of software applications and perfectly complements other modeling dimensions in broad system modeling projects. Therefore, IFML works best when integrated with other modeling languages in the MDA suite, such as UML and BPMN. This tutorial illustrates the basic concepts of IFML, presents the design best practices and integration with other modelling languages, and discusses some industrial experiences (also featuring quantitative measures of productivity) achieved by the companion tool WebRatio. At the end of the tutorial, attendees will get a general knowledge about IFML (they will be able to design simple models and to derive models from existing interfaces), will be able to associate front-end design with system modelling at large, will see the associated MDE tool WebRatio at work, and will get a glimpse of real-life industrial applications developed for large enterprises. This will let them appreciate the advantages of a model-driven development approach at work within large-scale industrial project.

Here are the slides of my tutorial:

And here are some pictures taken by some attendees:

 

To keep updated on my activities you can subscribe to the RSS feed of my blog or follow my twitter account (@MarcoBrambi).

Success story paper: Large-scale Model-Driven Engineering of Web User Interaction with WebML and WebRatio

Our paper “Large-scale Model-Driven Engineering of Web User Interaction: The WebML and WebRatio experience” has been published online on Elsevier’s journal: Science of Computer Programming, in the special issue Success Stories in Model Driven Engineering (edited by Davide Di Ruscio, Richard Paige, Alfonso Pierantonio).

The history we report spans across a decade that has seen a dramatic  change in the way software applications are built, which can be summarized  in three fundamental factors that impacted the evolution of WebML and  WebRatio:
  • The progressive consolidation of theWeb as an application development platform
  • At the front-end, the multiplication of access devices and usage scenarios
  • At the back-end, Business Process Models emerged as a uniform way of representing cross-organization functionality, and Service Oriented Architecture as the technical vehicle for deploying process enactment on top of heterogeneous IT infrastructures.
These change drivers put much strain on a DSL like WebML, born for capturing the  features of the Web, and produced the timeline shown below:


The paper reports on our experience with WebML and WebRatio and describes the perspective of the new IFML standard adopted by OMG. The report tells the story of our company in the MDE tool market, facing the challenges of deploying MDE solutions in large-scale industrial players, with a focus on the model-driven design of user interaction and on code generation across all the tiers of Web/SOA applications. We describe our decisions on the DSL (domain specific language) and on the features we decided to implement (or not) in the tool. 
The paper includes an overview of WebRatio and of its accompanying DSL for Web application design (WebML); it describes the parallel evolution of the WebML language and of the WebRatio development environment; it reports on the the lessons learnt from the joint design of the DSL and of its support tool; it presents a sample of customer histories and reports some quantitative measures on the WebRatio usage, together with some statistics on WebML models size and development effort. Finally, we take the occasion to reflect on the success and failure factors for MDE emerged from the WebRatio experience.

The paper is available from Elsevier and also here in our open-access preprint version.

To keep updated on my activities you can subscribe to the RSS feed of my blog or follow my twitter account (@MarcoBrambi).

Trends in Web engineering: my 4 takes from ICWE 2012

At this point of the year, just before vacation time, it makes sense to me to think to Web Engineering practices at large and draw some trends and outlook for the field after this year.
As a PC chair of ICWE 2012 (International Conference on Web Engineering), this year I can claim I had a privileged view over the entire event and I think this was a good test for assessing the field.
Furthermore, being directly involved into the organization of MDWE workshop, I have been directly exposed to the specific aspects of the model-driven field for the Web.
I see the following trends in the field:

  • still limited attention to non-functional aspects in Web application development. Honestly, this doesn’t make any sense to me and makes me think that this is one of the reasons why Web Engineering is still seen as a niche sector, both in industry and academia. Actually, at least some awareness starts appearing (e.g., some works on assessing the productivity of model-driven approaches have been discussed), but actual results are still very preliminary. And the Web is ALL ABOUT NON-FUNCTIONAL ISSUES!
  • mashups are still getting a lot of attention, as demonstrated by the successful ComposableWeb workshop too. However, I think we need to rethink a little bit this field. My feeling is that traditional mashups are no longer interesting per se. Even very well known solutions like Yahoo Pipes! have reached a limited audience, and in general mashups have never reached the maturity level that let them be used for producing enterprise-class professional applications. So, am I claiming that mashups are a complete failure? Not at all! They actually represent an important step that enabled the current trends toward Web API integration, which are probably used in most of the existing Web sites. I think that the mashup community in the future should look at the broad problem of Web API integration at large.
  • the role of model-driven approaches seems to slowly move out of its original position, strictly related to modeling of Web user interfaces. The MDWE workshop raised a very interesting discussion on the role of MDE and Agile approaches (thanks also to the support of the nice Instant Community system provided by University of Trento). Some activities, including our work towards integration of WebML modeling with social networks or towards integration with Business Process Management, try to broaden the applicability of the approaches, but I think more effort is needed to revitalize the field.
  • Finally, content and social analysis (both syntactical/textual and semantic) is getting more and more interest in the community. This is demonstrated by the wide set of well-attended ICWE tutorials that addressed these issues (The Web of Data for E-Commerce, Epidemic Intelligence for the Crowd, SPARQL and Queries over Linked Data, Natural Language Processing for the Web).
If you see some other interesting trends in Web Engineering, feel free to share your thoughts!

To keep updated on my activities you can subscribe to the RSS feed of my blog or follow my twitter account (@MarcoBrambi).

Best paper award at MDWE workshop 2008

Our paper “A Metamodel Transformation Framework for the Migration of WebML Models to MDA” (by M. Brambilla, P. Fraternali, M. Tisi) was awarded the best paper prize at the 4th Int. Workshop on Model-Driven Web Engineering (MDWE 2008), colocated with MODELS 2008 in Toulouse, France. Proceedings are published online by the CEUR proceedings series, volume 389, pages 91-105.

A detailed implementation of the approach is described here.

Panel on Web Engineering and Web 2.0 at ICWE 2007

I have been invited as a panelist at the Panel on Web Engineering and Web 2.0, held at IBM TJ Watson research center, NY, USA, in July 2008, within the ICWE conference.
You can find my contribution here.

WebML online tutorials (audio and video)

Hi,
today I wish to point you to a set of tutorials I recorded some months ago.
They deal with WebML (Web Modeling Language) and the CASE tool WebRatio. They describe the WebML methodology for designing web applications and its modeling primitives.

WEBML TUTORIALS

Thesis and Project proposals for students from Politecnico

[ENG] Here are some recent proposals for theses and projects for students:

  • implementation, using AJAX and other rich internet technologies, of online web engineering tools. The tools will allow to draw diagrams of web sites and web applications, and will dynamically deploy/update the corresponding web application
  • integration of web application model transformations (MDD/MDA) with existing verification framework, for checking the correctness of the designs

[ITA] Proposte recenti per progetti e tesi presso il Politecnico di Milano:

  • implementazione, basata su AJAX e altre tecnologie per Rich Internet Applications, di strumenti CASE online per la progettazione di applicazioni web. L’applicazione deve consentire di realizzare diagrammi di applicazioni e generare (e fare deploy) dinamicamente le corrispondenti applicazioni
  • integrazione di trasformatori di modelli di applicazioni web (secondo l’approccio MDD/MDA) con strumenti esistenti di verifica formale, per controllare la correttezza di progetti web

Recent and current work

Just a quick update on my recent work.
I recently worked on:

  • Business process and workflow on the Web
  • Web service modeling
  • Integration of Web services and Web applications

I’m now working on:

  • Semantic Web applications and Semantic Web service modeling
  • Constraint design and tuning for web applications
  • Transformations between Web application models
  • Implementation of workflow constraints as standard application model constraints

Web Engineering: WebML and WebRatio

Since June 2000, I work in research projects related to Web Engineering. Web Engineering is the scientific discipline devoted to the study of methods, models, languages, and processes for the development of Web applications.
The Web Modelling Language (WebML) is a visual notation for specifying the composition and navigation features of hypertext applications.
WebML provides graphical, yet formal, specifications, embodied in a complete design process, which can be assisted by visual design tools. The main objectives of the WebML design process are:

  • expressing the structure of a Web application with a high-level description, which can be used for querying, evolution, and maintenance;
  • providing multiple views of the same content;
  • separating the information content from its composition into pages, navigation, and presentation, which can be defined and evolved independently;
  • storing the meta-information collected during the design process within a repository, which can be used during the lifetime of the application for dynamically generating Web pages;
  • modelling users and communities explicitly in the repository, to permit the specification of personalization policies and one-to-one applications;
  • enabling the specification of data manipulation operations for updating the site content or interacting with arbitrary external services.

WebML is patented by Politecnico di Milano, but can be used freely.

The WebML modeling language and its accompanying design method are currently implemented in a commercial Web design tool suite, called WebRatio.
With respect to the WebML development process, WebRatio covers the phases of data design and hypertext design, and supports implementation by automating the production of the relational database and of the application page templates.
Thanks to the automatic generation of J2EE code, the tool can be used for fast-prototyping, thus shortening the requirements validation cycle. Differently from traditional prototyping tools, which generate application mock-ups, the WebRatio code generator produces application modules running on state-of-the-art architectures, and can be used for implementation, maintenance, and evolution.