Klassisch, agil, und dann? - Teil 3 Beyond Agile - Die Zukunft des Requirements Engineering
Anbieter zum Thema
Agile Methoden sind in den vergangenen Jahren immer beliebter geworden. Sie können aber nicht alle Probleme des Requirements Engineering lösen, insbesondere, da die Rahmenbedingungen in Softwareprojekten einer hohen Dynamik unterliegen. Dieser Beitrag stellt aktuelle Einflussfaktoren und neuere wissenschaftliche Lösungsansätze im Requirements Engineering vor.

Agile Methoden sind in der Softwareentwicklung in den vergangenen Jahren immer beliebter geworden. Sie kommen insbesondere den Trends zu kürzeren Markteinführungszeiten und sich schnell ändernden Kundenbedürfnisse entgegen.So werden in der Regel Systeme kaum noch auf der grünen Wiese entwickelt und Releasezeiten durch Wiederverwendung gedrückt.
Jedoch unterliegt das Requirements Engineering immer neuen Faktoren, die zum Zeitpunkt der Entwicklung vieler heute weit verbreiteter Methoden noch nicht relevant waren. So sind Einzelsysteme häufig in eine komplexe Systemumgebung eingebunden bzw. mit ihr vernetzt. Auch Trends wie die direkte Endnutzereinbindung, Outsourcing und Offshoring führen zu veränderten Herausforderungen im Requirements Engineering.
Im folgenden werden einige wesentliche neuere Anforderungen und Ansätze im RE beschrieben, die im Rahmen einer systematischen Analyse jüngerer wissenschaftlicher Publikationen und Fachliteratur identifiziert wurden.
Kommunikationsprobleme im Requirements Engineering
Trotz langjähriger intensiver Forschung und Bemühungen um Methoden, Prozesse und Werkzeuge sind viele Probleme im Requirements Engineering noch nicht gelöst. Zu den weit verbreiteten Problemen zählen:
1) Sorgfältig definierte Prozesse zur Identifikation und Spezifikation des Requirements Scope. 2) Bessere Mechanismen zur Unterstützung der Kommunikation zwischen den verschiedenen Stakeholdern und Entwicklungsteams eines RE-Prozesses. 3) Bessere Konzepte für den Umgang mit der inhärenten Unbeständigkeit von Anforderungen. 4) Geeignete Traceability-Maßnahmen zur Unterstützung der Verwaltung von Anforderungen im Verlauf des Entwicklungsprozesses.
Ziel des Requirements Scope ist die Definition und Abgrenzung der Zielsetzung des zu entwickelnden Systems anhand der Sammlung von Domänenwissen über das Umfeld des Kunden. Probleme ergeben sich hierbei nach wie vor insbesondere durch typische Kommunikationsprobleme zwischen den verschiedenen Stakeholdern und dem RE-Engineer, wie z.B. die unterschiedliche Interpretation der Anforderungen.
Notationen und Views im Requirements Engineering
Um die Kommunikation zwischen Stakeholdern und Entwicklungsteams besser zu unterstützen, können verschiedene Notationstechniken und Views auf den unterschiedlichen Ebenen des RE-Prozesses zum Einsatz kommen. Z. B. eignet sich für die Repräsentation der Anforderungen aus Sicht des Kunden der Einsatz von natürlichsprachlichen, leicht verständlichen CNL (Controlled Natural Language), während aus Sicht des Entwicklungsteams Ontologien zum Einsatz kommen können.
Ontologien erlauben es, anforderungsrelevante Informationen aufzunehmen und mit domain- und anwendungsspezifischem Vokabular sowie Zielen zu verlinken. Ziel ist ein gemeinsames Verständnis von Stakeholdern, RE-Engineer und Entwicklungsteams über die Ziele, Szenarien und Anforderungen an das geplante System. Ontologien eignen sich insbesondere für die verteilte Gewinnung, Repräsentation und Strukturierung anforderungsrelevanter Informationen. Sie kommen daher dem Umstand zunehmend räumlich verteilter Stakeholder entgegen.
Pires et al (2011) schlagen ein Paket aus Maßnahmen vor, um die vier genannten Problemfelder umfassend zu adressieren: den toolgestützten Einsatz eines iterativen und inkrementellen modellgetriebenen RE-Prozesses, kombiniert mit Ontologien und Controlled Natural Languages. Dabei dient der Einsatz getrennter Views für Kunde und Entwicklungsteams der Reduzierung von Anforderungs-Inkonsistenzen und -Konflikten sowie Kommunikationsproblemen.
Die Verwendung eines modellgetriebenen Ansatzes einschließlich automatisierter Modelltransformation unterstützt die integrierte Synchronisation der unterschiedlichen Views und sorgt für Traceability im Verlauf des Entwicklungsprozesses. Der Einsatz von Ontologien unterstützt ferner Zugriff, Suche und Priorisierung von Anforderungen sowie deren Validierung.
Artikelfiles und Artikellinks
(ID:42709892)