Hear us speak at REConf 2018

Falls Ihr/Sie nächste Woche in München seid, kann man fast gar nicht über die REConf 2018 laufen ohne uns zu begegnen:

Keynote: “Vom Design Thinking zum Requirements Engineering: Vom Warum und Wieso zum Was und Wie”

Prof. Dr. h.c. Manfred Broy wird am Dienstag um 9 Uhr die Eröffnungs-Keynote zum Thema Design Thinking und RE halten:

Requirements Engineering ist vielleicht der wichtigste Teil der Software-Evolution. Falls es uns nicht gelingt, die Funktionalität, die der Endnutzer benötigt, korrekt zu spezifizieren, und falls es uns nicht gelingt, die geforderte Qualität korrekt zu identifizieren, besteht die Gefahr, dass ein System entwickelt wird, das nur teilweise oder vielleicht sogar völlig nutzlos ist.

Im Prinzip gibt es zwei wichtige Schritte im Prozess des Requirements Engineerings. Die größte Herausforderung ist, die benötigte Funktionalität zu finden. Das ist eine schwierige Aufgabe und Techniken wie Design Thinking können hier helfen. Design Thinking ist ganz darauf ausgerichtet, Lösungen für Probleme zu finden und diese durch die Konstruktion eines Prototyps konkret zu machen. Dies ist ein kreativer Prozess, um Ideen zu entwickeln, wie die richtige Funktionalität eines Softwaresystems ausschauen könnte. Jedoch, wenn ein Prototyp vorliegt, ist man noch weit entfernt davon, einen guten Satz von Anforderungen zu besitzen.

Deshalb ist es notwendig, eine Brücke zu finden von den Resultaten des Design Thinking-Prozesses zum Requirements Engineering, um alle Details einer Anforderungsspezifikation auszuarbeiten. Dieser Prozess ist beeinflusst von dem gewählten Entwicklungsmodell, wie etwa agiles oder konventionelles dokumentationsorientiertes Vorgehen. Design Thinking und Requirements Engineering ergänzen sich perfekt, um die kreative Identifikation der Funktionalität und der detaillierten Beschreibung der Funktionen, aber auch der Qualität von softwareintensiven Systemen sicher zu stellen.

Reif für MBSE? Ein Reifegradmodell für modellbasiertes RE

Prof. Dr. Andreas Vogelsang und ich sprechen über Modell-Based RE und ein neues Reifegradmodell für MBRE, am Dienstag, um 14 Uhr, im Raum Franz & Leo:

Viele Unternehmen versuchen die zunehmende Komplexität ihrer Produkte durch den Einsatz von modellbasierten Ansätzen in den Griff zu bekommen. Die Einführung ist jedoch eine große Herausforderung, die nicht auf einen Schlag erfolgen sollte. Rahmenwerke zur Prozessverbesserung, wie z.B. CMMI, helfen bei der Einführung kaum weiter, da diese Ansätze zu generisch und oft auch zu „schwergewichtig“ sind.

In diesem Beitrag stellen wir ein Reifegradmodell vor, das speziell auf die Einführung von Model-based Systems Engineering (MBSE) zugeschnitten ist. Das Modell definiert eine Reihe von Fähigkeiten, die durch den Einsatz von Modellen erlangt werden. Diese Fähigkeiten adressieren die für das RE relevanten Bereiche Kontextmodellierung, Scoping, Ziel- und Szenariomodellierung, sowie Anforderungsmodellierung. Weitere Fähigkeiten des Modells adressieren den Zusammenhang zum funktionalen Design und zur Architektur. Auf Basis dieses Modells wird bewertet, wo ein Unternehmen bei der Einführung von MBSE steht und in welchen Bereichen es sich lohnt Modellbasierung voranzutreiben. Dabei berücksichtigt das Modell Ziele und Gegebenheiten des Unternehmens.

Das Modell ist durch Experten empirisch validiert und wurde bereits in unterschiedlichen Unternehmen eingesetzt. Nach einem 60-minütigem Interview mit einem Vertreter eines Unternehmens liefert das Modell eine Einschätzung des aktuellen Reifegrades für den Bereich MBSE sowie Vorschläge welche Fähigkeiten als nächstes durch Modelle unterstützt werden sollten.

You cannot test this! Automatische Erkennung untestbarer Anforderungen

Außerdem spreche ich am Mittwoch, um 13:55 Uhr im Raum Ludwig über automatische Analysen von Anforderungen:

Natürliche Sprache ist heute immer noch das primäre Mittel um Anforderungen zu dokumentieren. Anforderungen in natürlicher Sprache sind einfach zu erstellen und für alle Stakeholder lesbar. Natürliche Sprache eröffnet allerdings auch das Risiko sich unpräzise oder missverständlich auszudrücken. Sind Anforderungsdokumente vage oder missverständlich geschrieben können sie nur schlecht getestet werden. Das führt zu unnötigem Aufwand durch Rückfragen, zu Fehlinterpretation und letztlicher zu unentdeckten Fehlern in der Software.

Um eine hohe Qualität und Testbarkeit von Anforderungsdokumenten sicher zu stellen, haben sich Reviews als effektives Mittel zur Identifikation von Qualitätsproblemen bewährt. So effektiv diese Methode auch ist, so aufwändig ist sie: Sowohl die Überprüfung durch die verschiedenen Reviewer, als auch Koordination und Kommunikation der Review-Ergebnisse sind zeitraubend.

Techniken zur automatischen Textanalyse sind in den letzten Jahren immer mächtiger geworden: Schlecht testbare Anforderungen lassen sich inzwischen automatisch finden. Beispiele sind vage Formulierungen („soweit möglich“) oder schwer testbare Vergleiche („schneller als Produkt XYZ“). In diesem Vortrag beschreiben wir Techniken und Tooling zum automatischen Auffinden von verbreiteten Problemen für die Testbarkeit von Anforderungen. Wir gehen anhand eines konkreten Beispiels auf unsere Erfahrungen beim Einsatz von Requirements Smells ein und zeigen auf, welche Möglichkeiten sich bieten und welche Grenzen die heutigen Methoden haben.

Wir freuen uns auf Sie/Euch!