In a recent blog post, Microsoft announced an update to their Azure Blockchain Workbench service which improves the development experience of building consortium-based blockchain applications. More specifically, this release includes new features such as application versioning, updated messaging capabilities and streamlined smart contract development. Existing Workbench applications can be updated to this new version using a script provided by Microsoft.
Microsoft is simplifying consortium-based blockchain application development by providing rich integration to Azure services through Azure Blockchain Workbench. This integration allows for connectivity to a variety of Azure services including messaging (Service Bus, IoT Hub, Event Hubs and Event Grid), encryption services (API, hashing, signing), off-chain database (Azure SQL Database), analytics (Power BI), off-chain storage (Azure Storage) and identity management (Azure Active Directory).
Through Azure Blockchain Workbench, Microsoft is providing the required infrastructure to setup a consortium network in multiple topologies using a variety of consensus mechanisms. Microsoft provides integration from these blockchain platforms to other Microsoft services to streamline development of distributed applications. Microsoft supports many general-purpose blockchains including Ethereum and Hyperledger Fabric and purpose-built blockchains like Corda.
Image source: (screenshot) https://www.youtube.com/watch?v=gwrYspdaOx8
Application versioning has been a frequently requested feature that has been included in the Azure Block Workbench 1.6 version. Versioning allows developers to manage and version Workbench applications instead of relying upon manual processes, in the development process, to perform this function. Versioning can be accomplished through the user experience in the web portal or the REST API.
As versions are now being tracked, they can also be viewed which include timestamps, who made the change and whether or not that version is enabled.
Another area of investment for Microsoft is in the new egress messaging API. Using this API allows for connectivity to other systems. Brenda Lee, a program manager on the Azure Blockchain team describes the benefits of this new API as:
In our previous release, we enabled more scenarios with a new input messaging API. In 1.6.0, we have implemented an enhanced and updated output messaging API which publishes blockchain events via Azure Event Grid and Azure Service Bus. This enables downstream consumers to take actions based on these events and messages such as, sending email notifications when there are updates on relevant contracts on the blockchain, or triggering events in existing enterprise resource planning (ERP) systems.
Microsoft has streamlined development activities by no longer requiring developers to include the WorkbenchBase class within their code base. This class was previously required to create and update your specified contract. Lee explains how Microsoft has replaced this functionality:
With 1.6.0, this code serving the same purpose as WorkbenchBase will now be autogenerated for you when you upload your contract code. You will now have a more simplified experience when developing custom Workbench applications and will no longer have bugs or validation errors related to using WorkbenchBase. See our updated samples, which have WorkbenchBase removed.
Microsoft has also announced how they will be communicating updates. Moving forward, any updates to Workbench will be communicated on the Azure blog and release notes will be made available in GitHub. In addition, updates and release notes are also now available within the Workbench UI.