10 Tipps, die Auftraggeber bei der App-Entwicklung beachten sollten
Überlegen Sie, ein App-Projekt zu starten oder stehen bereits am Anfang? Dann sollten Sie die hier angeführten Punkte lesen und prüfen, ob Sie diese in Ihre Überlegungen einbezogen haben.
1) Im Fokus stehen die Nutzer*innen
Die Menge an Apps ist kaum überschaubar. Umso wichtiger ist es, den Fokus auf die App-Nutzer*innen zu legen. Denn nur mit einer guten Idee, einem wirklichen Nutzen und einem entsprechenden Alleinstellungsmerkmal, kann sich Ihre App aus der Masse abheben. Da Nutzer*innen zusätzlich die Messlatte für Design und Usability sehr hoch legen, dürfen auch diese Aspekte nicht vernachlässigt werden.
An einfachen, selbsterklärenden und intuitiven Apps führt kein Weg vorbei. In manchen Fällen ist es ratsam, auf die Entwicklung mehrerer fokussierter Apps zu setzen, anstelle eines großen Funktionsmonsters (Mehr dazu erfahren Sie in unserem Artikel „App Unbundling – Der Weg zu schlanken, fokussierten Apps“).
Nicht vergessen sollte man auch die wachsende Gruppe der älteren Personen und der Personen mit Einschränkungen, für die Smartphones und Tablets ein einfacher Zugang zu Informationstechnologie sind. Diese Zielgruppen haben besondere Anforderungen an die verwendeten Systeme. Deshalb sollten Schriftvergrößerung, Kontrastanpassungen oder der Zugriff mittels Screenreader ermöglicht werden.
2) Nicht alles ist auch erlaubt
Apps werden über App Stores vertrieben. Wer seine App dort anbieten will, muss sich an viele Regeln halten. Wir wissen, worauf es ankommt. Dies beginnt schon bei der Entwicklung. Wer sich nicht an die Regeln hält, riskiert, erst gar nicht in die Stores zu kommen oder wieder hinauszufliegen. So gibt es Richtlinien, welche Inhalte mittels App transportiert werden dürfen, wie Zahlungen abgewickelt werden müssen bzw. dürfen, oder Anforderungen, wenn Apps als „für Kinder geeignet“ gekennzeichnet werden sollen, usw.
Nach der Grundidee und in jedem Fall vor der Entwicklung der App, empfiehlt es sich dringend, einen Blick auf die Richtlinien der einzelnen Stores zu werfen:
- App Store (Apple): https://developer.apple.com/app-store/review/
- Play Store (Google): https://play.google.com/about/developer-content-policy/
- App Gallery (Huawei): https://developer.huawei.com/consumer/de/appgallery/
3) Mehrere Plattformen = Mehr Aufwand
Eine App auf mehreren Plattformen anzubieten, bedeuten mehr Aufwand. Klingt logisch, da bei nativer Entwicklung die App für jede Plattform einzeln erstellt werden muss. Abhilfe könnte hier die Hybrid-Entwicklung schaffen. Leider geht diese Rechnung nicht immer auf. Schauen wir uns dazu die einzelnen Phasen eines App-Projektes an:
- Ideenfindung:
Die Grundidee einer App ist von Plattform und Technologie unabhängig, sollte aber die Möglichkeiten und Einschränkungen dieser nicht ganz außer Acht lassen. - Konzept:
Bei der Konzeption der App müssen wir uns um Workflows, Interaktionen der Nutzer*innen und den Aufbau der App kümmern. Hier ist es wichtig, sich an den Paradigmen und Möglichkeiten der einzelnen Plattformen zu orientieren. Eventuell sind Anpassungen und Erweiterungen des Basiskonzepts für jede einzelne Plattform notwendig. - Design:
Die Grundlagen des Designs sind über Plattformen hinweg ident, allerdings müssen für die unterschiedlichen User-Interfaces der einzelnen Plattformen und die damit verbundenen Eigenheiten bzw. unterschiedlichen UI-Elementen auch unterschiedliche Designs erstellt werden. - Entwicklung:
Erfolgt die App-Entwicklung nativ, muss mit dem vollen Aufwand für jede einzelne Plattform gerechnet werden. Bei Hybrid-Ansätzen ist der Aufwand zwar nur einmal zu berücksichtigen, dennoch fallen Optimierungen und Sonderanpassungen pro Plattform an. - Testen:
Beim Testen müssen wir immer den vollen Aufwand für jede Plattform kalkulieren – unabhängig davon, mit welcher Technologie entwickelt wurde. Denn die App muss auf jeder Plattform für mehrere Geräten und Displayauflösungen getestet werden. (Siehe dazu auch: Aufwand beim Testen von Apps) - Wartung/Betreuung:
Alle Betriebssysteme werden stetig weiterentwickelt. Wird eine neue Version veröffentlicht, muss die App für diese zumindest getestet und eventuell auch angepasst werden. Auch der Aufbau der App Store-Einträge und die Store-Richtlinien können sich ändern. So ergeben sich, unabhängig von der gewählten Umsetzungstechnologie, immer Aufwände pro Plattform.
4) Die richtige Technologie wählen
Die Entscheidung über die Technologie sollte, wenn möglich, immer am Ende der Konzeptionsphase stehen. Schließlich hängt eine sinnvolle Wahl stark von den geplanten Funktionen und den Rahmenbedingungen des Projekts ab. Jede technologische Entscheidung sollte in Bezug auf initialen Aufwand, zukünftige Betreuung und vor allem auch auf Zukunftssicherheit bewertet werden.
Sobald die Speicherung von Nutzer*innen-Daten, Anbindung von externen Datenquellen oder komplexe Datenverarbeitung im Spiel sind, benötigt die App Unterstützung einer Serverkomponente. Dann sollte es das Ziel sein, die Businesslogik der App ins Backend zu verfrachten. So kann die App zentral erstellt und gewartet werden und muss nicht für jede Plattform individuell umgesetzt werden. Das spart Aufwand, vermeidet unbeabsichtigte Differenzen zwischen den einzelnen Plattformen und minimiert damit das Fehlerpotential.
5) Externe Dienste können Geld kosten
Viele Services (Karten, Routing, Analytics, usw.) stehen in ihren Basisversionen gratis zu Verfügung. Gratis bedeutet aber nicht immer kostenlos, denn für viele Dienste fallen ab einer definierten Grenze (an User*innen, Anfragen, Aktionen, o.ä.) Kosten an.
Entwickler*innen müssen sich selbst um die entsprechenden Lizenzen kümmern. Daher sollte beim Einsatz externer Services immer eine Nutzungsprognose erstellt werden, die bei der Auswahl benötigter Dienste als Kriterium für sofort und auch für später anfallende Kosten einfließen sollte.
6) Die Content-Falle
Apps werden gerne als Softwareprodukte betrachtet, deren Hauptaufwand in der eigentlichen Programmierung liegt. Diese Annahme ist falsch: Tatsächlich machen Konzeption und Inhaltserstellung einen sehr großen, wenn nicht sogar den größten Teil aus.
Für Sie als Auftraggeber*in einer App bedeutet das, dass Sie sich auch um den Content kümmern müssen. Sofern die Inhalte nicht von Nutzer*innen kommen oder automatisch generiert werden.
Auch Hilfetexte oder FAQs müssen für jede einzelne Plattformen erstellt bzw. adaptiert werden. Nur so können spezifische Vorgänge und individuelle Begrifflichkeiten berücksichtigt werden.
7) Testen ist zeitintensiv – auch für den Auftraggeber
Das Testen einer App ist zeitintensiv und Bedarf der richtigen Ausstattung. Bei iOS ist die Anzahl an verschiedenen Geräten und Betriebssystemversionen noch überschaubar. Anders bei Android & Co: Es gibt hunderte von Geräten mit unterschiedlichen Betriebssystemversionen, Auflösungen, Displaygrößen und Leistungs- bzw. Ausstattungsmerkmalen. Eine App sollte auf jeden Fall auf einem repräsentativen Set an Geräten getestet werden. Existiert neben einer Smartphone- auch eine Tablet- oder sogar Smartwatch-Variante sind zusätzliche Tests nötig.
Das Testen einer App auf unterschiedlichen Geräten ist relativ einfach. Komplexer wird es, wenn Drittsysteme angebunden sind oder eigene Backends existieren. Testroutinen und entsprechende Testsysteme helfen, Situationen gezielt nachzustellen und Fehlerfälle zu simulieren.
Zu guter Letzt sollte man noch beachten, dass ein Smartphone auch einmal offline sein kann oder nur eine instabile bzw. langsame Internetverbindung zur Verfügung steht. Ist die App auf eine Onlineverbindung angewiesen, sind auch solche Situationen zu simulieren.
8) Apps müssen durchs Review
An den Türen der App Stores gibt es Türsteher, die nicht jede App hineinlassen. Jeder Store verlangt, dass Apps bestimmte Richtlinien erfüllen. Bei Apple müssen Apps zusätzlich durch ein manuelles Review, bei dem Mitarbeiter*innen des Unternehmens die App entsprechend dieser Richtlinien prüfen. Apple gibt für dieses Review eine Dauer von ca. 2 Wochen an (in der Praxis eher 3 bis 4 Tage), garantiert aber auch keine Durchlaufzeiten. Jede neue Version der App (nach Ablehnung oder bei einem Update) startet diesen Prozess erneut.
Bei Android sind Apps sofort im Store ersichtlich. Aber Achtung: Auch hier laufen automatisierte Prozesse im Hintergrund, die die App grundlegend prüfen. So wird eine App bei Verwendung von fremden Markennamen oder -logos (ohne schriftliche Rechtebestätigung) wegen Markenrechtsverletzungen abgelehnt. In diesem Fall führt der Weg nur mehr über ein Formular zum Support. Wartezeiten von 2 bis 3 Wochen sind keine Seltenheit. (Siehe dazu auch: Markenrecht in Apps)
9) Einen App-Relaunch gezielt planen
Als Auftraggeber einer App, sollten Sie von Beginn an eine Vorstellung von deren Weiterentwicklung haben. Denn je größer die Nutzer*innenbasis, desto schwieriger wird es, zu einem späteren Zeitpunkt einen kompletten Relaunch der App durchzuführen. Einerseits gewöhnen sich Nutzer*innen an Bedienkonzepte und Aussehen, andererseits an die angebotenen Funktionen. Bei einem Relaunch bisherige Funktionen zu entfernen oder Bewährtes über Bord zu werfen, endet oft in negativen Store-Bewertungen.
Eine goldene Regel der App-Entwicklung: Entfernen Sie niemals Funktionen aus einer bestehenden App. Außer: Es gibt dafür einen triftigen Grund (z.B. schlechte Nutzungszahlen des Features) oder Sie bieten Ersatz an. Und kümmern Sie sich um die Datenmigration. Für Nutzer*innen gibt es nichts Schlimmeres, als das Verschwinden mühsam eingegebener Daten nach einem App-Update oder einer Funktions-Änderung.
10) Apps „am Leben erhalten“ bedeutet Aufwand
Wie ziemlich alles in der IT sind auch Apps und mobile Betriebssysteme ein sich stetig weiterentwickelndes Ökosystem. Eine App zu entwickeln und sie dann sich selbst zu überlassen, ist keine gute Idee:
- Fehler treten oft erst im laufenden Betrieb auf und müssen so schnell wie möglich behoben werden.
- Nutzer*innen geben Feedback, das man berücksichtigen sollte.
- Die App muss an die sich ändernden Anforderungen der Betriebssysteme und App Stores angepasst werden.
Regelmäßige Wartung und Updates der App sind unerlässlich. Aktuell ist es üblich, dass die Hersteller einmal im Jahr (meist im September) große Major-Releases für ihre Betriebssysteme veröffentlichen. Damit sollten Apps – zumindest zu diesem Termin – an die neuen Betriebssystemversionen angepasst und darauf getestet werden.