EMF Forms - Model-driven UIs

Status:
Declined
This session has been declined by the session moderation team.

In most tools and applications, you need to be able to view and edit your data. Often, data is viewed and edited in forms in parts of the UI. Manual development of these forms is tedious. Visible components such as forms or reports are typically subject to constant change in response to user feedback. Additionally, many forms are often developed in parallel while each form must still comply with a uniform look and feel.
Typical UI layout technologies are powerful but also complex to use since they have to support any kind of possible layout. Maintenance and testing of manually coded forms is costly, time-consuming and error-prone. All these shortcomings, however, can be resolved with model-driven development.
In this talk, we demonstrate the EMF Forms framework - an EMF-based framework that is part of the Eclipse project EMF Client Platform. With EMF Forms, the user interface is expressed with a simple model instead of code. The model defines only concepts that are allowed by the given user interface guideline. A modeled UI is then interpreted by a rendering engine. The main advantages of EMF Forms are to:
- produce form-based UIs more efficiently
- adapt form-based UIs to changes in the data model with minimum effort
- establish or easily change a uniform look and feel
- enable a much shorter turnaround with other stakeholders (e.g., product manager, customer)
- lower the technical entry barrier to creating form-based UIs
- support different UI technologies such as SWT, JavaFX, Web and Mobile

This session is all about demonstrating EMF Forms in action by building a UI for an EMF-based application from scratch with the EMF Forms Tooling. We will define a UI model for a data model and build an editor for Desktop, Web and Mobile.

http://emfforms.org

This talk received many and execellent reviews at EclipseCon NA: 23 votes with +1 and 3 votes with 0 of 26 overall votes.

Session details
Speaker(s): Session Type: Experience level:
Beginner
Track: