Embedded GUI Best Practices der toolgestützten Entwicklung

Vom Wireframe über das Mock-Up hin zum fertigen GUI

Gerade bei GUI-Projekten setzt sich im Prototypenentwurf leicht die pragmatische Lösung durch. Wird bei den Entwürfen bereits eine durchgängige Entwicklungsstrategie verfolgt, sind diese Prototypen einfacher in das serienfertige Produkt überführbar.

Software-Ingenieure für Embedded Systems geraten häufig unvorbereitet in ein GUI-Projekt: schnell soll für die nächste Messe, für den nächsten Kundenbesuch oder für die Präsentation der neuen Produktidee ein Prototyp implementiert werden, der schöner, schneller und besser zu bedienen ist als das aktuelle Produkt - und dabei soll der Prototyp sich nicht hinter gewohntem Design und Bedienung eines Smartphones verstecken müssen. Doch dabei ist der neu berufene HMI-Entwickler unerfahren - es ist nämlich sein erstes UI-Projekt.

Neben dem chronischen Zeitmangel und der neuen Herausforderung kommen weitere Fragestellungen hinzu: Welche Hardware wird verwendet? Ist bereits eine neu entworfene Hardware verfügbar, oder wird der Prototyp mit der existierenden Hardware umgesetzt? Ist das Eval-Board ein Mittel der Wahl? Welche Unterschiede erwarten den Entwickler später? Wie performant läuft das GUI auf der Hardware? Welche Software-Lösungen und welchen Support bietet der Chip-Hersteller, welche weiteren Drittanbieterlösungen existieren? Gibt es eine GUI-Spezifikation und wenn ja in welchem Zustand? Wie verhält sich das Look-and -Feel in Relation zur Applikation und ihres UIs?

Nachdem man sich allmählich einen Überblick verschafft hat, muss schnell mit der Implementierung begonnen werden: die notwendige Zeit für Konzeptarbeiten, Proof-of-Concepts, Tests, das eigentliche Implementieren sämtlicher Features, etc. steht mit dem gesetzten Termin nicht zur Verfügung – im Rapid-Prototyping ist dies aber völlig legitim.

Somit wird in einer zeitkritischen Entwicklung gerne auf vertraute Hardware, sowie die Herstellersoftware und GUI-Tools, zurückgegriffen. Der Meilenstein wird oft nur kritisch erreicht und der Prototyp ist rechtzeitig fertig. Das GUI-Tool unterstützte die Entwicklung und das Management ist (zunächst) zufrieden. Messe, Kundenbesuch oder Präsentation können kommen.

Der nächste Evolutionsschritt ist sicherlich die Weiterentwicklung des Prototyps zum Produkt. Für ein performantes Endergebnis, müssen aus GUI-Sicht unterschiedliche Aspekte und Erfahrungen mit dem Prototyp berücksichtigt werden. Eine konkrete Hürde liegt bei der optimalen Anbindung an die Ziel-Hardware. Zudem muss aber auch der eigentliche Funktionsumfang klar sein. Weiterhin sind das zu realisierende Design und die dabei zu erwartende Performance wesentlich.

Stoßen im späteren Projektverlauf weitere Entwickler hinzu, sind natürlich auch organisatorische Themen im Auge zu behalten. Folglich können bei der Entwicklung in den genannten fünf Themengebieten mannigfaltige Probleme auftauchen.

Einige Beispiele werden diskutiert.