Test-driven Process Modeling for Smart Contract Specification
Decentralized business process execution (decentralized BPX) receives increasing interest in academia and industry. For example, decentralized BPX is expected to facilitate efficient supply chain management. In the context of decentralized BPX, blockchain technologies are frequently suggested as feasible solutions and employed in early prototypes to execute business processes as smart contracts (or: chain code). However, as has been highlighted by previous research, the decentralized nature of smart contracts aggravates problems in regards to the inflexibility of cross-organizational business processes; it is of utmost importance that a smart contract works according to the agreed-upon business requirements. Consequently, it makes sense to design software tools that allow for the test-driven specification of smart contracts through a business user- and business process-oriented interface; this ensures that in enterprise scenarios, smart contracts, when deployed in production environments, indeed fulfill the requirements as stipulated by business stakeholders.
This thesis aims at developing a tool chain for test-driven, process-oriented smart contract design; i.e., the thesis strives to answer the following research questions:
- How can a business-user friendly tool chain that allows for the test-driven design of business processes models that are tested and deployed as smart contracts (chain code) be designed?
- How can such a tool chain be implemented, with the blockchain environments Ethereum and Hyperledger as target execution ecosystems?
- What are the challenges and opportunities in the context of moving such a prototype tool chain into a practical application context?
- How can novel machine learning techniques be applied to facilitate the business process-oriented monitoring and analysis of smart contract instances (process analysis step of the business process management life cycle?
The objective of this master thesis is to find an approach or a combination of approaches to solve the previously mentioned problem and research questions in the context of smart contracts and process modelling. This particularly includes the state of the art regarding smart contracts, blockchain and process modelling. The demonstration of feasibility with an implementation prototype of the concept is part of this thesis as well as a suitable evaluation with exemplary and empirical use cases.