Specifying and verifying requirements for election processes

In this paper we outline an approach for modeling election processes and then performing rigorous analysis to verify that these process models meet selected behavioral requirements. We briey outline some high-level requirements that an election process must satisfy and demonstrate how these are refined into a collection of lower-level properties that can be used as the basis for verification. We present a motivating example of an election process modeled using the Little-JIL process definition language, capture the lower-level properties using the PROPEL property elicitation tool, and perform formal analysis to verify that the process model adheres to these properties using the FLAVERS finite-state verifier. We illustrate how this approach can identify errors in the process model when a property is violated.

[1]  George S. Avrunin,et al.  Process Programming to Support Medical Safety: A Case Study on Blood Transfusion , 2005, ISPW.

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

[3]  William F. Gilreath,et al.  Concurrency State Models and Java Programs , 2000, Parallel Distributed Comput. Pract..

[4]  Bertram Ludäscher,et al.  Kepler: an extensible system for design and execution of scientific workflows , 2004, Proceedings. 16th International Conference on Scientific and Statistical Database Management, 2004..

[5]  Peter G. Neumann,et al.  Verification for Electronic Balloting Systems , 2003, Secure Electronic Voting.

[6]  Patrick Valduriez,et al.  Distributed and parallel database systems , 1996, CSUR.

[7]  Lori A. Clarke,et al.  Flow analysis for verifying properties of concurrent software systems , 2004, TSEM.

[8]  Costas Lambrinoudakis,et al.  Secure Electronic Voting: the Current Landscape , 2003 .

[9]  Roy G. Saltman Public Confidence and Auditability in Voting Systems , 2003, Secure Electronic Voting.

[10]  Ethan Katz-Bassett,et al.  Increasing patient safety and efficiency in transfusion therapy using formal process definitions. , 2007, Transfusion medicine reviews.

[11]  Amit P. Sheth,et al.  An overview of workflow management: From process modeling to workflow automation infrastructure , 1995, Distributed and Parallel Databases.

[12]  Borislava I. Simidchieva,et al.  Representing Process Variation with a Process Family , 2007, ICSP.

[13]  George S. Avrunin,et al.  PROPEL: an approach supporting property elucidation , 2002, ICSE '02.

[14]  Dimitris Gritzalis,et al.  Secure Electronic Voting , 2003, Advances in Information Security.

[15]  Gerald Quirchmayr,et al.  Electronic Voting: Constitutional and Legal Requirements, and Their Technical Implications , 2003, Secure Electronic Voting.

[16]  George S. Avrunin,et al.  Using integer programming to verify general safety and liveness properties , 1995, Formal Methods Syst. Des..

[17]  Lori A. Clarke,et al.  Process Technology to Facilitate the Conduct of Science , 2005, ISPW.

[18]  Bin Chen,et al.  Definition and Analysis of Election Processes , 2006, SPW/ProSim.

[19]  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).