Automatic Code Generation for Cross-platform, Multi-Device Mobile Apps. An Industrial Experience

With Aldo Bongio (WebRatio), Jordi Cabot (ICREA and UOC), Hamza Ed-douibi (EMN) and Eric Umuhoza (Politenico di Milano), we worked on a research on Automatic Code Generation for Cross-platform, Multi-Device Mobile Apps.

We presented our study at the MobileDeLi workshop, where we reported on a comparative study conducted to identify the best trade-offs between different automatic code generation strategies.
Here are the slides presented there:

We covered the following strategies by implementing them using different technologies and target platforms:

  1. PIM-to-Native Code (NC)
  2. PIM-to-PSM-to-NC
  3. PSM-to-NC.
  4. PIM-to-Cross Platform Code (CPC)
  5. PIM-to-Framework Specific Model (FSM)-to-CPC

Some additional details are available in this post by Eric on Jordi’s blog.

Our study showed that there is no approach better than others in absolute terms but provided useful guidelines (e.g. cross platform approaches are generally advisable for companies with limited resoures) that helped us to identify the best strategy for the WebRatio company in particular.

Obviously, further investigations are ongoing…

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

Why we built an app and why we got featured as best app in the Apple store

It took years, countless hours of work and conceptual effort by a good bunch of people, but last December we delivered our flagship app Fluxedo to the Apple Store and Android Play Store.
And yes, we got featured as best new app in the Apple store.
This was a great surprise, for several reasons:

  • we built Fluxedo with cross-platform, non-native technologies
  • the UX was pixel-perfect wrt the Google material design guidelines
  • we didn’t advertise, push or apply any PR techniques on the app
And anyway, we got selected by Apple.
How was that?
I think three main points contributed to this success are:
  • detailed studies of UX, feedback from user panels, and expertise in usability
  • maniacal care on the implementation issues, performance, and testing of features
  • solid data management architecture
  • long-term research underneath the concept of the app (as apparent from various scientific publications that feature the technical aspects of the product: we got papers accepted at BPMS2 2012, MobileSoft 2015, ICWE 2015, and SLE 2015)
All this allowed a resulting app that is undistinguishable from native ones and works perfectly on any device.
Add to this a continuous improvement and evolution philosophy, and you get the core of the values of Fluxedo. WE are now working intensively on a new version of the app, completely re-engineered, to further improve the user experience and performance.
You can get an idea of the app from this video (or visit www.fluxedo.com):

 

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

Here we are: IFML 1.0 published by the OMG officially

IFML 1.0 is finally published!

The OMG released the official 1.0 version of the new standard in March 2015. It took several years of research, discussions and validation, but here we are with the standard specification. The specification document can be downloaded for free at:

http://www.omg.org/spec/IFML/

Here is Emanuele ready for the presentation given at the Object Management Group ADTF (Analysis & Design Task Force).

Emanuele Molteni presenting IFML implementation
and success stories at the OMG meeting

With perfect timing, we are also ready to go to the market with:

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

The business value of Mobile + Cloud + Internet of Things

Once again, this year I gave a presentation at SMAU Milano together with WebRatio (with Matteo Sassi as a co-speaker).

The purpose this time was to show and inspire on how Mobile, Cloud and IoT are becoming concrete business opportunities.

We tried to give a different interpretation to these technology trends: At first glance, the technologies that integrate Cloud, Mobile andInternet of Things (IoT) are attractive only to industry leaders with the ability to invest huge budgets and resources (such as Google Nest or Philips HUE, for example). These technologies are becoming attractive for individual developers who implement solutions thanks to open-source hardware and systems, such as Arduino and Raspberry PI which then inevitably force them to make design compromises.

We showed how conceptual solutions like the one proposed by WebRatio offer a code less approach that gives companies the opportunity to enter as main players, without limitations, in this new Mobile, Cloud and IoT market.

By using WebRatio Platform, companies can model apps with the IFML language (Interaction Flow Modeling Language) and “rationalize” the interaction with the IoT networks (think of the interaction of the sensors on which the “Internet of Things” technology is based) and put them into operation directly in the Cloud. In this way, companies save on infrastructure costs and reduce the cost and time to design and build applications.  It is possible to design new applications in this context caring only to use the correct interfaces and focusing on the opportunities provided by this new technology.

Here is the presentation we gave (partly in Italian, but very visual):

Together with a few pictures of the event:

My other presentations at SMAU given in the past are:

Mobile, Cloud, BPM through MDD for fostering the business. Presentation at SMAU 2013

BPM and Cloud, the ideal partners. SMAU 2012 presentation

Seminar on Social BPM at SMAU 2011 Milano

Trends and challenges in Business Process Management (BPM) at SMAU 2010

And my personal page on the SMAU site is:

http://www.smau.it/speakers/marco.brambilla/

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

Mobile, Cloud, BPM through MDD for fostering the business. Presentation at SMAU 2013

Yesterday, together with Matteo Sassi from WebRatio, I gave a seminar at SMAU 2013 on applying model-driven engineering solutions to Mobile, Cloud, and BPM technologies for fostering the business.
The main message is that MDD and MDE can dramatically increase efficiency, flexibility and effectiveness of the enterprise by letting it address better the needs of the customers.
The presentation I gave is reported here below (in Italian).

Here is the setting of the presentation, with Matteo Sassi doing the demonstration of the WebRatio tool for BPMN and IFML modeling, quick prototyping and deployment on the cloud.

https://vine.co/v/hdlgzQwOz95/embed/simple//platform.vine.co/static/scripts/embed.js
 To keep updated on my activities you can subscribe to the RSS feed of my blog or follow my twitter account (@MarcoBrambi).

Social Informatics workshop: Social networking at work with human factors and technical platforms in mind

Today I’m attending an extremely interesting workshop on Social Informatics at University of Trento. The workshop gathers a diverse audience spanning from computer science to cognitive science and health.
The program of the day included the following presentations:

Supporting Social Interactions for Older Adults. Cristhian Parra, University of Trento, Italy
This talk focused on ways for encouraging social sharing and interactions between elders, and on which could be the fields where elders could provide and get higher benefits in online socialization.

Active Lifestyle applications and motivation instruments. Patricia Silveira, University of Trento, Italy
This talk discussed the role of serious games in preserving elders physical and mental functions and health.

Towards a crowdsourcing platform for elders. Pavel Kucherbaev, University of Trento, Italy. Neocogita S.r.l. – UNITN Spin-off in Cognitive Training. Nicola De Pisapia, University of Trento, Italy
This talk focused on understanding which are the cognitive capabilities that need to be continuously trained and maintained, also through games.
 Experience sharing: LiquidGalleries and ComeAlong. Beatrice Valeri, University of Trento, Italy
This talk presented two interesting experiences of sharing: LiquidGalleries is a flexible and social mobile app that allows a personalized and delocalized experience when visiting art exhibitions and museums. People can tag preferred art pieces in advance, get content on the fly, or tag pieces while visiting and sharing them or reading about them later at home.

Knowledge Spaces: Supporting Knowledge and Experience Sharing. Marcos Baez, University of Trento, Italy
This talk presented a set of methodological guidelines for defining experience sharing applications and showed them at work within the scenario of scientific publication sharing.

Sensing social interactions through smart phones. Aleksandar Matic, University of Trento and Create-net, Italy
This talk presented some techniques for detecting social activities in real world considering physical proximity, based on smart phone technologies (as opposed to dedicated hw used in other projects).

Civic Media Platforms. Maurizio Teli and Stefano De Paoli, ahref Foundation (Trento), Italy
The talk focused on platforms that aim at increasing the citizen participation to a common good target in local or government communities or activities, including also citizen journalism. The addressed problem is how to build a social community in this scenario, considering also possible biases (political or social) added. An example is the Timu platfom, focusing on storytelling.

BPM4Crowd.  Stefano Tranquilini, University of Trento, ItalyThis presentation suggests some basic technical support to the development of social applications. The idea is to provide a high-level abstraction access to the developer, so as to ease the development of applications. This is demonstrated with an online dating application implemented within a social network.
 
Convergence of social networking, search and business processes. Marco Brambilla, Politecnico di Milano, Italy
This was my talk and included an overview on Social BPM and CrowdSearch. I will post some slides very soon.

 Recommending content for basic and high education. Rosa Alarcon, Pontificia Universidad Catolica de Chile, Chile
This talk was about understanding the information overload in the educational market.
Existing content repositories for elearning are not sufficient. The standard ways for describing them (e.g., SCORM) are quite poor too.
They try to apply recommendation techniques for teachers and they end up with some initial results, including the fact that surprisingly teachers should not be clustered based on their specialization.

Interactive Experiences for supporting elderly or impaired young people. Paolo Massa, FBK, I3, Italy
This talk was about a few experiences on  applying technological tools for facilitating tasks and socialization of autistic boys and people with mental disorders.
Other activities are about biases in translation and editing on the web, especially on public sites like wikipedia (e.g., see http://manypedia.com or the wikitrip project), considering gender and political problems.

Credibility evaluation of Web content. Adam Wierzbicki, Polish-Japanese Institute of Information Technology, Poland
This speech presented an interesting corpus of Web credibility assessment. The assessment is done by asking people to assess credibility and cleanness of pages.
Game theory has been used also for classifying credibility. This research is a joint work with some Swiss institutes, including EPFL.
The talk also addressed the roles of wikipedia. It’s not just an encyclopedia, its a knowledge community, a collaborative innovation network, a community of prosumers, a model for the knowledge economy. But information about it is limited and social behaviours are critical (the environment is getting more and more unpleasant and closed). Overall, it cannot be defined a social centric platform.
Finally, the speech focused on serious social games for elders to motivate social interaction. A good paradigm is gaming based on gossiping because it grants trust, social norms, and ties.

Other speeches I could not attend included:

  • Cheating in online games / trust and reputation. Stefano De Paoli, ahref Foundation (Trento), Italy
  • Reseval Mash. Muhammad Imran, University of Trento, Italy
  • Social Processes over Social Networks. Juan Jose Jara, University of Trento, Italy
  • Discovery of composition knowledge for mashup development, process mining and BPM (BI). Carlos Rodriguez, University of Trento, Italy
  • Social Search and recommendation engine for scientific publications. Daniil Mirilenka, University of Trento, Italy
  • Overview of DALi project. Christopher Raphael Wilkinson, University of Trento, Italy

This was a great and multi-disciplinary experience, very well in line with our research project Search Computing, Cubrik, and BPM4People.

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

Mobile and consumerization — keys for event-based Social BPM?

I really appreciated the provocative post by Chris Taylor on the potential of Social BPM to replace emails in business processes. While I see the final statement there a little bit too optimistic, total replacement is definitely in my dreams and I agree on the general trend.

Actually, I see we are already in  a hybrid situation where email or text messaging is still needed for notifying people (especially end users) but with respect to the past they tend to be just reminders or references to the actual info, which is stored on a (web) system. The reason for this is sometimes different than BPM practices.
For instance, you may think about your online bank statement: you get a notification email what it’s available, but then you access it through the bank site. To have them on the web and not within an email is more a matter of security and compliance than of BPM implementation, but what’s interesting is that these small steps are slowly shaping the attitude and the minds towards expecting all behaviour and content to be on a system.

Example of bank statement notification.

What I think it’s still not yet here is the event management part. This still uses traditional means. For this, I foresee two crucial enablers for future adoption:
mobile apps (which can be a part of a “extended” BPMS): getting notifications and dashboards would be very convenient and acceptable by the users
–  “consumerization” of the business interfaces: if people perceive a (business) UI as user-friendly and convenient, he won’t object to using it instead of the email
But this has still to come..

However, I’m not really concerned about the notification phase toward the user, since this is anyway something coming from the enterprise systems. The critical point is to capture the behaviour of the user and the action he performs in response to the trigger. This is what would bring the maximum value to the enterprise in understanding the actual “hidden” procedures that go on within the company or at its borders.
This is the part where email falls short, because email activities cannot be traced in the general case. However, for this I see an even longer way to adoption. 

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

On mobile application development: native, web or both?

I’ve been solicited to write this short post by the interesting reading of the article “Mobile Application Development: Web vs. Native” by Andre Charland, Brian Leroux that recently appeared on Communications of the ACM, Vol. 54 No. 5.

Let me first clarify the definitions:

  • Native mobile application: application developed for a specific mobile platform (e.g., iPhone, iPad, Android, …)
  • Mobile web application: web site that has been designed appropriately to fit size, performance, and appearance of a mobile device

I appreciated that someone finally explicitly raised the question of whether is convenient to develop the one or the other. I think that the article mainly tackles technical problem (access to device input/output, performance, usability, and so on), which is fine. But I think that some other issues should be considered. In particular, also taking into consideration some input gathered at the keynote speech that Tim Berners Lee recently gave at WWW 2011 in Hyderabad, India, I’m keen to opt for the mobile option for a few reasons:

  1. The data that are dealt with would remain on the web, instead of being canned into some apps.
  2. The pages would be accessible and indexed by standard search engines
  3. The development would be (almost) platform independent (for sure much more than developing alternative native applications).
  4. Also developing domain specific languages and code generators would be much easier (see experiences such as Mobl-lang)
  5. From a business perspective, except for a few success stories, most of the native application exploit a well known brand to raise the number of downloads. For the rest of the world, the web model of linking and connecting resources is still the best one for gathering reasonable traffic.

As for the possible downsides, I think most of them can be easily solved:

  1. graphical coherency with the plaform of choice can be obtained reasonably easily
  2. integration with the in/out devices and sensors should be granted at the API level by the browser and should not require ad hoc coding

WebRatio also did some industrial implementations of mobile web applications. See for instance the B&B site for iPad.

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