1
play

1 Core Capabilities Communications Navigation Automated Flight - PDF document

Proving the Shalls: The Future of Requirements ? Steven P. Miller, Ph.D. Advanced Computing Systems Rockwell Collins 400 Collins Road NE, MS 108-206 Cedar Rapids, Iowa 52498 spmiller@rockwellcollins.com 11/07/2004 Page 1 Who We Are A


  1. Proving the Shalls: The Future of Requirements ? Steven P. Miller, Ph.D. Advanced Computing Systems Rockwell Collins 400 Collins Road NE, MS 108-206 Cedar Rapids, Iowa 52498 spmiller@rockwellcollins.com 11/07/2004 Page 1 Who We Are A World Leader In Aviation Electronics And Airborne/ Mobile Communications Systems For Commercial And Military Applications 11/07/04 Page 2 Portfolio Composition 2002 Sales: $2.5 Billion Government 45% Commercial 55% Integrated Applications IFE Regional Displays Comm Air Business Transport Nav 45% 30% 25% 11/07/04 Page 3 1

  2. Core Capabilities Communications Navigation Automated Flight Control Displays / Surveillance Aviation Services In-Flight Entertainment Integrated Aviation Electronics Information Management Systems 11/07/04 Page 4 Formal Methods at Rockwell Collins Participants in the MCC Formal Methods Transition Study 1991 � Formal Specification of the µReal Time Executive in RAISE 1992 � Formal Specification of the GE1 Graphics Processor 1996 � Formal Verification of Microprocessors 1993 - 2003 � – AAMP5 Microcode Using PVS 1994 – AAMP-FV Microcode Using PVS 1995 – JEM Java Virtual Machine Microprocessor Using PVS 1998 – FCP2002 Microcode Using ACL2 1999 – FCP 2002-2000 Microcode Equivalence Using ACL2 2001 – AAMP7 Security Separation Kernel Using ACL2 2003 Formal Validation of Embedded System Requirements 1995 - 2003 � – FGS Mode Logic using SPC’s CoRE Method 1995 – FGS Mode Logic using NRL’s SCR* Tools 1996 – FGS Mode Logic Using PVS 1997 – FGS Mode Logic Using Matrix-X and T-VEC 1998 – FGS Mode Logic Using RMSL-e, PVS, and NuSMV 2002 – FGS/FMS/AT Logic Using SCADE and Simulink 2004 11/07/04 Page 5 Methods and Tools for Flight Critical Systems Project Five Year Project Started in 2001 � Part of NASA’s Aviation Safety Program � Funded by the NASA Langley Research Center and Rockwell Collins � Heavy Focus on Requirements Validation � University of Minnesota is a Subcontractor to Collins � Modeling Flight Guidance and Flight Management Systems � Working with Commercial Tool Vendors to Ensure Technology Transfer � 11/07/04 Page 6 2

  3. Model-Based Development Life Cycle Reuse Elicitation Modeling Autotest Simulation Autocode Analysis 11/07/04 Page 7 Model-Based Development Examples Company Product Tools Specified & Autocoded Benefits Claimed Airbus A340 SCADE • 70% Fly-by-wire Controls • 20X Reduction in Errors With Code • 70% Automatic Flight Controls • Reduced Time to Market Generator • 50% Display Computer • 40% Warning & Maint Computer • 90 % of Autopilot • 50% Reduction in Cycle Time Eurocopter EC-155/135 SCADE Autopilot With Code Generator GE & FADEDC Engine ADI Beacon • Not Stated • Reduction in Errors Lockheed Controls • 50% Reduction in Cycle Time Martin • Decreased Cost Schneider Nuclear Power SCADE • 200,000 SLOC Auto Generated • 8X Reduction in Errors while Electric Plant Safety With Code from 1,200 Design Views Complexity Increased 4x Control Generator US DCX Rocket MATRIXx • Not Stated • 50-75% Reduction in Cost Spaceware • Reduced Schedule & Risk • 50% SLOC Auto Generated • 60% Reduction in Cycle Time PSA Electrical SCADE Management With Code • 5X Reduction in Errors System Generator CSEE Subway SCADE • 80,000 C SLOC Auto Generated • Improved Productivity from Transport Signaling System With Code 20 to 300 SLOC/day Generator Honeywell Primus Epic MATLAB • 60% Automatic Flight Controls • 5X Increase in Productivity Commercial Flight Control Simulink • No Coding Errors Aviation System • Received FAA Certification Systems 11/07/04 Page 8 Elicitation of Requirements Reuse Elicitation Modeling Autotest Simulation Autocode Analysis 11/07/04 Page 9 3

  4. Capture Requirements as Shalls 11/07/04 Page 10 Modeling Reuse Elicitation Modeling Autotest Simulation Autocode Analysis 11/07/04 Page 11 Sample RSML -e Requirements 11/07/04 Page 12 4

  5. Simulation Reuse Elicitation Modeling Autotest Simulation Autocode Analysis 11/07/04 Page 13 Simulation Demonstration 11/07/04 Page 14 Using Formal Analysis for Early Validation of Requirements Reuse Elicitation Modeling Autotest Simulation Autocode Analysis Requirements Theorem Provers Safety Properties Model Checkers Mode Confusion Properties 11/07/04 Page 15 5

  6. What Are Model Checkers? � Breakthrough Technology of the 1990’s � Widely Used in Hardware Verification (Intel, Motorola, IBM, …) � Conduct an Exhaustive Search of the Global State Space – Consider All Combinations of Inputs and States – Produces a Counter Example if a Property is Not True � Easy to Use – “Push Button” Formal Methods – Very Little Human Effort Unless You Are At the Tool’s Limits � Limitations State Space Explosion (10 20 – 10 300 States) – – Awkward Notation for Specifying Properties (Temporal Logic) 11/07/04 Page 16 Advantage of Model Checking Testing Checks Only the Values We Select Even Small Systems Have Trillions (of Trillions) of Possible Tests! System 11/07/04 Page 17 Advantage of Model Checking Model Checking Tries Every Possible Input and State! Model 11/07/04 Page 18 6

  7. Model Checking Using RSML -e and NuSMV SMV Model Spec. Automatic Model Automatic Translation Translation Abstraction Does the system Counter Example have property X? Automated Check Yes! SMV Automatic Translation SMV Properties Properties Engineer 11/07/04 Page 19 Translated All the Shalls into SMV Properties 11/07/04 Page 20 Only Two Types of Properties Were Needed I. Safety Constraint Over All States AG(Is_This_Side_Active -> (Mode_Annunciations_On <-> (Onside_FD_On | Offside_FD_On = TRUE | Is_AP_Engaged))) II. Constraint Over All States and All Next States AG((!Onside_FD_On & !Is_AP_Engaged)-> AX(Is_AP_Engaged -> Onside_FD_On)) 11/07/04 Page 21 7

  8. Validate Requirements through Model Checking Proved Over 280 Properties in Less Than an Hour � Found Several Errors � Some Were Errors in the Model � Most Were Incorrect Shalls � Revised the Shalls to Improve the Requirements � 11/07/04 Page 22 What are Theorem Provers? � Available Since Late 1980’s – Widely Used on Security and Safety-Critical Systems � Use Rules of Inference to Prove New Properties – Also Consider All Combinations of Inputs and States – Also Equivalent to Testing with an Infinite Set of Test Cases – Generate An Unprovable Proof Obligation if a Property is False � Not Limited by State Space – Applicable to Almost Any Formal Specification � Limitations – Require Experience - About Six Months to Become Proficient – Constructing Proofs is Labor Intensive 11/07/04 Page 23 Theorem Proving Using PVS Model PVS Spec. Automatic Translation Why not? Does the system have property X? Guru Automated Proof PVS Automatic Translation Properties Engineer PVS Properties 11/07/04 Page 24 8

  9. Validate Requirements Using Theorem Proving Proved Several Hundred Properties Using PVS � More Time Consuming that Model-Checking � Use When Model-Checking Won’t Work � 11/07/04 Page 25 Strengths and Weaknesses of Specification Styles Natural Property Constructive Language Based Model Ambiguity Likely Eliminated Eliminated Inconsistency Likely Possible Eliminated Incompleteness Likely Possible Eliminated Implementation Possible Possible Likely Bias Early Life Cycle Late 11/07/04 Page 26 Approach to Requirements Validation Reuse Elicitation Informal Properties Modeling Autotest Constructive Model Simulation Autocode Customer Validation Analysis Formal Validation 11/07/04 Page 27 9

  10. Original Tool Chain RSML -e to NuSMV NuSMV Model Checker Translator RSML -e PVS Theorem Prover RSML -e to PVS Translator Rockwell Collins/U of Minnesota SRI International 11/07/04 Page 28 Current Tool Chain Simulink NuSMV Gateway Simulink SCADE Lustre Lustre PVS Compiler StateFlow Safe State Prover Machines Rockwell Collins Esterel Technologies SRI International MathWorks 11/07/04 Page 29 Future Tool Chain? Simulink NuSMV Gateway Simulink SCADE PVS Lustre Lustre Compiler ACL2 StateFlow Safe State Prover Machines ICS Symbolic Model Checker SAL Rockwell Collins Bounded Esterel Technologies Model Checker SRI International Infinite MathWorks Model Checker 11/07/04 Page 30 10

  11. Conclusions � Model-Based Development is the Industrial Use Formal Specification – Providing the Modeling Language Has Well Defined Formal Semantics � Convergence of Model-Based Development and Formal Verification – Key is to Get Engineers Producing Specifications that Can be Analyzed � Need Several Approaches to Formal Verification – Model-Checking Because it is Simple and Easy to Use – Theorem Proving for When Model Checking isn’t Practical � Constructive Requirements Models are a Useful – Executable, Consistent, and Complete – Autogenerate Code and Test Cases � Shalls are Just Informal Property Based Specifications – Easy Way to Elicit an Informal Description of the Requirements – Validate Constructive Model by Proving the Shalls! 11/07/04 Page 31 11

Recommend


More recommend