Your SlideShare is downloading. ×
Requirements Engineering in Germany’s Research Center for Aeronautics and Space
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Saving this for later?

Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime - even offline.

Text the download link to your phone

Standard text messaging rates apply

Requirements Engineering in Germany’s Research Center for Aeronautics and Space

1,557
views

Published on

REFSQ 2010 (29.03.2011, Essen, Germany)

REFSQ 2010 (29.03.2011, Essen, Germany)

Published in: Technology

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
1,557
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Requirements Engineering in Germany’s ResearchCenter for Aeronautics and SpaceREFSQ 2010 (29.03.2011, Essen, Germany)Andreas Schreiber <Andreas.Schreiber@dlr.de>German Aerospace Center (DLR), Colognehttp://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 quarterof DLR’s manpower is assigned to it. Projects range from small software toolsdeveloped by students to large long-term cooperations with other research centers,academia, and industry. The kind of developed software is very also different. Thereare many small scripts with a limited lifetime (e.g., for prototyping) as well as largesystems or critical real-time software. Furthermore, in most cases the software isdeveloped by engineers or natural scientist who do not have any education in softwareengineering. The talk outlines the current status of software engineering at DLR withfocus on requirements engineering. With examples from very different developmentprojects, some of the used tools and methodologies for requirements engineering willbe described. Also, the efforts for DLR-internal standardization and some of theresearch 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 4REFSQ 2011 > Andreas Schreiber > Requirements Engineering in Germany’s Research Center for Aeronautics and Space > 29.03.2011
  • 5. DLRGerman 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 employees6500 employees across Hamburg n29 research institutes and n Neustrelitzfacilities at Bremen n n Trauen n  13 sites. Berlin n Braunschweig n n Dortmund n GoettingenOffices 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 andmanagement tasks (excluding trustee funding from theSpace 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 EngineeringBased 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 IIProject Goal!  Development of real-time operation system functions based on QNX (POSIX compatible real-time OS)Development Process!  Tailored ECSSProgramming Language!  C++ Folie 15 REFSQ 2011 > Andreas Schreiber > Requirements Engineering in Germany’s Research Center for Aeronautics and Space > 29.03.2011
  • 16. Shefex IIDevelopment 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 IIUsed ToolsRequirements!  DOORSChange management!  MantisRepository!  SubversionDesign-Tool (UML)!  Enterprise ArchitectIDE!  Eclipse + QNX-Plug-In + SubversiveBuild-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. DataFinderProject Goal!  Data management system for data from !  Simulations !  Experiments !  Earth observationProgramming 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. DataFinderUsed ToolsRequirements Communications Tools!  Wiki (MoinMoin) Tool DescriptionChange management CodeCollobor Code review tool for pre- ator and post-commit review!  Mantis Polycom Audio and videoRepository communication!  Subversion Saros Eclipse distributed pair programmingDesign-Tool (UML) Mumble Audio communication!  Enterprise Architect Mylyn Task-based MantisIDE integration in Eclipse!  Eclipse + PyDev RealVNC Desktop sharing Eclipse- Eclipse integratedBuild-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 Engineeringat 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 Other70605040302010 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 Other100%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 UnternehmenswebportalZiel: 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 RepresentativeDeveloper Developer SE Contact SE Contact Tools and ServicesDeveloper 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 NetworkTools 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 ReleaseCreate a model for the  -­‐  File  (M)development process with Open  -­‐  ID  (M) IssueProvenance 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 Buildduring process runtime Result  -­‐  Output  (M)  -­‐  Message  (M) BuildQuery Provenance information to C overageanswer 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