Blockchain to implement Trust in Project Management
Blockchain, the cryptocurrency underlying technology, is starting to change the way we do business, and will soon change the way we manage projects. Will first project management Blockchain applications be aimed to pay subcontractors with digital money, or will other uses come first? Chances are Project Management Information System (PMIS) tools start with Blockchain by using features known as smart contracts. Smart contracts extend transaction logic with programmed logic, including data storage.
IMHO we can expect three main use cases of smart contracts in project management. PMIS tools may use Blockchain smart contracts to:
- automate transactions related to subcontractors’ terms and conditions, for instance: invoices and payments when deliverables are accepted or milestones are met.
- register some project work performance data, for instance: project or phase authorization/closure, team members assignments, time and expense sheets approval, activity and tasks progress or completion records, state recording for change management events, rebaselining, project procurement decisions, etc.
- register project status reports.
I think of the last topic as the more likely in the short term for several reasons, including:
- Right now, PMIS tools can start using the available software APIs transparently to end users –they don’t need to know about the Blockchain underlying technology.
- Project based organizations are using more and more agile methods to provide agile project status reporting avoiding the bureaucracy of document elaborations or management by meetings. They prefer internet online real time reporting.
- There is a high correlation between project success and effective monitoring. All seriously failed projects –ending up with huge delays and cost overruns– suffer from lack of good practices in monitor and control project work. Conversely, successful projects are devoted to periodic reviews: Variances and forecasts are measured against the project performance baselines, and corrective actions are taken to meet the project management goals of schedule, cost, scope, quality, etc. Measure and adjust regularly is key to finish the project on time and on budget: Today we have an overcost of €10,000. What can we do to save €10,000 to finish on budget? We forecast a time variance at completion of 3 weeks. What can we do to save 3 weeks to finish on time?
Project status at a given date –at the project status date– can be modeled with public information –all stakeholders have clearance to know– and with confidential information –just for the project management team and some key stakeholders:
- Confidential project status record is difficult to generalize. Adaptations are required to each organization and project. It usually includes the project financial performance –approved/forecasted/actual expenses and purchases; planned vs. applied reserves; actual/forecasted project margin at the project status date, pending/submitted/paid invoices so far, etc.)– team performance, lessons learned, communications log, issue log, assumption log, risk register, stakeholder register, quality control measurements, etc.
- Public project status records, on the other hand, are easy to generalize if we include general project information such as the current project stage, project’s health check, baseline performance –scope, schedule, cost– and change log. These four fields can represent, at a given date, the public project status record:
We can use this public record to represent a reliable project log throughout the sequence of review dates:
Four states are possible for any specific project public record:
- Private record: Project status has not been stored on Blockchain.
- Public record: Project manager has stored project status on Blockchain.
- Verified record: At least one stakeholder has checked that the stored project status matches the information in the PMIS tool.
- Invalidated record: At least one stakeholder has checked that the stored project status does not match the information in the PMIS tool.
Let’s see an example:
- Users granted to access project status reports in PMIS tool can see that dates August 17th and 24th are not been published; date August 31st is published but nobody has verified it yet; September 7th and 21st are verified indeed, but September 14th has been changed in PMIS and does not match the Blockchain record.
- Project manager can always publish August 17th and 24th. He also can “unpublish” September 14th and set it to public again –PMIS tool will call a new Blockchain transaction that will be secured in a new block.
See this state diagram with the possible transitions:
To verify a status report transparently to stakeholders, PMIS tool builds the file from internal data and compare the hash function result with the one stored in Blockchain. If a stakeholder knew the transaction code, he could also get the Blockchain data using any of the available public tools.
How can we escalate project status to programs, portfolios and organizations? We can get just one record for each project, the one corresponding with the published status date, and use it to aggregate the portfolio or program status based on its components. Regarding the organizational project management status, we can get a snapshot aggregating business unit components:
Significant project management improvements are expected from any project reliable organization:
- Stakeholders in reliable projects will trust project management, they will be more engaged on project reviews and they will proactively help to successful project completion.
- Project managers in reliable projects will apply best practices in project monitoring and control: they are aware of people are watching how they are able to manage the project.
Stakeholders and project managers know that project status reports are kept in Blockchain, but PMIS tool must hide technical details. Also, Blockchain technology allows different PMIS tools to interoperate provided they agree on formats and data.
- Regarding use cases, there are 3 types of Blockchain platforms: only for cryptocurrency (e.g. Bitcoin), for cryptocurrency and business logic (e.g. Ethereum) and only for business logic (e.g. Hyperledger). Although Bitcoin is now able to include business logic in transaction, its use is not recommended due to the high fees. To facilitate transparent quick adoption for users without any initial knowledge, keeping technical details hidden, Hyperledger is not recommended –it requires permission management, special users validating peers, etc.
- Regarding security, there are 3 categories of Blockchain platforms: public platforms (e.g. Bitcoin, Ethereum), private platforms and permissioned platforms. To enhance adoption hiding underlying technology –not needing to install virtual machines, for instance– it is recommended the use of Ethereum. PMIS will keep transaction codes. Stakeholders will be able to copy those codes.
- To keep Ethereum fees low –USD cents–, we can use IPFS as storage platform. Use Ethereum transaction to store only the file hash.
- Any PMIS tool can generate project status report files and save them to IPFS. PMIS tool provider should have an account in Ethereum to pay transaction fees. These transactions do not imply ether transferring, just IPFS file hash storage. Premium users should have enough balance –0.05 ETH, about 15 USD, should be enough for around 1,000 transactions. Blockchain transitions occur only when project managers publish status reports: