Mobility / Software-Entwicklung

Die mobile App-Falle

Seit einigen Jahren bekommen mobile Apps eine immer größere Bedeutung. Der Hype startete mit der Präsentation des ersten Apple iPhones und erreicht mit der weiten Verbreitung von Android nun einen weiteren Höhepunkt. Häufig passiert es aber, dass die tatsächlichen Gesamtkosten und die Umsetzungsdauer die Erwartungen deutlich übersteigen. Warum die Erkenntnisse des letzten Jahrzehnts zur Verbesserung der inneren Softwarequalität auch bei mobilen Apps berücksichtigt werden sollte, möchte ich in diesem Beitrag erklären.

Die mobile App-Falle_mobile Apps

 

Oft entsteht folgende Situation: Der bestehende Webshop sollte auch als mobile App verfügbar sein. Kostenaufwändig wurden native mobile Apps für die gängigen Plattformen implementiert, da das nötige Know-how intern nicht verfügbar war. Später machen zahlreiche Erweiterungen des Business auch Anpassungen an Webshop und Apps erforderlich. Während die Wartungskosten des Webshops im überschaubaren Rahmen bleiben, explodieren die Kosten für die mobilen Apps. Für diese Kostenexplosion kann es mehrere Ursachen geben:

 

  • Mobile Apps werden oft als Ergänzung zu bestehenden Applikationen schnell und „dazu“-implementiert, ohne dass die bisherigen Anwendungen für dieses Zusatzangebot konzipiert sind oder dass der Anbindung an die bestehende Landschaft die entsprechende Bedeutung beigemessen wird.

 

  • Gängige, für normale Business-Software heutzutage unverzichtbar gewordene Entwicklungspraktiken werden bei der Entwicklung mobiler Apps oft nicht angewandt. Dazu zählen beispielsweise oft einfache Unit-Tests und damit einhergehend ein Verzicht auf umfangreiche Refactoring-Maßnahmen sowie die Anwendung von Ansätzen wie Test-Driven-Development.

 

  • Mangelnde Kenntnis von Frameworks führt dazu, dass bewährte Design-Patterns und Konzepte oder ein umfangreiches Tooling nicht zur Anwendung kommen. Dies geht zu Lasten der inneren Softwarequalität. Der aktuelle Hype um mobile Apps führt dazu, dass sich vermehrt auch Studenten oder Berufseinsteiger privat mit der Entwicklung von mobilen Apps beschäftigen und mit diesem „Wissen“ auf Jobsuche gehen. Ohne relevante Erfahrung mit der Entwicklung großer Applikationen ist die Gefahr jedoch hoch, dass bei der Realisierung mobiler Apps die gleichen Fehler gemacht werden wie vor 10-15 Jahren bei der Entwicklung von Webapplikationen. Dies kann für kleine Fun-Apps und Spieleanwendungen, welche eher eine kurze Lebensdauer haben, irrelevant sein – nicht jedoch bei Apps im Businessumfeld, da hier die Total Cost of Ownership über den gesamten Lifecycle der App der kritische Faktor ist.

 

Webshop und mobile Apps gemeinsam betrachten.

Um den daraus resultierenden unvorhergesehenen Kosten und Problemen zu entgehen, ist eine gemeinsame Betrachtung aller Komponenten der Applikationslandschaft unbedingt notwendig. Die Erarbeitung eines übergreifenden Konzepts durch erfahrene Architekten stellt zusammen mit Ansätzen zur Schaffung einer weitgehend identen Codebasis sicher, dass Wartungskosten reduziert werden können. Auch umfangreiche professionelle Tests – wie sie in der Softwareentwicklung sonst längst Standard sind – stellen sicher, dass die mobile Applikation problemfrei und wie gewünscht mit der bestehenden Applikationslandschaft zusammenarbeitet. Während im Java- und .net-Umfeld viele Frameworks existieren, welche großen Anteil an verbesserter Software-Qualität haben, sind derartige Frameworks im mobilen Umfeld noch selten und teilweise unausgereift. Erfahrene Entwickler können sich auf diese Bedingungen besser einstellen und die gewohnten Standards auch im mobilen Bereich sicherstellen.

Passende Artikel

Kommentare gesperrt.