Application Lifecycle Management (ALM)

Software lifecycle management von Anfang bis Ende

Wie sehen die Phasen der Softwareentwicklung aus? Fangen wir einfach ganz vorne an. Ein Leben ohne Smartphone ist für viele nicht mehr vorstellbar. Wir nutzen es als Kommunikationsmittel, als Navigationsgerät oder um einen guten Italiener und die nächste Tankstelle zu finden. Aber nicht nur im privaten Bereich unterstützt uns das mobile Gerät bei unseren Aufgaben, auch Firmen haben die Vorteile von Business Apps erkannt. Die Nutzer erwarten dabei eine ähnliche Handhabe und Mehrwert wie sie es von ihren privaten Apps kennen.

Sehen wir uns einen typischen Vormittag von Rainer Müller, Qualitätsprüfer bei einem großen Logistikkonzern an.

Es ist 7:00 Uhr morgens. Der erste Blick beim Aufwachen gilt dem Handy. Beim Frühstück überfliegt Herr Müller die Schlagzeilen des heutigen Tages, die ihm eine App übersichtlich zusammengefasst präsentiert. Er überprüft die Verkehrslage für seinen Weg zur Arbeit. Er hat freie Fahrt und kommt pünktlich um 8:00 Uhr zu seinem Arbeitsplatz. Im Lager nimmt er erstmal ein Tablet zur Hand und ruft das Ticketsystem ab. Bei der Inspektion der Bauteile trägt er seine Beobachtungen in eine Formvorlage ein. Nachdem ihm auf dem Tablet eine Warnung angezeigt wird, schaut sich Herr Müller eine defekte Maschine an und zieht zur Reparatur einen Experten per Remote Call zu Rate.

An einem einzigen Vormittag hat Herr Müller bereits bis zu sechs Apps benutzt, die ihm sowohl im privaten als auch beruflichen Alltag das Leben erleichtern. So oder so ähnlich kennen das wohl die Meisten. Doch wie entstehen Apps? Das haben wir in unserem Whitepaper aufgeschlüsselt.

Die 6 Phasen der Softwareentwicklung

Application Lifecycle Management (kurz: ALM) bezeichnet die Begleitung einer Anwendung über deren gesamten Lebenszyklus hinweg. Im Zuge der Digitalisierung nimmt das Thema ALM für Unternehmen mehr und mehr an Bedeutung zu. Business-Prozesse, Geschäftsmodelle und Produkte stehen in einem konstanten Wandel. Die IT-Abteilungen innerhalb der Unternehmen müssen daraufhin ihre Systeme immer schneller anpassen sowie neue etablieren.

ALM behandelt und verzahnt die Anwendungsentwicklung (Anforderungen, Design und Entwicklung) und den Anwendungsbetrieb (Ausrollen, Betrieb und Optimierung) gleichermaßen. Das Phasenmodell sorgt dafür, dass die einzelnen Schritte der Realisierung eingehalten und kontinuierlich geprüft werden. Nachfolgend wird auf die einzelnen Bereiche näher eingegangen.

Durch ALM soll eine Steigerung der Gesamtqualität der Software sichergestellt werden. Die Standardisierung der einzelnen Schritte sorgt für mehr Effizienz und eine bessere Zusammenarbeit zwischen Entwicklungsteam und Anwender. Innerhalb der Softwareentwicklung gibt es verschiedenste Ansätze und Strategien, beispielsweise das Wasserfallmodell oder das iterative Modell. Allen gemeinsam sind jedoch sechs grundsätzliche Phasen:

  • Anforderungsanalyse
  • Design (Planung)
  • Umsetzung
  • Test
  • Veröffentlichung
  • Instandhaltung

Das ALM-Phasenmodell

Application Lifecycle Management

1. Anforderungsphase

Die initiale Phase des Application Lifecycle Management umfasst eine Anforderungsanalyse. Dazu zählt die Ermittlung und Analyse des Bedarfs. Die Grundausrichtung der Anwendung orientiert sich dabei meist an der strategischen Planung des Unternehmens. Aus diesem Grund ist es in der ersten Phase besonders wichtig, so konkret wie möglich zu verstehen, was das Unternehmen mit der Anwendung erreichen möchte. Außerdem sollte festgelegt werden, welche Bestandteile die Applikation auf jeden Fall haben sollte und welche auch noch im späteren Verlauf hinzukommen können.

Das Ergebnis dieser Phase ist ein Lasten- und Pflichtenheft, welches die Inhalte und Umsetzungsrichtlinien klar definiert. Hinzu können erste Mockups und Designentwürfe kommen.

2. Konzeptionsphase

In der Konzeptionsphase werden die Anforderungen aus der ersten Phase in Funktionalitäten übersetzt und die benötigte Architektur definiert. Der Fokus liegt dabei auf der Auswahl geeigneter Lösungsansätze. Während dieser Phase kann es immer wieder zu Rücksprüngen in die Anforderungsphase kommen, wenn Details nicht gut genug ausgearbeitet wurden.

Das Resultat der Konzeptionsphase ist ein Grob- und ein Feinkonzept. Hinzu können Konzepte für Design, Software-Architektur, Release Management und Test Management kommen.

3. Entwicklungsphase

Die Entwicklungsphase beinhaltet die Umsetzung der Applikation und Architektur. Wesentliche Meilensteine dieser Phase sind Aufsetzen der Entwicklungs- und Abnahmeumgebungen, Entwicklung der Software, Dokumentation sowie die Installation der Lösungen in der Integrationsumgebung.

Die Ergebnisse dieser Phase sind verschiedene Handbücher für Installation, Administration und Bedienung sowie durch den Entwickler ausgeführte, bedarfsgerechte Test-Szenarien und Unit Tests.

4. Qualitätssicherungsphase

Die Qualitätssicherungsphase startet mit dem Abschluss der eigentlichen Software-Entwicklungs- und Programmierarbeiten und dem Beginn des Abnahmeprozesses. Der Entwickler testet dabei die Software auf einer Entwicklungs- oder Integrationsumgebung. Des Weiteren werden alle erstellten Dokumente und Test-Szenarien nochmals überprüft. Sollten bei diesem Prozess Fehler gefunden werden, findet ein Rückkoppelungsprozess statt. Die Fehler werden dabei dokumentiert und an das Realisierungsteam zurück gespiegelt. Nacharbeit- und Prüfungsphase wechseln sich dabei so lange ab, bis kein Fehler mehr an der Anwendung gefunden wird.

Nachdem von Seiten des Entwicklungsteams grünes Licht gegeben wird, kann die Abnahme an das Unternehmen bzw. den Anwender erfolgen. Werden auch hier keine Fehler mehr entdeckt, gilt die Qualitätssicherungsphase als abgeschlossen.

Ergebnisse dieser Phase ist eine intern und extern getestete Anwendung sowie ein Abnahmeprotokoll.

5. Product-Release Phase

In der Product-Release Phase finden der Roll-out und Go-Live statt. Hinzu kommt das Versioning, bei dem sichergestellt werden muss, dass jede Version beim Anwender bzw. Unternehmen wartbar bleibt und auch zukünftig Bugfixes durchgeführt werden können.

Zusätzlich sollten in dieser Phase alle Anwender mit der Software vertraut gemacht werden und gegebenenfalls Schulungen durchgeführt werden.

6. Wartungs- und Optimierungsphase

Die Wartungs- und Optimierungsphase findet meist im Hintergrund statt, ohne dass der Anwender etwas davon mitbekommt. Während die Applikation bereits im Einsatz ist, wird diese von einem Support Team betreut, um gegebenenfalls auftretende Fehler schnell zu beheben.

Modernes Application Lifecycle Management mit Simplifier

Videoinhalt:

In diesem Webinar erzählen wir Ihnen, wie wir unsere App Entwicklung umgekrempelt haben – und wie Sie das auch tun können.

  • Warum sollte Application Lifecycle Management für mich ein Thema sein?
  • Warum jetzt?
  • Wie gestalten sich mit dem Simplifier die unterschiedlichen Phasen aus Planung, Entwicklung, Testen, Release und Wartung/Optimierung?