Best Practices der toolgestützten Embedded-GUI-Entwicklung

Seite: 4/6

Firmen zum Thema

Performance und Ressourcen

  • Die gewohnte Bedienbarkeit von Smartphones und Tablets soll natürlich auch bei dem neu zu realisierenden HMI zur Anwendung kommen: Es soll ähnlich aussehen, soll sich ähnlich verhalten und soll selbstverständlich genauso schnell auf Benutzereingaben reagieren.
  • Aber wie findet der Software-Ingenieur heraus, ob das implementierte GUI auch auf der Zielplattform performant läuft? Denn bereits im Prototyp stockte die eine oder andere Animation merklich.
  • Anders als bei PC-Entwicklungen ist der zur Verfügung stehende Speicher bei Embedded Systems begrenzt. Folglich muss der Entwickler von Anfang an sowohl mit dem verfügbaren RAM- als auch dem ROM-Speicher gut haushalten.

Um Performance-Probleme in den Griff zu bekommen, ist es wichtig, die gesamte Kette zu beherrschen. Nur so kann ein möglicher Flaschenhals auch richtig identifiziert und lokalisiert werden: Sind die Performance-Einbußen der Applikation, dem GUI-Tool bzw. der GUI-Bibliothek oder dem Graphik-Treiber zuzuschreiben oder liegt eventuell sogar ein Hardware-Problem vor?

So kann es durchaus von Vorteil sein, wenn das GUI-Tool in der Lage ist, unterschiedliche Graphic-APIs zu bedienen, um das Performance-Problem näher einkreisen zu können. Gilt es jedoch den Verbrauch von Flash-Speicher zu optimieren, sollte das GUI-Tool die Möglichkeit bieten, Ressourcen – wie Bilder und Schriften – sowohl statisch (zur Compile-Zeit) als auch dynamisch (zur Laufzeit) einzubinden.

Um den RAM-Speicherverbrauch (nachträglich) zu minimieren gibt es die einfache Möglichkeit, das resultierende Farbformat zu reduzieren. Folglich ist es wünschenswert, wenn diesen Vorgang das verwendete GUI-Tool automatisch unterstützt.

Organisation

  • Es kann durchaus sein, dass das HMI-Projekt bei Projektstart bezüglich der benötigten Entwickler-Ressourcen unterschätzt wurde. Um den Einführungstermin dennoch halten zu können, wurde beschlossen, weitere Entwickler für das Projekt abzustellen. Wie sieht dann eine effiziente Einarbeitung aus?
  • Wenn das Team größer wird, ist es unausweichlich, dass der Source Code entsprechend verwaltet und versioniert wird. Können die eingesetzten Software Komponenten und Tools dies unterstützen?

Eine ordentliche Dokumentation innerhalb einer Software hilft die Struktur, das Verhalten und die gefundenen Lösungen auch über Projektgrenzen hinweg festzuhalten. Aber auch bereits während des Projekts kann sie neuen Mitarbeitern eine gute Startbasis bieten, um sich schnell in die Architektur einzuarbeiten. Das GUI-Tool sollte folglich auch Dokumentationsmöglichkeiten (sog. inline-Dokumentation) für neu entstandene Software bieten, so dass eine zusätzliche, evtl. mit einem anderen Tool erstellte, Beschreibung nicht notwendig ist.

In größeren UI-Projekten werden oftmals Prozesse etabliert, die eine kontinuierliche Integration (Continuous Integration) und dadurch eine kontinuierliche Lieferung (Continuous Delivery) an den Kunden ermöglichen. Demzufolge sollten GUI-Tools sich auch in diese automatisierten Build-Umgebungen integrieren lassen, um derartige Entwicklungsprozesse zu unterstützen.

(ID:44318559)