Hyperledger Composer — A Real Life Case Study
The main purpose of this article is to demonstrate a business model solution based on a real world problem example – A sports federation. This example follows a quick review on the subject of Enterprise Blockchains by NewCryptoBlock that concluded with a common questionnaire serving as a use-case template for Hyperledger solutions.
It’s important to understand that Hyperledger Composer is used for clarity since it was meant for business analysts to map their ideas, whereas Hyperledger Fabric (also underlying Hyperledger Composer) also could be used, but with much higher level of complexity.
Consider the following structure:
So, breaking it down into the template, described as an Appendix to the subject presentation, would look much like described below.
1. Business Problem Description
A simple hierarchy of autonomous sports clubs needs to operate by predefined rules, permissions and in accordance to one another to form a consortium called Federation. As single administrative role representatives on a club level could come to an abuse of power, unattended growth of the consortium could lead to overpowering group decisions, even beyond the reach of the internal statutes.
2. Blockchain MVP Use-Case Description
Participants at a personal level (athletes) can only perform a specific set of operations regarding their sports club in the form of transactions. The club itself is also a participant in the Federation Network. Only administrative personnel out of the same club can use the club’s identity to perform operations regarding other clubs of the same federation. Initially, athletes can either (1) create a club or (3) apply to be assigned to not more than one of the existing clubs. Club members in a specific administrative role can either (2) associate a guest, (4) Accept or (4) Reject an existing athlete’s application to join. From within, a club members can either (6) apply for a Federation License, (7) request a club transfer, or (8) resign to a Guest level.
3. Types of Assets and Description
MembershipApplication
is an asset, once created is deemed payable by itsApplicationStatus.
TransferApplication
is an asset, once created is deemed payable by itsApplicationStatus.
LicenseApplication
is an asset, once created is deemed payable by itsApplicationStatus.
4. List of Participants / Roles
SportsGuest
is a single common identity that outsiders can use to access the private network.SportsPlayer
is the regular identity for most participants use to connect.OrgaizationMember
is a club's administrative identity that is used to manage participants up to this level.SportsClub
is the club's identity role that is only used on behalf of the BN.SportsFederation
is the federation's identity role that is used only on behalf of the BN.
5. Description of Transactions
Genesis
is the only transaction that aSportsGuest
can initiate and is responsible for creating aSportsClub
participant and anOrgaizationMember
identity; this transaction can only be executed once by the particularSportsGuest
identity.GuestAssessment
associates theSportsGuest
identity with a specific, unique (passport) account, intended to act as a sort of an invitation for unknown clients to become authorized with the chain.InitialMembershipApplication
createsMembershipApplication
asset pending approval & payment, and a newSportsPlayer
participant and associates a passport account (the last one associated with theSportsGuest
identity) to the corresponding identity card for that participant.ApproveMembership
&RejectMembership
change thestatus
of aMembershipApplication
depending on the payment status of the asset.ApproveLicense
&RejectLicense
change thestatus
of aLicenseApplication
depending on the payment status of the asset.InitialLicenseApplication
creates aLicenseApplication
asset pending approval & payment, and can only be executed bySportsPlayer
participants.TransferApplication
creates aTransferApplication
asset pending approval & payment, and can only be executed bySportsPlayer
participants.ResignApplication
destroys a givenSportsPlayer
identity, giving the associated Passport account the ability to associate with theSportsGuest
identity again.
The idea was originally borrowed from a real-life sports scenario in the field of Professional Table Soccer.
All the code for the described network can be found on NewCryptoBlock’s GitHub profile, along with setup instructions for the proof-of-concept.
Another important aspect of a real-life scenario is the network infrastructure. Upon running the Fabric runtime you might notice that the configured node names end with .example.com
. This was intentionally left out of the current version of the example for the infrastructure design is handled by a separate engineering role in the DLT solution design that we intend to cover in a later article.
_________________________________________________________________
NewCryptoBlock consists of a team of engineers with extensive technology and business backgrounds, united by a passion for innovation, professional development and building high-quality software products. Innovative technologies have the capacity of bringing to life revolutionary ideas that can change and better the world compared to the way we know it.