• Keine Ergebnisse gefunden

2. Management von Prozessen auf Basis der sprachbasierten Informatik

2.3. Existierende Ansätze aus der agilen Softwareentwicklung

2.3.1. Agilität

Erfolgreiches Geschäftsprozessmanagement zeichnet sich damit aus, dass auf unvorhergesehene Änderungen angemessen reagiert werden kann (z.B. Änderung des real ausgeführten Geschäftsprozesses aufgrund von veränderten Rahmenbedingungen).

Des Weiteren sind die Akzeptanz von Änderungen (z.B. Einführung eines neuen Geschäftsprozesses in eine Organisation) und die Förderung von Wandel (z.B. Nutzung von Anwenderfeedback zur Geschäftsprozessoptimierung) grundlegende Ziele des Geschäftsprozessmanagements [MW13]. Zur Unterstützung derartiger Ziele finden agile Methoden in unterschiedlichen Bereichen (z.B. Softwareentwicklung [HRS09]) ihre Anwendung [Br13b].

Eine einheitliche Definition des Begriffs der Agilität existiert in der Literatur77 nicht.

Highsmith [Hi02a, S.xxiii] beschreibt Agilität78 als die Fähigkeit auf Änderungen reagieren oder selbst einen Wandel einleiten zu können. Hierbei ist nach Highsmith die Agilität einer Organisation relativ und muss mit Mitbewerbern verglichen werden. Eine

„höhere“ Agilität besitzt die Organisation, die im Vergleich zu anderen (in einer turbulenten Geschäftsumgebung) am besten reagieren kann. Als weiteren Aspekt von Agilität nennt Highsmith die Fähigkeit, ein Gleichgewicht zwischen Flexibilität und

77 Leute unterteilt daher in „fünf Strömungen“: 1) Agilität als Verzicht, 2) Agilität als Fokussierung auf den Menschen als Teil eines Systems, 3) Agilität aus der industriellen Produktion, 4) Agilität als Referenzierung des Agilen Manifests und 5) Agilität als Weiterentwicklung der Softwareentwicklung, vgl. weitere Ausführung in [Le14, S.19ff].

78 Vgl. engl. Übersetzung: „Agility is the ability to both create and respond to change in order to profit in a turbulent business environment“.

Stabilität zu schaffen. In [CF04, S.39f] beziehen Conboy & Fitzgerald Agilität79 auf die ständige Bereitschaft re- oder pro-aktiv auf Änderungen reagieren zu können. Als Grundlage von Agilität identifizieren Conboy & Fitzgerald die Kombination von qualitativ hochwertigen, einfachen und wirtschaftlichen Komponenten und der Pflege von Beziehungen mit der Umgebung.

Im Gegensatz zu Highsmith und Conboy & Fitzgerald wird in [Au05, S.20f] Agilität80 nicht aus der Organisationssicht sondern aus Kundensicht definiert. Augustine definiert Agilität als die Fähigkeit nicht vorhersagbaren und dynamischen Wandel zu erkennen und zu adaptieren mit dem Ziel, „Customer value“ trotz des Wandels zu generieren. Des Weiteren nennt Augustine, neben Flexibilität versus Stabilität (vgl. Highsmith) weitere konträre Beziehungen: Ordnung versus Chaos, Planung versus Ausführung, Optimierung versus Erforschung und Kontrolle versus Geschwindigkeit.

Verginadis et al. [Ve13a, S.120] definieren Agilität81 als Fähigkeit bestehende Diskrepanzen so schnell wie möglich zu identifizieren und eine passende Adaption in Zusammenhang mit dem (Neuen, Veränderteren) zu erstellen. Eine weitere Beschreibung von Agilität liefert das Agile Manifest [Be01]. Das Agile Manifest wurde im Jahre 2001 formuliert und besteht aus vier zentralen Werten, sowie zwölf Prinzipien. Es spiegelt die Philosophie der agilen Entwicklung wider [BK13a] und beschreibt somit den Begriff der Agilität grundlegend. Die Tabelle 3 listet die vier Werte des Agilen Manifests.

Tabelle 3:Werte des Agilen Manifest [Be01] (Deutsche Übersetzung)

1 Individuen und Interaktionen mehr als Prozesse und Werkzeuge 2 Funktionierende Software mehr als umfassende Dokumentation 3 Zusammenarbeit mit dem Kunden mehr als Vertragsverhandlung 4 Reagieren auf Veränderung mehr als das Befolgen eines Plans

79 Vgl. engl. Übersetzung: „(…) the continual readiness of an entity to rapidly or inherently, proactively or reactively, embrace change, through high quality, simplistic, economical components and relationships with its environment.”

80 Vgl. engl. Übersetzung: „Agility is the ability to deliver customer value while dealing with inherent project unpredictability and dynamism by recognizing and adapting to change. It is the ability to balance stability with flexibility, order with chaos, planning with execution, optimization with exploration and control with speed to deliver customer value reliably in the face of uncertainty and change.”

81 Vgl. engl. Übersetzung: „Agility is the ability of a subject to lead as quickly as possible, on the one hand, to the detection of its mismatch to a given context, on the other hand, to the setting up of the required adaptation.”

An erster Stelle der Werte stehen Individuen und deren Interaktionen. Anstatt Prozesse und Werkzeuge in den Mittelpunkt zu stellen, nimmt der Mensch die zentrale Rolle ein (vgl. [CH01]). Der zweite Wert beschreibt die Beziehung zwischen funktionierender Software und einer umfassenden Dokumentation. Obwohl eine funktionierende Software im Vordergrund steht, darf nicht dem Irrtum erlegen werden, keine Dokumentation zu erstellen (vgl. [BK13a]). Eine Verfeinerung der Beschreibung des Individuen-Begriffs wird mit dem dritten Wert erbracht. Die Zusammenarbeit mit dem Kunden wird höher bewertet als Vertragsverhandlungen. Eine vertragliche Vereinbarung als rechtliche Grundlage wird hierdurch nicht ersetzt [Pr12]. Dennoch soll die Beziehung zu dem Individuum „Kunden“ gemeinschaftlich sein [Tr12]. Als vierter Wert wird das Reagieren auf Veränderung höher bewertet als das Befolgen eines Plans. Insbesondere bei Unsicherheiten (z.B. ob ein geplantes Implementierungskonzept noch den Anforderungen entspricht) wird das Befolgen eines Plan durch flexibles Reagieren ersetzt. Eine vollständige Planung von Beginn an wird somit nicht unmittelbar notwendig.Basierend auf den vier Werten des Agilen Manifests (vgl. Tabelle 3) werden zwölf Prinzipien definiert [Be01]. Diese Prinzipien verfeinern die in den vier Leitsätzen definierten Werte und dienen zur konkreten Beschreibung der täglichen Arbeit in einem agilen Projekt. In Tabelle 4 werden die Prinzipien dargestellt.

Tabelle 4: Zwölf Prinzipien auf Basis des Agilen Manifest [Be01]

1 Unsere höchste Priorität ist es, den Kunden durch frühe und kontinuierliche Auslieferung wertvoller Software zufrieden zu stellen.

2 Heiße Anforderungsänderungen selbst spät in der Entwicklung willkommen.

Agile Prozesse nutzen Veränderungen zum Wettbewerbsvorteil des Kunden.

3 Liefere funktionierende Software regelmäßig innerhalb weniger Wochen oder Monate und bevorzuge dabei die kürzere Zeitspanne.

4 Fachexperten und Entwickler müssen während des Projektes täglich zusammenarbeiten.

5 Errichte Projekte rund um motivierte Individuen. Gib ihnen das Umfeld und die Unterstützung, die sie benötigen und vertraue darauf, dass sie die Aufgabe erledigen.

6 Die effizienteste und effektivste Methode Informationen an und innerhalb eines Entwicklungsteams zu übermitteln, ist im Gespräch von Angesicht zu Angesicht.

7 Funktionierende Software ist das wichtigste Fortschrittsmaß.

8 Agile Prozesse fördern nachhaltige Entwicklung. Die Auftraggeber, Entwickler und Benutzer sollten ein gleichmäßiges Tempo auf unbegrenzte Zeit halten können.

9 Ständiges Augenmerk auf technische Exzellenz und gutes Design fördert Agilität.

10 Einfachheit, also die Kunst, die Menge nicht getaner Arbeit zu maximieren, ist essenziell.

11 Die besten Architekturen, Anforderungen und Entwürfe entstehen durch selbstorganisierte Teams.

12 In regelmäßigen Abständen reflektiert das Team, wie es effektiver werden kann und passt sein Verhalten entsprechend an.

Die ersten drei Prinzipien beschreiben die Fokussierung auf den Kunden. Nach [Be01]

wird ein zufriedener Kunde durch die Auslieferung von „wertvoller“ Software erreicht und die Fähigkeit, schnell auf sich ändernde Anforderungen zu reagieren. Der Kunde soll demnach so früh wie möglich eine Software zur Anwendung erhalten, welche zur Generierung von Mehrwerten (z.B. Kosteneinsparung) genutzt werden kann. Des Weiteren beschreiben die Prinzipien, zum einen die Zusammenarbeit des Projektteams, zum anderen Eigenschaften in Bezug auf die zu erstellende Software. Beispielsweise soll das Projektteam selbstorganisiert interagieren, wobei insbesondere der Austausch von Fachexperten und Entwicklern angestrebt wird (vgl. u.a. Tabelle 4 – Prinzipien 4 und 11).

Zusätzlich steht die zu erstellende Software im Mittelpunkt des agilen Projekts. Das zu erstellende Produkt – die Software – ist das maßgebliche „Fortschrittsmaß“. Der Einsatz von modernsten Implementierungstechniken (z.B. zur Erstellung einer Softwarearchitektur oder der Implementierung von Funktionen) bildet hierbei die notwendige Basis.