Reducing the Gap between Verification Models and Software Development Models

A variety of models and notations are available to support the software developers. Such models help to gather requirements and to build a system implementing these requirements. However, it is often neglected to verify that the requirements are actually fulfilled in the design and implementation. The increasing demand for compliancy to requirements (e.g. due to laws) together with the increasing system complexity re-attracts notice to automatic verification technologies for that purpose. The low user-friendliness and, thus, the low applicability of the verification technologies often prevents their employment. In this paper we aim at closing the gap between software development models with their rich notation and semantics (e.g. Event Process Chains, EPCs) on the one hand and verification-oriented models (typically just simple structures like finite state automata) on the other hand. This is approached by extending the verification model in a controlled manner towards more semantics resulting in our extended Kripke structure. To profit from such a semantic extension we, in addition, extend the temporal logic language CTL. Our new temporal logic language allows to express the expected requirements more precisely.

[1]  Ekkart Kindler,et al.  ESTL: A Temporal Logic for Events and States , 1998, ICATPN.

[2]  Rocco De Nicola,et al.  An Action-Based Framework for Verifying Logical and Behavioural Properties of Concurrent Systems , 1993, Comput. Networks ISDN Syst..

[3]  Colin Stirling,et al.  Modal Logics and mu-Calculi: An Introduction , 2001, Handbook of Process Algebra.

[4]  James Coplien,et al.  Reevaluating the architectural metaphor: Toward piecemeal growth , 1999, IEEE Software.

[5]  George S. Avrunin,et al.  Patterns in property specifications for finite-state verification , 1999, Proceedings of the 1999 International Conference on Software Engineering (IEEE Cat. No.99CB37002).

[6]  Gerard J. Holzmann,et al.  The Model Checker SPIN , 1997, IEEE Trans. Software Eng..

[7]  Helmut Veith,et al.  25 Years of Model Checking - History, Achievements, Perspectives , 2008, 25 Years of Model Checking.

[8]  Marwane El Kharbili,et al.  A Semantic Framework for Compliance Management in Business Process Management , 2009, BPSC.

[9]  Dimitra Giannakopoulou,et al.  Fluent model checking for event-based systems , 2003, ESEC/FSE-11.

[10]  Edmund M. Clarke,et al.  Model Checking , 1999, Handbook of Automated Reasoning.

[11]  Joël Ouaknine,et al.  State/Event-Based Software Model Checking , 2004, IFM.

[12]  Dexter Kozen,et al.  RESULTS ON THE PROPOSITIONAL’p-CALCULUS , 2001 .

[13]  Arie van Deursen,et al.  Domain-specific languages: an annotated bibliography , 2000, SIGP.

[14]  Y. Crama,et al.  Basel II and Operational Risk: Implications for Risk Measurement and Management in the Financial Sector , 2004 .

[15]  Sven Feja,et al.  Model Checking with Graphical Validation Rules , 2008, 15th Annual IEEE International Conference and Workshop on the Engineering of Computer Based Systems (ecbs 2008).

[16]  Elke Pulvermüller,et al.  A concept and implementation of higher-level XML transformation languages , 2009, Knowl. Based Syst..

[17]  Matthew B. Dwyer,et al.  Using the Bandera Tool Set to Model-Check Properties of Concurrent Java Software , 2001, CONCUR.

[18]  Andreas Podelski,et al.  ACSAR: Software Model Checking with Transfinite Refinement , 2007, SPIN.

[19]  Marsha Chechik,et al.  Multi-valued symbolic model-checking , 2003, TSEM.