Fifteen Years of Industrial Model-Driven Development in Software Front-ends. Find WebRatio and IFML on the Novatica Journal (in Spanish!)

Novatica, the official journal of the Spanish association of Computer Science Technicians (ATI), just published a monographic issue on “Adopción industrial de la ingeniería del software dirigida por models” (industrial adoption of model-driven software engineering practices).

Together with a set of interesting experiences mainly in the Spanish market, the issue also features an article about WebML, WebRatio and IFML, written by Stefano Butti and myself, and graciously translated to Spanish by Matteo Silva and the WebRatio team in Latin America.

The paper discusses the history behind the standard IFML, recently adopted by the Object Management Group. We show how our initial proposal called WebML has been an incubator for research and industrial exploitation on conceptual modeling, exploiting existing experiences in the field and continuously addressing new challenges concerning abstractions, methods, tools, and technologies. We summarize the essence of the approach and we show the supporting modelling tool WebRatio at work.

This journal issue is a valuable resource, especially for Spanish-speaking people, as you will be able to find a comprehensive coverage of the model-driven market in Spain, and more in general some interesting industrial experiences with model-driven approaches (all written in Spanish!).

For your convenience, you can find the English and Spanish preprint versions of the articles here, in the form of WebRatio white papers, courtesy of WebRatio and Novatica.

Here below you can find the original front page of our article as published in Novatica:

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).

My invited post on Modeling Social Web Apps (on

It’s with great pleasure that I announce my invited post on the blog, curated by Jordi Cabot.
First, I’m glad he invited me. Second, I’m happy that he asked for a post on Social-enabled Web application modeling.
I mean, we all see how social technologies are transforming our life. And yet, the modeling community and the software engineering community at large are paying very limited attention to this phenomenon.
That’s why I decided to address the problem by proposing a model-driven approach that is specifically focused on the development of Web applications that exploit social features, and my invited post is exactly focusing on this.
Basically, the proposal is to go from requirement specification down to static and dynamic design and to code generation of social applications with a pattern-based approach, which exploits goal-based requirement specification, UML modeling, and WebML models (enriched with social-specific primitives) for describing the user interaction. This image intuitively summarizes the idea:

You can find more details in the invited post on Social web application modeling on Jordi’s blog, and also check out the video that summarizes the approach:

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

CrowdSearch 2012: my experience at the First International Workshop On Crowdsourcing Web Search at WWW2012

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

Code Generation 2012 – from geeky (programming) interfaces to user interfaces

Code Generation 2012 logo

For the second year, I’ve been attending the event called Code Generation, held in Cambridge, UK and organized by Software Acumen. For the second year, the event has been a quite good mix of practitioners, vendors and experienced evangelists.

During the event, Emanuele Molteni (product manager of WebRatio) and I have given a talk on User Interaction modeling problems, requirements and initiative, with special attention to the IFML (Interaction Flow Modeling Language) standardization activity within OMG. I think the problem is perceived as definitely relevant by the community, as demonstrated by the lively discussion that followed the presentation.

I would say that the main characterization of this year is really towards User Interaction modeling. A lot of sessions and speeches (including ours) addressed this problem from different perspectives, spanning from multi-platform mobile apps, to interaction modeling, to interpreted approaches for enterprise UIs, and so on. Even during our presentation, the audience admitted that they have built tens of domain specific languages (DSLs) for modeling some aspects of UIs. If you are interested in the topic, you can have a look at our presentation here:

WebRatio has been sponsoring the event, and as a sponsor also got a booth at the conference (see picture). We have been interacting with a lot of visitors ad got enthusiastic feedback.

WebRatio booth at Code Generation 2012.

The event also features several interesting sub-events, sessions and keynotes, notably:

.. and several other interesting talks. 
In summary, happy to attend and looking forward to next edition.

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

Presentation at Code Generation 2012: User Interaction Modeling: current status of the standardization process

Together with Emanuele Molteni, I will give a speech at Code Generation 2012 on: 
User Interaction Modeling: current status of the standardization process, from the requirements to the language.

In this presentation we will go through our 15-years experience of user interaction modeling for the Web, based on WebML and WebRatio, and we will delve into the challenge of making our own domain-specific language (DSL) a standard. We will present the ongoing activities at OMG towards the standardization of a Interaction Flow Modeling Language (IFML): we will discuss the requirements and the scope of the sought standard, and we will propose a solution based on our 15-year experience in Web interaction design. We will be inspired by our WebML language, but we will also explain how to go beyond that, so as to cover mobile, multi-touch, collaborative applications, independently from the implementation platform.
We will also show how a dedicated interaction modeling tool like WebRatio can ease the development through a plethora of facilities supporting the developer, including: visual debugging, quick prototyping, multi-platform and cloud deployment, and so on.

I look forward to the exciting days in Cambridge and to the feedback we will get from the public.
If you have suggestions or proposals on the topics you wish us to cover during the speech, feel free to let us know!

If you want to know more about the IFML standardization at OMG, you can visit these posts on IFML. The presentation given on IFML at CG 2012 is available on Slideshare and visible here (see below).

WebRatio is a proud sponsor of the event. See you in Cambridge then!

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

Interaction Flow Modeling Language RFP issued at OMG

WebRatio Cubes roaming San Francisco
while I was engaged in the approval of the
IFML RFP in Santa Clara, CA.

After 9 months of participation to the OMG meetings, intensive interactions with stakeholders, and interesting feedback from big vendors and users (including IBM, Microsoft, Thales, NoMagic, SoftTeam, and others), OMG issued the official request for proposal (RFP) for IFML (Interaction Flow Modeling Language), a domain-specific modeling language for describing model-driven specification of user interaction. The RFP has been proposed for issuance by the ADTF (Analysis and Design Task Force), and then approved by the AB (Architecture Board) during the last technical meeting in Santa Clara, CA.

The IFML RFP will be the framework where we propose our contribution to OMG standardization based on the extensive 10-year experience on WebML and WebRatio.

If you want more details, you can go and find the requirements directly on the official RFP document, which is publicly available on OMG servers at the url:

Or, if you want more personal insights, you can read my complete post on the WebRatio blog.

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

Representing Social BPM and WebML at the BPMN workshop 2011

Tomorrow (November 21st) I’ll present two contributions to the 3rd international BPMN workshop in Luzern, Switzerland.
My first speech will present our proposed notation for representing Social Business Processes within Social BPM scenarios. Social networking is more and more considered as crucial for helping organizations harness the value of informal relationships and weak ties, without compromising the consolidated business practices embedded in conventional BPM solutions. However, no appropriate notation has been devised for specifying social aspects within business process models. We propose a first attempt towards the extension of business process notations with social features. In particular, we devise an extension of the BPMN notation for capturing social requirements. Such extension does not alter the semantics of the language: it includes a set of new event types and task types, together with some annotation for the pool/lane levels. It actually exploits the extensibility features of BPMN 2.0. Our notation enables the description of social behaviours within BPMN diagrams. To demonstrate the applicability of the notation, we implement it within the WebRatio BPM editor and we provide a code generation framework that automatically produces a process enactment Web application connected with mainstream social platforms.The presentation is available on SlideShare:

My second speech is on Execution Semantics of BPMN through MDE Web Application Generation, using BPMN and WebML. I describe our pragmatic approach based on Model Driven Engineering (MDE) principles for implementing the execution semantics of BPMN. The approach is implemented in WebRatio and is based on a two-step model transformation that transforms BPMN models into Web application models specified according to the WebML notation and then into running Web applications. Thanks to the proposed chain of model transformations it is also possible to fine tune the final application in several ways by refining the intermediate WebML application models. The presentation is available on SlideShare:

More information on the workshop can be found at:
In particular, the program of the day is available here.

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

10 years of WebRatio (and 15 of WebML)

This is a quick visual summary of the event held at Villa Grumello, Como, Italy, on October 14th, 2011 for the celebration of the 10 years of WebRatio:

Further pictures of the event are available on the WebRatio blog. Some of the ideas I presented there are described in my previous post.
The presentation I gave at the 10-year event is available on SlideShare:

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