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

1,832
-1

Published on

REFSQ 2010 (29.03.2011, Essen, Germany)

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

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

No notes for slide

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

  1. 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. 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. 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. 4. Folie 4REFSQ 2011 > Andreas Schreiber > Requirements Engineering in Germany’s Research Center for Aeronautics and Space > 29.03.2011
  5. 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. 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. 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. 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. 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. 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. 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. 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. 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. 14. Example Projects Folie 14 REFSQ 2011 > Andreas Schreiber > Requirements Engineering in Germany’s Research Center for Aeronautics and Space > 29.03.2011
  15. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 33. Research Topics REFSQ 2011 > Andreas Schreiber > Requirements Engineering in Germany’s Research Center for Aeronautics and Space > 29.03.2011
  34. 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. 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. 36. Questions? Folie 36 REFSQ 2011 > Andreas Schreiber > Requirements Engineering in Germany’s Research Center for Aeronautics and Space > 29.03.2011

×