Example Blood Pressure Report of BloodPressureCompanion
Requirements Engineering in Germany’s Research Center for Aeronautics and Space
1. Requirements Engineering in Germany’s Research
Center for Aeronautics and Space
REFSQ 2010 (29.03.2011, Essen, Germany)
Andreas Schreiber <Andreas.Schreiber@dlr.de>
German Aerospace Center (DLR), Cologne
http://www.dlr.de/sc
REFSQ 2011 > Andreas Schreiber > Requirements Engineering in Germany’s Research Center for Aeronautics and Space > 29.03.2011
2. Abstract
“The development of software is a core activity at most DLR institutes. About a quarter
of DLR’s manpower is assigned to it. Projects range from small software tools
developed by students to large long-term cooperations with other research centers,
academia, and industry. The kind of developed software is very also different. There
are many small scripts with a limited lifetime (e.g., for prototyping) as well as large
systems or critical real-time software. Furthermore, in most cases the software is
developed by engineers or natural scientist who do not have any education in software
engineering. The talk outlines the current status of software engineering at DLR with
focus on requirements engineering. With examples from very different development
projects, some of the used tools and methodologies for requirements engineering will
be described. Also, the efforts for DLR-internal standardization and some of the
research topics related to requirements management will be presented.“
REFSQ 2011:
http://www.sse.uni-due.de/refsq/2011/industry-track/invited-presentations/
Folie 2
REFSQ 2011 > Andreas Schreiber > Requirements Engineering in Germany’s Research Center for Aeronautics and Space > 29.03.2011
3. Outline
! The German Aerospace Center (DLR)
! Software development at DLR
! Example projects
! Status of requirements engineering
! Software Engineering at DLR
! Research topics
Folie 3
REFSQ 2011 > Andreas Schreiber > Requirements Engineering in Germany’s Research Center for Aeronautics and Space > 29.03.2011
4. Folie 4
REFSQ 2011 > Andreas Schreiber > Requirements Engineering in Germany’s Research Center for Aeronautics and Space > 29.03.2011
5. DLR
German Aerospace Center
! Research Institution
! Space Agency
! Project Management Agency
Folie 5
REFSQ 2011 > Andreas Schreiber > Requirements Engineering in Germany’s Research Center for Aeronautics and Space > 29.03.2011
6. Locations and employees
6500 employees across
Hamburg n
29 research institutes and n Neustrelitz
facilities at Bremen n n Trauen
n 13 sites. Berlin n
Braunschweig n
n Dortmund n Goettingen
Offices in Brussels,
Paris and Washington. n Koeln
n Bonn
Lampoldshausen n
Stuttgart n
n Oberpfaffenhofen
Weilheim n
Folie 6
REFSQ 2011 > Andreas Schreiber > Requirements Engineering in Germany’s Research Center for Aeronautics and Space > 29.03.2011
7. Total income 2010 – Research, operations and
management tasks (excluding trustee funding from the
Space Agency/ DLR Project Management Agency): 751 Mio.€
62 Alle Angaben in Mio. Euro
95
n Space
288
n Aeronautics
46 n Transport
n Energy
45 n Space Agency /
DLR Project Management Agency
n Other income / earnings
215
Folie 7
REFSQ 2011 > Andreas Schreiber > Requirements Engineering in Germany’s Research Center for Aeronautics and Space > 29.03.2011
8. Software Development at DLR
Folie 8
REFSQ 2011 > Andreas Schreiber > Requirements Engineering in Germany’s Research Center for Aeronautics and Space > 29.03.2011
9. Software Development at DLR
More than 1000 employees
are developing software
> 100 Million EURO
personnel cost per year
DLR is one of Germany
largest software developers
Folie 9
REFSQ 2011 > Andreas Schreiber > Requirements Engineering in Germany’s Research Center for Aeronautics and Space > 29.03.2011
10. Software in Space and Aerospace
Mission-critical software
(e.g., real-time software)
Web-based software for
internet and intranet
Supporting software
(e.g., data management)
High-Performance and
scientific computing Software
Folie 10
REFSQ 2011 > Andreas Schreiber > Requirements Engineering in Germany’s Research Center for Aeronautics and Space > 29.03.2011
11. Scientific Software Development
! Typical phenomenon: Developments start as small programs (e.g.,
scripts) but often growth to huge software systems
! Team size ranges rom one student up to over 50 scientists
! Many scientists don’t have any Software Engineering Education but
they develop large software systems
! Their goal is to get running code to solver their problems very fast
! Loss of productivity due to antiquated methods and tools
Folie 11
REFSQ 2011 > Andreas Schreiber > Requirements Engineering in Germany’s Research Center for Aeronautics and Space > 29.03.2011
12. Development Process in Aerospace Engineering
Based on ECSS
Progress
Planning (0/A)
Preliminary Design (B)
Design & Production (C/D)
Design & Production ( C/D)
Design & Production ( C/D)
Operation (E)
Folie 12
REFSQ 2011 > Andreas Schreiber > Requirements Engineering in Germany’s Research Center for Aeronautics and Space > 29.03.2011
13. DLR Standard Development Process
QUARTERLY *
1 Require- 2 Release 3 4 14 Code 15 16
Discussion 17
Detailed Test Case Doc. for
ments + Test Release
Planning Design Generation Users (Review)
Analysis Analysis
MONTHLY *
5 (Change) 6 Release 11 12 13
Doc. for Discussion Incremental
Request
Planning Developer + Inspection Release
+ Decision
DAILY *
7 Unittest 8 Check-In 9 Build Integration/
Codestyle + SW-System
+ Coding Deploy
+ Test 10 Test
* Time scales may vary
Folie 13
REFSQ 2011 > Andreas Schreiber > Requirements Engineering in Germany’s Research Center for Aeronautics and Space > 29.03.2011
14. Example Projects
Folie 14
REFSQ 2011 > Andreas Schreiber > Requirements Engineering in Germany’s Research Center for Aeronautics and Space > 29.03.2011
15. Shefex II
Project Goal
! Development of real-time
operation system functions
based on QNX
(POSIX compatible real-time OS)
Development Process
! Tailored ECSS
Programming Language
! C++
Folie 15
REFSQ 2011 > Andreas Schreiber > Requirements Engineering in Germany’s Research Center for Aeronautics and Space > 29.03.2011
16. Shefex II
Development Process (Tailored ECSS)
Phase A
! Mission Requirements (DOORS)
Phase B
! System + Software Requirements (DOORS)
! Software architecture (components,
data flow) (Enterprise Architect)
Phase C
! Development andTest (Eclipse, Subversion, make, Mantis)
Phase D
! Acceptance test in real hardware environment
! Test sequences (commands) activated in source code by compiler
directives
Folie 16
REFSQ 2011 > Andreas Schreiber > Requirements Engineering in Germany’s Research Center for Aeronautics and Space > 29.03.2011
17. Shefex II
Used Tools
Requirements
! DOORS
Change management
! Mantis
Repository
! Subversion
Design-Tool (UML)
! Enterprise Architect
IDE
! Eclipse + QNX-Plug-In + Subversive
Build-Tool
! make (Makefile generated by QNX-Plug-In)
Folie 17
REFSQ 2011 > Andreas Schreiber > Requirements Engineering in Germany’s Research Center for Aeronautics and Space > 29.03.2011
18. DataFinder
Project Goal
! Data management system
for data from
! Simulations
! Experiments
! Earth observation
Programming language
! Python
! GUI-Toolkit Qt
Folie 18
gearconf 2009 > Andreas Schreiber> Software Engineering inder Luft- und Raumfahrt mit Open Source Tools > 01.10.2009
19. DataFinder
Used Tools
Requirements Communications Tools
! Wiki (MoinMoin) Tool Description
Change management CodeCollobor Code review tool for pre-
ator and post-commit review
! Mantis
Polycom Audio and video
Repository communication
! Subversion Saros Eclipse distributed pair
programming
Design-Tool (UML)
Mumble Audio communication
! Enterprise Architect
Mylyn Task-based Mantis
IDE integration in Eclipse
! Eclipse + PyDev RealVNC Desktop sharing
Eclipse- Eclipse integrated
Build-Tool Hudson Hudson monitoring
! distutils Adobe web conference system
Connect Pro
Folie 19
gearconf 2009 > Andreas Schreiber> Software Engineering inder Luft- und Raumfahrt mit Open Source Tools > 01.10.2009
20. Status of Requirements Engineering
at DLR
REFSQ 2011 > Andreas Schreiber > Requirements Engineering in Germany’s Research Center for Aeronautics and Space > 29.03.2011
21. Requirements Analysis
Typical „Process“
Wiki Excel-Spreadsheet Document (Word)
Step 1: Step 2: Step 3:
Gathering of requirements Priorization and Export to document
grouping (for printing)
Step(s) n – m:
Tracking of
Requirements
Folie 21
REFSQ 2011 > Andreas Schreiber > Requirements Engineering in Germany’s Research Center for Aeronautics and Space > 29.03.2011
22. Practice of Requirements Engineering at DLR
! Use of sophisticated tools and methods in major space projects
! In many other cases, there is no methodology
! Use of simple tools for small projects
! Examples
! None
! Office tools (Word, Excel, …)
! Wikis
! Diagram software (Visio, UML tools, …)
! RE tools (DOORS, Requisite Pro, …)
! Other tools (Google Wave, Mantis, …, Pen & Paper)
! Current overall status was unknown at DLR -> Questionnaire
Folie 22
REFSQ 2011 > Andreas Schreiber > Requirements Engineering in Germany’s Research Center for Aeronautics and Space > 29.03.2011
23. Questionnaire
Goal: Status of RE in all 30 Institutes and All Domains
Prozess
Wird
das
Requirements
Engineering
als
Projektabfragen Anforderungsmanarozess
war
genommen?
eigenständiger
P
gement
Wie
kritische
ist
Werkzeuge
der
Projekterfolg
Wird
bei
der
Dokumentation
anzusehen? Anforderungs Findet
tandard-‐Gliederung
eine
S eine
Welche
Programme
erhebung Gibt
es
eine
explizite
Welche
Techniken
werden
zur
Ermittlung
Prozessdefinition
für
Attributierung
der
nd
genutzt?
(RUP,
IEEE830-‐1998,
V-‐Modell,
Lasten-‐
u werden
im
RE
eingesetzt? ist
ein
Fehler
Wie
kritisch
Wieviele
Zustimmfragen
1..5:
(Befragungstechniken,
Kreativitätstechniken,
E-‐Prozess
in
-‐
Ich
finde
dem
R
den
RE-‐Prozess? auf
einem
JA
Filter
Anforderungen
(Id,
Zustimmfragen
1..5: Pflichtenheft)
Werden
eingesetzt?
in
der
zu
entwickelnden
Entwickler
sind
an
unseren
Projekten
wird
zu
wenig
Dokumentenzentrierte
Techniken,
Software
anzusehen? gewidmet Anforderungserhebung
wie
wir
Name,
-‐
Ich
bin
mit
der
Vorgehensmodelle
(Bürosoftware
[Word,
Beobachtungstechniken,
Unterstützende
Techniken) Aufmerksamkeit
für
das
RE
dem
Projekt
Beschreibung,
beteiligt?
-‐
Ich
halte
das
strikte
Einhalten
Filter
auf:
JA sie
anwenden
zufrieden. benutzt? Excel],
Wiki,
Visio,
von
Vorgehensmodellen
und
-‐
Der
Einsatz
bestimmter
(CMMI,
Volere,
Frage
nach
Prozessdefinitionen
für
Kritikalität Quelle,
usw)
statt? IEEE830,
Cobit,
...)
Techniken
wird
überbewertet. Spezielle
RE-‐Software) Zustimmfragen
1..5:
Wird
eine
Qualitätsprüfung
der
Projektgröße
(>
Zeitverschwendung.
Wird
d-‐
oder
<
5
PJ)
Anwendung
andere
erhobenen
Anforderungen
-‐
Ich
halte
den
Bürokratischen
Werden
die
Gliederung
an
ie
-‐
Ich
finde
es
wird
zu
wenig
Auf
welche
Weise
Aufwand
für
vertretbar,
Sind
Kriterien
zur
vorgenommen?
da
die
Prüfung
bestimmt
Anforderungen
SE-‐Verfahren besser
sind. worden? Projektspezifika
Filter
auf
spezielle
RE-‐Werkzeuge
Aufwand
beim
Management
von
werden
die
Ergebnisse
Geplante
angepasst?
Wie
viele
Partner
Anforderungen
-‐
Ich
halte
den
Bürokratischen
Wiederverwendung priorisiert? Anforderungen
getrieben.
(beteiligte
Institute,
dokumentiert?
Aufwand
für
vertretbar,
da
es
spätere
Entwicklungen
einfacher
Pro
Werkzeug
-‐
Meiner
Meinung
nach
(Modellbasiert,
Einrichtungen,
Firmen)
macht.
Welche
Techniken
werden
zu
Wird
das
RE
als
einmaliger
natürlichsprachlich)
sind
an
dem
Projekt
Achtung
Filter! Prüfung
der
Kriterien
genutzt?
Kategorie,
(Stellungnahen,
Inspektion,
Werden
rojektbeginn
Prozess
zu
P
die
vorgenommen,
für
mehrere
beteiligt?
Filter
auf
Modellbasiert Wissenschaftliche
Walkthrough,
Perspektivbasiertes
Anforderungen
Projektphasen
wiederholt,
oder
als
kontinuierlicher,
Wie
beurteilen
Sie
die
Lesen,
Prototypenprüfung,
Berechnungssw,
Checklisten)
Versioniert?
begleitender
Prozess
? Eingesetzten
Werkzeuge?
Embedded
SW,
wahrgenommen?
Zielmodelle?
Use
Simulations,
(Projektsicht,
Benutzersicht,
Welchen
fachlichen
Hintergrund
haben
Sie? Cases?
Explizite
Planungssysteme,
Methoden
Modellierung
Welche
Frameworks,
werden
im
RE
Welchen
Prozentsatz
Produktsicht,
Prozesssicht,
Ingenieurwesen,
Mathematik,
Naturwissenschaften,
Informatik,
Technische
unterschiedlicher
AdminSW)angewandt? Können
sich
Anforderungen
RE
im
an
Arbeitsaufwand
nimmt
das
Anbietersicht,
Technische
(Ziele
&
Szenarien,
Assistenz
Berufe,
Betriebswirtschaft,
Perspektiven
verändern,
und
werden
Projektverlauf
Soll-‐Ist-‐Vergleich,
diese
Sicht,
Betriebswirtschaftliche
sonstige[]) Filter
auf
Perspektiven
Systemanalyse,…) Veränderungen
geprüft,
schätzungsweise
ein?
Sicht)
dokumentiert?
Gibt
es
ein
Struktur
(ERD,
(offizielles
oder
inoffizielles)
Rolle
Gibt
es
eine
Klassendiagramm)?
Funktion
Requirements
Engineer
(Dfd)?,
Verhalten(Automaten,
Gremium
zur
Prüfung
vystemanalytiker)?
(z.B.
S on
Zustandsdiagramme,
Petri-‐ Anforderungsänderungen
(z.B.
Netze)
Change-‐Control-‐Board)?
Folie 23
REFSQ 2011 > Andreas Schreiber > Requirements Engineering in Germany’s Research Center for Aeronautics and Space > 29.03.2011
24. Process Perception
! Only 33% perceive requirements engineering
as a separate step during software
development
! In the space domain, perception is
almost 50%
! Projects with high criticality have very high
perception for requirements engineering
! With increasing project size, the perception for
requirements engineering declines
Folie 24
REFSQ 2011 > Andreas Schreiber > Requirements Engineering in Germany’s Research Center for Aeronautics and Space > 29.03.2011
25. Effort
! In many projects (57%), there is no one in
charge of requirements engineering
! Man in charge exist in aeronautics and
space domains only
! The effort for requirements engineering is
approximate 10%-20%
! Higher efforts for requirements engineering
are either in
! projects with higher level of maturity,
! projects with higher criticality, or
! projects from the aeronautics and
space domains.
Folie 25
REFSQ 2011 > Andreas Schreiber > Requirements Engineering in Germany’s Research Center for Aeronautics and Space > 29.03.2011
26. Requirements Analysis
! Many analysis techniques are known
! Creativity and interview techniques are
very well known (84%)
! Observation techniques are well know
(58%)
! The use of document based techniques
increases with number of projects
partners
Folie 26
REFSQ 2011 > Andreas Schreiber > Requirements Engineering in Germany’s Research Center for Aeronautics and Space > 29.03.2011
27. Used Software with Relation to Application Domain
Space Aeronautics Energy Transport Other
70
60
50
40
30
20
10
0
Office Software Wikis Diagram Software RE-Tools Other
Folie 27
REFSQ 2011 > Andreas Schreiber > Requirements Engineering in Germany’s Research Center for Aeronautics and Space > 29.03.2011
28. Used Software with Relation to Criticality
Office Software Wikis Diagram Software RE-Tools Other
100%
90%
80%
70%
60%
50%
40%
30%
20%
10%
0%
very high high middle low
Folie 28
REFSQ 2011 > Andreas Schreiber > Requirements Engineering in Germany’s Research Center for Aeronautics and Space > 29.03.2011
29. Software Engineering at DLR
Folie 29
REFSQ 2011 > Andreas Schreiber > Requirements Engineering in Germany’s Research Center for Aeronautics and Space > 29.03.2011
30. DLR-Software-Engineering-Netzwerk
! Einrichtung des DLR-Software-Engineering-Netzwerkes
! um den DLR-weiten Austausch bzgl. des Software-Engineerings
zu fördern sowie
! die Einführung und Anwendung gängiger Methoden, Prozesse
und Werkzeuge aus dem Bereich des Software-Engineerings zu
koordinieren.
! Unterstützung durch das zentrale IT-Management des DLR
! Bereitstellung aktueller Informationen über separate Seite im
Unternehmenswebportal
Ziel: Qualitätsverbesserung der wissenschaftlichen SW-Entwicklung
Folie 30
REFSQ 2011 > Andreas Schreiber > Requirements Engineering in Germany’s Research Center for Aeronautics and Space > 29.03.2011
31. DLR Software Engineering Network
Goal: Quality Improvement of Software Engineering
DLR SE
Representative
Developer
Developer
SE Contact SE Contact
Tools and Services
Developer Developer
SE Contact
Developer Developer
Folie 31
REFSQ 2011 > Andreas Schreiber > Requirements Engineering in Germany’s Research Center for Aeronautics and Space > 29.03.2011
32. DLR Software Engineering Network
Tools and Services
Software Standards
• Selection of suitable QA methods
Software Catalogue
• Classification of DLR software developments
Tool Suite
• Focus on configuration management
Training
• Methods and tools for scientists
Folie 32
REFSQ 2011 > Andreas Schreiber > Requirements Engineering in Germany’s Research Center for Aeronautics and Space > 29.03.2011
33. Research Topics
REFSQ 2011 > Andreas Schreiber > Requirements Engineering in Germany’s Research Center for Aeronautics and Space > 29.03.2011
34. Provenance in Software Engineering
! Trace software development processes with Provenance information to
answer questions about it
! Example: Which issues did Heinrich solve for release 1.5.0?
Folie 34
REFSQ 2011 > Andreas Schreiber > Requirements Engineering in Germany’s Research Center for Aeronautics and Space > 29.03.2011
35. Provenance in Software Engineering
-‐
Name
(M)
Document
Doc
User C hange
C hange
-‐
New
ID
(M) Process
-‐
New
Status
(O)
-‐
New
Assignee
(O)
-‐
Document
(M)
-‐
New
Release
(O)
-‐
C omment
(O)
Define questions about the process Issue
-‐
String
(M)
Issue C hange
C hange
Process Release
Create a model for the
-‐
File
(M)
development process with Open
-‐
ID
(M) Issue
Provenance Model
-‐
Status
(M)
-‐
Assignee
(M)
Archive
Release
! Identifying data items, actors, Process
relations C ommit
-‐
Number
(M)
-‐
ExitC ode
(M)
Store Provenance information C ommit
Failure
C hange
Set
Revision
Build
during process runtime Result
-‐
Output
(M)
-‐
Message
(M)
Build
Query Provenance information to C overage
answer questions and trace the
-‐
#
Success
(M)
-‐
Version
(M)
Unit
Test
-‐
#
Failure
(M)
process C overage
-‐
C overage
Test
Maven
Result Percentage
(M) Result
Folie 35
REFSQ 2011 > Andreas Schreiber > Requirements Engineering in Germany’s Research Center for Aeronautics and Space > 29.03.2011
36. Questions?
Folie 36
REFSQ 2011 > Andreas Schreiber > Requirements Engineering in Germany’s Research Center for Aeronautics and Space > 29.03.2011