30.11.2012 Views

Automotive User Interfaces and Interactive Vehicular Applications

Automotive User Interfaces and Interactive Vehicular Applications

Automotive User Interfaces and Interactive Vehicular Applications

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

The HMISL language<br />

for modeling HMI product lines<br />

Simon Gerlach<br />

Volkswagen AG<br />

HMI/Cluster, Switches<br />

PO Box 1148<br />

D-38436 Wolfsburg, Germany<br />

simon.gerlach@volkswagen.de<br />

• Domain specific language for model-driven development of <strong>Automotive</strong> HMI Software<br />

• Designed for being combined with different GUI modeling tools available on the market<br />

• Allows to model behavior logic modules reusable for creating different product variants<br />

• Code of product variant is generated based on module selection <strong>and</strong> parameterization<br />

interface gui myGui {<br />

animation fadeSeekToManulMode;<br />

...<br />

scene seekScreen {<br />

interaction manualTuning;<br />

property string stationName;<br />

...<br />

}<br />

scene manualTuningScreen {<br />

property integer tunedFrequency;<br />

...<br />

}<br />

popup temperatureWarning priority 10 {<br />

...<br />

}<br />

}<br />

module radio uses myGui {<br />

public event manualTuning;<br />

public variant integer defaultFrequency;<br />

...<br />

statemachine main start seekMode {<br />

state seekMode {<br />

on enter show seekScreen;<br />

on manualTuning {<br />

if (defaultFrequency != -1)<br />

set tunedFrequency to defaultFrequency;<br />

goto manualMode;<br />

}<br />

...<br />

}<br />

state manualMode {<br />

on enter show manualTuningScreen;<br />

...<br />

}<br />

}<br />

}<br />

Depending on Supplier/OEM<br />

• GUI design is created externally<br />

• GUI interface defines “remote-controlled” elements in<br />

GUI <strong>and</strong> interaction events<br />

• GUI interface independent of actual GUI layout<br />

• Description of HMI behavior<br />

• Reactive programming paradigm: combines scripting<br />

language <strong>and</strong> high-level constructs (e.g. events, state<br />

machines, data binding…)<br />

• Elements of GUI interface are accessible<br />

• Placeholders for variant specific values<br />

• Maps supplier/OEM specific interface technology to<br />

generic concepts like events <strong>and</strong> variables<br />

• Specification of base function <strong>and</strong> call sequences

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!