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