Mobile Apps: Sicherheit geht vor

In den Apps auf unseren mobilen Endgeräten, ob Smartphone oder Tablet, speichern wir viele Informationen, darunter natürlich auch viele persönliche. Und wie uns die Nachrichten zu Daten-Leaks mittlerweile fast täglich zeigen, sind illegale Zugriffe auf diese Informationen häufig kritisch. 

Auch die Verschlüsselung von Daten stellt leider keine Lösung für dieses Problem dar – denn alles, was verschlüsselt werden kann, lässt sich gegebenenfalls auch von unautorisierter Stelle wieder entschlüsseln. Erstes Ziel eines jeden App-Entwicklers muss es daher sein, jegliche Sicherheitslücken, die unbefugten Zugriff auf Daten ermöglichen könnten, bereits im Entwicklungsprozess einer App durch das Einhalten von Sicherheitsstandards zu vermeiden. Hierbei können bewährte Praktiken aus anderen Bereichen der Entwicklung unterstützen und zur Sicherheit des Endprodukts beitragen – beispielweise Testmethoden aus der Qualitätssicherung.

Anzeige

„Shift-Left“ für frühere Testprozesse und eine höhere Qualität

Um Apps so funktionsfähig und gleichzeitig für den Nutzer so bedienerfreundlich wie möglich auf den Markt zu bringen, hat sich im Bereich der Qualitätssicherung (QS) der Shift-Left-Ansatz durchgesetzt: Mit Shift-Left rücken Prozesse auf der Zeitachse des Entwicklungszyklus einer mobilen App weiter nach links, also näher an den Anfang des Projekts. QS-Teams profitieren mit Shift-Left daher von frühzeitigen Testdurchläufen. Die Qualität der App wird so bereits von Beginn an geprüft und verbessert. Dies vereinfacht nicht nur die Verwaltung des gesamten Entwicklungsprozesses, sondern spart vor allem beim Endspurt im Entwicklungszyklus wertvolle Zeit ein.

Der Shift-Left-Ansatz steht im starken Gegensatz zur klassischen Entwicklungsmethode nach dem Wasserfall-Prinzip, bei der ein Schritt nach dem anderen durchgeführt wird. Für das App-Testing würde dies allerdings bedeuten, dass die gesamte Entwicklung bereits abgeschlossen sein muss, bevor mit dem Testen überhaupt begonnen werden kann. Dies kann problematisch werden, sollten kurz vor der Veröffentlichung der App noch Fehler aufgedeckt werden, denn: Je später ein Fehler im Code auffällt, umso höher ist die Wahrscheinlichkeit, dass dieser auch mit der Gesamt-Software komplex verwoben ist. Unter Umständen muss dann ein großer Teil komplett umprogrammiert werden, was die Delivery Pipeline stark verzögert.

Noch sicherer: kontinuierliches Testen

Während sich das Shift-Left-Testen auf das Verschieben von Tests auf einen früheren Zeitpunkt im Entwicklungszyklus fokussiert, geht sogenanntes „Continuous Testing“ sogar noch einen Schritt weiter. Continuous Testing steht nicht nur am Anfang des Entwicklungsprozesses, sondern setzt sich permanent über das gesamte Entwicklungsgeschehen fort. Es berücksichtigt Performance-Metriken, Fehlerprotokolle und auch das tatsächliche Nutzerverhalten beim Testen der Benutzeroberfläche in realen Situationen. Dies führt zu einem viel besseren Nutzererlebnis, da bereits der Testprozess auf realen Nutzungsdaten aufsetzt. Durch Continuous Testing erhalten QS-Teams sehr viel spezifischere Informationen zu Fehlerberichten und dies vereinfacht die Ursachenanalyse erheblich.

Newsletter
Newsletter Box

Mit Klick auf den Button "Jetzt Anmelden" stimme ich der Datenschutzerklärung zu.

Continuous Integration – proaktiv statt reaktiv für mehr Sicherheit

Die Vorteile von Shift-Left und Continuous Testing beschränken sich jedoch nicht nur auf die Qualitätssicherung. Auch Security-Teams können von diesen Ansätzen profitieren. Testet man Mobile Apps von Beginn der Entwicklung an kontinuierlich auf Sicherheitsstandards, ist es sehr unwahrscheinlich, dass gegen Ende der Delivery Pipeline ein großes Sicherheitsproblem auftritt. Dafür müssen Sicherheitsfragen bereits während des Entwurfs des Anwendungs-Designs berücksichtigt werden: Erst wenn Entwickler frühzeitig über die Sicherheitsstandards informiert werden, die für die Anwendung existieren sollten, kann das Entwicklungsteam die notwendigen Schritte beachten, um diese Standards zu erfüllen und sie in den Code zu integrieren. Wird kontinuierlich geprüft, ob in der App alle Sicherheitsstandards korrekt implementiert sind, spart dies vor allem zum Ende des Entwicklungszyklus Zeit und Kosten.

Continuous Integration (CI), also die sofortige Zusammenführung und das Testen neuen Codes, beschleunigt nicht nur die Entwicklung und Qualitätssicherung, sondern erhöht auch die Sicherheit. CI hilft, eine Umgebung zu generieren, welche die Konfiguration einer Produktionsumgebung imitiert und in der ein aktueller Build der App eingesetzt werden kann. Entwickler haben damit die Möglichkeit, die App innerhalb dieser Umgebung auf alle Sicherheitsprobleme zu testen. Dies bedeutet, dass die App in der Produktion genauso sicher funktioniert wie in dieser Umgebung.

Fazit

Durch die frühzeitige Erkennung von Fehlern und Sicherheitsproblemen lässt sich der Entwicklungszyklus von Mobile Apps sicherer und effizienter aufstellen. In der heutigen schnelllebigen Internetwelt stehen App-Entwickler unter hohem Druck, ihre App-Releases in immer kürzeren Zyklen bereitzustellen. Für den Erfolg einer App ist es daher ausschlaggebend, hochwertige und sichere Anwendungen mit schnellen Entwicklungszeiten zu entwickeln. Um dies zu erreichen, ist die Integration durchgängig automatisierter Tests in die App-Entwicklung eine wichtige Voraussetzung: Sicherheitslücken und Probleme lassen sich damit so früh wie möglich effizient erkennen und zeitsparend beheben. Dies senkt das mit einem potenziellen Release verbundene Geschäftsrisiko und erhöht das Vertrauen in die Qualität und Sicherheit der App.

Hannes LenkeHannes Lenke, General Manager EMEA des Experten für Continuous Testing Sauce Labs
 

 

Anzeige

Artikel zu diesem Thema

Weitere Artikel

Newsletter
Newsletter Box

Mit Klick auf den Button "Jetzt Anmelden" stimme ich der Datenschutzerklärung zu.