Vortrag
Transcription
Vortrag
Wie sollte ein Anforderungsdokument des Auftraggebers geschrieben sein? Ein Erfahrungsbericht Requirements Engineering Tagung München, 10.-12. März 2003 IESE Fraunhofer Institut Experimentelles Software Engineering Antje von Knethen, Barbara Paech Sauerwiesen 6 D-67661 Kaiserslautern Germany Fh IESE IESE Fraunhofer Institut Experimentelles Software Engineering Inhalt Niederlassungen Finanzierung IESE Grundfinanzierung 19,3% Kaiserslautern Siegelbach (IESE) Industrielle Partner 27,7% Universität Kaiserslautern (Kontaktbüro) Öffentliche Partner 53% PRE-Park Kaiserslautern (Kontaktbüro) Projektkontext Probleme Lösungen Empfehlungen Fazit Status gegründet: 1.1.1996 als Fraunhofer Einrichtung • Seit Nov. 1999 permanentes Fraunhofer-Institut Personal • • • • 89 Vollzeit-Angestellte 36 Studenten 3 Auszubildende 1 Gastwissenschaftler College Park, Maryland, USA (FC-MD) Copyright © Fraunhofer IESE 2002 RE – Von der Theorie zur Praxis München, 10. – 12. März 2003 Slide 1 / 25 Mission – der Ansatz des IESE IESE Inhalt IESE Projektkontext die Problemstellung unserer Kunden: Software-Qualitätsverbesserung • Kauf / Herstellung komplexer Software • mit vorhersagbarer (zertifizierbarer) Qualität • unter Einhaltung gegebener Randbedingungen (Kosten, Zeit) unsere Lösung: Software Engineering anwenden • ingenieurwissenschaftliche Methoden und Techniken • integriert in wiederholbaren, gut verstandenen und kontrollierbaren Entwicklungsvorgängen unsere Vorgehensweise: Experimentelles Software Engineering … ist die einzig wissenschaftlich fundierte Methode, um die Brücke von Grundlagenforschung über angewandte Forschung zur Pilotanwendungen von SEMethoden und Techniken zu schlagen. Probleme Lösungen Empfehlungen Fazit Copyright © Fraunhofer IESE 2002 RE – Von der Theorie zur Praxis München, 10. – 12. März 2003 Slide 2 / 25 RUE-Kompetenzen IESE Inhalt Requirements and Usability Engineering Test Anf. IESE Projektkontext Requirements Engineering Probleme • Analyse, Spezifikation, Management • Modellierung, natürliche Sprache Lösungen Kode Empfehlungen Fazit Usability Engineering • Evaluierungen von Benutzungsschnittstellen • Usability Engineering Lebenszyklus (integriert mit SE) Requirements Driven Quality Assurance • Inspektionen, Testfallerstellung • Qualitätsmanagement Copyright © Fraunhofer IESE 2002 RE – Von der Theorie zur Praxis München, 10. – 12. März 2003 Slide 3 / 25 Kunden des IESE IESE Inhalt IESE Projektkontext Probleme Lösungen Empfehlungen Fazit ABB Corporate Research Ltd. Alcatel Alsthom Allianz Lebensversicherungs-AG BASF AG Bauer & Partner AG BMW Boeing Company Brose AG CAP Gemini Ernst & Young CAS Computer Anwendungs- + Systemberatung GmbH DaimlerChrysler Aerospace AG DaimlerChrysler AG, Forschung und Technik DaimlerChrysler Services (debis) AG Deutsche Bahn AG Deutsche Bank AG Deutsche Lufthansa AG Deutsche Telekom AG DFS Deutsche Flugsicherung GmbH Deutsches Zentrum für Luft- und Raumfahrt e.V. Dräger Medical Electronic B.V. Dresdner Bank AG Ericsson Eurolab Deutschland GmbH European Space Agency Etnoteam S.p.A. F. Hoffmann-La Roche Ltd Fannie Mae GCE - Gesellschaft für Computer Engineering mbH GEVA-Datentechnik GmbH Heidelberger Druckmaschinen AG Honneywell Regelsysteme GmbH Horst Klaes GmbH u. Co KG ICON Intelligent Control Gebäudetechnik GmbH InfoGraph GmbH Insead Insiders GmbH Interpares-Mobau GmbH & Co. KG Kommunikations- und Datentechnik GmbH Kretz Software GmbH LMS Durability Technologies GmbH Lucent Technologies Network Systems GmbH Mannesmann-VDO Markant Südwest AG MARKET MAKER Software AG maxess Systemhaus GmbH MEDIASYS GmbH Motorola Inc. Nokia Group Philips PMS Mikado Software Consult GmbH Preussen Elektra AG proalpha AG Psipenta Q-Labs GmbH Robert Bosch GmbH SAP Schneider Automationstechnik GmbH sd&m software design & management GmbH & Co. KG Siemens AG SoftLab GmbH STOTAX GmbH & Co. KG SWA AG SYSTEM NET tec:inno GmbH tecmath AG Tenovis GmbH & Co. KG (früher Bosch Telecom) Tengelmann Warenhandelsgesellschaft Thomson-CSF Elektronik GmbH T-Mobil GmbH Tokheim Corporation (früher Schlumberger) Viva Software GmbH VTT Electronics ZF Lenksysteme GmbH Copyright © Fraunhofer IESE 2002 RE – Von der Theorie zur Praxis München, 10. – 12. März 2003 Slide 4 / 25 IESE Fraunhofer – Unser Angebot IESE IESE Inhalt TechnologieTransfer IESE Projektkontext Probleme Lösungen Empfehlungen Seminare & Coaching Forschung & Entwicklung Fazit Gutachten Studien Zertifizierung Copyright © Fraunhofer IESE 2002 RE – Von der Theorie zur Praxis München, 10. – 12. März 2003 Slide 5 / 25 Problemstellung des Projekts IESE Inhalt Seilbahn auf der Weltausstellung 2004 – 4 Streckenabschnitte IESE Projektkontext Probleme Zugangsdrehkreuz Lösungen Empfehlungen Besucher SeilbahnManager Fazit Abgangsdrehkreuz Fahrkartenautomat Stationscontroller StationsManager Seilbahncontroller Copyright © Fraunhofer IESE 2002 RE – Von der Theorie zur Praxis München, 10. – 12. März 2003 Slide 6 / 25 Projekt-Organisation IESE Inhalt Entertainment Group IESE • Auftraggeber • Vorgabe: Anforderungsdokument Projektkontext Probleme Lösungen FunPark Inc. Empfehlungen • Auftragnehmer und Auftraggeber • Vorgabe: Anforderungsdokument Fazit TickDruck GmbH • Auftragnehmer • entwickelt Fahrkartenautomat TrittEin AG • Auftragnehmer • entwickelt alle anderen Komponenten des Gesamtsystems Copyright © Fraunhofer IESE 2002 RE – Von der Theorie zur Praxis München, 10. – 12. März 2003 Slide 7 / 25 Entwicklungsvorgaben durch „FunPark“ IESE Inhalt IESE Projektkontext Probleme Lösungen Empfehlungen Fazit Dokumente Werkzeuge • • • • • • • • • • • • • • Schnittstellenbeschreibungen Liste eingehaltener Standards Systementwurfsbeschreibungen Darstellungen über Systemaufbau Kabelplan Installationsdetails und -handbücher Fortschrittsreports Anforderungsspezifkation Entwurfsbeschreibung Benutzungshandbücher Testplan und Tests System-Entwicklungsplan Qualitätssicherungsplan Konfigurationsmanagementplan • Dokumentation in WinWord Copyright © Fraunhofer IESE 2002 RE – Von der Theorie zur Praxis München, 10. – 12. März 2003 Slide 8 / 25 Vorgabe von „FunPark“ IESE Inhalt IESE Projektkontext • Insgesamt 82 Seiten (technische Anforderungen: 30 Seiten) • Natürliche Sprache (mit Tabellen, ohne Abbildungen) • Durchnummerierung einzelner Anforderungen Probleme System-Anforderungen Lösungen Empfehlungen Fazit Funktionale Anf. spezifisch für SystemKomponenten Zukünftige Erweiterungen Unabhängig von Auftragnehmern Prozessanforderungen Dokumentationsanforderungen Copyright © Fraunhofer IESE 2002 RE – Von der Theorie zur Praxis München, 10. – 12. März 2003 Slide 9 / 25 Ziel der Spezifikation von „TrittEin“ IESE • Dient „FunPark“ zur Überprüfung, ob alle Anforderungen an das Managementsystem festgehalten wurden Projektkontext • Dient „TrittEin“ zum Entwerfen des Managementsystems Probleme • Dient „TrittEin“ als Ausgangsbasis zur Definition von Testfällen für das Managementsystems • Dient „TrittEin“ zum Entwickeln der Benutzerdokumentation Inhalt IESE Lösungen Empfehlungen Fazit Zugangsdrehkreuz Fahrkartensystem (TickDruck GmbH) Besucher Abgangsdrehkreuz Fahrkartenautomat Copyright © Fraunhofer IESE 2002 RE – Von der Theorie zur Praxis München, 10. – 12. März 2003 SeilbahnManager Stationscontroller StationsManager Managementsystem (TrittEin AG) Seilbahncontroller Slide 10 / 25 IESE Inhalt IESE Problem 1: Keine „Benutzer-Anforderungen“ ¾ Verständnis der Verwendungsweisen muss auf Basis von Komponenten-Anforderungen rekonstruiert werden Projektkontext Probleme Lösungen Empfehlungen Fazit ¾ Zusammenspiel der Komponenten bleibt unklar (kein Strukturbild) nalität? Welche Funktio Welch e Berec h nunge n? uscht? ta e g s u a n e d r e Welche Infos w Copyright © Fraunhofer IESE 2002 RE – Von der Theorie zur Praxis München, 10. – 12. März 2003 Slide 11 / 25 IESE Problem 1: Keine „Benutzer-Anforderungen“ ¾ Bestimmte Komponenten-Anforderungen nicht nachvollziehbar Inhalt IESE Projektkontext Probleme Lösungen ¾ Vollständigkeit der Anforderungen nicht überprüfbar ¾ Verwendung und Details der genannten Daten unklar Empfehlungen Fazit sich n e id e h c s r Worin unte fos? n I n e n e d ie die versch Copyright © Fraunhofer IESE 2002 RE – Von der Theorie zur Praxis München, 10. – 12. März 2003 Ist die L di e r K allen f o W iste vo l l s t änd ig? an? e g n rgä o V n tkarte Slide 12 / 25 Problem 2: Unklare Komponenten IESE Inhalt IESE ¾ Logische und physikalische Aufteilung des Gesamtsystems wird nicht explizit unterschieden Projektkontext Probleme ¾ Anzahl physikalischer Komponenten ist nicht genannt Lösungen Empfehlungen Fazit Physi ka lische Komp onent e n? Copyright © Fraunhofer IESE 2002 RE – Von der Theorie zur Praxis München, 10. – 12. März 2003 Slide 13 / 25 Problem 3: Unklare Schnittstellen IESE Inhalt ¾ Unklare Schnittstellen zwischen den Auftragnehmern IESE Es gib t Projektkontext Probleme z we i A uftrag Lösungen nehm e r Empfehlungen Fazit tstell Wie sieht die Schnit e aus? Copyright © Fraunhofer IESE 2002 RE – Von der Theorie zur Praxis München, 10. – 12. März 2003 Slide 14 / 25 Problem 4: Management von Änderungen IESE Inhalt IESE Projektkontext Probleme ¾ Neue oder gelöschte Anforderungen in der Vorgabe führen zur Umnummerierung ¾ Referenzen von der Spezifikation auf Vorgabe sind dann falsch Lösungen Empfehlungen Fazit Copyright © Fraunhofer IESE 2002 RE – Von der Theorie zur Praxis München, 10. – 12. März 2003 Slide 15 / 25 IESE Inhalt IESE Rekonstr. Inhalte der Vorgabe – Schnittstellen Spezifikation beschreibt explizit die Schnittstellen des Gesamt- und Managementsystems Projektkontext Probleme Netzwerk-Zeit-Server Lösungen Empfehlungen Gesamtsystem Fazit Fahrkartenautomat Managementsystem Feuer Alarm System Adressiert Problem 3: Unklare Schnittstellen Copyright © Fraunhofer IESE 2002 RE – Von der Theorie zur Praxis München, 10. – 12. März 2003 Slide 16 / 25 IESE Inhalt Rekonstr. Inhalte der Vorgabe - Systemnutzer Spezifikation beschreibt explizit Nutzer des Gesamtsystems IESE Projektkontext Besucher Stations-Manager Durchgehen durch Drehkreuz und ziehen von Fahrkarten Probleme Lösungen Empfehlungen Warte System Fazit Beobachte und kontrolliere Station Beobachte und kontrolliere Gesamtsystem Gesamtsystem Seilbahn-Manager Service-Mitarbeiter Biete Smart Cards an Optional: Hotelangestellter Beobachte Karten Optional: Hotel-Manager Adressiert Problem 1: Keine Benutzer-Anforderungen Copyright © Fraunhofer IESE 2002 RE – Von der Theorie zur Praxis München, 10. – 12. März 2003 Slide 17 / 25 IESE Inhalt IESE Projektkontext Rekons. Inhalte der Vorgabe – Use Cases (1/3) Spezifikation beschreibt explizit Verwendungsweisen des Gesamt- und Managementsystems Gesamtsystem Adressiert Problem 1: Keine Benutzer-Anforderungen Probleme FKA Lösungen Kaufe Ticket Managementsystem Generiere <<includes>> Reporte Empfehlungen Fazit Besucher Betrete Zone Verlasse Zone Definiere Preise <<includes>> Beobachte Umsatzzahlen Wähle Terminal Stations-Manager Copyright © Fraunhofer IESE 2002 RE – Von der Theorie zur Praxis München, 10. – 12. März 2003 SeilbahnManager <<includes>> Evakuiere Zone Feuer Alarm System Slide 18 / 25 Rekons. Inhalte der Vorgabe – Use Cases (2/3) IESE Inhalt Spezifikation beschreibt Verwendungsweisen im Detail (1/2) IESE No. UC2 Projektkontext Name Betrete Zone Aktor Benutzer Ziel Aktor betritt den kontrollierten Bereich Interaktionssequenz 1. Aktor nähert sich Zugangsdrehkreuz 2. System liest Informationen auf der Fahrkarte [Ausnahme: Aktor hat keine Fahrkarte dabei] 3. System überprüft die Validität der Fahrkarte [Ausnahme: Fahrkarte ungültig] 4. System reduziert Anzahl der Fahrten auf der Fahrkarte [Ausnahme: Fahrkarte ist nicht beschreibbar] 5. System speichert Eintrittsinformationen 6. System öffnet Zugang 7. Aktor geht durch den Zugang Ausnahmen 2.1 System zeigt Aktor Nachricht „keine Fahrkarte“ 3.1, 4.1 System zeigt Aktor Nachricht „keine gültige Fahrkarte“ Probleme Lösungen Empfehlungen Fazit Ref. A-3.3.6-4 A-3.3.6.5 Copyright © Fraunhofer IESE 2002 RE – Von der Theorie zur Praxis München, 10. – 12. März 2003 Slide 19 / 25 IESE Inhalt IESE Rekons. Inhalte der Vorgabe – Use Cases (3/3) Spezifikation beschreibt Vorgehensweisen im Detail (2/2) Regeln Eine Karte ist ungültig, wenn Anzahl der Fahrten = 0 oder wenn der Gültigkeitszeitraum überschritten ist. Qualitätsanf. PR-5 Durchschnittliche Verarbeitungsgeschwindigkeit – Eintritt PR-4 Transaktionsrate Daten Fahrkarte {Information siehe Use Case „Kaufe Ticket“} Fahrkarte {Anzahl der Fahrten reduziert} Eintrittsinformation {Ort, Id-Nr, Tag, Drehkreuz-Id, Tag des Eintritts} Vorbedingung Fahrkarte gekauft, System ist im Operationsmodus „normal“ Nachbedingung Aktor ist im kontrolliertem Bereich Projektkontext Probleme Lösungen Empfehlungen Fazit A-3.3.6-4 Adressiert Problem 1: Keine Benutzer-Anforderungen Copyright © Fraunhofer IESE 2002 RE – Von der Theorie zur Praxis München, 10. – 12. März 2003 Slide 20 / 25 Inhalte der Spezifikation – Datailfunktionen IESE Inhalt IESE Projektkontext Probleme Spezifikation beschreibt Schnittstellen logischer Komponenten Adressiert Problem 2: Unklare Komponenten Fahrkartenautomat Adressiert Problem 3: Unklare Schnittstellen Lösungen Empfehlungen Netzwerk-Zeit-Server Benutzer Feuer Alarm System Fazit Drehkreuz Speichere und übermittle Inf. Lese/ Schreibe Info. Managementsystem Fahrkarte Zeige Info an und frage ab Lese/ Schreibe Info. DBMS (SC und SBC) Zeige Inf. an und frage ab ServiceMitarbeiter Stationscontroller terminal Seilbahn controller terminal Zeige Info an und frage ab SeilbahnManager Optional: Hotel ausstattung StationsManager Copyright © Fraunhofer IESE 2002 RE – Von der Theorie zur Praxis München, 10. – 12. März 2003 Optional: Optional: Hotelang. Hotel-Manager Slide 21 / 25 Inhalte der Spezifikation - Detailfunktionen IESE Inhalt IESE Spezifikation beschreibt Komponenten-Anforderungen Adressiert Problem 2: Unklare Komponenten Projektkontext Probleme Lösungen Empfehlungen Fazit Copyright © Fraunhofer IESE 2002 RE – Von der Theorie zur Praxis München, 10. – 12. März 2003 Slide 22 / 25 Empfehlungen für den Auftraggeber IESE Inhalt IESE 1. Dokumentiere Nutzer des Gesamtsystems Projektkontext 2. Dokumentiere Schnittstellen zu anderen Systemen Probleme 3. Dokumentiere Verwendungsweisen des Systems Lösungen Empfehlungen System 1 System m Fazit Daten Use case 1 Nutzer n Gesamtsystem Nutzer 1 Ausnahmen Use case x Q nf. A s t ualitä Nutzer 2 Copyright © Fraunhofer IESE 2002 RE – Von der Theorie zur Praxis München, 10. – 12. März 2003 Slide 23 / 25 Empfehlungen für den Auftraggeber IESE Inhalt IESE Projektkontext Probleme 4. Beschreibe Schnittstelle zwischen Auftragnehmern 5. Unterscheide explizit zwischen physikalischer und logischer Systemstruktur 6. Vergib Nummern die sich nicht mehr ändern Lösungen System 1 Empfehlungen System m Fazit Nutzer 1 Teilsystem Komp. 1 Auftragnehmer 1 Komp. y Teilsystem Komp. 1 Auftragnehmer Komp. zx Nutzer n Nutzer 2 Copyright © Fraunhofer IESE 2002 RE – Von der Theorie zur Praxis München, 10. – 12. März 2003 Slide 24 / 25 Fazit IESE Inhalt • Empfehlungen nicht wirklich überraschend IESE Projektkontext Probleme • Nichteinhalten führt zu einer Reihe von Problemen • Rekonstruktion kostete hohen Aufwand Lösungen Empfehlungen Fazit • Rekonstruktion war für Gelingen des Projekts entscheidend: • Verständnis des Gesamt- und Managementsystems • Nachfragen an „FunPark“ • Designer konnten Entwurf leicht ableiten • Verschiedene Abstraktionsebenen und explizite Beziehungen von Spezifikation zu Vorgabe erleichterten eine Überprüfung durch „FunPark“ Copyright © Fraunhofer IESE 2002 RE – Von der Theorie zur Praxis München, 10. – 12. März 2003 Slide 25 / 25