|
|
Model-Driven Engineering of Distributed Systems
Despite advances in standard middleware platforms, it is hard to develop software
for distributed systems, such as airplanes, power grids, and patient monitors.
For example, developers still use ad hoc means to develop, configure, and deploy
applications and middleware, due to the lack of analyzable and verifiable building
block components. Model-Driven Engineering (MDE) has emerged as a promising
means to address these issues by combining domain-specific modeling languages
(DSMLs) with generators that analyze certain aspects of models and then synthesize
various artifacts, such as source code, simulation inputs, XML deployment descriptions,
or alternative model representations.
This tutorial provides an overview over MDE for distributed systems, focusing on
• Fundamental concepts of MDE
• How MDE tools and metamodeling typically work
• The role of code generation and model-to-model transformation
• Frameworks and DSMLs, which are two sides of the same coin
• How MDE can be used to improve and manage software architecture
• Applying MDE to component-based distributed systems
• Deploying and configuring middleware and applications using MDE
Many of the topics mentioned above will be introduced using examples and case studies from
production distributed systems. Wherever possible, we will show live demos of using MDE tools
in the tutorial.
|