Ein leichtgewichtiger, agiler Entwicklungsansatz verträgt sich nicht mit einem schwergewichtigen Modellierungsvorgehen. Dieser Meinung sind viele Kunden und Interessenten, mit denen wir sprechen. Sie vertreten daher den Standpunkt, dass man in agilen Projekten nicht modellieren kann.
Als "The Modeling Company" haben wir uns mit diesem Vorurteil, dass Agilität und Modellierung angeblich nicht zusammenpassen, selbstverständlich intensiv auseinandergesetzt. Wir haben uns daher nicht nur damit beschäftigt, warum das Vorurteil häufig genannt wird, sondern auch, ob es so überhaupt zutrifft.
Die kurze Antwort lautet „Nein“.
Die ausführliche Antwort lautet: Wie alle Vorgehensweisen und Methoden muss auch die Modellierung auf den konkreten Anlass angepasst werden. Es gilt, externe Faktoren zu berücksichtigen, z.B.
- vertragliche Vereinbarungen
- regulatorische Anforderungen an die Qualität der Dokumentation
aber auch interne Faktoren, wie z.B. Vorgaben der zentralen IT.
Zu guter Letzt müssen Sie unter Berücksichtigung dieser Faktoren entscheiden, wie viel Modell Ihr Projekt verträgt, d.h. wie viel Modellierung können die Menschen in Ihrem Projekt
- mit dem aktuellen Wissensstand und
- den Ihnen zur Verfügung stehenden Ressourcen leisten und natürlich,
- wie viel Modellierung verkraftet Ihr Prozess, ohne, dass Sie die Vorteile der Agilität aufgeben.
Insbesondere der letzten Frage wird meines Erachtens nach zu wenig Beachtung geschenkt. Anders kann ich mir nicht erklären, wie das eingangs zitierte Statement zu Stande kommt.
Ganz undifferenziert beantworte ich die Frage, ob ich in meinem nach agilen Prinzipien durchgeführten Projekt modellieren möchte, mit „Nein“, wenn ich unter Modellierung verstehe, dass die Software in einem UML2-Modell mit Anwendungsfalldiagrammen, Aktivitätsdiagrammen, Zustands- und Sequenzdiagrammen, Klassen- und Komponentendiagrammen abgebildet wird.
Setzte ich mich jedoch mit der Fragestellung auseinander, stelle ich eventuell fest, dass in meinem speziellen Kontext die Verwendung von Zustandsdiagrammen nicht notwendig ist, weil sie mir keinen Mehrwert bieten.
Die gleiche Frage ist natürlich für alle übrigen Diagrammtypen ebenfalls zu beantworten.
Nachdem man dann alle Diagrammtypen durch diese Feststellung gestrichen hat, kann man mit Fug und Recht behaupten: „In meinem Projekt passt Modellierung nicht.“ Eine Aussage über das Zusammenspiel mit der Agilität hat man damit aber immer noch nicht getroffen.
Dazu müsste man sich entscheiden, dass der eine oder andere Diagrammtyp doch hilfreich sein kann. Werden in meiner Software zum Beispiel komplizierte Abläufe abgebildet, kann die Verwendung von Aktivitätsdiagrammen sinnvoll sein.
Letzten Endes hängt es immer vom individuellen Vorhaben ab, ob und wie Modelle den Entwicklungsprozess unterstützen. Je höher jedoch die Komplexität des zu erstellenden Produkts ist, umso grösser ist die Wahrscheinlichkeit, dass Modellierung im Vergleich zur rein textuellen Darstellung der geeignetere Weg ist. Natürlich ist die Welt nicht nur schwarz-weiß und es gibt zwischen diesen beiden Wegen noch Abstufungen, das ist jedoch ein Thema für einen eigenen Blogeintrag.
Wie das Gesamtbild für ein Zusammenspiel von Modellierung und Agilität aussehen kann, zeige ich in unserem kostenfreien Webinar. Jetzt Aufzeichnung herunterladen und Webinar ansehen.
MID Blog Newsletter abonnieren