Spotlight on: GenMyModel, UML modelling in the browser

We speak to one of the creators of a new service promising to simplify production of UML-compliant models.

Like it or not, software
is increasingly moving into the browser (see: Firefox OS and most
of Google’s products). Software development, on the other hand, is
transitioning at a far slower pace. While the concept of “coding in
the cloud” has been pioneered by IDEs such as Cloud9 and Codenvy, many developers are sticking
with trusty desktop editors.

One company betting big on this trend taking off is GenMyModel. Based out of Lille,
France, the company have produced a web-based UML modelling tool
which is able to generate code directly from the model’s classes.
Models are constructed using a simple drag-and-drop visual editor,
and can be exported as images, XMI files or auto-generated code
(Java POJOs, JPA beans, SQL or Spring code) to be pushed directly
to GitHub.

GenMyModel CTO Thomas Legrand claims that, as most dedicated
modelling software is far from intuitive, many developers resort to
drawing their UML diagrams by hand. But most drawing tools
currently available are not UML-compliant, meaning there is “no
checking and no compliance”.

“When you use a drawing tool, all you can use is a PDF or
drawing file,” he told JAXenter. “But you cannot explore it or
generate anything from it. And you cannot say to your boss – ‘look,
this is a real model. I’m sure if we just develop this project
using my model, it’s going to be a success’.”

As you might expect from a web-based service, sharing files is
as simple as sending a URL. But Legrand says this “only the first
step”, with an update due October allowing for real-time
collaboration on the same document – “the same as Google Drive”.
Following that, the team are ambitiously planning to introduce a
built-in version control system and chat system.

While in beta, the product is entirely free, and will remain so
for at least another year, says Legrand. “We’ll probably have
pricing plans, but the thing is we’ll always be likely to have a
public, free version of GenMyModel for public projects.” In other
words, they’re going with the tried-and-tested GitHub model.

GenMyModel’s origins come out of
an R&D project at Inria, a research institute funded by the
French Government. So far, the company’s costs have been covered
mostly by grants from associated startup programmeConcours national d’aide à la création
d’entreprise.

“We had a technology to produce and to generate code,” Legrand
told JAXenter. “It was a very technological project, and after a
market study [we found that] users and people said, ‘well, very
interesting, but we’d like to get a good UML tool before, and we
would especially like to get one on the web. And then after that,
that would be great to use your code generators’.”

In April last year, Legrand and co-founders Alexis Muller and
Stéphane Deveaux spun GMM off into a company of its own, focusing
on building a web-based interface for UML.

“We had to face big technical challenges,” Legrand said. “The
main technical problems were around model storage – how do you
store a UML model in a database?”

Synchronising the model and its visual representation live in
the browser also proved difficult, the various issues taking a year
and a half to overcome. However, with the core product now stable,
the team are eyeing up further possibilities.

Once the real-time features are in place, Legrand hopes to
partner with other web-based programming tools, such as code
editors like CodeEnvy. GenMyModel already has APIs designed to make
interaction with external services easy, and Legrande said this
would be a priority in the beginning of next year.

He stressed that the company intends to mark out a niche rather
than take on every aspect of development themselves. “We won’t
create a code editor in the coming months and the coming years,” he
said. “We only want to focus on modelling.”