When thinking of how to make a good embedded system engineering environment out of Eclipse technologies, looking at good examples such as MATLAB and Simulink can be helpful. Providing comprehensive math and graphics functions, they are powerful computation and modeling/simulation environments. The interesting fact is however that the versatility and success of MATLAB and Simulink does not arise from their completeness. It is because they are based on an architecture which clearly separates the generic engineering environment core from application-near and typically domain-specific behavior. The latter is realized using built-in scripting languages which are easy to learn and can be used without requiring in-depth knowledge of the engineering environment core. This enables users who are usually domain experts rather than tool smiths to adapt the engineering environment to domain-specific contexts by conveniently modifying existing or adding new behaviors.
In this presentation, we are going to show how the Eclipse platform can be used for building an engineering environment for AUTOSAR-based automotive software following this principle. After a short introduction of the problematic outlined above, we explain the central idea of our approach: RCP, EMF, various modeling components, and CDT are combined for creating the AUTOSAR engineering environment's generic core. In order to prevent users intending to modify or add domain-specific behaviors from having to learn some dedicated scripting language, the broadly known and well-understood Java programming language is used for that purpose. We therefore explain how the popular JDT has been extended for being used as "script" development and debugging environment. We also pinpoint how Equinox and PDE have been leveraged for contributing Java-based "scripts" in the form of dynamic "plug-lets". This enables domain-specific extensions to be developed, debugged, and executed within the same instance of the AUTOSAR engineering environment and avoids lengthy plug-in export and Eclipse restart cycles. We complete our presentation by a short demo where we implement and run some Java-based "scripts" performing automatic configuration of AUTOSAR Basic Software Modules.
The audience of this presentation is expected to have general knowledge of embedded system engineering and above mentioned Eclipse technologies but is not required to possess in-depth expertise for any of these topics.
Stephan Eberle, is development lead for Geensys' AUTOSAR Builder and committer for Eclipse Teneo EMFT component. He has 10 years of practical and scientific experience in developing component-based software for embedded systems. Since 3 years, he has been developing model-based tools and IDEs for embedded software using Eclipse, EMF, openArchitectureWare, and Oracle TopLink. Prior to joining Geensys, he was component lead for an Eclipse-based IDE for automotive software at Robert Bosch in Germany.