Konzept: Hauptfunktionalität von Unified Method Architecture (UMA)
Unified Method Architecture (UMA) ist ein Metamodell für die Prozessentwicklung, das Schema und Terminologie für die Darstellung von Methoden definiert, die sich aus Methodeninhalt und Prozessen zusammensetzen.
Hauptbeschreibung

Das Metamodell Unified Method Architecture (UMA) wurde zur Vereinheitlichung unterschiedlicher Methoden- und Prozess-Engineering-Sprachen, wie z. B. der SPEM-Erweiterung zu UML für Softwareprozess-Engineering, der für RUP v2003, Unified Process, IBM Global Services Method verwendeten Sprachen und IBM Rational Summit Ascendant, entwickelt. Als solches stellt es Konzepte und Funktionen aus allen diesen Quellenmodellen bereit und vereinheitlicht sie auf eine konsistente Weise. Jede dieser Quellenmethoden kann jedoch weiterhin mit ihren spezifischen Merkmalen beschrieben werden. Dieses Konzept bietet Ihnen eine allgemeine Übersicht über die Funktionalität von UMA.

Trennung von Methodeninhalt und Prozess

UMA ermöglicht eine klare Trennung von Methodeninhaltsdefinitionen und ihrer Anwendung in Prozessen. Dies wird wie folgt erreicht.

  • Wiederverwendbarer zentraler Methodeninhalt wird in Form allgemeiner Inhaltsbeschreibungen, z. B. Rollen, Aufgaben, Arbeitsergebnissen und Anleitung, gesondert von
  • projekttypspezifischen Anwendungen des Methodeninhalts im Kontext in Form von Prozessbeschreibungen definiert, die auf den Methodeninhalt verweisen.

Der Methodeninhalt enthält schrittweise Erläuterungen dazu, wie bestimmte Entwicklungsziele unabhängig von der Positionierung dieser Schritte innerhalb des Entwicklungszyklus erreicht werden. Prozesse verwenden diese Methodeninhaltselemente und ordnen sie in einer Abfolge an, die an bestimmte Typen von Projekten angepasst werden kann. In einem Softwareentwicklungsprojekt, in dem eine komplett neue Anwendung entwickelt wird, werden beispielsweise ähnliche Schritte ausgeführt wie in einem Projekt, in dem ein vorhandenes Softwaresystem erweitert wird. In den beiden Projekten werden diese ähnlichen Schritte jedoch zu unterschiedlichen Zeitpunkten mit unterschiedlicher Gewichtung und möglicherweise mit individuellen Variationen ausgeführt.

Wiederverwendung von Inhalten

In UMA kann jeder Prozess allgemeinen Methodeninhalt aus einem allgemeinen Methodeninhaltspool referenzieren. Aufgrund dieser Referenzen werden Änderungen, die am Methodeninhalt vorgenommen werden, automatisch in allen Prozessen reflektiert, die diesen Inhalt verwenden. UMA lässt jedoch zu, dass bestimmte methodenbezogene Inhalte innerhalb eines Prozesses überschrieben und individuelle prozessspezifische Beziehungen für jedes Prozesselement definiert werden können (z. B. Hinzufügen eines zusätzlichen Eingabearbeitsergebnisses für eine Aufgabe, Umbenennen einer Rolle oder Entfernen von Schritten, die von einer Aufgabe nicht ausgeführt werden sollen).

Prozessfamilien

UMA unterstützt nicht die Darstellung eines speziellen Entwicklungsprozesses oder die Verwaltung mehrerer voneinander unabhängiger Prozesse, sondern bietet Prozessentwicklern Tools, mit denen sie ganze Familien zusammengehöriger Prozesse konsistent und effektiv verwalten können. UMA realisiert dies durch die Definition der Konzepte Prozessmuster und Bereitstellungsprozesse sowie spezieller wiederverwendbarer Beziehungen zwischen diesen Typen von Prozessen. Diese Konzepte ermöglichen einem Prozessentwickler die Verwaltung konsistenter Familien von Bereitstellungsprozessen, die projekttypspezifisch sind und Variationen desselben Methodeninhalts und derselben Prozessmuster sind. Das Ergebnis sind verschiedene Varianten spezifischer Prozesse, die durch dynamische Wiederverwendung desselben Methodeninhalts und derselben Muster erstellt werden, aber jeweils einen anderen Detaillierungsgrad und Umfang haben, z. B. Prozessvarianten für kleine und große Entwicklungsprojekte.

Mehrere Lebenszyklen

Eine allgemeine Methodenarchitektur muss unterschiedliche Arten und sogar Kombinationen von Lebenszyklusmodellen für Prozessdefinitionen unterstützen, z. B. Wasserfallmodell, iteratives Modell, inkrementelles Modell, evolutionäres Modell usw. Das Metamodell UMA ist so konzipiert, dass es mehrere Lösungen unterstützt. Es bietet eine umfangreiche Auswahl an Konzepten und Anpassungsattributen für die Angabe zeitlicher Aspekte für Prozesselemente wie Phasen, Iterationen, Abhängigkeiten, fortlaufende oder ereignisgesteuerte Arbeit usw.

Flexible Erweiterbarkeit und Plug-in-Mechanismen

Die Methoden-Plug-ins von UMA sind eine einzigartige Möglichkeit, Methodeninhalte und Prozesse anzupassen, ohne den ursprünglichen Inhalt direkt zu ändern. Die Plug-ins beschreiben lediglich die Unterschiede (Hinzufügungen werden als Beiträge und Ersetzungen bezeichnet) im Vergleich mit dem Original. Mit diesem Plug-in-Konzept können Benutzer problemlos einen Upgrade auf neuere Versionen des Methodeninhalts durchführen, ohne ihre Anpassungen zu verlieren.

Mehrere 'Prozesssichten'

UMA definiert mehrere und konsistent verwaltete Sichten von Prozessen. Diese Sichten ermöglichen Prozessentwicklern, das Prozess-Authoring nach persönlichen Präferenzen durchzuführen. Ein Prozessentwickler kann eigene Prozesse definieren und den Fokus dabei auf folgende Punkte setzen:

  • Projektstrukturplan - Eine arbeitsorientierte Sicht, die Aufgaben definiert, die einer bestimmten übergeordneten Aktivität zugeordnet sind.
  • Verwendung des Arbeitsergebnisses - Eine ergebnisbasierte Sicht, die den Status bestimmter Liefergegenstände und Artefakte an verschiedenen Stellen im Prozess definiert.
  • Teambesetzung - Eine zuständigkeitsbasierte Sicht, die die erforderlichen Rollen und die Zuständigkeiten für die Arbeitsergebnisse definiert.

UMA gewährleistet die Konsistenz dieser Sichten, da alle auf einer einzigen integrierten Objektstruktur basieren. In einer Sicht vorgenommene Änderungen werden sofort in den anderen Sichten nachvollzogen.

Wiederverwendbare Prozessmuster

Die Prozessmuster von UMA sind wiederverwendbare Bausteine für das Erstellen neuer Entwicklungsprozesse. Für das Auswählen und Anwenden eines Prozessmusters stehen zwei flexible Methoden zur Verfügung:

  • Ein Muster kann mit einer ausgereiften Kopier- und Änderungsoperation angewendet werden, bei der der Prozessentwickler den Inhalt des Musters individuell während der Anwendung des Musters an seine Anforderungen anpassen kann.
  • Ein Muster kann über dynamische Bindung angepasst werden. Diese einzigartige neue Methode zur Wiederverwendung von Prozess-Know-how bietet die Möglichkeit, wiederholt auftretende Aktivitäten in Mustern abzubilden, die dann in einem Prozess wieder und wieder angewendet werden können. Wenn das Muster überarbeitet oder aktualisiert wird, werden alle Änderungen automatisch in allen Prozessen nachvollzogen, die das Muster anwenden.