Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Exactpro Software Testing for R3 Blockchain

Exactpro Software Testing for R3 Blockchain

Exactpro Software Testing for R3 Blockchain

Iosif Itkin
co-CEO & co-founder, Exactpro

QA Financial Forum
12 March 2020, London

Video: https://youtu.be/Qn1Lf-z-Z0M

To learn more about Exactpro, visit our website https://exactpro.com/

Follow us on
LinkedIn https://www.linkedin.com/company/exactpro-systems-llc
Twitter https://twitter.com/exactpro
Facebook https://www.facebook.com/exactpro/
Instagram https://www.instagram.com/exactpro/

Subscribe to Exactpro Vimeo channel https://vimeo.com/exactpro
Subscribe to Exactpro YouTube channel https://www.youtube.com/c/exactprosystems

Exactpro
PRO

March 12, 2020
Tweet

More Decks by Exactpro

Other Decks in Technology

Transcript

  1. Build Software to Test Software
    exactpro.com
    Software testing for R3
    Corda Blockchain
    Iosif Itkin, CEO and co-founder,
    Exactpro

    View Slide

  2. 2 Build Software to Test Software exactpro.com
    A specialist firm focused on functional
    and non-functional testing of exchanges,
    clearing houses, depositories, trade
    repositories and other financial market
    infrastructures.
    About Exactpro
    Headquartered in the UK with
    operations in the US and Eastern
    Europe. The clients are regulated by
    the FCA, Bank of England and their
    counterparts from other countries.
    Exactpro provides software testing services for mission critical technology that underpins global financial
    markets. The firm is experienced with trading and clearing and settlement platforms, market data systems,
    collateral management and risk management systems, central data warehouses, regulatory reporting, etc.
    Incorporated in 2009 with 10 people,
    Exactpro is now employing over 580
    specialists.
    Part of the London Stock Exchange
    Group (LSEG) from May 2015 until
    January 2018, when the Exactpro
    management proceeded through the
    buyout of the company from LSEG.

    View Slide

  3. 3 Build Software to Test Software exactpro.com
    Exactpro Client Network

    View Slide

  4. 4 Build Software to Test Software exactpro.com
    Exactpro Partners
    Exactpro partners with numerous global organisations on multiple projects worldwide
    Exactpro has initiated and is now co-chairing the FIX MOST Working Group (Monitoring, Onboarding and Software Testing).
    The group’s goal is to define testing standards and best practices.

    View Slide

  5. 5 Build Software to Test Software exactpro.com
    5 Build Software to Test Software exactpro.com
    New FIX Working Group

    View Slide

  6. 6 Build Software to Test Software exactpro.com
    6 Build Software to Test Software exactpro.com

    View Slide

  7. 7 Build Software to Test Software exactpro.com
    7 Build Software to Test Software exactpro.com
    • Platforms
    • People
    • Processes
    • Security

    View Slide

  8. 8 Build Software to Test Software exactpro.com
    Is Blockchain Financial Plumbing Still Years Away?
    https://www.coindesk.com/exactpro-dlt-post-trade-software-testing
    25 March 2019

    View Slide

  9. 9 Build Software to Test Software exactpro.com
    Journalism vs. Activism /
    Software Testing vs. Proof of Concept

    View Slide

  10. 10 Build Software to Test Software exactpro.com
    No Testing for Conversational Assistants
    Chatbot

    View Slide

  11. 11 Build Software to Test Software exactpro.com
    Public Relations Disaster vs. Research Breakthrough

    View Slide

  12. 12 Build Software to Test Software exactpro.com
    Meena is Unavailable to Talk
    Quote:
    “Also, tackling safety and bias in
    the models is a key focus area for
    us, and given the challenges
    related to this, we are not
    currently releasing an external
    research demo”

    View Slide

  13. 13 Build Software to Test Software exactpro.com
    Meet Corda Enterprise

    View Slide

  14. 14 Build Software to Test Software exactpro.com
    This is what I think
    I am owed
    This is what is
    owed
    Duplication of data
    High fragmentation
    Expensive reconciliations
    Today
    Financial Services

    View Slide

  15. 15 Build Software to Test Software exactpro.com
    Reconciliations were Related to Major Outages

    View Slide

  16. 16 Build Software to Test Software exactpro.com
    Reduced data costs
    Reduced operational risk
    No inter-entity
    reconciliations
    Tomorrow
    This is what I think I
    am owed
    Financial Services

    View Slide

  17. 17 Build Software to Test Software exactpro.com
    Traditional blockchains
    This is what we
    owe each other
    This is what A
    owes B!
    This is what A
    owes B!
    No Privacy

    View Slide

  18. 18 Build Software to Test Software exactpro.com
    This is what we
    owe each other
    Channels
    This is what we
    owe each other
    Segregation

    View Slide

  19. 19 Build Software to Test Software exactpro.com
    The Corda approach
    I know facts
    1, 2 and 4
    I know facts
    1, 3 and 5
    I know facts
    2, 3 and 5
    I know facts
    2, 4 and 5
    I know facts
    3, 4 and 5
    Enterprise Grade Blockchain

    View Slide

  20. 20 Build Software to Test Software exactpro.com
    Our Greatest Weaknesses are Extensions of Our Strengths

    View Slide

  21. 21 Build Software to Test Software exactpro.com
    Typical Requirements for an Exchange System
    Daily capacity - 100+ mln transactions
    Peak rates - 40k+ transactions per second
    Average round-trip latency - <100 microseconds
    Availability - 100%
    3000 trx 2.5 cm <1 mm

    View Slide

  22. 22 Build Software to Test Software exactpro.com
    https://www.youtube.com/c/exactprosystems

    View Slide

  23. 23

    23

    Testing in the fast chain
    Dr. Moray Grieve, Head of QA

    View Slide

  24. Enterprise grade blockchain platform enabling
    distrusting parties to form and maintain consensus
    about the existence, status and evolution of a set of
    shared facts.
    24

    View Slide

  25. Key Concepts
    States
    States are immutable objects that
    represent shared facts such as a
    financial agreement or contract at a
    specific point in time
    Transactions
    Transactions consume input states and
    create output states. Newly created
    output states replace the input states
    which are marked as historic
    Contracts
    Contracts control the evolution of
    states by allowing relevant
    participants to check for transaction
    validity
    Flows
    Flows are light-weight processes used
    to coordinate interactions required for
    peers to create and agree transactions

    View Slide

  26. What it is What it does
    Trust
    Root
    The single, long-term cryptographic
    key which all network‘s identity
    (X509) certificates root back to
    It provides the basis of trust in the
    provenance of data, recognised by
    participants
    Identity
    Manager
    Admits new members onto the
    network via granting an identity
    certificate
    Performs 3 checks on new
    certificate requests and grants
    based on passing the checks
    Network
    Map
    A list of IP addresses and legal entity
    names of each participant on the
    network, which all participants can
    access
    Acts as a Corda Network ‘phone
    directory’
    Notary Node or cluster of notary nodes Prevents double-spend of input
    states
    nodes
    notary
    A Corda Network
    The Network
    Permissioned network with public identities allowing nodes to communicate
    directly with each other

    View Slide

  27. Testing challenges
    • Platform technology (build CorDapps to test the full API)
    • Highly distributed (complexity in test automation)
    • Heterogeneous networks (combinatorial explosion)
    • Highly secure (cryptography, ledger consistency is everything)
    • Eventually consistent (transaction flows can be complex)
    • Evolutionary lifecycle (platform and CorDapp upgrades)
    • Highly available (resiliency testing)
    • Temporal (performance testing)

    View Slide

  28. Testing challenges
    • Platform technology (build CorDapps to test the full API)
    • Highly distributed (complexity in test automation)
    • Heterogeneous networks (combinatorial explosion)
    • Highly secure (cryptography, ledger consistency is everything)
    • Eventually consistent (transaction flows can be complex)
    • Evolutionary lifecycle (platform and CorDapp upgrades)
    • Highly available (resiliency testing)
    • Temporal (performance testing)

    View Slide

  29. 29 Build Software to Test Software exactpro.com
    Testing the Core Network
    System
    under
    test
    Test
    Library

    View Slide

  30. 30 Build Software to Test Software exactpro.com
    Testing Distributed Applications
    System
    under
    test
    Test
    Library

    View Slide

  31. 31 Build Software to Test Software exactpro.com
    31 Build Software to Test Software exactpro.com
    Multi-Threaded Distributed Applications

    View Slide

  32. 32 Build Software to Test Software exactpro.com
    EXACTPRO
    AI and Software Testing
    There are three chapters with examinable content. The top-level heading for each
    chapter specifies the time for the chapter; timing is not provided below chapter level.
    For the A4Q AI and Software Testing Foundation training course, the syllabus
    requires a minimum of 17 hours, 10 minutes of instruction, distributed across the
    three chapters as follows:
    Chapter 1: AI and Software Testing Background 360 minutes
    Chapter 2: Testing Artificial Intelligence Systems 400 minutes
    Chapter 3: Using AI to Support Testing 270 minutes
    https://www.gasq.org/en/exam-modules/a4q-ai-and-software-testing.html

    View Slide

  33. 33 Build Software to Test Software exactpro.com
    EXACTPRO
    AI Testing Software Challenges
    Non-Deterministic Probabilistic Non-Testable Oracle Problem

    View Slide

  34. 34 Build Software to Test Software exactpro.com
    Non-deterministic Systems: Financial Market Infrastructures

    View Slide

  35. 35 Build Software to Test Software exactpro.com
    EXACTPRO
    Indirect Testing Methods
    Information
    extraction and
    Machine learning
    End-to-End
    Automated Test
    Library
    Whatever it
    takes!
    Test execution
    data and log
    analysis
    Passive Testing

    View Slide

  36. 36 Build Software to Test Software exactpro.com
    EXACTPRO
    Ability to Generalize:
    Scope of End-to-End and Negative Testing

    View Slide

  37. 37 Build Software to Test Software exactpro.com
    PEAS Model

    View Slide

  38. 38 Build Software to Test Software exactpro.com
    AGENT
    Actuators
    Sensors
    Performance
    Environment
    PEAS Model

    View Slide

  39. 39 Build Software to Test Software exactpro.com
    Actuators

    View Slide

  40. 40 Build Software to Test Software exactpro.com
    AGENT
    Sensors
    Environment
    Sensors

    View Slide

  41. 41 Build Software to Test Software exactpro.com
    Lively Debate

    View Slide

  42. 42 Build Software to Test Software exactpro.com
    AGENT
    Actuators
    Sensors
    Performance
    Environment
    PEAS Model

    View Slide

  43. 43 Build Software to Test Software exactpro.com
    Software Testers

    View Slide

  44. 44 Build Software to Test Software exactpro.com
    Data Lake

    View Slide

  45. 45 Build Software to Test Software exactpro.com
    1
    Larva
    2
    Pupa
    3
    Adult
    Approach: Metamorphic Testing
    sin(x) = sin(x + 2)
    sin(x) = sin( - x)

    View Slide

  46. 46 Build Software to Test Software exactpro.com
    https://www.youtube.com/c/exactprosystems

    View Slide

  47. 47 Build Software to Test Software exactpro.com
    Thank you

    View Slide