Slide 1

Slide 1 text

Open Access Quality Assurance & Related Software Development for Financial Markets Tel: +7 495 640 24 60 , +1 415 830 38 49 www.exactpro.com 1 Disruptive Functional Testing The next frontier in Post-Trade systems verification Open Access Quality Assurance & Related Software Development for Financial Markets Tel: +7 495 640 2460, +1 415 830 38 49 www.exactpro.com 16 October 2017, SIBOS Conference Iosif Itkin, Exactpro CEO and co-founder, London Stock Exchange Group

Slide 2

Slide 2 text

• A specialist firm focused on functional and non-functional testing of systems that process wholesale financial products, particularly market infrastructures • A UK company with operations in the US and four QA & software development centres in Russia • Part of London Stock Exchange Group as of May 29, 2015 • Incorporated in 2009 with 10 people, our company has experienced significant growth as satisfied clients require more services; now employing 536 specialists Front office Listed Derivatives CRM Dark Pool T25 Clearing FX Fixed income SEF Reconciliation Onboarding Ticker Plant Commondities Smart Order Router Trading Desktops Index Dissemination FPGA Equities Connectivity Exchange MTF Swaptions Exactpro Timeline at a Glance

Slide 3

Slide 3 text

Delivering Quality to London Stock Exchange Group Some of our projects (start date): •Turquoise (2010) •Borsa Italiana (2011) •CCP.A (2011) •FPGA-base Ticker Plant (2012) •LSE (2012) •Oslo Bors (2012) •UnaVista (2013) •FTSE (2013) •EuroTLX (2014) •Russell (2015) •IDEM (2015) •LSEDM (2015) •ELITE (since 2015) •CurveGlobal (2016) •GATElab (2016) •LCH (2016) •TRADEcho (2016) •MTS (2017) •RNS (2017)

Slide 4

Slide 4 text

Open Access Quality Assurance – a Global Client Network

Slide 5

Slide 5 text

Faster, not Bigger What is the main difference between incumbent and disruptive? Incumbent means something you already know and expect. Disruptive is when we encounter new things that will re-define what we already know.

Slide 6

Slide 6 text

Post Trade Systems

Slide 7

Slide 7 text

Software Testing Challenges

Slide 8

Slide 8 text

With incumbent testing, you are on the hook of pre-conceptions of how your system under test is supposed to work. It's only when you do disruptive testing that you really gain new knowledge about the system and learn from it. Get Off the Hook

Slide 9

Slide 9 text

Software Testing is Relentless Learning

Slide 10

Slide 10 text

Defect Mining The goal of disruptive testing is to find defects that are unlikely to be found if testing is done with other methods. We see ourselves as a mining operation extracting defects hidden in complex scalable technology platforms.

Slide 11

Slide 11 text

Test Harness

Slide 12

Slide 12 text

Agile Transformation As in any other large organization in the financial services industry, technology used at the London Stock Exchange Group is going through agile transformation.

Slide 13

Slide 13 text

Developing a Test Harness for Agile Process

Slide 14

Slide 14 text

What Agile Development Should Be… and Not NOT LIKE THIS LIKE THIS

Slide 15

Slide 15 text

Testing Challenges in Agile

Slide 16

Slide 16 text

Managing Complex Systems The Law of Requisite Variety: a control system must have at least as many possible states as the system it wants to control. It means that Test Harness development is a truly challenging and continuous software development process.

Slide 17

Slide 17 text

Test Harness Team

Slide 18

Slide 18 text

Testing Critical Infrastructures

Slide 19

Slide 19 text

Testing Critical Infrastructures Safety Rule #1 with Submarines: don't open portholes when underwater!

Slide 20

Slide 20 text

Testing Critical Infrastructures Safety Rule #1 with Submarines: don't open portholes when underwater! Functional testing: iterate through a finite number of scenarios to prove that the porthole won't open Non-Functional testing: iterate through a smaller number of scenarios to prove that it won't open by brute force

Slide 21

Slide 21 text

Testing Critical Infrastructures Safety Rule #1 with Submarines: don't open portholes when underwater! Functional testing: iterate through a finite number of scenarios to prove that the porthole won't open Non-Functional testing: iterate through a smaller number of scenarios to prove that it won't open by brute force Disruptive testing: 1) iterate through a huge number of random diverse scenarios under load to prove that it won't open

Slide 22

Slide 22 text

Testing Critical Infrastructures Safety Rule #1 with Submarines: don't open portholes when underwater! Functional testing: iterate through a finite number of scenarios to prove that the porthole won't open Non-Functional testing: iterate through a smaller number of scenarios to prove that it won't open by brute force Disruptive testing: 1) iterate through a huge number of random diverse scenarios under load to prove that it won't open 2) open the porthole

Slide 23

Slide 23 text

Thank you