Low-code Smart Contracts for the Enterprise with Unibright and Daml

by Stefan Schmidt, CTO, Unibright

Blockchain is uniquely positioned to bridge silos. Especially in an enterprise landscape where not only external but internal organizational boundaries must be bridged. The biggest effect is the creation of a logical golden source while also allowing all participants to mutualize their business processes. This implies that reconciliations between applications can be eliminated, and compliance to regulations and audit can be improved tremendously. 

The Unibright Framework allows for business processes to be modeled as smart contracts and integrations with enterprise systems such as ERP (e.g. SAP). In this post we will outline how Daml, an open source smart contract language originally created by Digital Asset, can be used to achieve this objective. Daml is the latest addition to the Unibright Framework in addition to Solidity (on Ethereum), and being purpose built for distributed systems offers unique benefits by several built in properties we will outline later in this blog. 

To illustrate the integration, the process we chose to model with the Unibright Framework is around inventory management and fulfilment. As we will show that this process requires both internal, as well as multi-enterprise decision making. 

Background

When we evaluated the integration of the Unibright framework with Daml, we observed that Daml solves three big challenges with traditional blockchain application development:

  1. Enable multi-party workflows not only across, but within enterprises, with built in privacy and rights & obligations management.

  2. Enable golden source of data across participating entities (applications or organizations) while maintaining strict privacy between participants as needed.

  3. Improves productivity, avoids vendor lock-in, and reduces time to market by abstracting ledger complexities and enabling ledger selection only when the use case has been been proven.

These are also Unibright’s raison-d’etre. So in this blog post, we’ll outline what we mean by the above challenges and how the Unibright - Daml integration is solving them.

Mapping the Unibright Framework to Daml

As we planned out the integration, we looked at the Unibright Framework components and analyzed the best-fit areas while mapping them to the needs being expressed by clients. We found that any business process progresses through a series of business rules that are then orchestrated to create competitive differentiation, viz. just like in a game of chess. And just like an application of any technology is made better by providing user friendly tooling, we decided to focus on the three key benefits Unibright positions to clients - ease of use, ease of deployment and ease of management. 

The Unibright modeler allows for WYSIWYG creation of business processes that can be operationalized. The modeler then automatically generates the right Daml smart contracts for the workflows as defined.  Daml, by providing native constructs for data types such as parties, the fact that no party can be put into an obligable position without their consent, and by ensuring contract visibility and privacy at a sub-transaction level, provides powerful capabilities to define multi-party workflows that work out of the box. This makes the Unibright modeler integration very powerful because users and developers do not have to look under the hood to understand and define these intricacies. It also makes the integration very scalable and amenable to change. Smart contract templates are used by Unibright modeler to create out-of-the-box instances of processes that enterprises needed.

Second, a key goal of Unibright is to help clients harmonize their business processes. With its integration with Daml, Unibright modeler can now be used to define a business process that runs across multiple business applications of an enterprise (e.g. SAP, procurement, inventory, ecommerce etc). This implies that the same Daml workflow now underpins the entire business process without requiring multiple data silos. This has not been easily possible before. We’ll cover this in detail in the next section too.

Unibright templates were created to provide ledger independence to clients - select a template and the rest of the work is done for you. And now by integrating Daml with the Unibright framework, we take that experience to the next level. Each template has the capability to run on multiple ledgers (to use across enterprises) and even databases (to use across applications within an enterprise). More importantly, we can select the underlying blockchain ledger or databases after we have evangelized the prototype to all parties, and verified all of our hypotheses on privacy, regulatory and compliance reporting, and most importantly the business case. Once a Daml model is selected with Unibright, you can proceed all the way to prototyping out of the box! And then when you’re ready to move to production, the right ledger or database can be selected to deploy both across and within your enterprise.

Finally, our vision is to improve business productivity. The Unibright modeler and templates are a means to that end. Daml further abstracts away all of the ledger level complexity such as contract privacy, cryptography etc. to its runtime, so the generated code is several times shorter, and much cleaner. This allows for rapid maintenance and enhancement of functionality and feature set. The goals of agile development are also realized because both business and technology can work together more effectively.      

Illustrative Use Case on Inventory Management 

Consider a purchase process in SAP for new inventory. The details of that order must flow after approvals into the inventory management system - frequently a third party product - where this potential inventory is mapped to demand information. The purchase order is sent through various mechanisms - sometimes 3rd party procurement systems - to the suppliers, who might have their own complex value chains to be able to service the order, or provide a quote. When an order has been fulfilled, the inventory management system must again be updated so that demand orders can now be mapped to the available inventory thus triggering shipment and other processes. Upon consumption of this inventory, the information must again flow back to the ERP, so that financial records can be updated, and the payment processes can occur.

Traditionally, this complex business process has been met by data feeds to various systems and offline order updates from suppliers and other third parties. Even if managed through APIs, each participating entity must maintain its own data store and constantly match it to that maintained by the other party. As a result, businesses must deal with latencies at every stage, while also having to perform constant checks and balances to ensure that the view of information is consistent across the many islands of data. 

Using Daml smart contracts and Unibright, this business process can be set up to execute external tasks such as receiving invoices and status of shipments, while also extending the same Daml workflow for internal steps such as invoice verification and payment generation. As a result, each entity - internal or external - can operate off a golden version of information. This is a powerful capability that has the promise to bridge data silos and usher in an era of massive operational efficiency and agility.

Target Use Cases

Given Unibright’s market focus and where we see Daml going for non-finance specific use cases, and at the risk of narrowing our focus too much, we think the following use cases will see traction in the short term:

  1. Supply chain: Track and trace remains a popular topic for new entrants because of the traditional thought process of treating the blockchain as a database. However with the kind of workflow focus that Daml offers, we believe that the days of creating a responsive supply chain are upon us now. This includes complex problems like demand-supply matching, procurement linked to business operations, as well as proactive inventory management and flexible shipping to maximize revenue realization. The Unibright templates and our ERP expertise (especially SAP) can be joined together to achieve these transformation goals.

  2. Tokenization: Almost everything needs a way to be moved digitally. We are used to traditional tokenization of assets, but think of a home mortgage that moves between bank providers. Today, the process is costly, complex and error prone with data migrations, customer service issues and so on. With Unirbright and Daml, this can be accomplished effectively and rapidly because all we need to do is to provide the right consents to a Daml workflow, enabled by Unibright of course!

Current Development Status (November 2019)

For anyone looking to deploy production grade applications using smart contracts and blockchain, enterprise technology integration remains by far as one of the biggest improvement areas. 

We demonstrated the integration of Daml with the Unibright framework through a live demo at Synchronize Europe in June, an event hosted by Digital Asset. Since then we have been working to refine the integration and workflows. Daml has taken over some of the heavy lifting that the framework traditionally performed because it runs itself on multiple ledgers. We are now looking to get started with an end to end use case with a customers interested in tokenization (real estate) as well as supply chain (CPG).

Wondering how you can help out? We are always looking to make new connections. If you know anyone working with a CPG or Retailer who would like to explore the use of blockchain for their supply chain, we’d love for you to make an introduction for us!


Learn more about Unibright and Daml at unibright.io