Simplifying Complex Quality Assurance for Exchange Technology

Thriving in today’s ultra-competitive capital markets hinges on the ability to differentiate through new value-added services, adopt evolutionary market models and leverage the best technology innovations. Time to market is critical, but so is rigorous testing to ensure market health and stability. So how can exchange operators and clearinghouses balance testing and quality assurance (QA) requirements with the demand for faster product delivery?

Continuously monitoring, updating, maintaining, testing and validating marketplace systems is a complex and time consuming process. Often it starts with a request from the business – perhaps a function needs to be added, for example, or a software bug needs to be checked out. Next, it’s handed over to highly skilled (and probably highly paid) programmers to implement the functionality. Another team of specialists write test cases to validate the functionality. Then another layer of programmers typically comes in to implement the tests. Once the tests show that the functionality is correctly implemented and the system remains stable, it’s put into production.

Practical issues might crop up along the way. One is that marketplaces have disjunctive tools, so they can’t interconnect tests spanning multiple functional areas. Another one is that in a business that operates globally, physical time delays and misunderstandings frequently creep into the process. Let’s say developers detect a bug in the system, and to fix it they need to work with developers in a different country and time zone who don’t speak the same language. It could be several days before the problem is solved.

QA testing is extremely important, but it’s not hard to see how inefficiency in this process can lengthen the time to market and increase costs. Wouldn’t it be nice to have a tool that can streamline this activity while empowering both business users and testers like never before?

Here are three suggestions for helping to turn this streamlined testing dream into a reality:

  1. Decouple your testing logic from any one particular backend system. Suppose the logic wasn’t dependent on a particular backend system, and you had one front end that could access multiple systems, APIs and connection types. 1) You can have more adaptability and flexibility; and 2) you can test anything. You can even do negative tests, such as entering in an illegal (e.g. negative) price or quantity, because there’s no logic preventing you from doing so.
  2. Enable anybody to run a test case by deploying a front end that has either an easy to use graphical user interface (GUI) or a familiar Excel spreadsheet. A GUI allows users to see transaction flows graphically on the screen. All they have to do is select a specific transaction and symbol, and they can see all the details of the action. Using Excel, one can create an order book, enter an order and follow the result by executing any type of test case in the backend system in real time. No need to analyze log files.
  3. Save the test in a replayable file that can be modified and rerun as necessary. Whenever you update a function, you can invoke your test case library and rerun the cases in batch to ensure nothing was broken when the last change was made.

Testing can be much more efficient because you can replace multiple disjunctive tools with just one tool and interconnect tests in a way you couldn’t do before. A developer in one country can easily hand over the problem to a developer in another country, who can replay the test case on their local system, thus reducing the time that the system needs to be in the test bed and out of production. You can reduce costs because anyone, including business people, can write and run test cases instead of having to rely on specialist programmers. In addition, the programmers are free to concentrate on other tasks that add value to the organization.

Quality assurance testing is not an area where marketplaces can afford to cut corners. If participants don’t have confidence that the systems are sufficiently resilient, they’ll take their business elsewhere. Fortunately, there’s a way to balance proper testing procedures with efficiency and cost-effectiveness. Visit our website for additional information here >

The views and opinions expressed herein are the views and opinions of the author and do not necessarily reflect those of Nasdaq, Inc.