This is the presentatio I gave at the 10 Years celebration of WebRatio:
Tomorrow we will celebrate 10 years of WebRatio: this is a good occasion for thinking about the path that led from a university research project to a recognized modeling language (WebML) and a solid, industrialized version of a toolsuite (WebRatio).
The main ingredient of our history are basically:
– a substrate for cross-fertilization coming from European Research projects (W3I3, WebSI, Cooper, BPM4People, …)
– valuable inputs and requirements from customers (both final customers and software integrators)
– a strong research team that continuously worked on innovating the approach
– the teaching activities within the university
– and the professional developers and analysts at Web Models that work hard for making a good product out of the rough ideas and experiments produced in the university.
These ingredients allowed more than 10 years of evolution of the language and the tool. I tried to summarized the virtuous cycle of our experience in the following picture:
While research provides innovation to both teaching and industrialization, and finally produces the upto date version of the language and methodology.
The tool vendor provides the tool itself and also requirements coming from real industrial customers. The tool is extremely useful for teaching and research purposes not only within our group, but throughout the world (thanks to an academic program that allows education institutions to get free licenses of the tool).
The role of customer is crucial in this picture, because it’s from their input (business, technical and UI requirements) that we extract the actual needs of the industry. The whole innovation cycle start there.
Furthermore, customers provide feedback and feasibility/acceptability check upon our findings and solutions.
This virtuous cycle has been able to carry the core idea of the WebML language through 10 years of history in the product (and 15 years of history of the language). The lesson learned is that, if you have a core concept which is flexible and innovable, a good strategy can lead to continuous evolution, improvement and expansion of the idea. In these years the language underwent a huge number of incremental additions:
- support of web services
- support of business processes
- support of semantic web features
- support of RIA – AJAX features
If you want to get a flavour of the experience, you may check out this paper, published in John Mylopoulos Festschrift by Springer:S. Ceri, M. Brambilla, P. Fraternali: “The History of WebML Lessons Learned from 10 Years of Model-Driven Development of Web Applications“. In book: Conceptual Modeling: Foundations and Applications, Essays in honor of John Mylopoulos, Springer LNCS, Festschrift series, vol. 5600, 2009, pp. 273-292
As I already commented on modeling-languages.com, our experience is quite similar to the one of the ATL research group in Nantes.
Our paper “BPMN and Design Patterns for Engineering Social BPM Solutions” (authored by Marco Brambilla, Piero Fraternali, and Carmen Vaca) has been presented today, August 29th, 2011, at the 4th Workshop on Business Process Management and Social Software (BPMS2’11), co-located with BPM 2011, in Clermont-Ferrand, France.
This paper presents a process design methodology, supported by the WebRatio tool suite, for addressing the extension of business processes with social features. The social process design exploits an extension of BPMN for capturing social requirements, a gallery of social BPM design patterns that represent reusable solutions to recurrent process socialization requirements, and a model-to-model and mode-to-code transformation technology that automatically produces a process enactment Web
application connected with mainstream social platforms.
The full paper can be downloaded from here.
The presentation that was given is reported below (together with an embedded demo video of the implemented prototype).
I attended the OMG meeting in Salt Lake City from June 22 to June 24. Here are a few highlights from the Analysis and Design Task Force (ADTF) meeting I attended on Wednesday 22.
An RFC for a canonical XMI format
Pete Rivett is issuing today a RFC for a canonical XMI format at OMG.
I think this is an extremely valuable proposal, because you all know that the complete XMI syntax is so complex and open that basically allow to define so many “XMI dialects” that it’s actually impossible to talk about interoperability of XMI documents among different tools.
Among the various aspects addressed by the proposal, the most crucial are:
- a set of constraints reducing the number of options in the headline formats: a root XMI element is required, all properties must be specified as XML elements except for the ones in XMI namespace (e.g., xmi:id), uuids are mandatory, and so on
- the compliance levels that are allowed are: Canonical XMI Schema, Canonical XMI Export, and Canonical XMI Import
IMM – Information Management MetamodelPete Rivett also discussed IMM, a (revised) proposal to an RFP for bridging and mapping different specification languages covering the information management at large.
In particular, the scope of IMM covers: the business world (ER), the data base world (Relational), the application world (XML Schema, UML, LDAP), traceability, and other models (ontologies, Semantics of Business Vocabulary and Rules).
The work on this is huge and ongoing (e.g., the LDAP coverage is completely missing)
SIMF – Semantic Information Modeling for Federation RFP
Cory Casanave proposed an RFP called SIMF that addresses “the data problem”, i.e., the issue of federating different systems and architectures that should share the same information. This includes all the issues of information sharing, interoperability, shared services, and so on. It might be considered the problem of the decade in terms of impact, cost, and volume both in private enterprises and public administrations.
In terms of CIM/PIM/PSM layers, SIMF focuses on CIM/PIM, by defining models and mappings between levels and within each level. SIMF comprises a kernel model, a kernel of Common Logic.
SIMF includes a language for specifying Conceptual Domain Models (CDM) and a language to express Logical Information Model (LIM) for describing data context, data structures and viewpoints. There might be overlap between CDM and LIM. Model Bridging Relations (MBR) aims at semantically relate similar information concepts.
Expected submissions shall provide both visual and textual concrete sintaxes for CDM, LIM and MBR.
SIMF itself should be federated.
The feedback on this proposal highlighted that more than a standard on this (which is partly covered by other standards already) a set of other artefacts are needed: a methodology, possibly a book, and some tools. We will see..
WebML and a RFP for User Interaction Modeling
Stefano Butti and I presented our experience with WebML and WebRatio and we opened a discussion on the need and the scope required for a user interaction modeling language. More details on this initiative can be found in my previous post here and Stefano Butti’s post here.
The slides we presented this time are publicly available and can be browsed below. Other information on the outcome of the discussion in Salt Lake City is available in another Stefano’s post here.WebML for OMG
Once again, we got good feedback from the audience. Based on this, we decided to:
- opt for an RFP process
- work on and circulate a first version of the RFP in the upcoming summer and discuss/issue the RFP in the next meeting
- focus the RFP on general Web, Mobile and interactive “business” GUIs
Metamodel Extension Facility RFP
Steve Cook (Microsoft) presented the MEF proposal. The motivation of this stands Profiles have a lot of drawbacks: ambiguous purpose wrt metamodels, poor integration with OCL, weak expressive power (e.g., stereotypes do not support all features of MOF classes), applicability only to UML (e.g., BPMN is out), filtering not used, and so on.
The RFP is quite challenging because the proposals should not overlap with MOF, support fixed-model tools, and also MOF-based tools.
A quick summary by Steve himself is available on his blog.
Foundation for the Agile Creation and Enactment of Software Engineering Methods RFP
Ed Seidewitz presented a revised version of the RFP proposed at last meeting as ESSENCE. The RFP is co-authored by Ivar Jacobson and Arne Berre too.
|Ed Seidewitz presenting at OMG ADTF in Salt Lake City.|
The bottom line here is to foster specification of software engineering processes by providing a simple, easy to use specification language that is more agile than the existing proposals (like the SPEM and ISO ones). This would help practitioners design their own SE processes, without the need of involving expert methodologists (and consequent long and expensive design cycles).
Personally, I think this is definitely needed in the software engineering community and also for teaching purposes.
Other topics that have been addressed include: Web Architectures for ODM (by Elisa Kendall), creating an OMG standard UML profile for NIEM RFP (by Vijay Mehra and David Bray), Common Terminology Services Release 2 (Harold Solbrig), and Foundation for the Agile Creation and Enactment of Software Engineering Methods RFP (Ed Seidewitz, Arne J. Berre, and Ivar Jacobson).
In case you didn’t see it, here is the short introductory video about WebRatio, in which a speaker highlights the main features of the MDD tool based on WebML:
You can also find some audio lessons on WebML on my official web site.
Yesterday, November 24, I gave a seminar at Politecnico di Bari. Here are the slides (just an excerpt from another, broader slideset I prepared)
Jordi Cabot has published an interesting interview to Stefano Butti, the CEO of WebRatio, on his blog (modeling-languages.com). It collects a nice set of insights and stories on MDD, WebML, and BPM, together with an overview of the history of the tool, its objectives and its current status.
Read the interview now.
You may also vote it on DZone.
Maintaining Consistency Across BPM Initiatives’ Content(November 3, Enterprise Irregulars)
In response to a writeup by Sandy Kemsley on a user experince on MDD+BPM at Bank of America.
Thank you so much for sharing this writeup and comment.
Being a researcher on MDD and BPM, I’m glad to see that this recipe is getting more and more attention in the industry.
Being also a (software) analyst and a partner in a tool vendor company (WebRatio) I agree with you that pushing this combination of methodologies to the customers can be painful, because customers are rather conservative in terms of innovation and do not trust tools and approaches that are not in the orthodox mainstream.
However, we also had some really good success stories in making big customers adopt these approaches (see for instance our experiences we shared at BPM 2010 in Hoboken and that will also be published in an upcoming book edited by M. Rosemann and M. zur Muehlen. Presentation here: http://www.slideshare.net/mbrambil/web-ratio-bpmindustrialcasesbpm2010 ).
I share with you the concern about setting up weird combinations of tools for addressing BPM with a MDD approach.
In WebRatio, it took us 10 years to come up with a coherent suite of modeling, transformation, and code generation facilities that integrate in a seamless way BPM, data modeling, application modeling, quick prototyping, and code generation for production applications.
Since MDD is a very neat and conceptual approach, I think appropriate toolsuites that correctly deal with the models and their relationship is crucial for granting full benefits of a virtuous model-driven lifecycle.
Enabling Smarter BPM through Business Entities with Lifecycles (November 3, Column2 blog by Sandy Kemsley)
In response to a writeup by Sandy Kemsley on Rick Hull work on integrated BP and data modeling at IBM T.J. Watson.
Thanks for this overview on Rick’s work. I think this is a crucial change of paradigm that companies will embrace sooner or later.
It doesn’t make any sense to consider data and processes as separate realms, with different kings and armies fighting at their borders.
I also have been doing integrated modeling of different aspects of applications for a while, not limited to BP and data models, but comprising also other aspects like user role modeling, application logic modeling, user interaction modeling, and so on. In our approach we envision an integrated model driven development (MDD) approach covering all these aspects and providing automatic alignment and quick prototyping.
I strongly believe that model integration, alignment and continuous cross-validation down to the implementation is the only response to the complex needs of today’s enterprises.
Here is an overview of what we do:
And a summary of MDD responses to current BPM trends (including MDM integration):
I would be glad to get feedback on this.
Iterative Development in BPM Applications Using Traceability (November 3,Column2 blog by Sandy Kemsley)
thanks for this post too. I appreciate your work, I think it’s big value for the BPM community.
I think traceability is crucial, but may not be enough. What we really need is coherency and alignment of models. The complexity of modern enterprise applications requires several models to describe all the relevant aspects. Design tools should be aware of this and *grant* alignment by construction.
This could be fairly easy for models that deal with the same level of abstraction, while it could be much more difficult when alignment is needed between business and IT models of course.
Furthermore (maybe even more crucial), alignment should be granted between models and implementation.
In my experience, all this can be achieved only through well engineered model-driven development (MDD) approaches.