You are here: Home Student Projects and … Available [Varies] A Domain Specific …

[Varies] A Domain Specific Language for Embedded System User Interfaces

Improving the development of user interfaces by domain specific modelling languages with simulation and code generation.
Course type B.Sc. Thesis, M.Sc. Thesis 
Instructors Jelena Barth, Stephan Arlt, Bernd Westphal,
Credits Depends 
Course Catalog Depends 

Model-based development of systems is often proposed to improve the validity and the correctness of a safety critical system under design. That is, whether the system under design is actually serving the needs of the customer and whether the system is free of errors. Traditionally, the focus is often on correctness wrt. functional requirements under the assumption of none or a very simple user interface (UI). For instance, that a fire alarm system is forwarding an alarm message from the sensors to the sensors.

With decreasing costs of components, embedded systems are increasingly expected to provide sophisticated UIs. For instance, a fire alarm system may tomorrow display an alarm graphically on a screen where yesterday a simple red lamp was sufficient. Now it becomes equally important that a system is correct wrt. requirements on the UI. For instance, it could be fatal if a fire alarm system is erroneously displaying an alarm as a battery failure.

We propose to employ a model-driven approach also for UI development. The dynamic behaviour of the UI should be described in form of a model, which in particular abstracts from the visual appearance. A modelling language which is domain specific, that is, which explicitly refers to elements of the domain of UIs, is in particular supposed to improve the communication between UI developers and customers to improve validity.

In this student project, the candidate is supposed to elaborate on an existing concept for a domain specific language. The open tasks range from a formal definition of syntax and semantics, over formal analysis of UI properties (for instance, that the main screen is always reachable), to simulation or code generation from the model.