Der Umgang mit der Anforderungsqualität im gesamten Projektlebenszyklus José Fuentes (The REUSE Company) Martin Schleiermacher (XTRONIC GmbH) Berliner Requirements Engineering Symposium, 2015 17. November 2015
Inhalt Auswirkungen von Anforderungen schlechter Qualität Der Systems und Requirements Engineering life-cycle Anforderungsformulierung Die Requirements Quality Suite 2
Auswirkungen von Anforderungen schlechter Qualität 3
Auswirkungen von Anforderungen schlechter Qualität 4
Auswirkungen von Anforderungen schlechter Qualität 5
Auswirkungen von Anforderungen schlechter Qualität In einigen Fällen: Aber auf jedem Fall: 6
Auswirkungen von Anforderungen schlechter Qualität Der Chaos Report und einige andere Studien (z.b. PMI: Pulse of the profession study): [ 40%-70% der Fehler in Projekten sind auf Requirements zurückzuführen. ] Quelle: Chaos Report 2004 Project Success Factors 1. User Involvement 2. Executive Management Support 3. Clear Statement of Requirements 4. Proper Planning 5. Realistic Expectations 6. Smaller Project Milestones 7. Competent Staff 8. Ownership 9. Clear Vision & Objectives 10. Hard-Working, Focused Staff Other Capers Jones: [ Die durchschnittliche Nacharbeit liegt über 40%-50%. ] 7 % of Responses 15.9% 13.9% 13.0% 9.6% 8.2% 7.7% 7.2% 5.3% 2.9% 2.4% 13.9%
Auswirkungen von Anforderungen schlechter Qualität Korrelation zwischen Projekterfolg und Expertise im Requirements Engineering Project Performances 21% 29% 18% 58% 52% 22% 50% 30% 20% Requirements Engineering Capability 8 Quelle: Report on SE Effectiveness Survey NDIA-IEEE-SEI/CMUINCOSE Nov 2012
Der Systems und Requirements Engineering life-cycle: Auf was sollten wir den Fokus legen? 9
Systems und Requirements Engineering life-cycle Auf was sollten wir den Fokus legen?: Kumulativer Anteil der Lifecylce Kosten Angefallene Kosten 500-1000x 20-100x 3-6x Konzept 8% Design 15% Betrieb bis zum Lebenszyklus - ende Produktion und Test Entwicklung 50% 20% Zeit 10 100% Quelle: INCOSE Handbuch
Systems und Requirements Engineering life-cycle Produkt Design Product Stakeholderanforderungen Produktprüfung Systemanforderungen Systemdesign System Systemprüfung Teileanforderungen Teiledesign 11 Teileprüfung Teile
Systems und Requirements Engineering life-cycle neu bewerten Erhebung Analyse Spezifikation Absicherung ändern klären korrigieren und Lücken schließen Quelle: Karl Wiegers 12
Systems und Requirements Engineering life-cycle Management unterstützen Erhebung Baseline ziehen Analyse klären Spezifikation Lücken schließen Prüfung Absicherung Fehler korrigieren ändern neu bewerten korrigieren und bestätigen 13
Systems und Requirements Engineering life-cycle Produkt Design Product Stakeholderanforderungen Anforderungs Prüfung Produktprüfung Systemanforderungen Anforderungs Prüfung Systemdesign System Systemprüfung Teileanforderungen Anforderungs Teiledesign Prüfung Requirements Absicherung 14 Teileprüfung Teile
Anforderungsformulierung 15
Anforderungsformulierung Erfahrungen haben gezeigt, dass etwa 25% der genannten Anforderungen kritisch sind und Grammatikalisch verbessert werden können Kein soll : 8 bis 10% Verbotene Worte: 10 bis 15% Gegenstand, mehrere Objekte, Design: 15% Falsche Grammatik: 50% Quelle: AFIS & Gauthier Fanmuy RAMP Project 16
Anforderungsformulierung Anforderungs-Fehlerkosten sind hoch Anforderungskorrekturen nach der Auslieferung können bis zu 100 mal mehr kosten als wenn diese in der Anforderungsdefinitionsphase korrigiert werden Training, das Anwenden von Best Practices und Anforderungsreviews kann helfen SMARTE Anforderungen zu bekommen: Aber dieser Prozess ist Kosten- und Zeitintensiv Einführung einer Qualitätsanalyse während des Formulierungsvorgangs: Reduziert die Anzahl der Iterationen zwischen dem Systems Engineer und dem Subunternehmer und verbessert den Prüfprozess 17
Anforderungsformulierung Ontologien als das treibendes Element für Anforderungsqualität Ermöglicht einer Reihe von Werkzeugen, die Leistung zu verbessern und Fehler zu reduzieren Terminologische Schicht Konzeptionelle Modellschicht Musterschicht Formalisierungschicht Inferenzschicht 18
Anforderungsformulierung: Metriken während der Eingabe Korrektheitsprüfung basierend auf: Informationen aus dem Requirements Management Systems: Attribute, Links,Versionen, Anforderungsmustern Patterns : Einhaltung unterschiedlicher Typen von Patterns Erkennung spezifischer Anforderungsstrukturen der Einhaltung von Modellen: Erkennung Themenfremden Anforderungen in der Produktstruktur, linguistischen Algorithmen: Erkennung von passiv, imperativ, Satzkonstruktionen Textlänge, Rechtschreibfehler, Begriffsdefinitionen: Verboten: mehrdeutig... Eingeschränkt: Negationen, Pronomen... Obligatorisch: shall 19
Anforderungsformulierung: Tools Konsistenzprüfung: Verwendung einheitlicher Bergriffe Konsistenz mit einem Anforderungsdokument Konsistenz zwischen verschiedenen Ebenen der Anforderungen Konsistenz zwischen den Anforderungen und Modellen Erkennung von duplizierten Anforderungen Vollständigkeitsprüfung: Erkennung von Lücken zwischen: Spezifikationen und Modellen unterschiedlichen Ebenen der Anforderungen aktuellen Projekten gegenüber anderen vergangenen Referenzprojekten 20
Anforderungsformulierung: Tools Die Verwendung von Anforderungsmustern Patterns : um konsistente Grammatik bereitzustellen um konsistenten Wortschatz bereitzustellen um Vollständigkeitsprüfung möglich zu machen um unstrukturierte Anforderungen zu identifizieren 21
Anforderungs Authoring : Tools Semantische Suchmaschine: um Duplikate zu finden um Wiederverwendung zu unterstützen um schnellen Zugriff auf Beziehungen zu anderen Anforderungen zu ermöglichen 22
Die Requirements Quality Suite 23
Die Requirements Quality Suite Die Requirements Quality Suite (RQS) bietet für das ein Verbund von Werkzeugen und Prozessen an Automatische Messung der Qualitätsmetrik von Anforderungen Unterstützt bei der Formulierung der Anforderungen Die RQS Modelle der Anforderungs-Qualitätsmetriken verwenden den CCC-Ansatz (Richtigkeit, Konsistenz und Vollständigkeit) Requirements Quality Analyzer (RQA): zur Definition, Prüfung und Verwaltung des Spezifikationsdokuments. Requirement Authoring Tool (RAT): zur Unterstützung des Autors bei der Erstellung und Überarbeitung der Anforderungen. Knowledge Manager (KM): um das Wissen rund um das Anforderungsdokument zu verwalten. Die Ontologie basiert auf der Struktur der Anforderungen, die im Projekt verwendet werden und der Kommunikation zwischen den Autoren und den Architekten. 24
Die Requirements Quality Suite Die Entwicklungsschritte des Requirements Engineering Prozesses 25
Die Requirements Quality Suite: Schnittstellen IBM DOORS PTC Integrity CATIA Reqtify VISURE Requirements OSLC Microsoft Excel XML file In naher Zukunft: Microsoft Word Siemens Teamcenter 26
Die Requirements Quality Suite: natürlicher Sprache RQS ist abhängig von der Anforderungssprache Derzeit unterstützte Sprachen: Weitere Sprachen derzeit in Arbeit: 27
Margarita Salas, 16 2nd Floor Innovation Center LEGATEC Technology Park 28919 Leganés Madrid SPAIN EU Tel: (+34) 912 17 25 96 Fax: (+34) 916 80 98 26 http://www.reusecompany.com Herrenberger Straße 56 71034 Böblingen http://www.xtronic.de @ReuseCompany Tel: +49 7031 20947 0 Fax: +49 7031 20947 101 contact@reusecompany.com reuse@xtronic.de