Professionelle Software auf die Sie sich verlassen können

MapTrip wurde von Anfang an für den Einsatz in einem professionenellen Umfeld konzipiert. Anders als im Consumer-Bereich ist eine Navigationssoftware im professionellen Umfeld nicht nur ein Nice-to-have-Gadget, sonder ein unverzichtbares, unternehmenskritisches Werkzeug. Die Navigationssoftware muss daher absolut zuverlässig sein. Das ist die Herausforderung, der sich MapTrip von Anfang an gestellt hat.

Unsere Navigationssoftware wird von den Kunden auf einer Vielzahl von Hardware-Geräten eingesetzt. MapTrip muss auf jeder Hardware laufen, von sehr preiswerten Geräten mit sehr begrenzten Hardwareressourcen über robuste professionelle Hardware bis hin zu High-End-Smartphones. Meistens läuft MapTrip nicht allein auf dem Gerät, sondern muss sich die verfügbaren Ressourcen mit einer anderen Anwendung teilen. Normalerweise kommunizieren beide Anwendungen über die Schnittstelle von MapTrip miteinander. Dies führt zu einem weiteren Grad an Komplexität.

Dies ist ein anspruchsvolles Umfeld, indem sich MapTrip seit mehr als einem Jahrzent entwickelt hat. Es ist ein bewährtes Stück professioneller Software, auf das Sie sich verlassen können.

Software-Entwicklungsprozess

Die Qualität von MapTrip ist von vornherein in das System eingebaut. Der Entwicklungsprozess von infoware folgt einem achtstufigen Arbeitsablauf. Er lässt sich wie folgt zusammen fassen:

Die Entwicklung jeder neuen Funktion beginnt mit einem sorgfältigen Planungsprozess. Die gewünschte Funktionalität wird beschrieben und auf mögliche Auswirkungen auf das System, seine Stabilität und Wartbarkeit hin analysiert.

Die Softwareentwicklung folgt einem genau definierten Prozess von der Definition über die Implementierung bis hin zum Testen und schließlich zur Freigabe.

Sobald eine gewünschte neue Funktion spezifiziert ist, muss sie vom Entwicklungsteam bewertet werden. Die Bewertung konzentriert sich unter anderem auf eine Risikobewertung, um die Auswirkungen der Entwicklung auf die Komplexität und Stabilität der Navigationssoftware und der angrenzenden Systeme zu verstehen.

Wenn die Aufgabe dann freigegeben wird, kann die eigentliche Entwicklung beginnen. Jede Nacht wird der Code eines jeden Entwicklers automatisch eingecheckt, gesichert und auf Fehler getestet. Fehler werden so fast sofort erkannt und können am nächsten Morgen behoben werden.

 

Wenn ein Entwickler seine Aufgabe abgeschlossen hat, wird der neue Code zur Überprüfung durch Kollegen vorgelegt. Nach erfolgreicher Prüfung wird die neue Funktion dann an die Testabteilung weitergeleitet.

Hier wird ein manueller Test durchgeführt, um zu prüfen, ob die angegebene Funktionalität erreicht wurde. Diese Tests werden sowohl in einer simulierten stationären Umgebung als uch unter realre Fahrbedingung durchgeführt.

Eine neu entwickelte Funktion wird erst dann als vollständig gekennzeichent, wenn sie diese Tests bestanden hat.

Automatisierte Tests und Bereitstellung

Während des Entwicklungsprozesses wird der Code jedes Entwicklers in einem nächtlichen Testverfahren, das über 100 Einzeltests umfasst, automatisch überprüft. Fehler können so vom jeweiligen Entwickler sofort erkannt und behoben werden.

Der Entwicklung neuer Features geht immer die Entwicklung der entsprechenden automatisierten Tests voraus. Die Testsuite und deren Abdeckung wächst also mit der Software.

 

 

Der Speicherverbrauch der MapTrip Navigationssoftware wird automatisch überprüft. Er ist ein wichtiger Indikator für die Qualität der Software und ihre Stabilität.

Diese Grafik zeigt die Speichernutzung während des Routing-Prozesses und die Zeit, die vergeht, bis die neue Route verfügbar ist.

Eine Kultur der Qualität - Testing Friday

So etwas wie fehlerfreie Software gibt es nicht. Das Beste, was ein Softwareentwickler tun kann, ist, einen Entwicklungsprozess zu befolgen, der die Wahrscheinlichkeit, das Fehler überhaupt entstehen, minimiert und es einfach macht, sie zu identifizieren und zu beheben und die Qualität des Codes zu erhalten, um ihn zukunftssicher zu machen.

Für unserer MapTrip-Navigationssoftware verwenden wir Jira als Tool der Fehlerverfolgung und zur Verwaltung unserer Entwicklungsaufgaben. Die Liste der Aufgaben wird regelmäßig überprüft und nach Prioritäten geordnet, um die Ressourcen unserer Entwickler zu steuern.

Um in einer geschäftigen Umgebung Platz für solche Aufgaben zu schaffen, haben wir den so genannten “Testing Friday” eingeführt. Bei infoware sind die Freitage für die Verbesserung der Testabdeckung, die Überarbeitung von Teilen der Software – und für die Behebung von Fehlern – reserviert.

 

Überwachung der Leistung der Software nach der Bereitstellung

Auch nach dem strengen Testverfahren und der Freigabe der Software wird die Leistung ausgewählter MapTrip-Installationen überwacht.

  • Genauigkeit der Fahrzeitberechnung
  • Leistung des Kartenabgleichs, der zu einer Umleitung führen kann
  • Die Menge der übertragenen Daten

Bei ausgewählten Geräten wird die Genauigkeit der ETA-Berechnung überwacht. So können potenzielle Probleme erkannt werden, bevor sie zu tatsächlichen Problemen werden.

 

Ausgewählte MapTrip-Installationen nutzen Google Firebase, um über Probleme zu berichten, die bei der Software im Feld aufgetreten sind. Diese Ferndiagnosen ermöglichen es uns, potenzielle Probleme zu erkennen, bevor sie zu tatsächlichen Problemen werden.