Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Software Testing For R3 Corda Blockchain: Iosif Itkin, CEO and Co-Founder, Exactpro

Download as pdf or txt
Download as pdf or txt
You are on page 1of 48

Software testing for R3

Corda Blockchain
Iosif Itkin, CEO and co-founder,
Exactpro

Build Software to Test Software


exactpro.com
About Exactpro

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.

A specialist firm focused on functional Headquartered in the UK with


and non-functional testing of exchanges, operations in the US and Eastern
clearing houses, depositories, trade Europe. The clients are regulated by
repositories and other financial market the FCA, Bank of England and their
infrastructures. counterparts from other countries.

Part of the London Stock Exchange Incorporated in 2009 with 10 people,


Group (LSEG) from May 2015 until Exactpro is now employing over 580
January 2018, when the Exactpro specialists.
management proceeded through the
buyout of the company from LSEG.

2 Build Software to Test Software exactpro.com


Exactpro Client Network

3 Build Software to Test Software exactpro.com


Exactpro Partners

4 Build Software to Test Software exactpro.com


New FIX Working Group

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

exactpro.com
7 Build Software to Test Software
Is Blockchain Financial Plumbing Still Years Away?

25 March 2019

https://www.coindesk.com/exactpro-dlt-post-trade-software-testing

8 Build Software to Test Software exactpro.com


Journalism vs. Activism /
Software Testing vs. Proof of Concept

9 Build Software to Test Software exactpro.com


No Testing for Conversational Assistants

Chatbot

10 Build Software to Test Software exactpro.com


Public Relations Disaster vs. Research Breakthrough

11 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”

12 Build Software to Test Software exactpro.com


Meet Corda Enterprise

13 Build Software to Test Software exactpro.com


Financial Services

Today
This is what I think This is what is
I am owed owed

Duplication of data

High fragmentation

Expensive reconciliations

14 Build Software to Test Software exactpro.com


Reconciliations were Related to Major Outages

15 Build Software to Test Software exactpro.com


Financial Services

Tomorrow
This is what I think I
am owed

Reduced data costs

Reduced operational risk

No inter-entity
reconciliations

16 Build Software to Test Software exactpro.com


No Privacy

Traditional blockchains

This is what we This is what A


owe each other owes B!
This is what A
owes B!

17 Build Software to Test Software exactpro.com


Segregation

Channels

This is what we This is what we


owe each other owe each other

18 Build Software to Test Software exactpro.com


Enterprise Grade Blockchain

The Corda approach


I know facts
I know facts
2, 3 and 5
I know facts 2, 4 and 5
I know facts 1, 3 and 5
1, 2 and 4
I know facts
3, 4 and 5

19 Build Software to Test Software exactpro.com


Our Greatest Weaknesses are Extensions of Our Strengths

20 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

21 Build Software to Test Software exactpro.com


https://www.youtube.com/c/exactprosystems
22 Build Software to Test Software exactpro.com
Testing in the fast chain
Dr. Moray Grieve, Head of QA

23

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
Key Concepts

States Transactions
States are immutable objects that Transactions consume input states and
represent shared facts such as a create output states. Newly created
financial agreement or contract at a output states replace the input states
specific point in time which are marked as historic

Contracts Flows
Contracts control the evolution of Flows are light-weight processes used
states by allowing relevant to coordinate interactions required for
participants to check for transaction peers to create and agree transactions
validity
The Network
Permissioned network with public identities allowing nodes to communicate
directly with each other

What it is What it does

Trust The single, long-term cryptographic It provides the basis of trust in the A Corda Network
Root key which all network‘s identity provenance of data, recognised by nodes
(X509) certificates root back to participants

Identity Admits new members onto the Performs 3 checks on new


Manager network via granting an identity certificate requests and grants
certificate based on passing the checks

Network A list of IP addresses and legal entity Acts as a Corda Network ‘phone
Map names of each participant on the directory’
network, which all participants can notary
access

Notary Node or cluster of notary nodes Prevents double-spend of input


states
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)
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)
Testing the Core Network

Test
Library

System
under
test

29 Build Software to Test Software exactpro.com


Testing Distributed Applications

Test
Library

System
under
test

30 Build Software to Test Software exactpro.com


Multi-Threaded Distributed Applications

exactpro.com
31 Build Software to Test Software
AI and Software
EXACTPRO Testing

https://www.gasq.org/en/exam-modules/a4q-ai-and-software-testing.html

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

32 Build Software to Test Software exactpro.com


AI Testing
EXACTPRO Software Challenges

Non-Deterministic Probabilistic Non-Testable Oracle Problem

33 Build Software to Test Software exactpro.com


Non-deterministic Systems: Financial Market Infrastructures

34 Build Software to Test Software exactpro.com


Indirect Testing
EXACTPRO Methods

Whatever it Information
End-to-End takes! extraction and
Automated Test
Machine learning
Library

Test execution
data and log
Passive Testing
analysis

35 Build Software to Test Software exactpro.com


Ability to Generalize:
EXACTPRO
Scope of End-to-End and Negative Testing

36 Build Software to Test Software exactpro.com


PEAS Model

37 Build Software to Test Software exactpro.com


PEAS Model

Performance

Sensors

AGE
NT

Environment

Actuators
38 Build Software to Test Software exactpro.com
Actuators

39 Build Software to Test Software exactpro.com


Sensors

Sensors

AGE
NT

Environment

40 Build Software to Test Software exactpro.com


Lively Debate

41 Build Software to Test Software exactpro.com


PEAS Model

Performance

Sensors

AGE
NT

Environment

Actuators
42 Build Software to Test Software exactpro.com
Software Testers

43 Build Software to Test Software exactpro.com


Data Lake

44 Build Software to Test Software exactpro.com


Build Software to Test Software

45 Build Software to Test Software exactpro.com


Metamorphic Testing

Adult
sin(x) = sin(x + 2𝜋) 3
sin(x) = sin(𝜋 - x)
Pupa
2

Larva
1

46 Build Software to Test Software exactpro.com


https://www.youtube.com/c/exactprosystems
47 Build Software to Test Software exactpro.com
Thank you

48 Build Software to Test Software exactpro.com

You might also like