Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Project Keywords:  #decentralizedworkflows #decentralizedprocesses #decentralizedgovernance #datadrivenchaincode #hyperledgerfabric #hyperledgeraries

Project Members

Name

Role

Technical Lead

  2. Dr. Atefeh Mashatan

Project Advisor

  3. Volod Tanczak

Lead Developer

  4. Aleksej Zabijakin

Developer

  5. Dawson Brown

Blockchain Developer

  6. Matthew Bush

Developer

  7. Annegret Henninger

Research and Documentation

  8. Tamim Rahman

Developer

  9. Saleh Al-Sailani

Developer

 10. Manpreet Rajpal

UI Developer

 11. Adam McLennanProduct Manager
 12. Andrew LeProduct Manager
 13. Taimoor AhmadDeveloper

Project Description (no more than 1,000 words including graphics)

...

  • Test templates - templates used to test system functionality
  • Common governance - templates that provide options for common governance patterns

Problem

a. Describe the problem

Blockchain smart contracts and the decentralized systems built on them are very good at handling atomic transactions.  Where they do not provide support is in developing a workflow with a series of transactions.  A workflow needs to progress over a set of steps using rules that determine if you can change steps and to which step.  In centralized systems, this is not a problem.  You code up each step as a call and your user interface enforces the order.  In a decentralized system, you can't stop people from making the calls out of order, or force them to provide a user interface that imposes the order. 

b. Explain why existing solutions are inadequate

Existing implementations or investigations into decentralized workflows take a different approach than we have outlined here.  They are coming from existing ideas on how to manage data and services in a centralized system.  There are three approaches that we are seeing:

  1. Decentralized data access control: using a centralized interface over decentralized data to provide data orchestration between parties.  This is only partially decentralized and has no governance mechanism.
  2. Decentralized workflows using microservices: using microservices as building blocks to build up processes instead of monolithic code.  This is not decentralization in the same way that blockchain provides decentralization.
  3. Decentralized workflows using edge computing: using edge devices and services to build up workflows.  This is similar to the microservices approach but with edge services.

c. Describe the competitive landscape

There are no direct competing projects in the blockchain decentralized workflow space.  However there are other projects that have helped inform our work.

  1. Business Process Modeling Language (BPML): a way to codify business processes for visual inspection and code creation.  https://en.wikipedia.org/wiki/Business_Process_Modeling_Language
  2. Satori Decentralized Data Access Workflows: a decentralized approach to data orchestration. https://satoricyber.com/decentralized-data-access-workflows/
  3. Example Academic papers:  https://www.sciencedirect.com/science/article/pii/S1389128621005363?via%3Dihub  https://ieeexplore.ieee.org/document/8397424

Solution

a. Describe the solution

To provide decentralized workflows, we need four things.  

...

Our proposed solution uses a state machine to represent the workflow.  The state machine will be stored as a template in JSON notation.  The JSON data will be stored as immutable state data in a Hyperledger Fabric document.  The system will use chaincode to read the template, interpret the current state and user role, and render the display objects to pass to the user.  The display objects will be in a JSON format and will be treated as display content without stipulating a display layout.  The resulting layout, for users, is up to the systems that the various software architects design when integrating to the workflow.  The control over changes to the workflow templates will be enforced by decentralized governance.  The decentralized governance will use the system's workflow templates to debate and authorize changes to all templates, including the governance templates.  In effect, the governance is bootstrapped using the workflow templates.  We will integrate verifiable credentials using Hyperledger Aries and Hyperledger Indy to ensure that onboarded users are eligible for the roles they are assigned.

b. Explain why your solution is better than current state-of-the-art or existing solutions

In this solution, we enable workflows that can be represented visually.  Visual representation allows for deeper engagement in understanding the workflow automation by the governance members.  No programming skills will be required to interpret and modify workflows.  It allows each participating organization in the workflow to integrate it into their own user interfaces, and it provides a tightly bound governance workflow that controls the workflows being governed. 

Our system is built on the ideal of full decentralization.  Once a decentralized governance organization selects our system and forks and sets up the open-source code, they are no longer reliant on us.  There is no central point of failure.  All control happens through the decentralized workflows of the decentralized governance organization.  No other projects have adopted this approach, probably since this is first time decentralized blockchain workflows have been available for it to work.

c. Define the minimum viable product and what you anticipate will be developed during the prototype phase

A completed system will provide:A completed system will provide:

  • Workflow template examples
  • A visual editor for creating and modifying templates
  • Chaincode to interpret and enforce the workflow templates
  • Sample rendering modules that can be used for various popular platforms for web and mobile development
  • Several sets of governance templates based on common governance models that can be used as the starting point for any new decentralized workflow system.
  • Ability to use verifiable credentials to ensure that people, organizations or devices match the roles that they would like to engage in the workflow.

...

  • Workflow template examples
  • A visual editor for creating and modifying templates
  • Javascript engine to interpret and enforce the workflow templates
  • Sample rendering modules for React.js and React Native.

Accomplishment and Team

a. Brag about your team

Dave McKay is the Technical Lead at the Cybersecurity Research Lab (CRL) at Ryerson University. Lab. He brings 35 years of software development management to his role with CRL. He is the lead on all development and technical aspects of the research project. Additionally, he is a professor for the Blockchain Development Program at George Brown College. He has held several Fractional CTO positions for companies in the blockchain and healthcare sectors. Dave has made contributions to the technology and adoption of Self-sovereign Identity systems. He is the Co-chair of the Innovation Experts Committee of the Digital Identity and Authentication Council of Canada (DIACC) and sits on the Technology Stack Working Group and the Utility Foundry Working Group of the Trust Over IP Foundation (ToIP). Dave is a reviewer for the CIO Strategy Council of Canada and reviews and comments on specifications surrounding healthcare, identity, and verifiable credentials.

Dr. Atefeh (Atty) Mashatan is the founder and director of the Cybersecurity Research Lab (CRL) at Ryerson University and recognized as a leading expert in cryptography, blockchain technology, quantum-resistant solutions, enterprise security architecture and Internet-of-Things (IoT) security. Professor Mashatan is holding a Canada Research Chair (Tier II) in Quality of Security (QoS) Framework for Internet-of-Things (IoT). She will address new threats that have arisen with the widespread adoption of IoT, create new security systems for these networks, and recommend best practices for users, technical audiences and policy-makers. Mashatan’s expertise at the frontlines of the global cybersecurity field was recognized by SC Magazine in 2019, when she was named one of the top five Women of Influence in Security. She was recognized as one of Canada’s Top 19 of 2019 Tech Titans at IBM CASCON Evoke conference for her efforts in developing emerging technological solutions to address timely societal needs. In 2020, she received the Enterprise Blockchain Award in the category of New Frontiers in Blockchain Academic Research by Blockchain Research Institute for developing the Mosaïque Digital Wallet, which is a fully decentralized identity management system for business environments. Most recently, she received the recognition of Top Women in Cybersecurity in Canada for her efforts in advancing cybersecurity research and training highly qualified personnel in the field. Dr. Mashatan has an Erdős Number of 2! This is the best a researcher can achieve since 1996 when Paul Erdős passed away.

b. Identify talent/resource gaps and needs (Do you need more support developing the blockchain solution? Do you need support with front end development? Do you need support developing the business model?)

To fully realize the potential of this project, we will need to bring on subject matter experts who have designed workflows and organizational processes for industries that are suitable for blockchain solutions.  This could be real estate, insurance, finance, supply chain, or trade.

Project Plan

a. Define the goals for prototype and launch phases and a one-year goal

Phase

Goal

Description

Prototype

Template format

A defined JSON data structure that will hold the workflow, state, role, transition, state data, and display object definitions


Instance data format

A defined JSON data structure that will hold instance and language specific data


Template parser

A Node.js parser that translates the template and instance data for a specific state, role, and  instance into display objects.


Basic display objects

A basic set of display objects including: header, title, text, body, list, action button, image, notification.


Display render Node.js/React.js

A simple module to interact with a workflow instance and render display objects in a React.js web application.


Test templates

A set of templates and associated instance data to test out display objects and transition logic,

Launch

Visual template builder

A browser-based visual editor for creating workflows that are translated into JSON structures.


Blockchain parser

Move the parser from Node.js to Hyperledger Fabric chaincode


React Native render

A simple module to interact with a workflow instance and render display objects in a React Native mobile application.


Governance templates

A set of templates for a simple governance workflow to act as a starting point to the decentralized governance of new workflows


More display objects

Addition of unforeseen display objects that are required to implement the governance templates

One-year

Three governance template sets

Three different governance models, represented in sets of workflow templates, that can be used to start a decentralized governance organization


Two industry workflow sets

Two industry use cases with a set of templates that encompass decentralized governed decentralized workflows


SSI for role verification

Integrate Hyperledger Aries to handle decentralized role verification

b. Provide a high level plan to meet your goals

Our goals are based on the dependencies within this technological approach.  We need the templates before we can parse them, we need to parse before we can render.  We will build simple templates to start and add new capabilities as our use cases demand them.  As the templates become more complicated, we will introduce a visual editor to manage them.  The visual editor will allow for non-developers to be able to contribute directly to the development of the system. The visual editor will be integrated directly to the template governance workflow.

Every part of this system is integrated to the others and the dependencies become the strength of this self-reflective system.  To meet our goals, we have set a critical path that gets us to the simplest version of a fully working system.  Then we add new features to it based on the business requirements from the workflows we will be modeling.  We are basically boot-strapping the system up from a basic set of hand-coded templates.

c. Describe development risks and mitigation strategies

Risks and Mitigation Strategies

...