REQUIREMENTS ENGINEERING MANAGEMENT FINDINGS REPORT May 2009 6
Total Page:16
File Type:pdf, Size:1020Kb
DOT/FAA/AR-08/34 Requirements Engineering Air Traffic Organization NextGen & Operations Planning Management Findings Report Office of Research and Technology Development Washington, DC 20591 May 2009 Final Report This document is available to the U.S. public through the National Technical Information Service (NTIS), Springfield, Virginia 22161. U.S. Department of Transportation Federal Aviation Administration NOTICE This document is disseminated under the sponsorship of the U.S. Department of Transportation in the interest of information exchange. The United States Government assumes no liability for the contents or use thereof. The United States Government does not endorse products or manufacturers. Trade or manufacturer's names appear herein solely because they are considered essential to the objective of this report. This document does not constitute FAA certification policy. Consult your local FAA aircraft certification office as to its use. This report is available at the Federal Aviation Administration William J. Hughes Technical Center’s Full-Text Technical Reports page: actlibrary.tc.faa.gov in Adobe Acrobat portable document format (PDF). Technical Report Documentation Page 1. Report No. 2. Government Accession No. 3. Recipient's Catalog No. DOT/FAA/AR-08/34 4. Title and Subtitle 5. Report Date REQUIREMENTS ENGINEERING MANAGEMENT FINDINGS REPORT May 2009 6. Performing Organization Code 7. Author(s) 8. Performing Organization Report No. David L. Lempia and Steven P. Miller 9. Performing Organization Name and Address 10. Work Unit No. (TRAIS) Rockwell Collins, Inc. 400 Collins Road NE 11. Contract or Grant No. Cedar Rapids, IA 52498 DTFACT-05-C-00004 12. Sponsoring Agency Name and Address 13. Type of Report and Period Covered U.S. Department of Transportation Final Report Federal Aviation Administration Air Traffic Organization NextGen & Operations Planning Office of Research and Technology Development Washington, DC 20591 14. Sponsoring Agency Code AIR-120 15. Supplementary Notes The Federal Aviation Administration Airport and Aircraft Safety R&D Division COTR was Charles Kilgore. 16. Abstract This report describes the results of a study conducted for the Federal Aviation Administration Airport and Aircraft Safety Research and Development Division to determine methods to enable successful management, control, integration, verification, and validation of system and software requirements that may be developed by multiple entities. In Phase 1 of the study, a survey of the literature was conducted to identify best practices in requirements engineering, and an industry survey was taken to determine current practices and the issues and concerns of practitioners. These sources were then combined to produce an overall list of safety and certification issues in requirements engineering management. In Phase 2 of the study, the findings of Phase 1 were further refined and used to guide the selection of several best practices from the literature. This final report included the results of Phases 1 and 2. The best practices were integrated into a complete set of 11 recommended practices and documented in a Handbook of Requirements Engineering Management. These practices can be incrementally added to an organization’s existing requirements engineering process to incorporate the best practices identified in the literature. 17. Key Words 18. Distribution Statement Requirements, Engineering, Avionics, Systems, Software This document is available to the U.S. public through the National Technical Information Service (NTIS) Springfield, Virginia 22161. 19. Security Classif. (of this report) 20. Security Classif. (of this page) 21. No. of Pages 22. Price Unclassified Unclassified 216 Form DOT F 1700.7 (8-72) Reproduction of completed page authorized TABLE OF CONTENTS Page EXECUTIVE SUMMARY xiii 1. INTRODUCTION 1 1.1 Background 1 1.2 Overview of the Main Study Findings 2 1.2.1 Findings From the Literature Search 2 1.2.2 Findings From the Industry Survey 2 1.2.3 Development of the Requirements Engineering Management Handbook 3 1.3 Organization of Report 4 2. BEST PRACTICES IDENTIFIED IN THE LITERATURE 4 2.1 DO-178B, DO-248B, and DO-278 4 2.2 Statecharts, StateMate, and Rhapsody 8 2.3 Software Cost Reduction and the Four-Variable Model 9 2.4 The RSML and the RSML-e 13 2.5 Specification Toolkit and Requirements Methodology and Intent Specifications 14 2.6 Unified Modeling Language 16 2.7 Synchronous Graphical Modeling Languages 18 2.8 Integrated Modular Avionics 19 3. INDUSTRY SURVEY 21 3.1 Approach 21 3.2 Findings 22 3.2.1 Background Information 22 3.2.2 Tools and Methods 23 3.2.3 Comments 27 iii 3.3 Survey Conclusions 31 4. SAFETY AND CERTIFICATION CONCERNS 32 4.1 General Issues 33 4.1.1 What is Requirements Engineering Management? 34 4.1.2 Clarification of DO-178B Terms and Guidance 34 4.1.3 Is More Guidance Needed on Requirements Engineering Management? 34 4.2 Safety Issues 34 4.2.1 What Should be Done Differently During Development Due to Safety Requirements? 35 4.2.2 Can ARP 4754 and DO-178B be Integrated Better? 35 4.2.3 What Techniques can be Used to Improve Software Safety? 35 4.2.4 How Should the Intent of Requirements be Specified? 35 4.2.5 How Should Environmental Assumptions be Specified? 36 4.2.6 How Should Human Factors Requirements be Specified? 36 4.3 Certification Issues 36 4.3.1 What is the Relationship of System and Software Requirements? 37 4.3.2 What is the Relationship of Software Requirements and Software Design? 37 4.3.3 What is the Relationship of Software and Hardware Requirements? 38 4.3.4 Should Requirements be Specified Differently in Different Domains? 38 4.3.5 How Should Traceability and Change of Requirements be Managed? 38 4.3.6 How Should Timing Requirements be Specified? 39 4.3.7 What Should the Certification Authorities do Differently? 39 4.3.8 Should Civil Standards for REM be Harmonized With Military Standards? 40 iv 4.4 Model-Based Development Issues 40 4.4.1 What is the Relationship of Systems and Software Requirements in MBD? 41 4.4.2 If Models will be Used as Requirements, How are They to be Validated? 42 4.4.3 What is the Relationship of Software Requirements and Software Design in MBD? 42 4.4.4 Which MBD Modeling Paradigms Should be Used for Which Problem Domains? 44 4.4.5 What Problems for Traceability and Change Management of Requirements are Posed by MBD? 44 4.4.6 What Problems are Posed for REM by the Use of MBD Tools? 45 4.4.7 How Should Intent of Requirements be Specified in MBD? 46 4.4.8 How Should Environmental Assumptions be Specified in MBD? 46 4.4.9 How Should Timing Requirements be Specified in MBD? 46 4.4.10 How Should Human Factors Requirements be Specified in MBD? 46 4.4.11 What Should the Certification Authorities do Differently to Support MBD? 46 4.4.12 How Should Legacy Requirements be Migrated to Support MBD? 47 4.4.13 Can Models be Used as Contracts? 47 4.5 Integrated Modular Avionics Issues 47 4.5.1 How Should Application Requirements be Specified? 48 4.5.2 How Should Platform Services be Specified? 49 4.5.3 How Should Requirements be Specified to Support Incremental Acceptance in Certification? 50 4.5.4 How Should Requirements be Specified to Support Reuse in IMA? 50 4.5.5 Increased Risk of Common Mode and Cascading Failures 51 4.5.6 Specifying and Meeting System Performance Requirements 51 v 4.5.7 Specifying and Meeting Dependencies Between Applications 51 4.5.8 Traceability and Configuration Management 52 4.5.9 What is the Role of the Certification Authorities? 52 4.5.10 Does the REM Process Change in IMA? 52 4.6 Object-Oriented Development Issues 52 4.6.1 What is the Relationship of Safety and Software Requirements in OOD? 53 4.6.2 What is the Relationship of System and Software Requirements in OOD? 53 4.6.3 What is the Relationship of Software Requirements and Software Design in OOD? 53 4.6.4 Which OOD Modeling Paradigms Should be Used in Which Problem Domains? 54 4.6.5 What Problems for Traceability and Change Management of Requirements are Posed by OOD? 54 4.6.6 How Should Intent be Specified in OOD? 55 4.6.7 How Should Environmental Assumptions be Specified in OOD? 55 4.6.8 How Should Timing Requirements be Specified in OOD? 55 4.6.9 How Should Human Factors Requirements be Specified in OOD? 55 4.6.10 How Should Legacy Requirements be Migrated to Support OOD? 55 5. PRIORITIZING THE SAFETY AND CERTIFICATION ISSUES 56 5.1 Summarizing the Industry Survey Issues 56 5.1.1 What is the Relationship of Software Requirements to Software Design? 57 5.1.2 What Problems for Traceability and Configuration Management are Posed by MBD/OOD? 57 5.1.3 What New Problems are Posed for REM by the Use of MBD Tools? 57 5.1.4 If Models are Used as Requirements, How are They to be Validated? 57 vi 5.1.5 How Should Traceability and Configuration Management be Managed? 57 5.1.6 What is the Relationship of System and Software Requirements? 58 5.2 Summarizing the Literature Search Issues 58 5.2.1 Defining the System Boundary 58 5.2.2 Documenting the Environmental Assumptions 58 5.2.3 Providing Intent and Rationale 59 5.2.4 Validation of Requirements 60 5.2.5 Verification of Requirements 60 5.2.6 Managing Change and Complexity 61 5.2.7 Development by Multiple Entities 61 5.2.8 Specifying Requirements for the Human Machine Interface 62 5.3 Prioritizing the Issues 62 6.