Template Orchestration with Unibright
Unibright offers templates for different blockchain related business processes. Every template can be customized to the user’s needs, and results in automatically generated code for any blockchain protocol and in automatic integration to off-chain systems. In this post, we want to show the potential of different templates working together.
Our online demo of our Unibright Framework shows a Multi-Party-Approval process. You can visually define all steps and participants that need to give their approval to an approval process as detailed or multi-leveled as you wish:
To show an example on how orchestration of templates can solve much more complex tasks, let’s take a look at two other templates we offer and how they can be combined.
The Milestone Payment template
A milestone payment business case defines certain milestones to be met so that a payment is initiated. It contains of control parameters like dates, pre-filled wallets, destination and target wallet addresses and amounts to be paid.
Now as it is quite straightforward to think of a milestone payment process that just relies on a specific date to pass (“you pay me 1/2 of the total amount now, the other 1/2 of the total amount by the end of June”); however it is likely to be more complicated to decide if a milestone is met or not. For example, milestones in a software development process could include certain criteria on what the software should deliver at what point in time, in what state it is in (beta? release-candidate? productive) or what revenue it creates.
With the orchestration (thus combination) of the milestone payment template and the multi-party-approval template, the participants can take the outcome (final result) of a specific approval process to be the criteria if a certain milestone is met:
In the example above we see a milestone payment process. It has three milestones, and works in “percentage mode”, meaning, a portion of a predefined and prefilled overall amount of a cryptocurrency is paid out to predefined wallets upon reaching a certain milestone. 20% by the end of June, another 30% in Milestone 2 and the remaining 50% in Milestone 3. Each milestone contains the definition of the target address and the criteria which have to be met to consider the milestone reached.
Basic criterias (like in Milestone 1, the passing of a certain date) can be modeled in the template directly. Milestone 2 and 3 show references to “external approvals”, which are pointers to pre-defined multi-party-approval processes. Only if these referenced approval processes have a final state of “Approved”, the related milestone is considered reached.
This makes the complete process easier to understand, maintain and reuse. It enables cross-chain functionality (imagine one approval process running in EOS, the other one in Hyperledger and the orchestrating milestone payment in Ethereum). It is also possible to make certain states dependent on off-chain events (like a status change in a connected ERP system) or the status of a decentralized oracle (e.g. provided by services like Chainlink).
The voting template
If the approving parties of a multi-party-approval process are “more than just multi”, you need further options on decision making. Our voting template creates voting processes enabling hundreds and thousands of participants to decide on a question. It features whitelist concepts (“who is allowed to vote”), voting constraints (e.g. start and end of a vote, number of votes per participant, …), and different majority finding alternatives (absolute majority, relative majority, run-offs, and many more).
The outcome of such a vote could be orchestrated to represent ONE single approval in a multi-party approval process, which then leads to a final approval or rejection of a milestone payment process.
Again, it is interesting to imagine that all these partial processes take place on different chains or different off-chain systems. It is integration that makes all these processes work together that they really unfold their potential!
Unibright offers a unified framework, bringing blockchain technology and smart contracts to mainstream usage. With its “no-coding-needed” approach, smart contracts get generated, deployed and updated automatically into different blockchains. Unibright works with visual, usecase-related templates and also automatically integrates existing IT systems into the blockchain.
Unibright Solutions, a dedicated consulting branch to support blockchain use in business processes, was additionally launched in December 2018.