Abstract
There has been much recent interest in the development of electronic voting (e-voting) systems, but there remain many outstanding research challenges for software and system engineers. Software product line (SPL) techniques offer many advantages for the practical development of reliable and trustworthy e-voting systems, but the composition of system features poses significant problems that can be addressed satisfactorily only through the use of formal methods. When such systems are used in government elections, then they are obliged to follow legal standards and/or recommendations written in natural language. For the formal development of e-voting systems, it is necessary to build a domain model which is consistent with the legal requirements. We have already demonstrated that Event-B models can be used to verify critical requirements for e-voting system components. However, the refinement-based approach needs to be applied to the engineering of a complete e-voting system. We report on our approach, using Event-B contexts to model an e-voting ontology, and its integration with an e-voting features model tree which formally specifies the SPL. During this work, we identified the importance of making the implicit explicit in two different ways—domain experts need to explicitly model implicit knowledge, and Event-B modellers need to explicitly communicate the semantics of the formal model constructs to the domain experts. If either of these tasks is not adequately carried out, then this compromises validation of the requirements model (instance of the SPL).
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
References
Y. Ait-Ameur, J.P. Gibson, D. Méry, On implicit and explicit semantics: integration issues in proof-based development of systems, in Leveraging Applications of Formal Methods, Verification and Validation. Specialized Techniques and Applications. Lecture Notes in Computer Science, vol. 8803, ed. by T. Margaria, B. Steffen (Springer, Berlin, Heidelberg, 2014), pp. 604–618
A. Ait Wakrime, J.P. Gibson, J.-L. Raffy, Formalising the requirements of an e-voting software product line using event-B, in 27th International Conference on Enabling Technologies: Infrastructure for Collaborative Enterprises, Paris, France, June 2018 (IEEE, 2018), pp. 78–84
B.B. Bederson, B. Lee, R.M. Sherman, P.S. Herrnson, R.G. Niemi, Electronic voting system usability issues, in Proceedings of the SIGCHI Conference on Human Factors in Computing Systems (ACM, 2003), pp. 145–152
J.-P. Bodeveix, M. Filali, J. Lawall, G. Muller, Formal methods meet domain specific languages, in Integrated Formal Methods (Springer, 2005), pp. 187–206
D. Cansell, J.P. Gibson, D. Méry, Formal verification of tamper-evident storage for e-voting, in SEFM (IEEE Computer Society, 2007), pp. 329–338
D. Cansell, J.P. Gibson, D. Méry, Refinement: a constructive approach to formal software design for a secure e-voting interface. Electr. Notes Theor. Comput. Sci. 183, 39–55 (2007)
C.-L. Chen, Y.-Y. Chen, J.-K. Jan, C.-C. Chen, A secure anonymous e-voting system based on discrete logarithm problem. Appl. Math. Inf. Sci. 8(5), 2571 (2014)
J. Clark, U. Hengartner, Selections: internet voting with over-the-shoulder coercion-resistance, in Financial Cryptography, vol. 7035 (Springer, 2011), pp. 47–61
D. Cochran, J.R. Kiniry, Formal model-based validation for tally systems, in International Conference on E-Voting and Identity (Springer, 2013), pp. 41–60
S. Falkner, P. Kieseberg, D.E. Simos, C. Traxler, E. Weippl, E-voting authentication with qr-codes, in International Conference on Human Aspects of Information Security, Privacy, and Trust (Springer, 2014), pp. 149–159
D. Fensel, Ontologies (Springer, 2001)
J.P. Gibson, S. Kherroubi, D. Méry, Applying a dependency mechanism for voting protocol models using event-B, in Formal Techniques for Distributed Objects, Components, and Systems - 37th IFIP WG 6.1 International Conference, FORTE 2017, Held as Part of the 12th International Federated Conference on Distributed Computing Techniques, DisCoTec 2017, Neuchâtel, Switzerland, June 19-22, 2017, Proceedings, ed. by A. Bouajjani, A. Silva. Lecture Notes in Computer Science, vol. 10321 (Springer, 2017), pp. 124–138
J.P. Gibson, R. Krimmer, V. Teague, J. Pomares, A review of e-voting: the past, present and future. Ann. Telecommun. 71(7), 279–286 (2016)
J.P. Gibson, E. Lallet, J.-L. Raffy, Feature interactions in a software product line for e-voting, in Feature Interactions in Software and Communication Systems X, ed. by Nakamura and Reiff-Marganiec. Lisbon, Portugal, June 2009 (IOS Press, 2009), pp. 91–106
J.P. Gibson, E. Lallet, J.-L. Raffy, Engineering a distributed e-voting system architecture: meeting critical requirements, in Architecting Critical Systems, First International Symposium, ISARCS 2010, Prague, Czech Republic, June 23-25, 2010, Proceedings, ed. by H. Giese. Lecture Notes in Computer Science, vol. 6150 (Springer, 2010), pp. 89–108
J.P. Gibson, E. Lallet, J.-L. Raffy, Formal object oriented development of a voting system test oracle. Innov. Syst. Softw. Eng. (Spec. issue UML-FM11) 7(4), 237–245 (2011)
J.P. Gibson, D. MacNamara, K. Oakley, Just like paper and the 3-colour protocol: a voting interface requirements engineering case study, in Proceedings of 2011 International Workshop on Requirements Engineering for Electronic RE-Vote 2011, Trento, Italy, August 2011 (IEEE, 2011), pp. 66–75
J.P. Gibson, M. McGaley, Verification and maintenance of e-voting systems and standards, in 8th European Conference on e-Government, ed. by D. Remenyi. Lausanne, Switzerland, July 2008 (Academic Publishing International, 2008), pp. 283–289
G.S. Grewal, M.D. Ryan, L. Chen, M.R. Clarkson, Du-vote: remote electronic voting with untrusted computers, in Computer Security Foundations Symposium (CSF), 2015 IEEE 28th (IEEE, 2015), pp. 155–169
D. Gritzalis, Principles and requirements for a secure e-voting system. Comput. Secur. 21(6), 539–556 (2002)
T.R. Gruber, Toward principles for the design of ontologies used for knowledge sharing? Int. J. Hum. Comput. Stud. 43(5-6), 907–928 (1995)
J.A. Halderman, Practical attacks on real-world e-voting. Real-World Electronic Voting: Design, Analysis and Deployment (2016), pp. 145–171
G. Hamilton, J.P. Gibson, D. Méry, Composing fair objects, in International Conference on Software Engineering Applied to Networking and Parallel/Distributed Computing (SNPD ’00), ed. by Fouchal and Lee. Reims, France, May (2000), pp. 225–233
D. Jefferson, A.D. Rubin, B. Simons, D. Wagner, Analyzing internet voting security. Commun. ACM 47(10), 59–64 (2004)
R. Joaquim, P. Ferreira, C. Ribeiro, Eviv: an end-to-end verifiable internet voting system. Comput. Secur. 32, 170–191 (2013)
T. Kohno, A. Stubblefield, A.D. Rubin, D.S. Wallach, Analysis of an electronic voting system, in IEEE Symposium on Security and Privacy (S&P04) (IEEE, 2004), pp. 27–40
R. Krimmer, M. Volkamer, Bits or paper? comparing remote electronic voting to postal voting, in EGOV (Workshops and Posters) (2005), pp. 225–232
T.W. Lauer, The risk of e-voting. Electron. J. E-Gov. 2(3), 177–186 (2004)
H.J. Levesque, A logic of implicit and explicit belief, in AAAI, ed. by R.J. Brachman (AAAI Press, 1984), pp. 198–202
M. Lindeman, P.B. Stark, A gentle introduction to risk-limiting audits. IEEE Secur. Priv. (5), 42–49 (2012)
D. MacNamara, J.P. Gibson, K. Oakley, A preliminary study on a dualvote and prltvoter hybrid system, in International Conference for E-Democracy and Open Government 2012, Danube University Krems, Austria, May (2012), pp. 77–89. Edition Donau-Universitt Krems
M. McGaley, J.P. Gibson, E-Voting: A Safety Critical System. Technical Report NUIM-CS-TR-2003-02, NUI Maynooth, Computer Science Department (2003)
M. McGaley, J.P. Gibson, A critical analysis of the council of Europe recommendations on e-voting, in EVT’06: Proceedings of the USENIX/Accurate Electronic Voting Technology Workshop 2006 on Electronic Voting Technology Workshop, Berkeley, CA, USA (2006), pp. 1–13. USENIX Association
B. Meng, A secure non-interactive deniable authentication protocol with strong deniability based on discrete logarithm problem and its application on internet voting protocol. Inf. Technol. J. 8(3), 302–309 (2009)
R. Mercuri, A better ballot box? IEEE Spectr. 39(10), 46–50 (2002)
M. Mernik, J. Heering, A.M. Sloane, When and how to develop domain-specific languages. ACM Comput. Surv. (CSUR) 37(4), 316–344 (2005)
P.G. Neumann, Security criteria for electronic voting, in 16th National Computer Security Conference, vol. 29 (1993)
A.-M. Oostveen, Outsourcing democracy: losing control of e-voting in the Netherlands. Policy Internet 2(4), 201–220 (2010)
J. Pomares, I. Levin, R.M. Alvarez, G.L. Mirau, T. Ovejero, From piloting to roll-out: voting experience and trust in the first full e-election in Argentina, in 2014 6th International Conference on Electronic Voting: Verifying the Vote (EVOTE) (IEEE, 2014), pp. 1–10
T. Rhodes, F. Boland, E. Fong, M. Kass, Software assurance using structured assurance case models. J. Res. Nat. Inst. Stand. Technol. 115(3), 209 (2010)
D. Springall, T. Finkenauer, Z. Durumeric, J. Kitcat, H. Hursti, M. MacAlpine, J.A. Halderman, Security analysis of the Estonian internet voting system, in Proceedings of the 2014 ACM SIGSAC Conference on Computer and Communications Security (ACM, 2014), pp. 703–715
M. Uschold, Where are the semantics in the semantic web? AI Mag. 24, 25–36 (2003)
A. Van Deursen, P. Klint, Domain-specific language design requires feature descriptions. CIT. J. Comput. Inf. Technol. 10(1), 1–17 (2002)
A. Van Deursen, P. Klint, J. Visser, Domain-specific languages: an annotated bibliography. ACM Sigplan Not. 35(6), 26–36 (2000)
A. van Lamsweerde, L. Willemet, Inferring declarative requirements specifications from operational scenarios. IEEE Trans. Softw. Eng. 24, 1089–1114 (1998)
Venice Commission, Code of good practice in electoral matters. CDL-AD 23, 2002 (2002)
A. Villafiorita, K. Weldemariam, R. Tiella, Development, formal verification, and evaluation of an e-voting system with VVPAT. Trans. Info. For. Sec. 4(4), 651–661 (2009)
T. Walter, J. Ebert, Combining DSLS and ontologies using metamodel integration, in DSL (Springer, 2009), pp. 148–169
J. White, J.A. Galindo, T. Saxena, B. Dougherty, D. Benavides, D.C. Schmidt, Evolving feature model configurations in software product lines. J. Syst. Softw. 87, 119–136 (2014)
X. Zou, H. Li, F. Li, W. Peng, Y. Sui, Transparent, auditable, and stepwise verifiable online e-voting enabling an open and fair election. Cryptography 1(2), 13 (2017)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2021 Springer Nature Singapore Pte Ltd.
About this chapter
Cite this chapter
Gibson, J.P., Raffy, JL. (2021). Modelling an E-Voting Domain for the Formal Development of a Software Product Line: When the Implicit Should Be Made Explicit. In: Ait-Ameur, Y., Nakajima, S., Méry, D. (eds) Implicit and Explicit Semantics Integration in Proof-Based Developments of Discrete Systems. Springer, Singapore. https://doi.org/10.1007/978-981-15-5054-6_1
Download citation
DOI: https://doi.org/10.1007/978-981-15-5054-6_1
Published:
Publisher Name: Springer, Singapore
Print ISBN: 978-981-15-5053-9
Online ISBN: 978-981-15-5054-6
eBook Packages: Computer ScienceComputer Science (R0)