20 March 2019
The summary of the MPS day Eindhoven 2019 can be found here.
Links to the slides have been added in the program below.
NOTE: the available tickets will be gone any moment if not already, but please subscribe to the waiting list, because we are considering to expand the venue or to organize a second event later this year!
JetBrains Meta Programming System (MPS) day Eindhoven 2019 is an event organized by MPS Community NL, and co-organized by Océ and Altran. MPS has shown its value in many different domains, e.g. high-tech, finance, medical, etc.
Because there is a strong model-driven development community that uses MPS in the Netherlands, it is time to showcase real-life MPS applications in the industry to the wider audience in the Brainport region.
The main goal of the MPS day Eindhoven 2019 is to inspire by means of a track of strong showcases presented by high-profile parties such as Océ, Belastingdienst, and Siemens. In addition, an “Everything you need to know about JetBrains MPS” event (containing many live-coding demos), where you can learn about what you can do with MPS.
If you are a decision-maker and interested in the added value of model-based/driven development, the presentation track will be of most interest to you. If you are interested in model-driven technologies and want to learn about the state of the art, the live-coding event will appeal most to you. Of course, you are also welcome to join both sessions.
Please note that the talks will be given in English.
The event is free but you need to register: REGISTER HERE
Opening Keynote: New Developments in the MPS Ecosystem [slides]
Language Engineering Applied @ Dutch Tax Office [slides]
Modeling for everyone (developing high-end production print systems) [slides]
MPS in Simcenter Embedded Software Designer – Present and Future [slides]
Closing Keynote: Model Driven Software Engineering Creates Tomorrow’s Legacy
|17:05||Wrap-up of talks|
Live Coding demos in MPS
|20:30||End of event|
Date / Time / Place
13:00 – 20:30
Altran Office Eindhoven
Contact the organizers at email@example.com
|Opening Keynote: New Developments in the MPS Ecosystem
As you might know, we have developed lots of different DSLs over the last ten years based on MPS and factored reusable assets into what is called the mbeddr.platform. In this talk, we will provide an overview over some of the recent development in this context. This includes the use of MPS-based DSLs in safety-critical contexts, the functional base language KernelF and its tools for debugging, testing and coverage measurement, our work-in-progress incremental transformation framework called “shadow models”, as well as a few other reusable assets around systems engineering.
|Language Engineering Applied @ Dutch Tax Office
The Dutch Tax and Customs Administration has been using MPS for several years now. Using MPS, we develop DSLs for defining and testing rules for calculating different taxes. In this presentation we want to show you what we encountered in getting to the point where we are now: a service based system performing millions of income tax calculations for Dutch citizens.
|Modeling for everyone (developing high-end production print systems)
Océ is a more than hundred-year-old company and a global leader in digital imaging, industrial printing, and collaborative business services. To better, faster, and cheaper design and understand our systems, we have a long history of modeling across all disciplines and departments. The majority in management as well as on the work floor does not need to be convinced by the added value of modeling and its need for our innovative potential. Having various types of models within various disciplines and departments, our current challenge is for the majority of the developers to be able to create, (re-)use, connect, and maintain models, because we believe that the human component in our modeling ecosystem is crucial and those connecting models yield exponential added value. Within the software departments, we use MPS in a number of cases to tackle that challenge. In this talk, we will show you a few examples.
|MPS in Simcenter Embedded Software Designer – Present and Future
In this talk, we present Simcenter Embedded Software Designer (ESD), a commercial application for designing, integration, and verifying embedded software in extended enterprise scenarios. After an overview of ESD’s business domain, value proposition, and a live demonstration for a particular customer use case, we explain how MPS is used to realize ESD, and our expectations on the future evolution of the MPS platform.
|Closing Keynote: Model Driven Software Engineering Creates Tomorrow’s Legacy
Software is everywhere we go. Among others, it powers the devices we use in our daily life, it channels our social interactions via social media, it enables our medical care. With the increasing number of applications, the amount of software is exponentially increasing, which challenges the way we develop and maintain our software efficiently and effectively.
The software engineering (research) community is fully aware of these challenges and attempts to tackle these by introducing new development techniques, such as Agile software development, test-driven software development and model driven software technology. The latter advocates the use of models and domain specific languages (DSLs) to speed up the development of software, to increase understandability and quality of the resulting software.
Modeling and modeling languages are common practice in other engineering domains, such as mechanical engineering. Modeling in software development has accelerated with the launch of Unified Modeling Language (UML). The use of multiple modeling languages in UML has led to the development of Meta Object Facility (MOF) and its derivative Eclipse Modeling Framework (EMF). Model driven software engineering advocates the use of small languages that are domain specific, provide a higher level of abstraction and facilitate code generation. UML already offered the possibility to create domain specific extensions via profiles. MOF and specifically EMF have given rise to the creation of small languages using the Eclipse environment. EMF and the tooling using EMF, such as Xtext, ATL, QVTo, ETL, etc., has led to an acceleration of the development of domain specific languages.
The following challenges can be observed with respect to this development.
The (high-tech) industry has adopted model driven software engineering and started introducing DSLs. These DSLs are prototypical, because capturing and defining domain concepts as well as language development is new for them. Before the DSLs stabilizes, tens and sometimes even hundreds of models may already be created. These models have to be migrated and can not be thrown away, if the DSLs are adapted. These languages and corresponding models will become legacy if we do not act by means of developing proper development methodologies and tooling to support analysis of languages and models and the evolution of both languages and models. So, both language and domain are in state of flux and have to co-evolve, both on the syntactic but definitively also on the semantic level, but this is hard and difficult work. We do not have the tools for this and if we do not act now, we will have the same legacy as we have software from a code perspective.
One can wonder whether model driven software engineering is indeed the next silver bullet to transform software development or rather a silver-painted egg that when being fired creates a big mess. Research on model driven techniques should move away from just focusing on tooling, although that still work has to be done to make the tools more robust and usable, but start focusing on proper methodologies to extract domain concepts in order to create usable DSLs. It should deal with evolutionary aspects of DSLs and created models and work on stabilizing the tooling needed to create languages and corresponding models, ensuring consistency between languages and between models, and between languages and models. These are just a few of the challenges that we are facing. If we are able to make this happen then we might have a silver bullet after all and the promised increase in quality and productivity can be realized.
|Live Coding in MPS
A slightly advanced introduction to MPS: two languages, an generator, and interpreter, language compositon and non-textual notations.