Das Cynefin-Framework in der Software-Entwicklung und Unternehmensentwicklung: Ein Werkzeug zur Entscheidungsfindung und viel mehr…

Das Cynefin Modell wurde im Jahr 2000 vom ehemaligen IBM Mitarbeiter und Berater Dave Snowden entwickelt. Cynefin (Ausgesprochen Kü-Ne-win) ist walisisch und bedeutet wörtlich übersetzt “

Das Cynefin Modell wurde im Jahr 2000 vom ehemaligen IBM Mitarbeiter und Berater Dave Snowden entwickelt. Cynefin (Ausgesprochen Kü-Ne-win) ist walisisch und bedeutet wörtlich übersetzt “Lebensraum”. Es beschreibt fünf verschiedene Ausprägungen von Systemen.

  • Einfache,
  • komplizierte,
  • komplexe und
  • chaotische Systeme können gemanaged werden.

Der fünfte Typ ist das gestörte System also ein System was nicht in die anderen vier Typen eingeordnet werden kann / wurde. Es wird dazu verwendet den Status aufzuzeigen, dass jemand nicht weiß in welchem Status/Typ er sich gerade befindet. Oft wird dies auch als A/C bezeichnet not Aware/Confused.

Das Cynefin-Framework wurde bereits mehreren Iterationen unterzogen, den offiziellen aktuellen Stand kann jeder auf David Snowdens Blog nachlesen: https://www.cognitive-edge.com/the-cynefin-framework/

Ursprünglich wurde das Cynefin Framework entwickelt um Führungskräften beim Treffen wichtiger Entscheidungen zu helfen. Es wurde als Entscheidungs-Framework entworfen und soll es den Anwender ermöglichen seine aktuelle Ist-Situation einzuordnen und die richtige Vorgehensweise zu wählen.

Wir tendieren dazu, die aktuelle Situation nach unseren Vorlieben einzuschätzen und dementsprechend bewährte Vorgehensweisen zu wählen. Das Framework soll diese Tatsache aufdecken und verbessern. Daher hat sich das Cynefin Framework auch in der agilen Arbeitswelt neben der Stacey Matrix gut etabliert.

David Snowden spricht auch von einen „Sense-Making-Framework“ wenn er von Cynefin spricht.

Das Framework beschäftigt sich im Kern mit Systemen. Drei Kernsysteme sind die basis für die fünf Typen. Es gibt Ordered Systems, Complex Systems und Chaotic Systems. Wobei Ordered-Systems wiederum in die zwei Unterkategorien Simple und Complicated Aufgeteilt werden. Kann jemand seine aktuelles Arbeitssystems nicht einordnen kann dieses in den Status Disordered Systems eingeordnet werden.

Einfache Systeme

Einfache Systeme zeichnen sich durch ihre direkte Ursache-und-Wirkungs-Beziehungen aus. Sie bestehen aus wenigen Informationen und wenigen Variablen. Deswegen können bei Einfachen Systemen auch Best-Practices angewendet werden, was bedeutet dass einfache Regeln befolgt werden können, die dann einen vorhersagbaren Effekt erreichen.

Eigenschaften:

  • einfach
  • leicht zu Überblicken
  • bekannt
  • linear
  • wenige variablen

Entscheidungsmodell (Entscheidungsstrategie):

  1. Sense (erkennen)
  2. Categorize (kategorisieren)
  3. Respond (reagieren)

Komplizierte Systeme 

Komplizierte Systeme zeichnen sich durch eine sehr höhere Anzahl von Informationen und Variablen aus. Sie sind schwierig zu überblicken und benötigen oft Spezialwissen. Eine Ursache-und-Wirkungsbeziehung kann bei Komplizierten Systemen zwar immer noch hergestellt werden, ist jedoch aufwändiger als bei einfachen Systemen und benötigt oftmals Experten. In komplizierten Systemen können oftmals keine einfachen Regeln mehr angewendet werden sondern nur mehr auf Design-Pattern und Good-Practices zurückgegriffen werden. Es können jedoch Pläne gemacht und abgearbeitet werden.

Eigenschaften:

  • kompliziert
  • Wissens intensiv
  • schwer zu Überblicken
  • benötigt Zeit um sich Einzuarbeiten und Vorgänge zu Verstehen
  • viele Informationen
  • viele Variablen

Entscheidungsmodell (Entscheidungsstrategie):

  1. Sense (erkennen)
  2. Analyze (analysieren)
  3. Respond (reagieren)

Komplexe Systeme

Komplexe Systeme zeichnen sich durch eine nicht mehr zu überblickende Anzahl an Informationen, Einflussfaktoren, Abhängigkeiten und Variablen aus. Oftmals bestehen die Systeme aus vielen Rückkoppelungen und wenig bis keinen linear verlaufenden Ursache-Wirkungsbeziehungen. In komplexen Systemen können unmöglich genaue Vorhersagen gemacht werden und somit können Abläufe auch nicht geplant werden. Stattdessen muss explorativ vorgegangen werden. Es werden durch zeitlich beschränkte Erprobungen Erkenntnisse gewonnen und schrittweise ein Optimum gesucht. Die Aufgabe oder das System wird also in kleine zu beherrschende Teile zerlegt die durch Experten analysiert und durch Experimente verstanden und bearbeitet werden können.

Eigenschaften:

  • wechselseitiger Abhängigkeiten
  • sehr viele Variablen
  • Mehrdeutig
  • nichtlinear
  • es muss viel ausprobiert werden
  • viele Anpassungen müssen gemacht werden
  • Erfahrungen sammeln
  • keine linearen Ursache-Wirkungs-Muster

Entscheidungsmodell (Entscheidungsstrategie):

  1. Probe (untersuchen/erforschen)
  2. Sense (erkennen)
  3. Respond (reagieren)

Chaotische Systeme

Chaotische Systeme zeichnen sich durch eine unvorhersehbare Umgebung aus. Diese Umgebungen bestehen aus einer unüberblickbaren Anzahl an Einflussfaktoren und Variablen, die gegenseitig in Abhängigkeitsverhältnissen stehen und sich ständig und schnell ändern. Da in chaotischen Systemen die Abläufe unvorhersehbar sind und sich schnell ändern ist es notwendig das System durch Constraints einzuschränken. Die Lösungsstrategie muss aufgrund der Schnelllebigkeit in einen proaktive Variante geändert werden bei der zunächst gehandelt wird und danach das System ausgewertet wird (Act-Sense-Respond).

Eigenschaften:

  • instabil
  • nicht linear
  • nicht zu Überblicken
  • viele Abhängigkeiten
  • keine Zeit um sich Einzuarbeiten und Vorgänge zu Verstehen
  • viele Informationen
  • viele Variablen

Entscheidungsmodell (Entscheidungsstrategie):

  1. Act (handeln)
  2. Sense (erkennen)
  3. Respond (reagieren)

Disordered Systems (Gestörte Systeme)

Das Zentrum des Cynefin Frameworks bildet ein schwarzer Fleck. Dieser stellt einen nicht einzuordnendes System oder einen Widerspruch dar. Zu diesen Disordered Systems lässt sich jede Situation zuordnen, bei denen Entscheider keine Einigkeit haben in welchen System sie sich gerade befinden. Oft wird gar nicht hinterfragt ob das aktuelle System einfach, kompliziert, komplex oder chaotisch ist sondern einfach ein System ausgewählt und eine Entscheidungsstrategie ausgewählt. Dieses Verhalten führt dann zu Reibungen und Problemen und kommt den Ziel nicht näher.
Wenn beispielsweise ein System Komplex ist die Lösung aber anhand von Best Practices geplant wird kann dies nicht zum gewünschten Ziel führen. Das Komplexe System verändert sich zu oft und verhält sich zu wenig konstant um mit einem Plan ein Ziel erreichen zu können.

Eigenschaften:

  • Wiedersprüche in Strategie und System
  • viele Probleme
  • viel Reibung
  • Ziele werden nicht erreicht
  • Es kostet viel Energie und Zeit dinge umzusetzen.
  • Konflikte entstehen oft

Entscheidungsmodell (Entscheidungsstrategie):

  1. Einen Schritt zurück machen und definieren in welchem System man sich gerade aufhält
  2. Die zum System passende Lösungsstrategie auswählen

Das Framework in der Praxis

Das Cynefin Framework wird in der Praxis für verschiedenste Anwendungen verwendet.

Zwei wichtige Anwendungen sind:

  • Die Bewertung von bestehenden Organisationsmodelle und deren Verbesserung, um die Organisation zukunftsfit zu halten.
  • Das Auswählen und Verbessern von Lösungsstrategien in der Produktentwicklung und Softwareentwicklung.

Das Cynefin Framework bietet eine Erklärung dafür, dass Organisationen, die im letzten Jahrhundert entstanden sind und hierarchisch aufgebaut sind, nicht mehr zukunftsfit sind. Denn oft Entstanden diese Unternehmen in einer komplizierten Umgebung, und lösten komplizierte Probleme durch plangetriebenes Vorgehen.
Über die Zeit änderten sich jedoch die Rahmenbedingungen am Markt und die Bedürfnisse der Kunden, sodass die Systeme und Probleme komplex wurden und die Produkte somit auch komplexer werden mussten, bis zu dem Punkt, an dem ein plangetriebenes Vorgehen nicht mehr möglich war.

Auch Software-Systeme unterlaufen einen Prozess von einfach zu kompliziert bis hin zu komplex oder im schlimmsten Fall chaotisch. Durch das Hinzufügen von mehr und mehr Funktionalitäten und Abhängigkeiten innerhalb des Systems, kann es passieren, dass das System zu komplex für eine einfache Weiterentwicklung wird.
Dies passiert meist, wenn das Team während der Entwicklung

  • keinen Wert auf gute Architektur gelegt hat,
  • keinen Wert auf gute Wartbarkeit gelegt hat,
  • keine Zeit in Testautomatisierung gesteckt hat,
  • keine gute Kapselung betrieben hat,
  • nie Refactoring-Maßnahmen durchgeführt hat.

Cynefin in der agilen Produktentwicklung und Software-Entwicklung

Oft ist auch die Entwicklung einer neuen Software oder eines digitalen Services eine sehr komplexe Angelegenheit.
Der Markt, die Technologien und die Kundenbedürfnisse/Userbedürfnisse ändern sich sehr schnell und sind oft nicht bekannt.
Aus diesem Grund sind agile Vorgehensmethoden in der Software-Entwicklung so erfolgreich. Sie gehen davon aus dass nicht plangetrieben vorgegangen (Sense,Analyse,Respond) werden kann sondern explorativ vorgegangen werden muss (Probe/Act,Sense,Respond).
Scrum und andere agile Frameworks arbeiten sich iterativ, inkrementell voran und können bei jeder Iteration die Richtung der Entwicklung ändern. Sie schränkten das Gesamtsystem und die Rahmenbedingungen ein und arbeiten mit Hypothesen und Annahmen. Daher sind sie die beste Vorgehensweise für komplexe Probleme.

Ausweg aus komplexen Software-Systemen

Das Cynefin-Framework zeigt einen Ausweg aus komplexen Software-Systemen auf. Indem das Software-System in mehrere kleine Module zerlegt wird, klare definierte Schnittstellen zwischen den Modulen definiert wird, und auf Testautomatisation aufgebaut wird kann ein chaotisches oder komplexes Software-System durch Refactoring-Maßnahmen in viele kleine beherrschbare komplizierte Teilsystem zerlegt werden.

Durch die Verwendung von Spikes und ein Exploratives vorgehen können Änderungen in das bestehende chaotische oder komplexe Software-System eingebaut werden. Dadurch wird die Lösungsstrategie von einem Plangetriebenen Vorgehen in ein Exploratives Vorgehen umgekehrt (also anstatt Sense,Analyse,Respond wird Probe/Act, Sense,Respond also Lösungsstrategie verwendet).

2 Kommentare zu „Das Cynefin-Framework in der Software-Entwicklung und Unternehmensentwicklung: Ein Werkzeug zur Entscheidungsfindung und viel mehr…

Gib deinen ab

Kommentar verfassen

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit deinem WordPress.com-Konto. Abmelden /  Ändern )

Facebook-Foto

Du kommentierst mit deinem Facebook-Konto. Abmelden /  Ändern )

Verbinde mit %s

Erstelle eine Website oder ein Blog auf WordPress.com

Nach oben ↑

%d Bloggern gefällt das: