Understanding and Testing Blockchain: PNSQC Overview and Insights

p acific nw n.w
1 / 23
Embed
Share

Explore the world of blockchain technology through the lens of the Pacific NW Software Quality Conference (PNSQC). Discover the background, challenges, and key characteristics of blockchain networks, along with insights on its applications, technology, and testing lifecycle. Uncover the nuances between centralized and decentralized systems, and gain a deeper understanding of the blockchain process. Dive into the intricate world of blockchain with John Cvetko at the PNSQC event.

  • Blockchain Technology
  • PNSQC Conference
  • Decentralized Systems
  • Software Quality
  • Testing Lifecycle

Uploaded on | 0 Views


Download Presentation

Please find below an Image/Link to download the presentation.

The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author. If you encounter any issues during the download, it is possible that the publisher has removed the file from their server.

You are allowed to download the files provided on this website for personal or commercial use, subject to the condition that they are used lawfully. All files are the property of their respective owners.

The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author.

E N D

Presentation Transcript


  1. P ACIFIC NW SOFTWARE QUALITY CONFERENCE Understanding and Testing Blockchain JOHN CVETKO 10.15.2019 PNSQC

  2. P ACIFIC NW SOFTWARE QUALITY CONFERENCE Overview Background Blockchain Networks Consensus models Network types Applications When does it make sense? Technology and Testing lifecycle PNSQC

  3. Background The most well known blockchain application is Bitcoin Built to operate in the most hostile of environments Designed to be trust (security) mechanism for untrusted parties Blockchain is appealing to business and governments Provides an immutable ledger Transparency Security Remove middlemen that historically, have provided trust for two parties Increase costs Potential a security vulnerability

  4. Background Blockchain hurdles for biz and gov entities Speed Transactions can take hours or days to complete Lack of formal standards Opensource standards are being developed Hyperledger consortium Flexibility Crypto models are purpose built biz and gov applications will require more flexibility Cost and Risk It s new and still unproven in business environments It s not mainstream proprietary methods

  5. Characteristics A blockchain platform has the following key characteristics: Decentralized: Implemented in a peer-to-peer configuration Immutability: No participant can tamper with a transaction after it has been recorded to the ledger without being detected. Consensus: For a block (data) to be appended to the chain, all participants must agree on its validity. Transparency: A single, shared ledger provides one place to go to determine the ownership of an asset or the completion of a transaction.

  6. SOFTWARE QUALITY CONFERENCE P ACIFIC NW Centralized v. Decentralized Decentralized or Peer-to-Peer System reliability Scale and bandwidth Harder to disrupt, e.g, DDoS, hack, etc. Centralized Faster Consistent Efficient Cost PNSQC

  7. SOFTWARE QUALITY CONFERENCE P ACIFIC NW General Blockchain Process PNSQC

  8. SOFTWARE QUALITY CONFERENCE P ACIFIC NW The Block and Chain Blocks contain Data and meta-data A block of data consists of a number transactions Time and sequence of transactions Previous blocks hash value It s unique hash value Chain When a new block is validated, it is committed to the chain The block linkage is made through the new block containing the previous blocks hash value acting as a pointer If a transaction is in error, a new transaction must be used to reverse the error, and both transactions are then visible. PNSQC

  9. SOFTWARE QUALITY CONFERENCE P ACIFIC NW Block Data Types Transaction Data Asset record, contracts, item provenance, identity, etc. Chaincode a.k.a Smart Contract System chaincode used to manage the network. For example, policy for admitting new nodes to the network Application chaincode (core component) It is used to execute business logic when a specific condition is valid. For example, if it detects a specific stock price a sell option is executed Contract 1 Identity 1 License Identity 2 Contract 2 Chaincode PNSQC

  10. SOFTWARE QUALITY CONFERENCE P ACIFIC NW Consensus Protocols Consensus protocols are key to blockchain technology Their primary purpose is to determine potential bad actors in the network, i.e., to establish and maintain trust in the network Consensus protocols dictate how the network nodes validate the blocks to be appended to the chain There are a dozen or so models that each focus on a different deployment requirements PNSQC

  11. SOFTWARE QUALITY CONFERENCE P ACIFIC NW Consensus Protocols Few of the models Proof of Work (POW) First node to solve a specific problem wins. Proof of Elapsed Time (PoET) First one to wake up wins - considered a lottery scheme Proof of Authority (PoA) Requires a majority of authorized nodes to agree on the block validity Practical Byzantine Fault Tolerance (PBFT) Nodes vote on the block validity, if two thirds agree then it s considered valid. PNSQC

  12. SOFTWARE QUALITY CONFERENCE P ACIFIC NW Network Types Public Permissionless Cryptocurrencies are usually public Private - Permissioned A large bank may have a specific division that needs immutability of records Hybrid - Permissioned Internal is centralized and external is decentralized PNSQC

  13. SOFTWARE QUALITY CONFERENCE P ACIFIC NW The Trilemma Blockchain networks are constrained by three main properties: Decentralization - how many entities are used for consensus and hold a copy of the blockchain Scalability - how many devices are in the network Security how much trust is to be provided by the technology Security PNSQC

  14. SOFTWARE QUALITY CONFERENCE P ACIFIC NW The Trilemma cont d These properties are adjusted to meet specific network designs needs Examples: Need for Speed to increase transaction speed more centralization may be tolerated Need for Scale to achieve a very large scale: more centralization can used and/or security is offloaded to proprietary approaches or trust may be shifted to entities by traditional means Budget to achieve cost reduction, nodes might be scaled back which also can affect security PNSQC

  15. SOFTWARE QUALITY CONFERENCE P ACIFIC NW Applications Centralized legacy Oracles (connectors) can provide a method for legacy applications to quickly connect to the blockchain Some vendors are embedding blockchain as part of key system modules, e.g., SAP s Leonardo technologies Decentralized Applications (Dapps) DApps can communicate with the underlying blockchain, e.g., chaincode They are also the bridge between external sensors or events to manage the state of network actors and contracts PNSQC

  16. SOFTWARE QUALITY CONFERENCE P ACIFIC NW Applications Based on Blockchain and Dapps Four Chinese entities - Xiamen, Innov, Corelink, and VeChain Integrating multiple stages of supply chains into a unified solution Track physical assets and inventories in real-time Integration of DApp, blockchain, IoT (RFID), artificial intelligence and cloud technologies in the solution Two consortiums - Vakt and Komgo Building a commodity exchange and settlement platform for oil companies, trading firms, banks and goods inspection companies. Vakt will handle the contract and terms processing Komogo will act as the financial settlement arm of the exchange. PNSQC

  17. SOFTWARE QUALITY CONFERENCE P ACIFIC NW When does blockchain makes sense? When to consider using blockchain No single authority writes the data to the blockchain Immutability of the data is necessary A high degree of data security and redundancy is needed All participants have the same incentives to participate All participants require data transparency The transaction speed is not a paramount concern PNSQC

  18. Is Blockchain Ready for Prime Time? Technology Adoption Lifecycle five consumer phases Currently my assessment blockchain is in the innovator stage Innovators seek out novel technologies and are often in hypercompetitive markets Standards are immature and risk is high This phase is marked by initial demo s, trials, limited deployments, whitepapers, lessons learned articles, etc. Source: Crossing the Chasm [Geoffrey Moore]

  19. SOFTWARE QUALITY CONFERENCE P ACIFIC NW Testing Alignment to the Tech Adoption Lifecycle Innovator Phase: Testers: Need to be able move across many domains and at a deep level Need programming skills, have a sound understanding of system engineering Opportunities - product manufacturers Risk no guarantee that technology will take off Testing Considerations: Everything is new, there is no playbook Reliance on the fundamentals - PDCA Tools: Testing tools at this stage are usually home-grown , minimal and not deployed for commercial use. PNSQC

  20. SOFTWARE QUALITY CONFERENCE P ACIFIC NW Testing Alignment to the Tech Adoption Lifecycle Early Adopter Phase: Testers: Segment specialization begins to occur Need a broad and deep understanding of the segment Opportunities - product manufacturers and large integrators Risk is reduced as real, cost effective existence proofs are made widely available Testing Considerations: Basic published standards will be available Formal system testing will be a joint effort in consortium or multiagency testbeds high deg of coordination. Could see walled off systems Deployments explore the trials and limits of the Trilemma painful experiences Tools: Auditing tools will be the first standard tools to emerge Vendors will provide a standard set of basic monitoring tools with their products. PNSQC

  21. SOFTWARE QUALITY CONFERENCE P ACIFIC NW Testing Alignment to the Tech Adoption Lifecycle Early Majority Phase chasm is crossed Testers: Segment specialization is still dominate Opportunities move down market to large, more conservative organizations Risks are greatly reduced Testing Considerations: Trilemma best practices will emerge External blockchain will be more deeply integrated with internal systems Tools: Independent tool providers and opensource testing frameworks will emerge Auditing tools will be part of the Devops process PNSQC

  22. SOFTWARE QUALITY CONFERENCE P ACIFIC NW What next? PNSQC

  23. Thank You! John Cvetko TEK Associates john.cvetko@tekasc.com 503 799 2242

More Related Content