Static specification analysis for termination of specification-based data structure repair

We have developed a system that accepts a specification of key data structure consistency constraints, then dynamically detects and repairs violations of these constraints. It is possible to write specifications that are not satisfiable or that for other reasons may cause the repair process to not terminate. We present a static specification analysis that determines whether the repair process terminates for a given specification.

[1]  Beverly D. Sanford,et al.  CENTER/TRACON AUTOMATION SYSTEM: DEVELOPMENT AND EVALUATION IN THE FIELD , 1993 .

[2]  Letizia Tanca,et al.  Automatic generation of production rules for integrity maintenance , 1994, TODS.

[3]  Martin Rinard,et al.  Automatic detection and repair of errors in data structures , 2003, OOPSLA 2003.

[4]  Daniel Jackson,et al.  Alloy: a lightweight object modelling notation , 2002, TSEM.

[5]  Jeffrey Voas,et al.  Software Fault Injection , 1998 .

[6]  Edsger W. Dijkstra,et al.  Self-stabilizing systems in spite of distributed control , 1974, CACM.

[7]  R. D. Royer,et al.  The 5ESS switching system: Maintenance capabilities , 1985, AT&T Technical Journal.

[8]  Wolfgang Emmerich,et al.  Consistency management with repair actions , 2003, 25th International Conference on Software Engineering, 2003. Proceedings..

[9]  Sorin Lerner,et al.  ESP: path-sensitive program verification in polynomial time , 2002, PLDI '02.

[10]  James C. Corbett,et al.  Bandera: extracting finite-state models from Java source code , 2000, ICSE.

[11]  Beverly D. Sanford,et al.  DEVELOPMENT AND EVALUATION IN THE FIELD , 1993 .

[12]  Samiha Mourad,et al.  On the Reliability of the IBM MVS/XA Operating System , 1987, IEEE Transactions on Software Engineering.

[13]  Jennifer Widom,et al.  Deriving Production Rules for Constraint Maintainance , 1990, VLDB.

[14]  Jong-Deok Choi,et al.  Efficient and precise datarace detection for multithreaded object-oriented programs , 2002, PLDI '02.

[15]  Berny Goodheart,et al.  The magic garden explained - the internals of UNIX System V, release 4: an open systems design , 1994 .

[16]  Dawson R. Engler,et al.  A system and language for building system-specific, static analyses , 2002, PLDI '02.

[17]  ChoiJong-Deok,et al.  Efficient and precise datarace detection for multithreaded object-oriented programs , 2002 .

[18]  George Candea,et al.  Recursive restartability: turning the reboot sledgehammer into a scalpel , 2001, Proceedings Eighth Workshop on Hot Topics in Operating Systems.

[19]  Noah Treuhaft,et al.  Recovery Oriented Computing (ROC): Motivation, Definition, Techniques, and Case Studies , 2002 .

[20]  David M. Weiss,et al.  Auditdraw: generating audits the FAST way , 1997, Proceedings of ISRE '97: 3rd IEEE International Symposium on Requirements Engineering.

[21]  J. Christopher Ramming,et al.  Two Application languages in software production , 1994 .

[22]  Peter M. Broadwell,et al.  FIG: A Prototype Tool for Online Verification of Recovery Mechanisms , 2002 .

[23]  Andreas Reuter,et al.  Transaction Processing: Concepts and Techniques , 1992 .

[24]  Lois M. L. Delcambre,et al.  Constraint Analysis: A Design Process for Specifying Operations on Objects , 1990, IEEE Trans. Knowl. Data Eng..

[25]  Edsger W. Dijkstra,et al.  Self stabilization in spite of distributed control , 1974 .