Faster Payments Service How To Ensure Compliance From AppLabs


Published on

Published in: Technology
  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide
  • Faster Payments Service How To Ensure Compliance From AppLabs

    1. 2. Faster Payments Service: How to Ensure Compliance Dan Martland 9 th July 2008
    2. 3. Overview <ul><li>Where does FPS fit? </li></ul><ul><li>System design </li></ul><ul><li>Functional testing </li></ul><ul><li>Regression testing </li></ul><ul><li>Performance testing </li></ul><ul><li>Technical testing </li></ul><ul><li>Summary </li></ul>
    3. 4. Where does FPS fit? Telephony Systems Web Systems Back Office Systems FPS Gateway FPS Central Infrastructure
    4. 5. System Design (1) <ul><li>Understanding Switch behaviour is key to a good design </li></ul><ul><li>Positive behaviour is well documented </li></ul><ul><ul><li>All positive message flows are described in the original FPS documentation </li></ul></ul><ul><li>Negative behaviour is more complex </li></ul><ul><ul><li>Understanding of the negative behaviour has evolved throughout the first wave deployment of FPS </li></ul></ul><ul><ul><li>Understanding of both the message sequences and contents is critical </li></ul></ul><ul><li>The system must be designed for performance </li></ul><ul><li>The design must integrate multiple elements of your systems </li></ul><ul><li>The design must fundamentally change the way some of your systems operate. </li></ul>
    5. 6. System Design (2) <ul><li>Fraud checking </li></ul><ul><ul><li>Traditionally this is done as a batch process, overnight and looking at a body of transactions for suspicious patterns of behaviour </li></ul></ul><ul><ul><li>The nature of FPS means each transaction must be assessed individually and in real time </li></ul></ul><ul><li>Customer management </li></ul><ul><ul><li>High value customers are often given special considerations </li></ul></ul><ul><ul><li>Pending deposits may be taken in to consideration when assessing if a payment should be allowed to proceed during batch processing </li></ul></ul><ul><ul><li>FPS means that these decisions must be made in real-time </li></ul></ul><ul><ul><li>FPS will reduce the visibility of incoming transactions as there is no time period when the transaction is known to be happening but has not yet completed. </li></ul></ul>
    6. 7. Functional testing (1) <ul><li>Applies to both real time (Web, Telephony) and batch systems (standing orders) </li></ul><ul><li>Analysis is required to determine the necessary test coverage </li></ul><ul><li>Expected behaviour needs to be defined across both your systems and the FPS switch </li></ul><ul><li>As the system is computer-to-computer, precision is very important </li></ul><ul><li>Tools are provided by IPL to simulate the Switch </li></ul><ul><ul><li>The tool set is powerful and so needs to be used correctly </li></ul></ul><ul><li>Real-time systems should be considered for end-to-end test automation using a tool such as QuickTest or QARun. </li></ul>
    7. 8. Functional Testing (2) <ul><li>Both positive and negative scenarios need to be tested </li></ul><ul><li>Test systems outputs against the specification for both format and content </li></ul><ul><li>Test against the response from the simulated Switch </li></ul><ul><ul><li>Finalising transactions after a positive response </li></ul></ul><ul><ul><li>Cancelling transactions that receive a negative response </li></ul></ul><ul><ul><li>Re-trying when no response is received within a time limit </li></ul></ul><ul><ul><li>Handling multiple responses if there are timeouts elsewhere in the system </li></ul></ul><ul><li>Institutions will engage in multiple rounds of testing with IPL once their internal testing is completed. </li></ul>
    8. 9. Functional Testing (3) <ul><li>Batch systems present specific challenges </li></ul><ul><ul><li>Batch suites can involve long chains of programs which must run in the correct order </li></ul></ul><ul><ul><li>Testing the branches of code is dependent on inserting all the required test data at the beginning of the process </li></ul></ul><ul><ul><li>Batch systems often refer to extensive reference material such as financial histories which are difficult to simulate in testing </li></ul></ul><ul><ul><li>Data is often highly date dependent which provides an ongoing challenge through out testing </li></ul></ul><ul><li>Analysis and preparation are key to overcoming these factors </li></ul><ul><li>The sheer volume of output batch systems tend to generate causes additional challenge when analysing results </li></ul><ul><li>FPS is a hybrid of batch and real-time, increasing the challenges. </li></ul>
    9. 10. Regression Testing <ul><li>Analysis is needed to: </li></ul><ul><ul><li>Understand what systems are touched by changed applications </li></ul></ul><ul><ul><li>Identify key functionality that must be verified </li></ul></ul><ul><li>Testing will be spread across multiple systems </li></ul><ul><ul><li>Documenting expected behaviour is critical </li></ul></ul><ul><li>Multiple waves of regression testing may be required </li></ul><ul><ul><li>Makes a strong case for building an automated regression test pack. </li></ul></ul>
    10. 11. Performance Testing <ul><li>The whole purpose of FPS is to make things quicker! </li></ul><ul><li>The system has SLAs in place for responding to individual messages </li></ul><ul><ul><li>Failure to hit those SLAs mean transactions will be reversed or rejected </li></ul></ul><ul><li>IPL require multiple rounds of performance testing before an institution can join the scheme </li></ul><ul><li>Performance testing the solution means loading all your input channels (web, telephony, back-office) and these may all require different technical solutions </li></ul><ul><li>IPL sourced tools can be built upon to generate incoming traffic on your system. </li></ul>
    11. 12. Technical Testing <ul><li>Connectivity: </li></ul><ul><ul><li>The FPS solution is split across four sites and has duplication of every major component </li></ul></ul><ul><ul><ul><li>Managing security keys with the Switch has challenged the Members </li></ul></ul></ul><ul><ul><li>Each institution has a specific number of channels available to them for their transactions </li></ul></ul><ul><ul><ul><li>Using these efficiently has proven challenging for the Members </li></ul></ul></ul><ul><li>Reliability and Resilience: </li></ul><ul><ul><li>FPS is a 24/7 system </li></ul></ul><ul><ul><li>Your solution should support this e.g. by allowing updates without interruption to service </li></ul></ul><ul><li>These features need to be tested before going live on the service. </li></ul>
    12. 13. Summary <ul><li>FPS requires a broad range of testing for successful implementation </li></ul><ul><li>The system is complex and its behaviour needs to be well understood </li></ul><ul><li>The solution is technically complex and requires a range of testing approaches to be used </li></ul><ul><li>Testing should be factored in to the overall project work from the beginning </li></ul><ul><li>The temptation to squeeze testing timescales must be resisted </li></ul><ul><li>IPL have formal testing quality gates that must be passed through before an institution can join the scheme. </li></ul>
    13. 14. Contact Us <ul><li>Please send questions and queries to: </li></ul><ul><li>[email_address] </li></ul><ul><li>Thank you for your interest </li></ul>