show all comments

DSM

Industry experiences on modeling with DSLs

September 19, 2011 16:36:59 +0300 (EEST)

This year the industry conference on product lines, High-Tech Product Lines, has three talks that directly address Domain-Specific Modeling. Markus Völter presents the concepts, tools and experiences. Jos Warmer and Simon Ball describe a case on an insurance product line. This is particularly interesting for me since I’ve been involved in this domain too - actually we reported one insurance product modeling case in the book (20 pages in DSM book).

I’ll present experiences from four different companies and domains focusing mostly on ROI. First we'll look the investment side: How much effort it took from the companies to define the modeling languages and generators? This is followed by looking the outcome: was it worth? Did the development productivity or quality increase or did the time-to-market improve? I tried to pick cases which have a domain that is easy to grasp and that there is also public data available to backup my talk.

See the whole conference program at http://www.bits-chips.nl/events/eventshpl/programme.html. Hope to meet you in Veldhoven.

DSM

Call for Papers: 11th Workshop on Domain-Specific Modeling

June 03, 2011 13:21:51 +0300 (EEST)

Workshop on Domain-Specific Modeling will be held 2011 at SPLASH conference, Portland, Oregon. The call for the 11th DSM workshop is now available along with paper submission guidelines.

As in the past, we are looking for submissions either on practical or on theoretical level. Submissions are reviewed by program committee that contains a nice mix of people: half from industry and half from academia. Some of the topics we like to see addressed include:

  • Experience reports describing success/failure in implementing and using DSM languages/tools
  • Language definition approaches
  • Novel features in language workbenches / tools to support DSM
  • Language modularization
  • Language maintenance
  • Metamodeling frameworks and languages

Photo from 2010 Workshop

Detailed program is still open and it depends on you! With two days we’ll have plenty of time for the talks, language demonstrations and group work sessions. Again the plan is to make the papers available online and in printed proceedings. The papers from the previous workshops are available online.

DSM

DSM and embedded software product lines: Industrial experiences

May 16, 2011 17:25:19 +0300 (EEST)

Code Generation 2011

The Software Product Line Hall of Fame includes several cases where companies apply domain-specific languages to automate product development. Basically the modeling language, or actually its specification as a metamodel, sets the variation space. Compared to the traditional parameter tables and feature models the language-based approach can handle larger variation space and enable the creation of new features.

The most typical question is then how much effort goes to implementing the languages and generators and what are the benefits. Is the investment worthwhile? While I've written about the potential business value and economics of DSM for the DSM book (Chapter 2) we’ll take another view to this topic at the coming Code Generation Conference. Together with Olli-Pekka Puolitaival from VTT we describe industrial experiences on applying domain-specific modeling languages and code generators in four different domains. They cover home automation, military radio, touchscreen controller and sports computer product lines. For each case we describe how the domain-specific languages were developed and applied. In particular we describe the experiences in terms of productivity or quality as well as analyze the gains against the investment made to define the DSLs. We also try to look the product line from a wider perspective so that we cover also other than software developers - testing and some of the requirements engineering phases can be supported by DSLs too. Session details are here.

DSM

Build or Buy at CG2011- who should develop and own your DSLs and generators?

May 02, 2011 19:22:33 +0300 (EEST)

Where does your language come from? Do you get it as part of a tool from a vendor, pay a consultant to build it for you, or develop it yourself in-house? While all of these approaches can work, they often come with long term commitments on who maintains and owns the language and generators.

I’m chairing a panel at CG2011 on this topic and three panelists, each advocating a different approach, will describe their experiences. Pedro Molina from Capgemini takes the consultant role, Johan den Haan from Mendix has the tool vendor role and Jos Warmer is building all in-house. I expect that more choices exists and believe that audience will suggest interesting mixes. It would be great to get your input too - and see you at Code Generation Conference!

DSM

Implementing Your Own Domain-Specific Modeling Languages: hands-on tutorial at OOP

January 12, 2011 17:45:14 +0200 (EET)

It is still a common belief that it takes a lot of time and effort to define modeling languages and code generators along with supporting tooling. For example, I’ve recently worked with a customer who had already defined two languages but the tool support provided just tree view editors. For the real use they wanted to have proper modeling editors (with functions like hierarchical diagrams, tackling larger models, copy&paste, undo&redo etc), but the investment to define tooling was expected to be heavy and moreover postpone the use of their DSLs.

Well, it took one day to implement together with their expert these two languages into MetaEdit+ - and the languages were not toy languages having well over 100 constructs (in terms of MetaEdit+'s objects, roles, relationship etc). At the second day we then started to use the languages to find out how they could be further improved and extended.

It is thus sometimes shocking - even for language engineers like in the company above - to see that the first version of their modeling language can be used the same day we started its creation. This month at OOP conference we try to give the same experience in our tutorial session in which participants can define hands-on a domain-specific modeling language and get proper tool support for it. Actually, we plan to create several versions of the language each time improving it (raise the level of abstraction, encapsulate domain rules to the language, minimize the need for modeling work, having model checking etc).

OOP, my favorite conference in Germany, takes place in Münich 24-28th January and we are running with my colleage Risto Pohjonen a full day tutorial at 24th. This year is a bit special too since both OOP conference and MetaCase are celebrating 20th anniversary!

OOP 20th anniversary: 1991-2011 MetaCase 20th anniversary: 1991-2011

Hope to see you in Münich!

DSM

Proceedings of the 10th DSM workshop available online

October 08, 2010 10:32:51 +0300 (EEST)

It has been 10 years since OOPSLA’01 hosted the first workshop of this series, then called Domain-Specific Visual Languages. In those years domain-specific techniques and applications have matured significantly, as can be detected from the papers, presentations and group work results. In early workshops, individual domain-specific languages were presented and techniques were discussed. Throughout the years, workshop articles have looked at managing the complexity of created models, showing the impact on building industrial systems of significant size, and measuring the benefits of domain-specific techniques — to provide evidence that was quantitative, rather than anecdotal. The popularity of the workshop has been validated by the expansion of the workshop into a 2-day event in recent years, permitting time to hear the results of others, as well as actually spend time thinking and discussing new topics for research.

The visibility of the work reported has also grown over the years. While I’ve been particularly satisfied that half of the PC and many of the papers come from the industry, the results have been also relevant for publications. Revised and expanded versions of workshop papers have appeared in journals such as IEEE Software, IEEE Computer, Journal of Software and Systems Modeling, Journal of Visual Languages and Computing, and Communications of the ACM. Now we are looking for submissions to the special issue in the Journal of Software and Systems modeling. Also numerous conferences such as Software Language Engineering have sprung up around the idea of engineering languages.

Given the maturity of the organization, and growth of other venues, why is this workshop still held and attended? While other venues provide a place to discuss completed work, it is still important to have a place where still brewing ideas can be presented, and new collaborations can be forged through informal discussions and brainstorming. This is planned to happen again this year at the 10th DSM workshop. As the program shows there will be slots for working in the workshop.

In addition, there are presentations on topics covering DSM cases, transformation and testing, language design as well as tools and metamodeling. This year we received 27 submission and 18 were included into the proceedings available as printed and online version.

DSM

SoSyM special issue on DSM

October 04, 2010 13:27:45 +0300 (EEST)

SoSyMThe Journal of Software and Systems Modeling seeks submissions for a special issue on Domain-Specific Modeling.

Please see CfP, links to submission site and author tips at www.dsmforum.org/events/SoSymDSM11. The deadline for submission is 29th November 2010.

DSM

Successful MDD requires that you make your own generators...

June 23, 2010 15:54:21 +0300 (EEST)

Last week at Code Generation conference it became nicely evident that success with MDD is more likely in companies that have defined their own code generators. I participated a think tank session on MDD success or failure factors and the session leaders, John Hutchinson and John Whittle from Lancaster University, asked people to move between the sides of the room based on the claims made: Supporters moved to the right-hand side, detractors to the left-hand side, and participants that were neutral stayed in the middle. Not particularly scientific with 20+ people but definitely fun and entertaining as people were nicely forced to justify their moves in the room. Session leaders basically tested a bit their findings from the ongoing research work. One of the claims that moved the people around the room was that companies that have applied MDE successfully have mostly written their own code generators for very specific tasks. Among the participants 4 persons stayed on the left side (detractors) and the supporter side for the claim was fully packed.

Factors of MDD Success or Failure: a photo from the Think Tank session

Great session and the session leaders nicely activated people to justify their views. I strongly recommend everybody interested to follow the EA-MDE research project and even look ways to contribute with experiences. Check www.comp.lancs.ac.uk/~eamde for details.

DSM

10th Workshop on Domain-Specific Modeling - anniversary!

May 28, 2010 15:07:49 +0300 (EEST)

10th Workshop on Domain-Specific Modeling will be held at Reno, Nevada. This time it is an anniversary workshop since the first one was held in 2001 - albeit we started discussions one year earlier in a BoF session at OOPSLA 2000.

Within these past years we have witnessed the move from general purpose languages to domain-specific ones and from fixed language structures towards open ones. With metamodeling tools developers have now freedom to define languages that fit to the specific needs, enabling better quality and productivity.

The call for papers for the 10th DSM workshop is now available along with paper submission guidelines. In my opinion we have a good mix of people in the program committee: half from industry and half from academia. Detailed program is still open and it depends on you! With two days we have more time for talks, language demonstrations and group work sessions. Again the plan is to make the papers available online and in printed proceedings. The papers from the previous workshops and from almost 400 authors are available online, and there are still copies of the printed proceedings available from some of the workshops.

Since the workshop is held in Reno, Nevada I suspect there will be some DSLs for gaming …

DSM

Experiences emphasized at Code Generation 2010

April 30, 2010 12:33:15 +0300 (EEST)

The program for Code Generation 2010 is released and I was delighted to see the large number of talks dealing with experiences. For me it is a sign of maturity and widespread practical use: out of 28 talks 12 sessions deal explicitly with industry experiences. The rest of the talks discuss more the technical side: ways to specify languages and generators or describe a particular tool. In addition to these there are also panels and keynotes, and in particular I would like to mention the keynote by Dave Thomas emphasizing the need for D in DSLs. With 3 parallel tracks it will be challenging to find time to visit all interesting sessions.

I’ve also have a pleasure to join and contribute to the conference: With Steven Kelly we’ll show the roadmap for successful introduction of modeling and code generation. In particular we pinpoint the key challenges and offer some practical solutions to overcome them.

With my colleagues Risto Pohjonen and Steven we’ll give the updated talk of the language design with MetaEdit+ - a talk voted the best at Code Generation 2009. We show that a horrible lie exists in our industry today: it says that defining a graphical DSL is difficult and time intensive. We will lay bare this fallacy and demonstrate how simple and quick it is to create Domain-Specific Modeling languages and their generators. Within 3 hours participants of this hands-on session will produce five fully-functional DSLs, complete with full tool support.

Code Generation 2010 takes place in Cambridge, UK 16-18 June. Hope to see you there!

DSM

Integrating Domain-Specific Languages: an example of embedded software and hardware co-design

March 26, 2010 11:46:56 +0200 (EET)

In embedded software development the need for managing and analyzing different architectural options, both on software and hardware, has called for numerous architectural description languages. Many of them are developed in-house and applied within a single company or even for certain products only, like Koala at Philips. There are also many DSLs that are developed by larger consortiums, like for example in automotive domain architecture description languages AADL, AUTOSAR and EAST-ADL - all advocating domain-specific modeling languages for different purposes. The previous links show how they are supported in MetaEdit+.

One of the most important topics when dealing with embedded architectures is the co-design of software functionality and hardware functionality. This requires languages (metamodels) that are designed from the start to support co-design.

While preparing examples for coming seminar on embedded software architectures, I implemented two languages that are integrated via a common metamodel. One addresses functionality and the other hardware architecture, in particular the network architecture. These languages allow designing architectures separately, but more importantly also co-design by allocating functionality provided in the software to different possible hardware architectures. What is particular effective is being able to see the implications of using different hardware architectures back in the functional architecture. The 9 minute video demonstrates how multiple languages can be integrated so the changes in models based on one language are visible in other models, offering distinct yet integrated views on the system specified. This kind of co-design support is only possible when it is built to the language from the start!

Click to see the video demonstrating two integrated domain-specific languages targeting different aspects of embedded software development

If you wonder how ADLs are used today in embedded software development you might be interested to join the coming FESA workshop in Stockholm. If you want to play with the demonstration language shown in the video, just drop me an email (jpt at ...) and I’ll send it to you.

Previous Next (130 total)