MetaEdit+ automatisiert die Entwicklung von Tetra-Terminals

EADS ist Spitzenreiter im Bereich der TETRA-Technologie; das Unternehmen bietet gegenwärtig eine Reihe modernster Lösungen für durchgängige Funksysteme an, die die neueste TETRA-Technologie ebenso beinhalten wie mobile Datenanwendungen und ähnliche Dienste für System-Integration und -Support. 

Für den Erfolg dieser Produkte am Markt spielt Software eine immer entscheidendere Rolle. Eine zentrale Komponente der TETRA-Terminal-Software ist die Benutzungsschnittstelle (User Interface, UI): eine komplexe Domäne mit vielen Herausforderungen, die sich kontinuierlich weiterentwickeln muss, um den Anforderungen der Kunden gerecht zu werden. Aus diesem Grund kommt dem UI-Engineering der Terminals besondere Aufmerksamkeit zu und die meisten Entwickler konzentrieren sich auf diesen Bereich.

Die Lösung: MetaEdit+

Ursprünglich waren sowohl das Protokoll als auch die Benutzungsschnittstellen-Software in SDL entwickelt worden, eine Entwicklungssprache aus dem Umfeld der Datenfernübertragung, die aus den 70ern stammt. Da die Software im Laufe der Zeit immer komplexer wurde, wurde deutlich, dass man für die EADS-TETRA-Terminals einen besseren Entwicklungsansatz und ein besseres Tool brauchen würde. Antti Raunio, bei EADS für das UI-Engineering verantwortlich, drückt es so aus: "Es ist praktisch unmöglich, die momentane Software in SDL zu implementieren. Der Code ist wesentlich umfangreicher und komplexer - SDL würde hier nicht skalieren und die Anforderungen entsprechend nicht bewältigen können."

Nach ersten Evaluierungen wählte EADS TETRA Terminals MetaEdit+ wegen seiner einzigartigen Features als Entwicklungsumgebung für TETRA-Terminals aus. Hervorzuheben sind hier vor allem: Flexibilität, Unterstützung von eigener Architektur der EADS, komplett durchführbare Codegenerierung und Dokumentationsfähigkeit sowie einfache Bedienbarkeit. "Der Vorteil von MetaEdit+ ist, dass wir unsere eigene, hausinterne Modellierungssprache benutzen können. Die Modellierungssprache ist dadurch sehr flexibel und wir können sie so modifizieren, dass sie unseren Bedürfnissen entspricht," erläutert Chief Engineer Raunio. "Wegen dieser Fähigkeit und wegen die Möglichkeit vorhandenen Code wieder zu verwenden, war MetaEdit+ für das TETRA-Terminal Entwicklerteam eine attraktive Wahl",  sagt Antti Raunio.

Ergebnisse

Wie man am Beispiel EADS TETRA Terminals sehen kann, zählen zu den Hauptvorzügen von MetaEdit+ die folgenden Punkte:

  • Schnellere Entwicklung: Verglichen mit dem Einsatz von SDL bei EADS, hat MetaEdit+ aufgrund seiner Fähigkeiten (Unterstützen von umfangreicher Wiederverwendung und Managen von Varianten innerhalb der Terminal-Produktfamilie) die Entwicklungsgeschwindigkeit erheblich gesteigert.
  • Bessere Codequalität: "Die Qualität des generierten Codes ist eindeutig besser, was ganz einfach daran liegt, dass die Modellierungssprache so entworfen wurde, dass sie zu unserer Terminal-Architektur passt. Dadurch werden Fehler vermieden, indem diese bereits in der Entwurfsphase eliminiert werden. Würde man die Anwendungen von Hand programmieren, gäbe es wesentlich mehr Fehler und die Bandbreite an Fehlerarten wäre auch wesentlich größer", sagt Chief Engineer UI Tetra terminals Antti Raunio.
  • Entwicklung ist einfacher, da die Komplexität verborgen ist: Selbst Anfänger mit nur wenig Programmiererfahrung können Features mit MetaEdit+ schnell und effektiv entwickeln, denn MetaEdit+ unterstützt die Regeln, die in der Anwendungsdomäne der EADS-TETRA-Mobiltelefone gelten, führt durch die modellbasierte Entwurfsarbeit und hindert die Entwickler daran, fehlerhafte Designs zu erstellen.
  • Dokumentation ist immer auf dem neuesten Stand: Da sowohl die Dokumentation als auch der Code aus denselben Modellen generiert werden, sind die Entwürfe, der Code und die Dokumentation von EADS immer synchron und auf dem neuesten Stand. Die Qualität der Designdokumentation hat sich auch dadurch verbessert, dass MetaEdit+ diese in Übereinstimmung mit den eigenen Dokumentationsstandards von EADS generiert. Da die Informationen in den Modellen in der Sprache der Anwendungsdomäne formuliert sind, ist die Dokumentation leicht zu verstehen und unterstützt dadurch auch Reviews.
  • Entwickler benötigen weniger Hilfe von den Experten: Wurde die domänenspezifische Modellierungssprache einmal gemäß EADS TETRA Terminals implementiert, wird die Unterstützung von Experten praktisch nicht mehr benötigt. Das Expertenwissen ist in dem Tool eingebettet, sodass sich die Entwickler nicht immer wieder aufs Neue mit dem Problem herumschlagen müssen, wie die Domänenkonzepte auf qualitativ hochwertigen Code abgebildet werden können.

Zusammenfassung

MetaEdit+ hat ganz wesentlich dazu beigetragen, dass EADS sein Ziel - einer der Marktfü,hrer im TETRA-Terminal-Markt zu werden - erreicht hat. Der Grund hierfür ist, dass MetaEdit+ eine robuste und zuverlässige Entwicklungsumgebung zur Verfügung stellt, die es EADS ermöglicht, neue Mitarbeiter in Rekordzeit in die TETRA-Terminal- Produktfamilie einzuarbeiten.

"Man braucht kein Domänen-Fachwissen und keine Werkzeugunterstützung, wenn alles gut läuft - und das war mit MetaEdit+ der Fall. MetaEdit+ ist ein stabiles und robustes Produkt", fasst Raunio zusammen. Für einen Entwickler, der sich in der Domäne gut auskennt, ist der Entwurf und das Implementieren einer domänenspezifischen Modellierungssprache mit der metaCASE-Technologie kein sehr zeitaufwändiger Prozess. Nachdem ein Experte ein paar Mannwochen investiert hat, können alle anderen Entwickler ebenfalls wie Experten arbeiten!

IHRE NÄCHSTEN SCHRITTE