In Softwareprojekten passiert es immer wieder, dass Anforderungen unpräzise formuliert und dann von den Architekten und Entwicklern missverstanden werden. In diesem Artikel stelle ich eine Methode vor, die solche Probleme frühzeitig aufdeckt und zugleich die Qualität von Anforderungsdokumenten verbessert: das Epistemische Modellieren. Die Methode setzt auf aktuellen Forschungsergebnissen aus der Schreibdidaktik auf und macht sie für das Requirements Engineering nutzbar.
Viele Softwareprojekte scheitern daran, dass Anforderungen missverstanden werden. Nicht immer gelingt es dem Fachbereich, Anforderungen so zu spezifizieren, dass IT-Architekten und Entwickler sie ohne Weiteres implementieren können. Als Hauptursachen werden – oft zurecht – fehlende Zeit und Ressourcen genannt. Auch die fehlende gemeinsame Sprache zwischen Fachbereich und IT führt zu Missverständnissen. Viel zu selten findet man in der Praxis Dokumente, in denen Anforderungen methodisch gezielt sowohl mit natürlicher Sprache als auch mit standardisierten Modellen beschrieben sind.
Doch nicht alle Probleme lassen sich auf fehlende Zeit und Modellierungskompetenz abwälzen. Ein weiterer, nie hinterfragter Aspekt ist darüber hinaus, dass Mitarbeiter im Fachbereich nur selten über die erforderliche professionelle Schreibkompetenz verfügen, um komplexe Abläufe oder Geschäftsregeln lückenlos und widerspruchsfrei zu beschreiben. Warum sollten sie auch? Bei den Kollegen handelt es sich schließlich in der Regel nicht um Journalisten, Redakteure oder gar Bestseller-Autoren.
Die Problematik lässt sich mit einem einfachen Test schnell nachvollziehen: Wählen Sie in einem Anforderungsdokument eines aktuellen Projekts einen beliebigen Text aus. Er sollte ein bestimmtes Verfahren oder einen fachlichen Prozess beschreiben. Versuchen Sie diesen Ablauf mit einem UML- oder einem BPMN-Diagramm zu skizzieren. Sie werden dabei eine Menge Widersprüche oder Unklarheiten aufdecken, die beim einfachen Durchlesen verborgen geblieben wären. Probieren Sie es aus, und lesen Sie dann weiter!
Ich will Ihnen kurz darlegen, warum dieses „Umdokumentieren“ in strukturierte Modellformen dabei hilft, unpräzise Formulierungen in den Anforderungen zu erkennen. Ein nicht ganz unwesentlicher Grund dafür ist, dass UML- oder BPMN-Modelle durch die klar festgelegten Notationselemente naturgemäß eine präzise Beschreibung erfordern. Im Gegensatz zur textuellen Beschreibung kann also beispielsweise eine fehlende Alternative in einer logischen Verzweigung auf einen Blick erkannt werden. Viel wichtiger ist aber, dass Sie beim Umdokumentieren – ohne es bemerkt zu haben – komplexe Denkprozesse angestoßen haben. Ihr Gehirn war damit beschäftigt, sequentielle Informationen in Form von Sprache zu verarbeiten und in vernetzte Strukturen zu transformieren. Die dafür erforderlichen Denkprozesse führen erwiesenermaßen zu neuen Erkenntnissen. Es handelt sich bei dieser Methode also um „epistemisches“ Modellieren (epistéme, Griechisch für Erkenntnis). In abgewandelter Form wird sie bereits erfolgreich in der Schreibdidaktik (epistemisches Schreiben) sowie als Kreativitätstechnik („kreatives Schreiben“) eingesetzt. Und es funktioniert übrigens in beide Richtungen: Selbstverständlich können Sie auch versuchen, unzureichend erläuterte Modelle mit einem Text zu versehen. Auch hier werden Sie Unklarheiten schnell erkennen.
Bezogen auf das Requirements Engineering stellt das Umdokumentieren von Anforderungen – oder das „epistemische Modellieren“ – aber nicht nur eine zuverlässige Methode zur Prüfung von Anforderungen dar. Werden die aufgedeckten Unklarheiten beseitigt, werten die erstellten Modelle und Texte das Anforderungsdokument auf und sorgen für einen ausgewogenen Einsatz von strukturierter und unstrukturierter Dokumentation.