Dagstuhl Intro Mike Whalen Mike Whalen • http://www.umsec.umn.edu • • • • My main goal is to reduce software verification and validation (V&V) cost and increasing rigor Applied automated V&V techniques on industrial systems Proofs, bounded analyses, static analysis, automated testing Combining several kinds of assurance artifacts PhD in proofs of translation for synchronous languages [UMN 2005] Worked at Rockwell Collins for 6 ½ years on formal analysis of avionics systems Came back to UMN in December 2009 as Program Director for UM Software Engineering Center Work very closely with Mats Heimdahl, Rockwell Collins folks, and several other collaborators August,2 2011 RE 2011: Mike Whalen 2 Uses of Formal Requirements Level of Scale Requirements Design / Code Test Field Subsystem http://www.umsec.umn.edu Automated proof that design/code satisfies requirements System Automated completeness and consistency checking of requirements Automated test generation from requirements Compositional analysis Static analysis System of Systems 3 Requirementsbased test oracles for unit and integration test runtime monitors to recover from failures at runtime Rockwell Collins Inc. Gryphon Tool Family UMN: simulator, fault seeder, coverage measurement tool, TCG RCI: Information Flow Modeling Simulink Simulink Gateway SCADE http://www.umsec.umn.edu Lustre Reactis StateFlow Simulink Gateway Safe State Machines Model Checkers: NuSMV, Prover, BAT, Kind, SAL Theorem Provers: ACL2, PVS Programming Languages: SPARK (Ada), C Rockwell Collins/U of Minnesota Design Verifier Esterel Technologies MathWorks Reactive Systems M. Whalen, D. Greve, L. Wagner, Model Checking Information Flow, In: Design and Verification of Microprocessor Systems for High-Assurance Applications, D. Hardin, Ed., Springer, March 2010. S. Miller, M. Whalen, D. Cofer, Software Model Checking Takes Off, Communications of the ACM, February 2010 4 D. Hardin, D.R. Johnson, L. Wagner, and M. Whalen. Development of Security Software: A High-Assurance Methodology, ICFEM 2009, Rio de Janeiro, Brazil, December, 2009. ADGS-2100 Adaptive Display & Guidance System Modeled in Simulink Translated to NuSMV 4,295 Subsystems http://www.umsec.umn.edu 16,117 Simulink Blocks Over 1037 Reachable States Example Requirement: Drive the Maximum Number of Display Units Given the Available Graphics Processors Counterexample Found in 5 Seconds Checked 573 Properties Found and Corrected 98 Errors in Early Design Models 5 Architectural design patterns attack system complexity through automated model transformations with guaranteed behaviors Use of formally verified Active/Standby design pattern cut development time by 1/3 and saved hundreds of hours of on-aircraft test time 1.E+07 Active-Standby pattern for fault-tolerant control allows system developers to work at a higher level of abstraction FCS 1.E+06 1.E+05 1.E+04 Avionics System leader transition bounded 1.E+03 1.E+02 1.E+01 http://www.umsec.umn.edu Async 1.E+00 Activestandby (2 nodes) Activestandby (3 nodes) PALS Pair-pair (quad) redundant Pair-pair / Activestandby Pair-pair / TMR FGS_L FGS_R PALS: Physically Asynchronous Logically Synchronous i Leader Select Flight Control System (FCS) i+1 i NODE 1 NODE 1 NODE 2 NODE 2 NODE 3 NODE 3 synchronous communication PALS one node operational Rep i+1 Flight Guidance System (FGS) timing constraints not co-located LEADER SELECT Platform T SYNCHRONOUS NETWORK CLOCK JITTER MODE LOGIC ASYNCHRONOUS BOUNDED DELAY NETWORK WITH PALS Verification reuse through design patterns supports correct-byconstruction system development Rework cost is up to 60% of total development cost for large, complex systems. CONTROL LOGIC Compositional verification exploits natural system hierarchy through formal assume-guarantee reasoning Steven P. Miller, Michael W. Whalen, and Darren D. Cofer. Software Model Checking Takes Off. 6Communications of the ACM, February, 2010. 6 GUARANTEES Avionics System (AADL model) ASSUMPTIONS PALS pattern for virtual synchrony achieves >3 orders of magnitude reduction in state space and verification complexity Contracts between patterns and components Avionics system requirement leader transition bounded Behavior Under single-fault assumption, GC output transient response is bounded in time and magnitude http://www.umsec.umn.edu • Relies upon synchronous communication Guarantees provided by patterns and components Structural properties of model Resource allocation feasibility Probabilistic system-level failure characteristics © Copyright 2011 Rockwell Collins, Inc. All rights reserved. LS 7 one node operational PALS Rep Structure timing constraints not co-located Platform Resource Probabilistic RT sched & latency Error model ASSUMPTIONS GUARANTEES • Avionics System And other stuff… • Test metrics and oracles [ICSE 2008, ICSE 2011, • http://www.umsec.umn.edu • • • FASE 2012] Semantics and analysis of Statecharts [ISSTA 11, NFM 2012] DSL and Analysis for Guard Languages [TACAS 2012] Invariant generation techniques for K-Induction model checkers [NFM 2012] Requirements-based testing [ICFEM 2008, ISSTA 2006] 8
© Copyright 2026 Paperzz