{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,7,17]],"date-time":"2026-07-17T15:01:11Z","timestamp":1784300471246,"version":"3.55.0"},"publisher-location":"Cham","reference-count":52,"publisher":"Springer Nature Switzerland","isbn-type":[{"value":"9783031471148","type":"print"},{"value":"9783031471155","type":"electronic"}],"license":[{"start":{"date-parts":[[2023,1,1]],"date-time":"2023-01-01T00:00:00Z","timestamp":1672531200000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/www.springernature.com\/gp\/researchers\/text-and-data-mining"},{"start":{"date-parts":[[2023,1,1]],"date-time":"2023-01-01T00:00:00Z","timestamp":1672531200000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.springernature.com\/gp\/researchers\/text-and-data-mining"}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2023]]},"DOI":"10.1007\/978-3-031-47115-5_7","type":"book-chapter","created":{"date-parts":[[2023,10,30]],"date-time":"2023-10-30T15:04:38Z","timestamp":1698678278000},"page":"106-125","update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":7,"title":["Capturing Smart Contract Design with\u00a0DCR Graphs"],"prefix":"10.1007","author":[{"ORCID":"https:\/\/orcid.org\/0000-0002-0069-0588","authenticated-orcid":false,"given":"Mojtaba","family":"Eshghie","sequence":"first","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-5671-2555","authenticated-orcid":false,"given":"Wolfgang","family":"Ahrendt","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-3656-1614","authenticated-orcid":false,"given":"Cyrille","family":"Artho","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-7435-5563","authenticated-orcid":false,"given":"Thomas Troels","family":"Hildebrandt","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"ORCID":"https:\/\/orcid.org\/0000-0003-0629-6853","authenticated-orcid":false,"given":"Gerardo","family":"Schneider","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]}],"member":"297","published-online":{"date-parts":[[2023,10,31]]},"reference":[{"key":"7_CR1","unstructured":"A decentralized escape hatch for DAOs. https:\/\/hackingdistributed.com\/2016\/07\/11\/decentralized-escape-hatches-for-smart-contracts\/. Accessed 29 Aug 2023"},{"key":"7_CR2","unstructured":"Implement escape hatch mechanism contracts $$\\cdot $$ Issue #1 $$\\cdot $$ OpenZeppelin\/openzeppelin-contracts. https:\/\/github.com\/OpenZeppelin\/openzeppelin-contracts\/issues\/1. Accessed 29 Aug 2023"},{"key":"7_CR3","unstructured":"The Maker Protocol White Paper \u2014 Feb (2020). https:\/\/makerdao.com\/en. Accessed 29 Aug 2023"},{"key":"7_CR4","unstructured":"SWC-105 - Smart Contract Weakness Classification (SWC). https:\/\/swcregistry.io\/docs\/SWC-105\/. Accessed 01 Sept 2023"},{"key":"7_CR5","unstructured":"SWC-106 - Smart Contract Weakness Classification (SWC). https:\/\/swcregistry.io\/docs\/SWC-106\/. Accessed 01 Sept 2023"},{"key":"7_CR6","unstructured":"SWC-114 - Smart Contract Weakness Classification (SWC). https:\/\/swcregistry.io\/docs\/SWC-114\/. Accessed 01 Sept 2023"},{"key":"7_CR7","unstructured":"SWC-116 - Smart Contract Weakness Classification (SWC). https:\/\/swcregistry.io\/docs\/SWC-116\/#time_locksol. Accessed 01 Sept 2023"},{"key":"7_CR8","unstructured":"Synthetixio\/synthetix: Synthetix Solidity smart contracts. https:\/\/github.com\/Synthetixio\/synthetix. Accessed 29 Aug 2023"},{"key":"7_CR9","unstructured":"Timestamp Dependence - Ethereum Smart Contract Best Practices. https:\/\/consensys.github.io\/smart-contract-best-practices\/development-recommendations\/solidity-specific\/timestamp-dependence\/#avoid-using-blocknumber-as-a-timestamp. Accessed 01 Sept 2023"},{"key":"7_CR10","unstructured":"Aragon OSx Protocol (2023). https:\/\/github.com\/aragon\/osx. Accessed 29 Aug 2023"},{"key":"7_CR11","unstructured":"Aragon\/aragon-court: Aragon (2023). Accessed 29 Aug 2023"},{"key":"7_CR12","unstructured":"Augur (2023). https:\/\/github.com\/AugurProject\/augur. Accessed 29 Aug 2023"},{"key":"7_CR13","unstructured":"Chainbridge-solidity (2023). https:\/\/github.com\/ChainSafe\/chainbridge-solidity. Accessed 29 Aug 2023"},{"key":"7_CR14","unstructured":"Compound Protocol: Compound (2023). Accessed 29 Aug 2023"},{"key":"7_CR15","unstructured":"Ethereum development documentation (2023). https:\/\/ethereum.org\/en\/developers\/docs\/. Accessed 29 Aug 2023"},{"key":"7_CR16","unstructured":"Smartcontractkit\/chainlink (2023). https:\/\/github.com\/smartcontractkit\/chainlink. Accessed 29 Aug 2023"},{"key":"7_CR17","unstructured":"Solidity documentation (2023). https:\/\/docs.soliditylang.org\/en\/latest\/. Accessed 29 Aug 2023"},{"key":"7_CR18","doi-asserted-by":"publisher","unstructured":"Bansal, K., Koskinen, E., Tripp, O.: Automatic generation of precise and useful commutativity conditions. In: Beyer, D., Huisman, M. (eds.) Tools and Algorithms for the Construction and Analysis of Systems, pp. 115\u2013132. Lecture Notes in Computer Science, Springer International Publishing, Cham (2018). https:\/\/doi.org\/10.1007\/978-3-319-89960-2_7","DOI":"10.1007\/978-3-319-89960-2_7"},{"key":"7_CR19","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"494","DOI":"10.1007\/978-3-319-70278-0_31","volume-title":"Financial Cryptography and Data Security","author":"M Bartoletti","year":"2017","unstructured":"Bartoletti, M., Pompianu, L.: An empirical analysis of smart contracts: platforms, applications, and design patterns. In: Brenner, M., et al. (eds.) FC 2017. LNCS, vol. 10323, pp. 494\u2013509. Springer, Cham (2017). https:\/\/doi.org\/10.1007\/978-3-319-70278-0_31"},{"issue":"2","key":"7_CR20","doi-asserted-by":"publisher","first-page":"1","DOI":"10.1145\/3381036","volume":"20","author":"T Chen","year":"2020","unstructured":"Chen, T., et al.: Understanding Ethereum via graph analysis. ACM TOIT 20(2), 1\u201332 (2020)","journal-title":"ACM TOIT"},{"key":"7_CR21","unstructured":"Compound: Compound v2 Governance. https:\/\/docs.compound.finance\/v2\/governance\/. Accessed 29 Aug 2023"},{"key":"7_CR22","unstructured":"Consensys: ethereum smart contract best practices (2023). https:\/\/consensys.github.io\/smart-contract-best-practices\/development-recommendations\/precautions\/. Accessed 29 Aug 2023"},{"key":"7_CR23","doi-asserted-by":"crossref","unstructured":"Dickerson, T., Gazzillo, P., Herlihy, M., Koskinen, E.: Adding concurrency to smart contracts. In: PODC, pp. 303\u2013312. ACM (2017)","DOI":"10.1145\/3087801.3087835"},{"key":"7_CR24","doi-asserted-by":"publisher","unstructured":"Ellul, J., Pace, G.J.: Runtime verification of ethereum smart contracts. In: 2018 14th European Dependable Computing Conference (EDCC). IEEE (2018). https:\/\/doi.org\/10.1109\/EDCC.2018.00036","DOI":"10.1109\/EDCC.2018.00036"},{"key":"7_CR25","unstructured":"Eshghie, M.: A comprehensive collection of DCR graph model of business process-level (contract-level) design patterns in smart contracts (Aug 2023). https:\/\/github.com\/mojtaba-eshghie\/SmartContractDesignPatternsInDCRGraphs. Accessed 29 Aug 2023"},{"key":"7_CR26","unstructured":"Eshghie, M.: mojtaba-eshghie\/CLawK (2023). https:\/\/github.com\/mojtaba-eshghie\/CLawK\/blob\/925bf9c9afe344c763963e0e40098c66420d1d6a\/server\/monitor\/contracts\/source\/Casino.sol. Accessed 29 Aug 2023"},{"key":"7_CR27","doi-asserted-by":"publisher","unstructured":"Eshghie, M., Ahrendt, W., Artho, C., Hildebrandt, T.T., Schneider, G.: CLawK: Monitoring Business Processes in Smart Contracts (2023). https:\/\/doi.org\/10.48550\/arXiv.2305.08254. Accessed 29 Aug 2023","DOI":"10.48550\/arXiv.2305.08254"},{"key":"7_CR28","doi-asserted-by":"crossref","unstructured":"Eshghie, M., Artho, C., Gurov, D.: Dynamic vulnerability detection on smart contracts using machine learning. In: EASE 2021, pp. 305\u2013312. ACM (2021)","DOI":"10.1145\/3463274.3463348"},{"key":"7_CR29","unstructured":"etherscan.io: HOLDIT \u2014 Etherscan. http:\/\/etherscan.io\/address\/0x24021d38DB53A938446eCB0a31B1267764d9d63D. Accessed 29 Aug 2023"},{"key":"7_CR30","unstructured":"Fravoll: Solidity Patterns (2023). https:\/\/fravoll.github.io\/solidity-patterns\/. Accessed 29 Aug 2023"},{"key":"7_CR31","unstructured":"Gamma, E., Helm, R., Johnson, R., Johnson, R.E., Vlissides, J.: Design patterns: elements of reusable object-oriented software. Pearson Deutschland GmbH (1995)"},{"key":"7_CR32","doi-asserted-by":"publisher","unstructured":"Gao, J., Liu, H., Liu, C., Li, Q., Guan, Z., Chen, Z.: EASYFLOW: keep ethereum away from overflow. In: 2019 IEEE\/ACM 41st International Conference on Software Engineering: Companion Proceedings (ICSE-Companion), pp. 23\u201326 (2019). https:\/\/doi.org\/10.1109\/ICSE-Companion.2019.00029, ISSN: 2574-1934","DOI":"10.1109\/ICSE-Companion.2019.00029"},{"key":"7_CR33","unstructured":"giveth.io: common-contract-deps (2021). https:\/\/github.com\/Giveth\/common-contract-deps\/blob\/094d36028eab30444314395016817735e57e9d77\/contracts\/Escapable.sol. Accessed 29 Aug 2023"},{"key":"7_CR34","doi-asserted-by":"publisher","unstructured":"Grossman, S., Abraham, I., Golan-Gueta, G., Michalevsky, Y., Rinetzky, N., Sagiv, M., Zohar, Y.: Online detection of effectively callback free objects with applications to smart contracts (2018). https:\/\/doi.org\/10.48550\/arXiv.1801.04032","DOI":"10.48550\/arXiv.1801.04032"},{"key":"7_CR35","unstructured":"Guth, F., W\u00fcstholz, V., Christakis, M., M\u00fcller, P.: Specification mining for smart contracts with automatic abstraction tuning. arXiv:1807.07822 (2018)"},{"key":"7_CR36","unstructured":"Explained: The Akutars NFT Incident (2022) - Halborn Blockchain Security Firm: Ethical Hackers, Infosec & Pen Tests. https:\/\/halborn.com\/blog\/post\/explained-the-akutars-nft-incident-april-2022. Accessed 29 Aug 2023"},{"key":"7_CR37","doi-asserted-by":"publisher","unstructured":"Hildebrandt, T.T., Mukkamala, R.R.: Declarative event-based workflow as distributed dynamic condition response graphs. In: Honda, K., Mycroft, A. (eds.) Proceedings Third Workshop on Programming Language Approaches to Concurrency and communication-cEntric Software, PLACES 2010, Paphos, Cyprus, 21st March 2010. EPTCS, vol. 69, pp. 59\u201373 (2010). https:\/\/doi.org\/10.4204\/EPTCS.69.5","DOI":"10.4204\/EPTCS.69.5"},{"key":"7_CR38","series-title":"Lecture Notes in Business Information Processing","doi-asserted-by":"publisher","first-page":"362","DOI":"10.1007\/978-3-030-94343-1_28","volume-title":"Business Process Management Workshops","author":"TT Hildebrandt","year":"2022","unstructured":"Hildebrandt, T.T., Normann, H., Marquard, M., Debois, S., Slaats, T.: Decision modelling in\u00a0timed dynamic condition response graphs with\u00a0data. In: Marrella, A., Weber, B. (eds.) BPM 2021. LNBIP, vol. 436, pp. 362\u2013374. Springer, Cham (2022). https:\/\/doi.org\/10.1007\/978-3-030-94343-1_28"},{"key":"7_CR39","doi-asserted-by":"crossref","unstructured":"Liu, Y., Li, Y., Lin, S.W., Artho, C.: Finding permission bugs in smart contracts with role mining. In: SIGSOFT ISSTA 2022, pp. 716\u2013727. ACM (2022)","DOI":"10.1145\/3533767.3534372"},{"key":"7_CR40","doi-asserted-by":"crossref","unstructured":"Liu, Y., Lu, Q., Zhu, L., Paik, H.Y., Staples, M.: A systematic literature review on blockchain governance. J. Syst. Softw. 197 (2023)","DOI":"10.1016\/j.jss.2022.111576"},{"key":"7_CR41","doi-asserted-by":"publisher","unstructured":"Ma, F., Fu, Y., Ren, M., Wang, M., Jiang, Y., Zhang, K., Li, H., Shi, X.: EVM: from offline detection to online reinforcement for ethereum virtual machine. In: 2019 IEEE 26th International Conference on Software Analysis, Evolution and Reengineering (SANER), pp. 554\u2013558 (2019). https:\/\/doi.org\/10.1109\/SANER.2019.8668038, ISSN: 1534-5351","DOI":"10.1109\/SANER.2019.8668038"},{"key":"7_CR42","doi-asserted-by":"crossref","unstructured":"Marchesi, L., Marchesi, M., Destefanis, G., Barabino, G., Tigano, D.: Design patterns for gas optimization in Ethereum. In: IEEE IWBOSE, pp. 9\u201315 (2020)","DOI":"10.1109\/IWBOSE50093.2020.9050163"},{"key":"7_CR43","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"161","DOI":"10.1007\/978-3-030-85469-0_12","volume-title":"Business Process Management","author":"H Normann","year":"2021","unstructured":"Normann, H., Debois, S., Slaats, T., Hildebrandt, T.T.: Zoom and Enhance: action refinement via subprocesses in timed declarative processes. In: Polyvyanyy, A., Wynn, M.T., Van Looy, A., Reichert, M. (eds.) BPM 2021. LNCS, vol. 12875, pp. 161\u2013178. Springer, Cham (2021). https:\/\/doi.org\/10.1007\/978-3-030-85469-0_12"},{"key":"7_CR44","doi-asserted-by":"crossref","unstructured":"Nute, D.: Handbook of logic in artificial intelligence and logic programming, vol. 3, chap. Defeasible Logic. Clarendon Press, Oxford University Press (1994)","DOI":"10.1093\/oso\/9780198537472.003.0007"},{"key":"7_CR45","unstructured":"OpenZeppelin: OpenZeppelin Contracts. https:\/\/github.com\/OpenZeppelin\/openzeppelin-contracts. Accessed 29 Aug 2023"},{"key":"7_CR46","doi-asserted-by":"crossref","unstructured":"Sandhu, R.S.: Role-based access control. In: Advances in Computers, vol. 46, pp. 237\u2013286. Elsevier (1998)","DOI":"10.1016\/S0065-2458(08)60206-5"},{"key":"7_CR47","doi-asserted-by":"crossref","unstructured":"Sergey, I., Hobor, A.: A concurrent perspective on smart contracts (2017). http:\/\/arxiv.org\/abs\/1702.05511","DOI":"10.1007\/978-3-319-70278-0_30"},{"key":"7_CR48","unstructured":"Solidstate: SolidState Solidity (2023). https:\/\/github.com\/solidstate-network\/solidstate-solidity\/blob\/de7c9545ac015f42a03aa3a678000ec1ec4c14a4\/contracts\/access\/access_control\/AccessControl.sol. Accessed 29 Aug 2023"},{"issue":"03","key":"7_CR49","doi-asserted-by":"publisher","first-page":"1795","DOI":"10.1109\/TDSC.2020.3037332","volume":"19","author":"H Wang","year":"2022","unstructured":"Wang, H., et al.: Oracle-supported dynamic exploit generation for smart contracts. IEEE Trans. Dependable Secure Comput. 19(03), 1795\u20131809 (2022)","journal-title":"IEEE Trans. Dependable Secure Comput."},{"key":"7_CR50","doi-asserted-by":"crossref","unstructured":"Wohrer, M., Zdun, U.: Smart contracts: security patterns in the Ethereum ecosystem and solidity. In: IEEE IWBOSE, pp. 2\u20138 (2018)","DOI":"10.1109\/IWBOSE.2018.8327565"},{"key":"7_CR51","first-page":"1","volume":"151","author":"G Wood","year":"2014","unstructured":"Wood, G.: Ethereum: a secure decentralised generalised transaction ledger. Ethereum Project Yellow Paper 151, 1\u201332 (2014)","journal-title":"Ethereum Project Yellow Paper"},{"key":"7_CR52","doi-asserted-by":"crossref","unstructured":"W\u00f6hrer, M., Zdun, U.: Design patterns for smart contracts in the Ethereum ecosystem. In: iThings\/GreenCom\/CPSCom\/SmartData, pp. 1513\u20131520 (2018)","DOI":"10.1109\/Cybermatics_2018.2018.00255"}],"container-title":["Lecture Notes in Computer Science","Software Engineering and Formal Methods"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-031-47115-5_7","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2023,12,24]],"date-time":"2023-12-24T23:01:10Z","timestamp":1703458870000},"score":1,"resource":{"primary":{"URL":"https:\/\/link.springer.com\/10.1007\/978-3-031-47115-5_7"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2023]]},"ISBN":["9783031471148","9783031471155"],"references-count":52,"URL":"https:\/\/doi.org\/10.1007\/978-3-031-47115-5_7","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"value":"0302-9743","type":"print"},{"value":"1611-3349","type":"electronic"}],"subject":[],"published":{"date-parts":[[2023]]},"assertion":[{"value":"31 October 2023","order":1,"name":"first_online","label":"First Online","group":{"name":"ChapterHistory","label":"Chapter History"}},{"value":"SEFM","order":1,"name":"conference_acronym","label":"Conference Acronym","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"International Conference on Software Engineering and Formal Methods","order":2,"name":"conference_name","label":"Conference Name","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Eindhoven","order":3,"name":"conference_city","label":"Conference City","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"The Netherlands","order":4,"name":"conference_country","label":"Conference Country","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"2023","order":5,"name":"conference_year","label":"Conference Year","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"6 November 2023","order":7,"name":"conference_start_date","label":"Conference Start Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"10 November 2023","order":8,"name":"conference_end_date","label":"Conference End Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"21","order":9,"name":"conference_number","label":"Conference Number","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"sefm2023","order":10,"name":"conference_id","label":"Conference ID","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"https:\/\/sefm-conference.github.io\/2023\/","order":11,"name":"conference_url","label":"Conference URL","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Single-blind","order":1,"name":"type","label":"Type","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"easychair","order":2,"name":"conference_management_system","label":"Conference Management System","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"41","order":3,"name":"number_of_submissions_sent_for_review","label":"Number of Submissions Sent for Review","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"19","order":4,"name":"number_of_full_papers_accepted","label":"Number of Full Papers Accepted","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"0","order":5,"name":"number_of_short_papers_accepted","label":"Number of Short Papers Accepted","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"46% - The value is computed by the equation \"Number of Full Papers Accepted \/ Number of Submissions Sent for Review * 100\" and then rounded to a whole number.","order":6,"name":"acceptance_rate_of_full_papers","label":"Acceptance Rate of Full Papers","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"3","order":7,"name":"average_number_of_reviews_per_paper","label":"Average Number of Reviews per Paper","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"4,5","order":8,"name":"average_number_of_papers_per_reviewer","label":"Average Number of Papers per Reviewer","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"Yes","order":9,"name":"external_reviewers_involved","label":"External Reviewers Involved","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}}]}}