Was ist App-Entwicklung?

App-Entwicklung steht für die Prozesse und Verfahren zum Schreiben von Software für Mobilgeräte wie Smartphones, Smartwatches und Tablets.

Demo zu App Engine
Wissenswertes über App-Entwicklung
Entstehung der App-Entwicklung Welche Plattformen für App-Entwicklung gibt es? Welche verschiedenen Methoden der App-Entwicklung gibt es? Wie sieht der Prozess der App-Entwicklung aus? Welche Komponenten machen eine gelungene Benutzeroberfläche aus? App-Entwicklung mit ServiceNow
Alle ausklappen Alle Einklappen Entstehung der App-Entwicklung

Die moderne Computertechnik hat sich von den Desktops und selbst von den Laptops der vergangenen Jahrzehnte weg entwickelt. Heute findet das Computing größtenteils auf Mobilgeräten statt, und mehr als die Hälfte des gesamten Datenverkehrs im Internet stammt von Smartphones, Tablets und anderen drahtlosen Optionen.

Da die Computertechnik immer mehr von stationären zu mobilen Systemen wechselt, steigt der Bedarf an Software, die auf Mobilgeräten effektiv funktioniert. Dazu gehört allerdings mehr als nur die Erstellung mobiler Apps. Unternehmen müssen in der Lage sein, Anwendungen zu entwickeln, die nicht nur auf Mobilgeräten genutzt werden können, sondern auch deren einzigartige Fähigkeiten voll ausschöpfen.

Um dieser Erfordernis Rechnung zu tragen, setzen immer mehr Unternehmen auf App-Entwicklung.

Welche Plattformen für App-Entwicklung gibt es?

Um eine Anwendung auszuführen, benötigt ein Mobilgerät ein funktionierendes Betriebssystem (BS). Das BS übernimmt die Rolle eines Vermittlers, der die Interaktion zwischen der Computerhardware und den darauf ausgeführten Programmen ermöglicht. Das Betriebssystem stellt sicher, dass die Softwareprozesse, die auf dem Computer ausgeführt werden, Zugriff auf die richtigen Ressourcen haben und dass sie wie vorgesehen funktionieren.

Eine Plattform für App-Entwicklung (Mobile Development Platform) ist im Wesentlichen ein Betriebssystem, das zum Erstellen, Testen und Bereitstellen mobiler Apps entwickelt wurde. Zwar gab es in der Vergangenheit eine große Anzahl solcher Plattformen, doch mittlerweile teilen sich im Wesentlichen zwei Top-Wettbewerber den Markt auf: Android und iOS.

Android

Mit einem Marktanteil von etwa 80 % ist Android die größte Mobile Development Platform. Das liegt daran, dass Android ein Open-Source-Betriebssystem ist, das es vielen Arten von Geräten verschiedener Hersteller ermöglicht, verschiedene Versionen des Android-Betriebssystems auszuführen. Android wird von Google entwickelt und basiert auf Linux, sodass alle Hardware entwickeln können, die das Betriebssystem unterstützt. Das gleiche gilt für die Entwicklung von Android-Apps: Entwickler haben bei der Erstellung von Apps für Android-Geräte die volle Autonomie. Das ermöglicht eine höhere App-Flexibilität und eine extrem niedrige Einstiegshürde.

Google stellt native Tools für die Entwicklung mobiler Android-Apps wie Android Studio bereit. Darüber hinaus bedeutet die Open-Source-Natur des Betriebssystems, dass auch Drittanbieter eigene Android-Entwicklungstools erstellen können (was sie auch tun). Die umfassenden Google-Richtlinien für Entwickler stellen sicher, dass die resultierende Anwendung über viele verschiedene Hardwaretypen hinweg gut aussieht und funktioniert. Angesichts der Tatsache, dass die Anzahl potenzieller Android-Geräte im Grunde unbegrenzt ist, gibt es keine Möglichkeit, sicherzustellen, dass neue Anwendungen in jeder Situation und mit jeder Art von Hardware effektiv funktionieren.

iOS

Obwohl iOS nur etwa 18 % des Markts ausmacht, ist es wohl die dominantere der beiden großen Plattformen. iOS wird von Apple entwickelt, dem Unternehmen, das mit der Einführung von iPhone und iPad am meisten dazu beigetragen hat, dass Mobile Computing zum Mainstream wurde.

iOS ist auf weniger Geräten als Android verfügbar, weil es nicht Open Source ist – iOS funktioniert ausschließlich auf Apple-Produkten. Um Apps für iOS zu entwickeln, müssen Entwickler ebenfalls einen Mac-Computer mit OS X (dem standardmäßigen Mac-Betriebssystem) verwenden.

Apple stellt ebenfalls native Tools und Bibliotheken für die App-Entwicklung bereit, und Entwickler werden angehalten, die Programmiersprache Swift von Apple zu verwenden.

Da Apple die Hard- und Softwareaspekte der iOS-Entwicklung so genau kontrolliert, sind iOS-Apps in der Regel sehr leistungsstark, stabil und benutzerfreundlich. Auch die Fragmentierung von Geräten ist weniger problematisch, da Apple die Ausführung der Anwendungen nur auf der eigenen proprietären Hardware erlaubt. Auf der anderen Seite bedeuten strengere Richtlinien, dass es schwieriger sein kann, vollständig angepasste Apps zu erstellen. Außerdem müssen neue iOS-Anwendungen zur Prüfung und Genehmigung beim App Store eingereicht werden.

Andere Plattformen

Alle anderen aktuellen Mobile Development Platforms teilen sich die verbleibenden 2 % des Markts. Dazu gehören die Windows- und Blackberry-Entwicklungsplattformen. Doch fast alle App-Entwickler konzentrieren sich auf Android, iOS oder eine Kombination aus beiden.

Welche verschiedenen Methoden der App-Entwicklung gibt es?

Es gibt mehrere Ansätze für App-Entwicklung. Im Folgenden sehen wir uns drei der beliebtesten an:

Native Entwicklung

Die direkteste und offensichtlichste Methode für die App-Entwicklung besteht wohl darin, die Tools und Plattformen zu verwenden, die vom BS-Anbieter bereitgestellt werden. Diese Tools wurden mit Blick auf die Benutzerfreundlichkeit entwickelt und bieten Beispiele, Tools, Frameworks und andere Ressourcen, um ein schnelleres Debugging und eine optimale Funktionalität auf dem mobilen Betriebssystem zu gewährleisten, für das die App entwickelt wird.

Native Entwicklungstools haben jedoch ihre Nachteile. Da sie die Entwicklung unter dem jeweiligen Betriebssystem erleichtern sollen, verwenden sie verschiedene Programmiersprachen. Das bedeutet, dass Entwickler, die mit Android- oder iOS-Entwicklungstools programmieren möchten, mit den Sprachen vertraut sein müssen, die diese Tools verwenden, anstatt einfach in ihren eigenen bevorzugten Sprachen zu arbeiten. Ebenso kann die Erstellung einer einzigen App für beide BS-Optionen doppelte Arbeit bedeuten, da die Anwendung zweimal programmiert werden muss und zwei verschiedene Prozesse und Best Practices einzuhalten sind.

Für diejenigen, die Apps nur für ein bestimmtes Betriebssystem entwickeln wollen, ist die native Entwicklung jedoch die schnellste und einfachste Lösung.

Vorteile

  • Optimierte Leistung
    Nativ entwickelte Apps funktionieren in der Regel besser und einheitlicher, da sie die Funktionen des Geräts optimal ausnutzen.
  • Höhere Benutzerfreundlichkeit
    Native Apps sind so konzipiert, dass sie auf bestimmten Geräten funktionieren. Auf diese Weise können sie die Funktionen dieser Geräte nutzen und bieten eine bessere Benutzer-Experience.
  • Codierung für nur eine Plattform
    Native Apps lassen sich leichter entwickeln, da sie nur für eine einzige Plattform konzipiert sind und nicht unter mehreren Betriebssystemen funktionieren müssen.

Nachteile

  • Erforderliche Spezialisierung
    Native Apps, die für bestimmte Betriebssysteme entwickelt werden, erfordern Entwickler mit speziellen Kenntnissen in der Codierung für das jeweilige Gerät.
  • Mehrfacher Entwicklungsaufwand
    Da native Apps speziell für die einzelnen Betriebssysteme entwickelt werden müssen, sind für die Entwicklung einer App, die auf mehr als einer Plattform funktionieren soll, mehrere Entwicklungsschritte erforderlich – und das verursacht auch höhere Kosten und einen höheren Zeitaufwand.

Plattformübergreifende Frameworks

Plattformübergreifende (bzw. hybride) Entwicklungs-Frameworks sind so konzipiert, dass Entwickler effektive mobile Apps erstellen können, die unter beiden großen Betriebssystemen optimal funktionieren. Im Idealfall bedeutet das, dass Entwickler den Code nur einmal schreiben müssen und dann auf allen unterstützten Plattformen ausführen können. Die meisten plattformübergreifenden Frameworks bevorzugen in der Regel das eine oder andere Betriebssystem. Hierdurch müssen Entwickler die Version der App anpassen, die für das andere Betriebssystem vorgesehen ist.

Häufig handelt es sich bei plattformübergreifenden Frameworks um Abstraktionen. Sie verwenden systemeigene Bibliotheken und Frameworks und setzen voraus, dass Entwickler über ein grundlegendes Verständnis dieser Elemente verfügen. Andere verfolgen einen hybriden Ansatz, der neben nativen Komponenten auch webbasierte HTML-Komponenten umfasst.

Die meisten plattformübergreifenden Lösungen unterstützen eine bestimmte Programmiersprache, sodass viele Entwickler ihre Wahl davon abhängig machen, mit welchen Programmiersprachen sie bereits vertraut sind.

Vorteile

  • Schnellere Entwicklung
    Für die Entwicklung einer plattformübergreifenden App ist nur ein einziger Codesatz erforderlich, der auf mehreren Betriebssystemen funktioniert, was schnellere Entwicklungszyklen ermöglicht.
  • Leichtere Entwicklung
    Entwickler von hybriden Apps müssen nur eine Technologie erlernen, was die Einstiegshürde senkt und den Entwicklungsprozess vereinfacht.
  • Breitere Zielgruppe
    Plattformübergreifende Apps sind so konzipiert, dass sie in beiden großen App-Marketplaces verfügbar sind. So können Entwickler sowohl Android- als auch iOS-Benutzer erreichen.

Nachteile

  • Geringere Benutzerfreundlichkeit
    Apps, die für beide großen Betriebssysteme entwickelt wurden, sind in der Regel nicht in der Lage, die Funktionen der jeweiligen Plattform voll auszuschöpfen. Das kann sich auf die Benutzerfreundlichkeit auswirken und dazu führen, dass diese Apps langsamer laufen als native Anwendungen.
  • Langsamerer Rollout neuer Funktionen
    Wenn neue native Funktionen eingeführt werden, müssen plattformübergreifende Entwickler darauf warten, dass ihr Entwicklungs-Framework diese Funktionen unterstützt.
  • Schwierige Anpassung
    Wenn eine App nicht nativ entwickelt wird, ist die Anpassung der App viel schwieriger und mit plattformübergreifenden Frameworks möglicherweise nicht vollständig möglich.
  • Leistungsprobleme
    Bei Apps, die nicht für ein bestimmtes Betriebssystem entwickelt wurden, kann es zu Kommunikations- und Leistungsproblemen kommen.

Mobile Web-App

Die dritte Option, die in den letzten Jahren stetig an Beliebtheit gewonnen hat, ist der Einsatz mobiler Web-Apps für die App-Entwicklung. Hierbei wird eine Webanwendung für den Zugriff über einen Standard-Webbrowser entwickelt, dabei jedoch für die Nutzung auf Mobilgeräten optimiert.

Es mag so aussehen, als ob man mit diesem Ansatz eine Abkürzung nimmt, aber die Wahrheit ist, dass mobile Web-Apps genauso effektiv, funktional und elegant sein können wie jede nativ entwickelte Anwendung. Es stehen viele Frameworks zur Verfügung, mit denen Entwickler mobile Web-Apps erstellen können, die sich wie native Anwendungen anfühlen, wenn sie auf einem mobilen Betriebssystem ausgeführt werden. Mobile Web-Apps können sogar Funktionen der Mobilgeräte integrieren, auf denen sie ausgeführt werden: Sie können auf die Kamera zugreifen, Telefonnummern wählen, Standortdaten abrufen und vieles mehr.

Vorteile

  • Einfachere Wartung
    Durch die Verwendung standardmäßiger Sprachen und Regeln zur Website-Programmierung sind Web-Apps genauso einfach zu erstellen und zu aktualisieren wie Websites.
  • Schnellere Entwicklung
    Bei der Entwicklung von Web-Apps wird nur ein einziger Codesatz verwendet, was einen schnelleren und einfacheren Entwicklungsprozess ermöglicht. Und da Web-Apps keine Genehmigung der großen App-Marketplaces benötigen, können sie viel schneller veröffentlicht werden.
  • Geringere Kosten
    Vereinfachte Codierung und schnellere Entwicklungszyklen bedeuten geringere Entwicklungskosten.
  • Optimale Zugänglichkeit
    Web-Apps funktionieren ähnlich wie Websites und sind über jeden Standard-Webbrowser verfügbar.

Nachteile

  • Internetzugang erforderlich
    Da Web-Apps im Webbrowser über das Internet aufgerufen werden, benötigen sie zur Ausführung eine Onlineverbindung. Ohne Zugriff auf WLAN oder mobiles Datennetz können Benutzer nicht auf die App zugreifen.
  • Eingeschränkte Funktionalität
    Web-Apps haben keinen Zugriff auf die nativen Funktionen eines Geräts oder Betriebssystems, was ihre Funktionalität einschränken kann.
  • Keine Verbindung zu App-Marketplaces
    Web-Apps sind nicht über App-Marketplaces erhältlich und können leicht übersehen werden.

Wie sieht der Prozess der App-Entwicklung aus?

Einzelne Entwickler mögen zwar unterschiedliche Ansätze oder Methoden verfolgen, aber der Prozess der App-Entwicklung besteht im Allgemeinen aus sechs Schritten:

1. Idee

Das Entwicklungsteam muss mit anderen Abteilungen und Stakeholdern zusammenarbeiten, um Anforderungen für die zukünftige App festzulegen. Dazu gehören alle Funktionen und Merkmale, die die App benötigt, sowie die Zielgruppe, die sie ansprechen, und die spezifischen Probleme, die sie lösen soll.

2. Entwurf

Nachdem die Idee hinter der App feststeht, werden im nächsten Schritt die Benutzeroberfläche (UI, User Interface) und die Benutzer-Experience (UX, User Experience) für die App entworfen.

3. Entwicklung

In der Entwicklungsphase beginnt die eigentliche Codierung. Die Entwicklungsteams programmieren die App unter Einhaltung der festgelegten Richtlinien. Es finden erste Tests statt mit dem Ziel, die ordnungsgemäße Funktionalität zu gewährleisten.

4. Tests

Wenn sich die App der Fertigstellung nähert, müssen umfangreichere Tests durchgeführt werden. In dieser Testphase wird nicht nur festgestellt, ob die App funktioniert oder ob es zu Fehlfunktionen kommt, die behoben werden müssen, sondern auch die Gesamtqualität und die Benutzer-Experience werden geprüft.

5. Einführung

Nachdem die letzten Tests abgeschlossen sind und die App den gängigen Standards entspricht, kann sie endlich veröffentlicht werden.

6. Marketing

Obwohl das Marketing technisch gesehen kein Teil der App-Entwicklung ist, trägt es dazu bei, dass die harte Arbeit des Entwicklungsteams nicht umsonst ist. Die richtige Marketingstrategie ist entscheidend dafür, dass die Zielgruppe erfährt, dass die App verfügbar ist und was sie für sie leisten kann. Gleichzeitig kann das Marketing wertvolles Feedback generieren, das Entwickler nutzen können, um die App durch weiteren Support zu verbessern.

Welche Komponenten machen eine gelungene Benutzeroberfläche aus?

Der Erfolg nahezu jeder mobilen App hängt davon ab, wie benutzerfreundlich sie ist. Die UI bestimmt, wie die Anwendung aussieht und wie Benutzer mit ihr interagieren. Daher sind für die Erstellung einer effektiven UI bestimmte Komponenten erforderlich:

Informationsarchitektur

Bei der Erstellung der Informationsarchitektur legen die Entwickler die Funktionalität der App fest und beschreiben gleichzeitig, wie die Benutzeroberfläche aussehen wird.

Wireframes

Wireframes bieten eine einfache visuelle Darstellung der fertigen App, einschließlich der Größe der verschiedenen Elemente und ihrer Beziehung zueinander im Rahmen des Layouts.

Styleguides

Styleguides sind Richtlinien, die wichtige Informationen über die App enthalten, damit das Design durchgängig einheitlich bleibt.

Mockups

Auf Grundlage von Wireframes und Styleguides zeigen Mockups den Ablauf der App in Form einer statischen Visualisierung.

Prototypen

Ein Prototyp ist eine Basisversion der funktionierenden App, die alle vorherigen Komponenten enthält oder daraus abgeleitet ist. Prototypen geben Entwicklern einen dynamischen Einblick in die Funktionsweise der App, bevor sie vollständig fertiggestellt ist. So können sie Bereiche identifizieren, in denen die UI und UX zu wünschen übrig lassen. Hierdurch steigt die Chance, dass das fertige Produkt die Erwartungen der Benutzer erfüllt oder übertrifft.

Preisgestaltung für App Engine So bringen Sie neue Unternehmens-Apps in der halben Zeit und zu einem Drittel der Kosten auf den Markt. Zur Preisgestaltung
App-Entwicklung mit ServiceNow

Um wettbewerbsfähig zu bleiben. ist die Entwicklung zuverlässiger, leistungsstarker Apps in der immer vernetzteren Geschäftswelt von heute ein Muss. ServiceNow, der führende Anbieter von IT-Management-Lösungen, bietet Lösungen für die App-Entwicklung, um sicherzustellen, dass jedes Unternehmen einfachen Zugriff auf fortschrittliche Tools und Ressourcen für Konzeptfindung, Entwicklung, Veröffentlichung und Verwaltung ansprechender und effektiver Anwendungen hat.

ServiceNow Mobile Studio bietet Unternehmen alles, was sie brauchen, um eigene mobile Apps zu erstellen, ohne dass eine Armee von Entwicklern oder umfassende Programmierkenntnisse erforderlich sind. Mit sofort einsatzbereiten Vorlagen, Drag-and-Drop-Funktionen und benutzerfreundlichen Branding-Optionen macht Mobile Studio die App-Entwicklung zum Kinderspiel. Und die Konfigurationstools von ServiceNow Mobile App Builder gehen sogar noch einen Schritt weiter und bieten eine verbesserte Organisation, Transparenz und Anleitung bei der App-Erstellung.

Erste Schritte mit Creator Workflows Verbinden Sie Ihr Unternehmen mithilfe von digitalen Workflows mit der Now Platform. App Engine entdecken Kontakt
Ressourcen Artikel Was ist ServiceNow? Was ist Hyperautomation? Was ist Low Code? Analystenberichte Gartner nennt ServiceNow einen Marktführer im Bereich Low-Code-Plattformen Forrester: Hyperautomation für transformative Geschäftsergebnisse Forrester nennt ServiceNow einen Marktführer für digitale Prozessautomatisierungssoftware Datenblätter Now Assist for Creator Mit ServiceNow App Engine jeden Workflow digitalisieren, automatisieren und steuern Mobile Apps von ServiceNow E-Books Low-Code-App-Entwicklung skalieren Anwendungsentwicklung ohne Überschuss Vier Schritte zur Automatisierung und Vernetzung Ihres Unternehmens Whitepaper Low Code für Unternehmen Menschen-orientiertes Arbeiten trotz Hyperautomation