Experience with Rule-Based Analysis of Spacecraft Logs

One of the main challenges facing the software development as well as the hardware communities is that of demonstrating the correctness of built artifacts with respect to separately stated requirements. Runtime verification is a partial solution to this problem, consisting of checking actual execution traces against formalized requirements. A related activity is that of humans attempting to understand (or comprehend) what the system does when it executes, for validation purposes, or for simply operating the system optimally. For example, a key challenge in operating remote spacecraft is that ground operators must rely on the limited visibility available through spacecraft telemetry in order to assess spacecraft health and operational status. In this paper we illustrate the use of the rule-based runtime verification system LogFire for supporting such log comprehension. Specifically, LogFire is used for generating abstract events from the concrete events in logs, followed by a visualization of these abstract events using the D3 visualization framework.

[1]  Howard Barringer,et al.  TraceContract: A Scala DSL for Trace Analysis , 2011, FM.

[2]  Roger Villemaire,et al.  Runtime Enforcement of Web Service Message Contracts with Data , 2012, IEEE Transactions on Services Computing.

[3]  Robert B. Doorenbos Production Matching for Large Learning Systems , 1995 .

[4]  Volker Stolz,et al.  Temporal Assertions using AspectJ , 2006, Electron. Notes Theor. Comput. Sci..

[5]  Klaus Havelund,et al.  Rule-based runtime verification revisited , 2015, International Journal on Software Tools for Technology Transfer.

[6]  Jean Goubault-Larrecq,et al.  A Smell of Orchids , 2008, RV.

[7]  David Luckham,et al.  The power of events - an introduction to complex event processing in distributed enterprise systems , 2002, RuleML.

[8]  Grigore Rosu,et al.  An overview of the MOP runtime verification framework , 2012, International Journal on Software Tools for Technology Transfer.

[9]  Klaus Havelund,et al.  Data Automata in Scala , 2014, 2014 Theoretical Aspects of Software Engineering Conference.

[10]  Klaus Havelund,et al.  Dynamic Deadlock Analysis of Multi-threaded Programs , 2005, Haifa Verification Conference.

[11]  Jeffrey Heer,et al.  SpanningAspectRatioBank Easing FunctionS ArrayIn ColorIn Date Interpolator MatrixInterpola NumObjecPointI Rectang ISchedu Parallel Pause Scheduler Sequen Transition Transitioner Transiti Tween Co DelimGraphMLCon IData JSONCon DataField DataSc Dat DataSource Data DataUtil DirtySprite LineS RectSprite , 2011 .

[12]  Koushik Sen,et al.  Rule-Based Runtime Verification , 2004, VMCAI.

[13]  Martin Leucker,et al.  Monitoring modulo theories , 2016, International Journal on Software Tools for Technology Transfer.

[14]  Charles L. Forgy,et al.  Rete: a fast algorithm for the many pattern/many object pattern match problem , 1991 .

[15]  Ondrej Lhoták,et al.  Adding trace matching with free variables to AspectJ , 2005, OOPSLA '05.

[16]  Koushik Sen,et al.  Program monitoring with LTL in EAGLE , 2004, 18th International Parallel and Distributed Processing Symposium, 2004. Proceedings..

[17]  Klaus Havelund,et al.  Monitoring with Data Automata , 2014, ISoLA.

[18]  Klaus Havelund,et al.  Comprehension of Spacecraft Telemetry Using Hierarchical Specifications of Behavior , 2014, ICFEM.

[19]  Anna Philippou,et al.  Tools and Algorithms for the Construction and Analysis of Systems , 2018, Lecture Notes in Computer Science.

[20]  Jeffrey Heer,et al.  D³ Data-Driven Documents , 2011, IEEE Transactions on Visualization and Computer Graphics.

[21]  HeerJeffrey,et al.  D3 Data-Driven Documents , 2011 .

[22]  Eric Bodden MOPBox: A Library Approach to Runtime Verification - (Tool Demonstration) , 2011, RV.

[23]  Howard Barringer,et al.  Quantified Event Automata: Towards Expressive and Efficient Runtime Monitors , 2012, FM.

[24]  Felix Klaedtke,et al.  Policy Monitoring in First-Order Temporal Logic , 2010, CAV.

[25]  Howard Barringer,et al.  Rule Systems for Run-time Monitoring: from Eagle to RuleR , 2010, J. Log. Comput..

[26]  Jan-Christoph Küster,et al.  From Propositional to First-Order Monitoring , 2013, RV.

[27]  Howard Barringer,et al.  Checking Flight Rules with TraceContract: Application of a Scala DSL for Trace Analysis , 2011 .