Hand, die ein Smartphone hält - grafisch fliegen Apps heraus © ra2 studio auf Adobe Stock

Teil 4: Vom App Release zum App Lifecycle Management

App Lifecycle Management by SPIRIT/21 - Teil 4: Worauf es beim Onboarding, Deployment und Deprovisioning ankommt.

Vom App Release zum App Lifecycle Management

In den vorherigen Beiträgen unserer Artikelserie zum Thema Application Lifecycle Management haben wir beschrieben, wie Apps effizient bereitgestellt werden, welche Hürden sich dabei auftun können und wie diese zu überwinden sind. Sollen jedoch einzelne Applikationen über ihren gesamten Lebenszyklus hinweg oder gar ein kompletter Applikationsbestand mit einer Vielzahl an Endgeräten verwaltet werden, kommen weitere wichtige Komponenten ins Spiel. 

„Application Lifecycle Management (ALM) beschreibt den gesamten Lebenszyklus einer Anwendung, von der ersten Idee bis zur Löschung.“ – SPIRIT/21

Bei SPIRIT/21 gliedern wir ganzheitliches App Lifecycle Management in drei zusammenhängende Phasen: Onboarding, Deployment und Deprovisioning. Im Folgenden wird detaillierter betrachtet, welche Aufgaben in den einzelnen Phasen zu bewältigen sind und an welcher Stelle Standardsoftware und individuelle Lösungen von SPIRIT/21 zum Erfolg beitragen können.

Onboarding: Consulting und Testen als Kernthemen

Der Lebenszyklus einer Applikation startet in der sogenannten Onboarding-Phase, die schon weit vor der eigentlichen App-Entwicklung beginnt. Der Mehrwert besteht darin, die Fachbereiche als wichtige Stakeholder von Beginn an zu beraten und Best-Practices vorzustellen. Fragen zur technischen und organisatorischen Machbarkeit oder bestmöglichen Integration in die Unternehmensinfrastruktur können hier bereits geklärt werden, bevor erste Gespräche mit den Entwicklungsteams geführt werden. Als Grundlage für das Consulting ist es wichtig, einen genauen Überblick über den gesamten App-Bestand zu haben. Hier bringen integrierte Lösungen von SPIRIT/21 wertvolle Vorteile: Mehrfach-Entwicklungen können verhindert, die Rentabilität von Apps erhöht und signifikante Kosten innerhalb der Organisation eingespart werden. Weitere Synergien lassen sich z.B. durch den Aufbau einer Code-Bibliothek für App-übergreifende Module oder mit Hilfe eines Entwickler-Leitfadens generieren, der Informationen zu vereinbarten Standards, Richtlinien und Vorgehensweisen zentral zur Verfügung stellt.

Beim Test- und Qualitätsmanagement spielen neben den technisch vorgegebenen Prozessschritten vor allem die Aufgabenbeschreibungen der beteiligten Stakeholder eine zentrale Rolle. Werden die Beteiligten in die Abläufe stärker eingebunden und ihre Verantwortlichkeiten ausgeweitet, führt dies erfahrungsgemäß zu einer höheren Motivation, mehr Zufriedenheit und damit zu geringeren Fehlerquoten. Vor diesem Hintergrund kann der Genehmigungs-Workflows z.B. so konfiguriert werden, dass Produktverantwortliche oder Entwickler-Teams, die Berechtigung erhalten, Applikationen selbständig in den Prozess einzuspeisen oder an ausgewählte Test-/Pilotgruppen zu verteilen. Indem Apps vorab im produktiven System getestet werden, lässt sich die Qualität der verteilten Applikationen deutlich erhöhen. Denn so können Fehler, die in einer dedizierten Testumgebung oder auf dem Testgerät des Entwicklers nur schwer auszumachen sind, vermieden werden, z.B. falsche App-Parameter, inkorrekte Zertifikate oder fehlende Freischaltungen auf andere Systeme.

Deployment: Risken beim Rollout reduzieren – mit Lösungen von SPIRIT/21

Beim Rollout von Apps besteht immer ein gewisses Risiko, die Stabilität der laufenden Systeme zu gefährden. Dies gilt insbesondere für Szenarien, in denen UEM-Systeme on-premises betrieben werden und eine hohe Anzahl an Endgeräten verwaltet wird. In diesem Fall kann die Verteilung dazu führen, dass Routineaufgaben bzw. Kernfunktionen wie Geräteregistrierung und Zuweisungen von Konfigurationen verzögert werden und das System im schlechtesten Fall zum Absturz gebracht wird. Daneben sollte stets auch die Bandbreite des Netzwerkes im Auge behalten werden. Denn aufgrund der ständig zunehmenden Dateigröße kommen bei der Verteilung von Apps an mehrere tausend Endgeräte schnell nennenswerte Datenmengen zusammen.

Vor diesem Hintergrund haben wir für unsere Rollout-Projekte individuelle Lösungen entwickelt. Sie erlauben es, Applikationen und Konfigurationen zeitgesteuert und in Chargen zu verteilen. Dies ermöglicht zum einen die Verlagerung der Last außerhalb der regulären Bürozeiten und zum anderen die Aufteilung in systemverträgliche Pakete über einen definierten Zeitraum hinweg. Ein weiterer wichtiger Aspekt ist die Verteilung von Apps an bestimmte Zielgruppen. Hier können auch Parameter berücksichtigt werden, die das UEM-System selbst nicht bereithält. Dazu greifen wir via API auf unterschiedlichste Backend-Systeme zu und verknüpfen in unseren Lösungen organisatorische und technische Daten aus den UEM-Systemen. So können Apps an individuell definierte Zielgruppen dynamisch verteilt werden. Verändern sich die Zielgruppen im Laufe der Zeit werden diese Modifikationen ebenfalls abgebildet.

Operations: Apps im laufenden Betrieb überwachen und pflegen

Die Überwachung von Provisioning-Profilen und Push-Zertifikaten sind wichtige Aufgaben im laufenden Betrieb. Denn sobald Profile und Zertifikate abgelaufen sind, können Applikationen nicht mehr installiert und innerhalb der App Benachrichtigungen nicht mehr versendet werden. Um diese elementaren Funktionalitäten zu erhalten, überwacht incapptic Connect die Ablauftermine. Systemadmin und Produktverantwortliche werden rechtzeitig informiert und können so ein entsprechendes Renewal direkt im Tool veranlassen. Wichtig für den Betrieb ist in diesem Zusammenhang noch ein weiterer Aspekt: „App-Konfigurationen“ müssen im Laufe ihres Lebenszyklus öfter angepasst werden. Denn erfahrungsgemäß kommen nach dem Deployment immer wieder neue Features hinzu. Gleichzeitig ändern sich Schnittstellen, wie Betriebssystem, Backend, Herstellervorgaben oder Unternehmensrichtlinien. Beides wirkt sich auf die Funktionalität der App aus.

Erweitertes Reporting von SPIRIT/21: Auswertung verschiedener Nutzungskriterien

Sobald eine App verteilt ist, will erfahrungsgemäß jeder wissen, wie sie genutzt wird. Meist liest das UEM-Team dazu die Installationszahlen der Applikation(en) aus und erstellt regelmäßig spezielle Reports für Fachbereiche und Produktverantwortliche. Der Einsatz von incapptic Connect bietet hier für beide Seiten eine Reihe von Vorteilen: Dadurch, dass die Installationszahlen pro App-Version grafisch aufbereitet werden, können sich die Verantwortlichen direkt anhand der Daten aus dem UEM-System einen anschaulichen Überblick über die Verbreitung der App verschaffen. Und für das UEM-Team entfällt das manuelle Erstellen von Reports.

In großen Umgebungen reicht jedoch die Auswertung von Installationszahlen allein nicht aus. Um Applikationen optimieren zu können, stellen die Fachbereiche tiefergehende Fragen: Wer nutzt die App? Spricht die App meine Zielgruppe an? Wenn ja, auf welchem Gerät wird die App genutzt? Um diese und ähnliche Fragestellungen zu beantworten, bietet SPIRIT/21 eine flexible Lösung, mit der gezielte Auswertungen App-spezifisch durchgeführt werden können. Speziell konfigurierte Dashboards liefern neben den Installationszahlen je nach Anfrage zusätzliche Informationen, wie Gerätetyp, Betriebssystemversion, Management Level oder Lokation. So wird ein erweitertes Reporting möglich.

Deprovisioning: Housekeeping automatisieren mit SPIRIT/21

Betrieb, Fachbereich und Anwender betrachten den Application Lifecycle aus ganz unterschiedlichen Blickwinkeln. Um die Anforderungen der verschiedenen Stakeholder unter einen Hut zu bringen, hat SPIRIT/21 eine integrierte Lösung entwickelt: Sie hilft dem Betrieb, ungenutzte Applikationen zu bereinigen, unterstützt den Fachbereich Aktualisierungen zeitnah zu verbreiten und versorgt die Anwender mit den nötigten Informationen.

Dazu sondiert die Lösung kontinuierlich den App-Bestand auf einem oder mehreren UEM-System(en) und prüft, welche Versionen einer Applikation vorhanden sind und welche verwendet werden. Durch ein konfigurierbares Regelwerk kann beispielsweise festgelegt werden, dass produktive Apps nur in maximal drei Versionen vorhanden sein dürfen. Applikationen, die zu Testzwecken verteilt wurden, könnten hingegen auf maximal eine Version beschränkt werden.

Apps, die keine Installationszahlen aufweisen, werden automatisiert gelöscht. Gibt es mehrere Versionen auf den Geräten, werden die Anwender, die eine ältere Version im Einsatz haben, mit regelmäßigen E-Mail- und Push-Benachrichtigungen über anstehende Updates informiert. Sofern es sich bei dem Endgerät um ein „Supervised-Device“ handelt, wird die Aktualisierung direkt durchgeführt. Die Iterationen dieses Prozesses sind dabei frei definierbar. In der Praxis hat sich gezeigt, dass ein Turnus von zwei bis drei Durchläufen ausreichend ist, um die neueste Version einer App größtenteils zu verbreiten. Nachdem der Prozess durchlaufen ist, wird die älteste Version gelöscht. Sollte ein Anwender diese noch installiert haben, verschwindet sie vom Endgerät. Sofern der Anwender die App wieder nutzen möchte, muss sie nun in der aktuellen Version aus dem Unternehmens-App-Store heruntergeladen werden. Sämtliche Aktionen werden innerhalb der SPIRIT/21 Lösung protokolliert, um den Prozess insbesondere für geschäftskritische Applikationen und Anwender transparent zu gestalten.

Deletion: Ungenutzte Applikationen regelmäßig und richtig löschen

Apps mit Unterstützung von Lösungen, wie incapptic Connect, schneller, sicherer und in der gewünschten Qualität bereitzustellen, bringt viele Vorteile mit sich. Doch eine schnelle Bereitstellung führt auch zu einer wachsenden Zahl neuer Applikationen und kürzeren Aktualisierungsintervallen. In großen UEM-Umgebungen, die im eigenen Unternehmen gehostet werden, kann dies schnell zu Problemen mit dem Systemspeicher führen, wenn ungenutzte oder veraltete Applikationen nicht in ähnlicher Geschwindigkeit wieder aus dem UEM-System entfernt werden.

Das Entfernen einer App mag zwar einfach klingen, doch ganz so einfach ist es erfahrungsgemäß nicht. Denn das Löschen der App durch den Administrator ist meist nur eine Markierung zur Löschung. Das eigentliche Entfernen aus der Datenbank und damit auch dem Systemspeicher erfolgt erst später in festgelegten Intervallen. In großen Umgebungen ist dieser Turnus meist nicht annähernd so kurz wie er sein sollte. Das bedeutet, dass sich die zu löschenden Applikationen im Speicher aufstauen, u.a. die Größe des System-Backups beeinflusst. Dementsprechend kann sich eine hohe Anzahl an Deployments nicht nur negativ auf den eigentlichen Betrieb auswirken, sondern im schlimmsten Fall auch die Wiederherstellung des Systems unnötig in die Länge ziehen. Diese Schwierigkeiten lassen sich einerseits durch Harmonisierung von Deployments und Löschintervallen aus dem Weg räumen. Andererseits helfen regelmäßige Löschaktionen in definierten Wartungsfenstern Speicherplatz in der Datenbank freizuräumen.

Dieser Beitrag rundet unsere Artikelserie zum Thema App Release Management ab. Unser Anliegen war es, Ihnen einen Überblick über das Thema und einen Einblick in das App Lifecycle Management by SPIRIT/21 zu geben. Wir hoffen, dass uns dies gelungen ist. Falls wir dabei nicht alle für Sie relevanten Fragen beantworten konnten, freuen wir uns über Ihre Kontaktaufnahme. Unser UEM-Team berät Sie gerne und zeigt Ihnen individuelle Lösungsansätze auf, wie Sie den Lifecycle Ihrer gesamten App-Umgebung sicher und effizient gestalten. 

App Lifecycle Management

info@spirit21.com

Im App Lifecycle Management werden alle Aspekte der Anwendungsverwaltung, von der Einführung bis zur Fehlerbehebung, effizient gesteuert. Dies beinhaltet die Unterstützung bei Rollouts und die enge Zusammenarbeit mit verschiedenen Teams, darunter Entwickler und Fachbereiche.

Weitere Beiträge