Workshop "Wie viel Requirements Engineering steckt im Software Engineering?"

Dienstag, 27. März 2007 nachmittags

Im Rahmen der SE 2007 Konferenz in Hamburg

             Zielgruppe Ziele Ergebnisse Programmkomitee Kontakt

 
         

Zielgruppe

Eingeladen waren sowohl Praktiker als auch Wissenschaftler.


Ziele

Motivation:
Die Beschreibung verschiedenster Artefakte des Software Engineering enthält immer wieder Begriffe wie "Anforderungen" oder "Spezifikation". Dies weist darauf hin, dass bei deren Erstellung im weiteren Sinne Requirements Engineering betrieben wird. Drei Beispiele hierfür:
  • Im V-Modell XT „beschreibt die Software-Spezifikation alle funktionalen und nicht-funktionalen Anforderungen an ein Software-Element“. Verantwortlich für die Erstellung der Software-Spezifikation ist im V-Modell XT der „Software-Architekt“. Dies umfasst, Anforderungen an ein „Software-Modul“ zu spezifizieren, welches „durch ein nicht weiter unterstrukturiertes Stück Programmcode konkret realisiert“ wird. Anforderungen aufzuschreiben erfordert die Anwendung von Methoden des Requirements Engineering (RE). Ein wesentlicher Teil der Tätigkeit eines „Software-Architekten“ gemäß V-Modell XT ist also die Anwendung von Methoden des RE bis hinunter auf die unterste Ebene der Software-Komponenten-Hierarchie.
  • Die Requirements Development process area des CMMI for Software Engineering umfasst “[…] product-component requirements are derived from the selected design solutions.” Auch wenn das CMMI es nicht ausdrücklich erwähnt, ist es naheliegend, dass das Ermitteln und Dokumentieren der product-component requirements eine Aufgabe der verantwortlichen Software-Ingenieure ist.
  • Den programmierten Source-Code kann man verstehen als die Spezifikation der Anforderungen, welche der Computer erfüllen soll. Ein Programmierer würde demnach nichts anderes tun, als Requirements in einer Programmiersprache zu dokumentieren. Wie weit nun können und sollten Methoden und Techniken des RE im Software-Entwicklungsprozess Anwendung finden? Sollte man z.B. im obigen Beispiel des V Modell XT die Anforderungen an ein Software-Modul gemäß den üblichen Qualitätskriterien und der von Chris Rupp vorgeschlagenen Syntax für Requirements aufschreiben? Oder gelten im programmiernahen Bereich Rahmenbedingungen, welche ein anderes Vorgehen erfordern? Wo könnten RE-Methoden Nutzen stiften, ohne dass man dies bisher ausdrücklich so sieht oder vermutet? In welchen Gebieten würde eine Anwendung von RE-Methoden trotzdem eher hinderlich sein?


Software Engineering setzt RE-Methoden üblicherweise ein, um das Verhältnis der Software zu ihrer Umwelt zu klären und die Anforderungen der Umwelt an die Software zu ermitteln. Der Workshop soll Raum geben, die Chancen und Grenzen des Einsatzes von RE-Methoden im Lösungsentwurf und während der Implementierung zu diskutieren, also bei Tätigkeiten, zu deren Durchführung man nicht in erster Linie an den Einsatz von RE-Methoden denkt. Die Leitfragen dabei sind:
  • Wie können programmiernah Methoden und Techniken des Requirements Engineering in der Softwareentwicklung Verwendung finden?
  • Wie sollen programmiernah Methoden und Techniken des Requirements Engineering in der Softwareentwicklung Verwendung finden?
  • In welchen Bereichen der Softwareentwicklung kann die Anwendung von RE-Methoden nützlich sein, ohne dass man dies von vornherein vermuten würde?
  • In welchen Bereichen der Softwareentwicklung wird die Anwendung von RE-Methoden in jedem Fall eher hinderlich sein?
  • In welchem Bereich der Softwareentwicklung können welche Methoden und Techniken des Requirements Engineering sinnvoll zur Anwendung kommen?
Die Fragestellungen sind hierbei nicht auf den Bereich der reinen Programmierung eingeschränkt, sondern betreffen alle Bereiche, die für Softwareentwicklung wichtig sind, also auch Projekt- und Produktmanagement, Qualitätsmanagement und Test, Architekturentwurf und -management etc.
Was unter „RE-Methoden“ zu verstehen ist, ist nicht vorab eingeschränkt, sondern kann ebenfalls Gegenstand der Diskussion im Workshop werden. Ideen davon, was man unter „RE-Methoden“ verstehen kann, geben die folgenden Webseiten:


Seitenanfang


Ergebnisse

Der Workshop fand halbtägig am Nachmittag des 27. März 2007 statt.
Hier können Sie die Workshopbeiträge herunterladen:

Andrea Herrmann: Was eine Requirements Engineering Methode sonst noch kann
Dehla Sokenou, Erwin Tratar: Modellbasierte Softwareentwicklung: Vom Requirements Engineering bis zum Testen
Ralf Fahney, Andrea Herrmann, Rüdiger Weißbach: Wie viel Requirements Engineering steckt im Software Engineering?
Christian Allmann: Anforderungen auf Kundenfunktionsebene in der Automobilindustrie

Seitenanfang


Programmkomitee


Ralf Fahney, unabhängiger Berater für Anforderungsingenieurwesen
Andrea Grimm  
Dr. Andrea Herrmann Universität Heidelberg
Eric Knauss Leibniz Universität Hannover
Christian Rückert Büren & Partner Software Design
Vitaly Rudovich unabhängiger Berater für Softwarequalität
Dr. Rüdiger Weißbach     Lehrbeauftragter an der HAW Hamburg

Seitenanfang

Kontakt


Andrea Herrmann

Ralf Fahney
Rüdiger Weißbach

Seitenanfang