Several members of our team will be at Code Generation 2007. I’ll be on a panel session on 19th May. Here’s the abstract:
Standardised modelling languages, such as OMG UML and its younger cousins SysML and BPMN, emerged from the melee of competing modelling languages available in the mid-1990s. By creating widely used notations for common modelling concepts, these standard languages have made software modelling a mainstream activity supported by dozens of excellent tools. However, the Domain-Specific Language movement has a long and honourable tradition, recently given renewed impetus by Microsoft’s support for DSLs in its Visual Studio tool set. DSL advocates argue that designing a modelling language specifically for a particular application domain allows clearer and more precise models than using a standard language. So who is right? When do the benefits of bespoke domain languages outweigh the advantages of using universally understood notations? Are the two approaches really in competition, or can they co-exist? Our panel of DSL and UML experts will lead the debate.
So what makes BPMN the “younger cousin” of UML? The OMG’s BPMN specification (which I notice is only available to members on the OMG site but freely available on the BPMN site) is defined in a completely different way (no metamodel), and has massive conceptual overlaps with areas of UML without any effort to integrate. I guess that makes UML the younger cousin of CORBA.