Digital resources of customers are typically stored on the infrastructures provided or utilized by the businesses or organizations that offer those resources and these digital resources are often fully managed and controlled by these businesses/organizations. This arrangement puts customers in a vulnerable position, as they do not have true ownership over their resources. Tokenizing these resources, which involves leveraging blockchain technology and smart contracts to store the resources, could mitigate this issue.
Using blockchains instead of centralized infrastructures, would provide customers with true ownership over their resources (so that they effectively own their resources, can decide how their resources are used without the need for approval from the issuing organization(s)/business(es), and have the flexibility to consume/exchange resources across different organizations/businesses). While this clearly benefits customers, this approach could also be advantageous for the businesses and organizations issuing digital resources, as it could offer new business opportunities (e.g., new collaborations between businesses), and reduce infrastructure setup and maintenance and developer costs. They can also use these technologies to setup systems that enforce compliance with rules or agreements between businesses/organizations without centralized governance. However, implementing such solutions requires businesses/organizations to possess extensive IT and blockchain expertise, which may involve hiring blockchain developers – a barrier that is often too significant to overcome for small organizations. Therefore, we aimed for simplifying such a tokenization process, particularly for organizations with little to no IT knowledge.
To investigate how to assist businesses and organizations with developing blockchain-based services for the exchange of resources without the need for deep IT/blockchain knowledge, first existing systems for resource exchange and their development were explored. We found that existing systems have limitations as they require coding skills, focus on specific use cases which limits their applicability, or consist of complex graphical tools resulting in a steep learning curve. Therefore, our objective was to provide a software framework, effectively but easily supporting the setup of resource exchange applications for a wide variety of use cases and scenarios. The framework, designed and implemented, allows people to setup blockchain-based resource exchange systems, generally within 30 minutes, based on specifications that they provide through an intuitive user interface. To use the framework, little to no IT and blockchain knowledge is required. The specifications that need to be given include defining the participants, resources, and permissions involved in the use case. Moreover, rules can be specified to comply with governance using simple if-then statements. This allows people to specify the conditions that need to be fulfilled for automatic transactions, which involves the exchange of digital resources, to be carried out by the system.
Four use cases are provided to demonstrate the potential of the framework. To show that the implemented framework is indeed usable by the intended target audience, i.e., business-type people without or with limited IT or blockchain knowledge, we evaluated the software using user studies, which include two formative and one final, summative evaluation. Based on the results of the evaluations, we can conclude that the software is indeed usable by people from the target audience. Furthermore, the participants of the evaluations perceived the software framework as concise, simple, and having the expressiveness to support a diverse range of use cases. This indicates that the software can be utilized by a multitude of organizations, businesses, and institutions for different use cases in the context of the manual and automatic exchange of digital resources.
In addition, the framework was built with extensibility in mind, which entails that it can be extended by developers, for example to support more blockchains or smart contract languages.