Quantifying the Cost of Distrust: Comparing Blockchain and Cloud Services for Business Process Execution
Blockchain is of rising importance as a technology for engineering applications in cross-organizational settings, avoiding reliance on central trusted third-parties. The use of blockchain, instead of traditional databases or services, is an architectural choice in the development of a software system. Architecture impacts the non-functional qualities of systems, creating design trade-offs between these qualities. The costs of execution and storage are important non-functional qualities, but as yet little is known about them for blockchain-based systems. How expensive is it to use blockchains compared to conventional execution and storage infrastructure? We investigate this question using business process execution as a lens. Specifically, we compare the cost for computation and storage of business process execution on blockchain vs. a popular cloud service. Besides monetary cost, blockchains like Ethereum limit the complexity of new blocks by capping costs through network-defined limits. For applications using such blockchains, the limit per block, thus, translates into an upper bound on throughput scalability. First, we implement and measure the cost of business process execution on blockchain and cloud services for a business process model from a large-scale industrial dataset and an example from literature. We observe two orders of magnitude difference in this cost. Second, we illustrate how cost models can be used to project the impact of different workload assumptions. Finally, we discuss throughput scalability limits as well as trade-offs between cost and other non-functional qualities in the design of blockchain-based systems.
KeywordsBlockchain Cloud Business process Design Cost
- Bass, L., Clements, P., Kazman, R. (2012). Software architecture in practice, 3rd edn. Boston: Addison-Wesley Professional.Google Scholar
- Clements, P., Kazman, R., Klein, M. (2002). Evaluating software architectures: Methods and case studies. Boston: Addison-Wesley.Google Scholar
- DeCovny, S. (2015). Chips off the old blockchain. CFA Institute Magazine Nov/Dec.Google Scholar
- García-Bañuelos, L., Ponomarev, A., Dumas, M., Weber, I. (2017). Optimized execution of business processes on blockchain. In International Conference on Business Process Management (BPM), pp 130–146.Google Scholar
- Iosup, A., Yigitbasi, N., Epema, D. (2011). On the performance variability of production cloud services. In IEEE/ACM International Symposium on Cluster, Cloud and Grid Computing (CCGrid), pp 104–113.Google Scholar
- Kazman, R., Asundi, J., Klien, M. (2002). Making architecture design decisions: an economic approach. Tech. rep., CMU/SEI.Google Scholar
- Mainelli, M., Smith, M., et al. (2015). Sharing ledgers for sharing economies: an exploration of mutual distributed ledgers (aka blockchain technology). The Journal of Financial Perspectives, 3(3), 38–69.Google Scholar
- Nakamoto, S. (2008). Bitcoin: A peer-to-peer electronic cash system. https://bitcoin.org/bitcoin.pdf, accessed 25-July-2016.
- Norta, A. (2015). Creation of smart-contracting collaborations for decentralized autonomous organizations. In International Conference on Business Informatics Research, pp 3–17.Google Scholar
- Norta, A. (2016). Establishing distributed governance infrastructures for enacting cross-organization collaborations. In Service-Oriented Computing – ICSOC Workshops, pp 24–35.Google Scholar
- Object Management Group. (2010). BPMN 2.0 by Example. www.omg.org/spec/BPMN/20100601/10-06-02.pdf, v1.0. Accessed 10/3/2016.
- Rimba, P., Tran, A.B., Weber, I., Staples, M., Ponomarev, A., Xu, X. (2017). Comparing blockchain and cloud services for business process execution. In IEEE international conference on software architecture.Google Scholar
- Singer, G., Livenson, I., Dumas, M., Srirama, S.N., Norbisrath, U. (2010). Towards a model for cloud computing cost estimation with reserved instances. In International conference on cloud computing.Google Scholar
- Swan, M. (2015). Blockchain: Blueprint for a new economy. Farnham: O’Reilly.Google Scholar
- Tschorsch, F., & Scheuermann, B. (2015). Bitcoin and beyond: A, technical survey on decentralized digital currencies. IACR Cryptology ePrint Archive, 2015, 464.Google Scholar
- Weber, I., Rogge-Solti, A., Li, C., Mendling, J. (2015). CCaas: Online conformance checking as a service. In International conference on business process management (BPM), Demo Track (pp. 45–49).Google Scholar
- Weber, I., Xu, X., Riveret, R., Governatori, G., Ponomarev, A., Mendling, J. (2016). Untrusted business process monitoring and execution using blockchain. In International conference on business process management (BPM).Google Scholar
- Wood, G. (2016). Ethereum: a secure decentralized generalised transaction ledger — homestead draft. Tech. rep., Ethereum and Ethcore.Google Scholar
- Xu, X., Pautasso, C., Zhu, L., Gramoli, V., Ponomarev, A., Tran, A.B., Chen, S. (2016). The blockchain as a software connector. In Working IEEE/IFIP conference on software architecture (WICSA).Google Scholar