Was ist ALM? Abkürzung: Prozess des Anwendungslebenszyklusmanagements

⚡ Intelligente Zusammenfassung

ALM (Application Lifecycle Management) steuert den Lebenszyklus einer Softwareanwendung von der ersten Spezifikation über Design, Entwicklung, Test und Bereitstellung bis hin zur langfristigen Nutzererfahrung. Governance, Entwicklung und Betrieb bilden die drei Elemente, und sieben definierte Phasen führen von einer Idee zu einem einsatzbereiten Produkt.

  • 🧭 Drei Elemente: Governance steuert Finanzierung und Zugriff, Entwicklung erstellt die Anwendung, und Betrieb betreibt und wartet den eingesetzten Technologie-Stack.
  • 📋 Anforderung Foundation: Das Dokumentieren, Analysieren, Priorisieren und Abstimmen der Anforderungen erfolgt kontinuierlich und wird nicht vor Beginn des Build-Prozesses abgeschlossen.
  • 🔁 Methodiksensibel: Das Wasserfallmodell trennt Betrieb und Entwicklung, während DevOps beides zu einem kontinuierlichen, vollständig integrierten Prozess zusammenführt.
  • 🗂️ Konfigurationskontrolle: Softwarekonfigurationsverwaltung tracks jede Änderung an Code, Dokumenten und zugehörigen Entitäten während des gesamten Lebenszyklus.
  • 🧪 Überprüfungsumfang: Die Tests bestätigen die Einhaltung der festgelegten Anforderungen sowie der Erwartungen der Interessengruppen, die in den Anforderungen nicht erfasst wurden.
  • ️ Werkzeuglandschaft: Kovair ALM Studio, OpenText Anwendungsqualitätsmanagement und Digital.ai Agilität deckt alle Anforderungen bis zum Release ab.

Was ist ALM?

Was ist ALM?

ALM Application Lifecycle Management (ALM) ist ein Prozess, der die Spezifikation, das Design, die Entwicklung und das Testen einer Softwareanwendung umfasst. Er deckt den gesamten Lebenszyklus ab – von der Anwendungsidee über Entwicklung, Test, Bereitstellung und Support bis hin zur Benutzererfahrung.

Je nach Softwareentwicklungsmethodik (z. B. Wasserfallmodell, agiles Vorgehen oder DevOps) kann ALM in verschiedene Phasen unterteilt werden. Der ALM-Prozess gliedert sich im Wesentlichen in drei Elemente: Governance, Entwicklung und Betrieb.

ALM-Prozess

Hier die wichtigsten Bereiche des ALM:

Governance

Es umfasst Anforderungsmanagement, Ressourcenmanagement, Datensicherheit, Benutzerzugriff, Überprüfung, Auditierung, Bereitstellungskontrolle und Rollback.

Vorteile guter Regierungsführung:

  • Ausgerichtete Geschäftsstrategie
  • Entwickelnping ein Geschäftsfall
  • Bietet kontinuierliche Überwachung
  • Finanzierung von Projekten, die den höchsten Wert liefern
  • Klare Verantwortlichkeit und Kontrolle

Anwendungsentwicklung

Dazu gehören die Identifizierung aktueller Probleme, die Planung, das Design, die Entwicklung, das Testen und die Bereitstellung der Anwendung. Dieser Bereich umfasst die traditionellen Rollen des Entwicklers und App-Erstellers.

Anwendungsbetrieb

Dieser Bereich umfasst die Bereitstellung der Anwendung und die Wartung des Technologie-Stacks. Im Wasserfallmodell der Softwareentwicklung ist der Betrieb eine von der Entwicklung getrennte Phase. Ein DevOps-Team integriert Betrieb und Entwicklung in einen vollständig integrierten, kontinuierlichen Prozess.

Warum ist ALM wichtig?

Die Hauptgründe für den Einsatz von ALM sind:

  • Sie erhalten einen guten Überblick über den Projektstatus.
  • Teams sind in der Lage, effektiv zu kommunizieren.
  • Die Anforderungen sind leicht zu definieren und track.
  • Die Software wurde ausreichend getestet.
  • Die Kosten für Wartung und Betrieb der Lösung bleiben begrenzt.

ALM vs. SDLC: Wie unterscheiden sie sich?

ALM und der Softwareentwicklungslebenszyklus (SDLC) werden häufig synonym verwendet, was zu Verwirrung führt, wenn Teams versuchen, eines der beiden Systeme einzuführen. Der SDLC ist jedoch in ALM integriert und nicht parallel dazu angeordnet.

Aspekt SDLC ALM
Geltungsbereich Erstellen der Software Der gesamte Produktlebenszyklus, von der Idee bis zur Außerdienststellung
Beginnt bei Anforderungen an einen Aufbau Der erste Business Case
Endet bei Veröffentlichung dieser Version Außerbetriebnahme der Anwendung
Beinhaltet Governance Nein Ja – Finanzierung, Zugang, Prüfung, Einhaltung
Anzahl der Zyklen Ein Exemplar pro Veröffentlichung Viele SDLC-Zyklen im Laufe eines Anwendungslebenszyklus

Eine Anwendung durchläuft typischerweise viele SDLC-Iterationen, bleibt aber innerhalb eines einzigen ALM-Lebenszyklus. Dieses Verständnis der Verschachtelung erklärt, warum die folgenden Phasen weit über den Zeitpunkt der Codeauslieferung hinausgehen.

Phasen von ALM (Application Lifecycle Management)

Phasen von ALM (Application Lifecycle Management)

Hier sind die verschiedenen Phasen von ALM:

1) Anforderungsmanagement

Anforderungsmanagement ist die erste Phase des Application Lifecycle Managements (ALM). Es hilft Ihnen, Anforderungen zu dokumentieren, zu analysieren und zu überprüfen. track, priorisieren und die Anforderungen abstimmen. Dies ist ein kontinuierlicher Prozess, der sich durch den gesamten Projektlebenszyklus zieht. Siehe auch unsere Liste der besten Anforderungsmanagement-Software.

2) Design

Designmanagement ist ein Prozess, der durch verbesserte Benutzerfreundlichkeit zur Steigerung der Kundenzufriedenheit und -loyalität beiträgt. Es prägt außerdem die Interaktion zwischen Kunde und Produkt.

3) Build-Management

Build-Management, auch Code-Management genannt, ist der Prozess der Umwandlung von Quellcodedateien in eine eigenständige Softwarekomponente. In dieser Phase wandelt sich eine Anwendungsidee in eine reale Anwendung.

In dieser Phase wird die Anwendung erstellt, getestet und bereitgestellt, und der Tester beginnt mit der Vorbereitung von Testfällen und dem Schreiben von Testskripten für die Testphase.

4) SCM

Softwarekonfigurationsmanagement (SCM) ist die ALM-Phase, in der das Entwicklungsteam Änderungen an Dokumenten, Code und anderen Entitäten während des Anwendungsentwicklungslebenszyklus systematisch organisiert, verwaltet und kontrolliert.

5) Operafunktionen und Wartung

In dieser Phase beginnen Überwachung, Verwaltung und kontinuierliche Weiterentwicklung der Anwendung. Im DevOps-Kontext umfasst diese Phase die Bereiche „Release“, „Konfiguration“ und „Überwachung“.

In dieser Phase werden Fehler gefunden und behoben. Sie hilft Ihnen außerdem, die nächsten Produktaktualisierungen zu planen und zu priorisieren.

6) Testmanagement

In der Testphase überprüfen die Tester, ob die Anwendung die in den ersten Schritten des Prozesses definierten Anforderungen erfüllt.

Sie stellen außerdem sicher, dass die Anwendung die Erwartungen der Benutzer und die Bedürfnisse aller anderen Stakeholder erfüllt, die sie während ihres gesamten Lebenszyklus unterstützen werden, selbst wenn diese Erwartungen während der Anforderungsphase nicht ausreichend erfasst wurden.

7) Benutzererfahrung

Die Wartung bzw. die Verbesserung der Benutzererfahrung ist traditionell die längste Phase des ALM, gleichzeitig ist es aber auch die Phase, in der die Beteiligung der Test- und Entwicklungsteams in der Regel am geringsten ist.

Sobald die Anwendung entwickelt ist, kommt die Rolle der Nutzer ins Spiel. Sie testen die gesamte Anwendung, teilen ihre Erfahrungen durch Feedback mit und die endgültige Anwendung wird ausgeliefert.

Vorteile von ALM

Hier die Vorteile der Verwendung von ALM:

  • ALM hilft Ihnen, das System durch Organisation und Kontrolle zu steuern. tracKönigliches Werk.
  • Fehler können projektübergreifend geteilt werden, wodurch das Risiko von Doppelbeschädigungen reduziert wird.
  • ALM bietet die Möglichkeit zur Integration mit anderen Testwerkzeugen.
  • Es gibt einer App eine klare Richtung vor, bevor sie erstellt wird.
  • Ohne ALM ist es für ein Softwareentwicklungsteam schwierig, Software mit der Geschwindigkeit und Agilität zu produzieren, die erforderlich ist, um wettbewerbsfähig zu bleiben.
  • ALM liefert Software effizient und mit minimalem Aufwand für das Team.

ALM-Tools

Hier sind einige wichtige ALM-Tools:

1) Kovair ALM Studio

Kovair ist eines der umfassendsten Produkte für das Anwendungslebenszyklusmanagement. Es kann alle Phasen des Entwicklungslebenszyklus von der Anforderungsanalyse bis zur Veröffentlichung abdecken.

Kovair ALM-Studio

Merkmale:

  • Setzen Sie auf eine vollständig webbasierte Lösung ohne clientseitige Software, um den Supportaufwand zu reduzieren.
  • Praktizieren Sie eine beliebige Entwicklungsmethodik: Wasserfall, agil oder hybrid.
  • Implementieren Sie eine konfigurierbare aufgabenbasierte Workflow-Engine für mehr Effizienz und Produktivität
  • Erhalten Sie in jeder umsetzbaren Phase Echtzeitbenachrichtigungen
  • Gewährleisten Sie die vollständige Abdeckung jedes Entwicklungsschritts und ermöglichen Sie so die Einhaltung der Standards.
  • Die Echtzeit-Anzeige des Artefaktstatus wird ermöglicht, was die Transparenz und die Vorhersagbarkeit der Veröffentlichung erhöht.

Link: https://www.kovair.com/alm-studio/

2) OpenText Anwendungsqualitätsmanagement (ehemals Micro Focus ALM)

Dieses Tool unterstützt schlanke, agile und DevOps-Entwicklungsmethoden und hilft dabei, …ping Unternehmen können Software schneller veröffentlichen. Teams jeder Größe können so qualitativ hochwertige Anwendungen in kürzerer Zeit bereitstellen. Das Produkt hat mehrmals den Besitzer gewechselt: Es wurde ursprünglich entwickelt von Mercury, von HP übernommen, an Micro Focus übertragen und seitdem OpenText Micro Focus wurde im Januar 2023 übernommen. Es wurde verkauft als OpenText Anwendungsqualitätsmanagement.

OpenText Anwendungsqualitätsmanagement

Merkmale:

  • Liefert Apps schnell, qualitativ hochwertig und skalierbar
  • Ermöglicht es den Beteiligten, zu interagieren und sich abzustimmen, um die Projektziele zu erreichen.
  • Bietet robuste tracKönig und Berichterstattung sowie nahtlose Integration projektbezogener Aufgaben
  • Ermöglicht detaillierte Projektanalysen und effektives Management
  • Verbindet sich mit E-Mail-Systemen und benachrichtigt Teammitglieder über Änderungen

Link: https://www.opentext.com/products/application-quality-management

3) Digital.ai Agility (ehemals VersionOne)

Agility vereinfacht die Produktplanung durch unkompliziertes Backlog-Management. Es ist darauf ausgelegt, DevOps und bietet durchgängige, kontinuierliche Bereitstellung über eine Drag-and-Drop-Oberfläche. Das Produkt wurde als VersionOne eingeführt, wechselte zu CollabNet und wird nun unter folgendem Namen ausgeliefert: Digital.ai Agilität.

Digital.ai Agilität

Merkmale:

  • Ermöglicht Benutzern die Priorisierung von Stories und Fehlern per Drag & Drop.
  • Geschäftsinitiativen mit Portfolioelementen verwalten
  • Ermöglicht das Gruppieren von Elementen nach Thema
  • Liefert Ergebnisse gemäß den Geschäftszielen
  • Erfasst alle Funktionswünsche an einem Ort
  • Hilft dabei, die Übereinstimmung zwischen Unternehmenszielen und Produktleistungen sicherzustellen.
  • Bietet dem Projektmanager Einblicke und vollständige Transparenz.

Link: https://digital.ai/products/agility/

Die Wahl des Werkzeugs ist weniger wichtig als die Art und Weise, wie der Prozess im Alltag angewendet wird, was die beiden nachstehenden Szenarien veranschaulichen.

Anwendungsszenario von ALM aus Entwicklersicht

  • Der Entwickler beginnt mit der Arbeit und überprüft die ihm zugewiesene Aufgabenliste.
  • Sie prüfen die Aufgaben nach Priorität und wählen eine aus.
  • Sie ändern den Status der Aufgabe auf „In Bearbeitung“.
  • Sie laden Code aus dem Quellcode-Repository herunter.
  • Sie implementieren einen Unit-Test mit dem Testframework.
  • Sie führen den Test mit dem Standard-Build-Skript durch. Code Inspektionsberichte weisen auf illegale Namenskonventionen oder potenzielle Fehler hin.
  • Sie korrigieren den Code und führen den Test erneut aus.
  • Sobald die Abdeckungsrate das Ziel erreicht, wird der Code mit der Aufgaben-ID eingecheckt.
  • Anschließend prüfen sie den Code und führen das Build-Skript aus.
  • Der Code wird kompiliert und auf dem Staging-Rechner bereitgestellt.
  • Der Testfall wird ausgeführt. Falls ein Fehler auftritt, wird automatisch eine Benachrichtigung an den Entwickler und den Projektmanager gesendet.
  • Der Entwickler setzt den Code im Quellcode-Repository und auf dem Staging-Rechner zurück.
  • Wenn der Test erfolgreich ist, werden Codeinspektion und Abdeckungsanalyse durchgeführt. Jedes Problem wird gemeldet; andernfalls wird der Entwickler darüber informiert, dass alle Implementierungen erfolgreich abgeschlossen wurden.
  • Sie erfassen ihren Arbeitsverlauf im Aufgabenverwaltungssystem.
  • Der Projektmanager wird darüber informiert, dass die Aufgabe erledigt ist, und prüft das Ergebnis.

Anwendungsszenario von ALM aus Sicht eines Projektleiters

  • Der Projektleiter öffnet einen Webbrowser und ruft die ALM-Dashboard-Seite auf.
  • Jedes Projekt hat seine eigene Dashboard-Seite.
  • Es zeigt die Anzahl der offenen Aufgaben, die Anzahl der ausstehenden Aufgaben und alle kritischen Aufgaben an, die offen sind.
  • Das Dashboard informiert den Projektleiter über potenzielle Risiken und zeigt den allgemeinen Projektstatus an.
  • Jeder Commit und jede Änderung wird automatisch gemeldet.
  • Der ALM-Prozess macht daher ein Meeting oder einen Anruf zur Überprüfung des Continuous-Integration-Status kritischer Aufgaben überflüssig.

Häufig gestellte Fragen

Nein. ALM ist die Disziplin; HP ALM ist ein Produkt, das dies umsetzt. Dieses Produkt wird nun verkauft als OpenText Anwendungsqualitätsmanagement nach dem Durchlaufen Mercury, HP und Micro Focus.

Die Verantwortung ist geteilt. Die Steuerung liegt üblicherweise beim Produkt- und Portfoliomanagement, die Entwicklung bei den technischen Leitern und der Betrieb beim Plattform- oder DevOps-Team. Ein einzelner Verantwortlicher für den gesamten Lebenszyklus ist selten.

AI Erstellt Anforderungen anhand von Stakeholder-Notizen, generiert Testfälle aus diesen Anforderungen, prognostiziert, welche Änderungen das höchste Fehlerrisiko bergen, und fasst die Release-Bereitschaft für Governance-Reviews zusammen.

Teilweise. KI kann durch den Abgleich von Sprache und Änderungshistorie Verbindungen zwischen Anforderungen, Testfällen und Commits vorschlagen. In regulierten Umgebungen ist jedoch weiterhin die Genehmigung durch einen Menschen erforderlich. tracFähigkeitsmatrix vor dem Audit.

Anforderungsabdeckung, Fehlerquote, Durchlaufzeit von der Anforderung bis zur Freigabe und Nacharbeitsanteil. Eine steigende Abdeckung bei gleichzeitig sinkender Fehlerquote deutet auf die Wirksamkeit der Lebenszyklussteuerung hin.

Fassen Sie diesen Beitrag mit folgenden Worten zusammen: