Die Komplexität von 0 und 1
Nachdem wir uns letztes Mal die Funktionen der App angesehen haben, wollen wir diesmal einen Blick auf die Technik dahinter werfen. Ich erhebe keinen Anspruch darauf jedes technische Detail 100%ig korrekt wiederzugeben. Der Artikel ist eher gedacht, den Nicht-Technikern einen Blick hinter die Kulissen zu gewähren. Deshalb liebe Techniker: habt ein bisschen Nachsicht. 🙂
Wenn von der Mein A1 App die Rede ist, sprechen wir immer vom sogenannten Frontend. Das ist in diesem Fall die Applikation die am Handy installiert ist und über die bekannten Appstores, Android Markets etc. heruntergeladen wird. Die Daten die die App anzeigt kommen aber nicht direkt aus der App sondern von unseren Servern (Backend). Diese Daten können natürlich nicht in der App selbst gespeichert werden. (zu große Menge, Sicherheitsrisiko, Aktualität der Daten, etc.) Zwischen Backend und Frontend liegen natürlich noch viele weitere Schnittstellen und Ebenen, durch die die Daten ihren Weg finden müssen damit der User in der App letztendlich das sieht, was er sehen soll.
Wenn nun beim Start der App eine Fehlermeldung wie “Service derzeit nicht verfügbar” kommt, liegt es immer daran, dass der Datenaustausch mit den Backend Systemen nicht funktioniert hat – was nicht zwangsläufig daran liegen muss, dass die Server Probleme haben oder die App nicht funktioniert, sondern auch daran liegen kann, dass das Handy einen schlechten Empfang hat und somit die Datenübertragung beeinträchtigt ist.
In der aktuellen Version der Mein A1 App (2.0 oder höher) haben manche Kunden ab und zu das Problem, dass die App zwar startet, aber die Freieinheiten nicht angezeigt werden obwohl der Kunde Freieinheitenkontingente im Tarif (oder Paket/Option) hat. Das liegt daran, dass der Datenaustausch mit dem Freieinheiten System nicht erfolgreich war, aber sonst alle Daten vorhanden sind. Hierbei empfiehlt es sich einfach die App neu zu starten oder es zu einem späteren Zeitpunkt wieder zu versuchen.
Doch auch in der App können sich Fehler (Bugs) einschleichen, die uns beim Testen einfach nicht untergekommen sind. Einen interessanten Fehler hatten wir z.B. bei der Windows Phone 7 Version die Mitte Juni mit dem neuen Markenauftritt erschien. User die in den Landeseinstellungen des Handys nicht Deutsch / Österreich sondern USA / Englisch eingestellt hatten, wurden plötzlich in der App Rechnungssummen von mehreren Tausend Euro angezeigt. Der Grund dafür war simpel: im Englischen werden Punkt und Komma bei Beträgen anders gesetzt als im Deutschen. Die Zahl 52342 würde folgendermaßen formattiert werden:
– 52.342,00 (Deutsch)
– 52,342.00 (Englisch)
Aufgrund der unterschiedlichen Verwendung von Trennzeichen, wurden die Rechnungsbeträge bei Kunden die englische Spracheinstellungen am Handy gesetzt hatten, falsch dargestellt. Durch das Kundenfeedback wurden wir auf dieses Problem aufmerksam und konnten es schnell beheben.
An diesem Beispiel möchte ich eines aufzeigen: ab einer gewissen Komplexität kann man auch bei Maschinen, die letztendlich nur zwei Zustände (0 und 1) kennen, nicht mehr mit Sicherheit vorhersagen was alles passieren wird. Je komplexer das System, desto schwieriger wird es. Oder um es mit den Worten von Steve Jobs zu sagen:
“It takes these very simple-minded instructions – ‚Go fetch a number, add it to this number, put the result there, perceive if it’s greater than this other number‘ – but executes them at a rate of, let’s say, 1,000,000 per second. At 1,000,000 per second, the results appear to be magic.”
Und auch wenn die Mein A1 App aus Sicht des Benutzers relativ einfach erscheint – durch das Zusammenspiel von Backend, Frontend, verschiedenen Schnittstellen, Datenübertragung, verschiedene Handymodelle inklusive unterschiedlicher Softwareversionen der Handys usw., bewegen wir uns in einem sehr komplexen System in dem verschiedene Umwelten Einfluss auf das Ergebnis haben. (nämlich, dass der User die richtigen Informationen in der App bekommt)
Um dem vorzubeugen, unterziehen wir die Mein A1 App bereits während der Entwicklung intensiven Tests um unseren Kunden ein möglichst fehlerloses Produkt anzubieten. Dabei stellen wir möglichst viele verschiedene Szenarien und unterschiedliche Kundentypen nach (verschiedene Tarife, Produktkombinationen, Vertragsarten, etc.), testen auf mehreren verschiedenen Handys (je nach Betriebssystem bis zu 10 verschiedenen) und überprüfen sämtliche Funktionen der App. Zusätzlich kommen dazu noch Performance- und Last-Tests, Stabilitätstests, Usability Tests etc.
Doch trotz all dieser Maßnahmen, kann es vorkommen, dass manche Ergebnisse nicht vorhergesehen werden konnten. Deswegen sind uns die Anregungen und Kommentare unserer Kunden umso wichtiger. Sie machen uns auf Probleme aufmerksam, sagen uns welche Funktionen ihnen besonders gut gefallen und welche sie gerne in Zukunft noch in der App sehen würden. Damit helfen sie mit, die Mein A1 App zu verbessern. Schließlich ist es unser Ziel die Mein A1 App weiter auszubauen, mit neuen Funktionen auszustatten und somit unseren Kunden noch mehr Möglichkeiten und Sicherheit zu geben.
In diesem Sinne – viel Spaß beim Kommentare posten, liken, +1sen und twittern. 🙂
lg Keqiao
Gib deine Meinung ab: