Innovation Case Study: Test Automation & Ambit Enterprise Upgrade

A business case of how technology innovation successfully integrated into the business operations an improved the way of working that supported business success.

  
Areas of Science and TechnologyData Engineering, Computer Science
R&D Start DateDec 2018
R&D End DateSeptember 2019
Competent ProfessionalRenier Botha

 

Overview and Available Baseline Technologies

Within the scope of the project, the competent professionals sought to develop a regression testing framework aimed at testing the work carried out to upgrade the Ambit application[1] from a client service solution to a software as a service solution (SaaS) operating in the Cloud. The test framework developed is now used to define and support any testing initiatives across the Bank. The team also sought to automate the process, however this failed due to lack of existing infrastructure in the Bank. 

Initial attempts to achieve this by way of third-party solution providers, such as Qualitest, were unsuccessful, as these providers were unable to develop a framework or methodology which could be documented and reused across different projects. For this the team sought to develop the framework from the ground up. The project was successfully completed in September 2019. 

Technological Advances

The upgrade would enable access to the system via the internet, meaning users would no longer need a Cisco connection onto the specific servers to engage with the application. The upgrade would also enable the system to be accessed from devices other than a PC or laptop. Business Finance at Shawbrook is comprised of 14 different business units, with each unit having a different product which is captured and processed through Ambit. All the existing functionality, and business specific configuration needed to be transferred into the new Enterprise platform, as well as the migration of all the associated data. The competent professionals at Shawbrook sought to appreciably improve the current application through the following technological advances:

  • Development of an Automated Test Framework which could be used across different projects

Comprehensive, well executed testing is essential for mitigating risks to deployment. Shawbrook did not have a documented, standardised, and proven methodology that could be adopted by different projects to ensure that proper testing practises are incorporated into project delivery. There was a requirement to develop a test framework to plan, manage, govern and support testing across the agreed phases, using tools and practices that help mitigate risks in a cost-effective and commensurate way.

The test team sought to develop a continuous delivery framework, which could be used across all units within Business Finance. The Ambit Enterprise Upgrade was the first project at Shawbrook to adopt this framework, which lead to the development of a regression test pack and the subsequent successful delivery of the Ambit upgrade. The Ambit Enterprise project was the first project within the Bank which was delivered with no issues raised post release.

The development of a regression test pack which would enable automated testing of future changes or upgrades to the Ambit platform

Regression testing is a fundamental part of the software development lifecycle. With the increased popularity of the Agile development methodology, regression testing has taken on added importance. The team at Shawbrook sought to adopt an iterative, Agile approach to software development. 

A manual regression test pack was developed which could be used for future testing without the need for the involvement of business users. This was delivered over three test cycles with the team using the results of each cycle (bugs identified and resolved) to issue new releases. 

173 user paths were captured in the regression test pack, across 14 different divisions within Business Finance. 251 issues were found during testing, with some being within the Ambit application. Identifying and resolving these issues resulted in the advancement of Ambit Enterprise platform itself. This regression test pack can now be used for future changes to the Ambit Enterprise application, as well as future FIS[2] releases, change requests and enhancements, without being dependent on the business users to undertake UAT. The competent professionals at Shawbrook are currently using the regression test pack to test the integration functionality of the Ambit Enterprise platform.

  • Development of a costing tool to generate cost estimates for cloud test environment requirements

In order to resolve issues, solutions need to be tested within test environments. A lack of supply was identified within Shawbrook and there was an initiative to increase supply using the Azure cloud environment. The objective was to increase the capability within Business Finance to manage an Azure flexible hosting environment where necessary test environments could be set up on demand. There was also a requirement to plan and justify the expense of test environment management. The competent professionals sought to develop a costing tool, based on the Azure costing model, which could be used by project managers within Business Application Support (“BAS”) to quickly generate what the environment cost would be on a per day or per hour running basis. Costs were calculated based on the environment specification required and number of running hours required. Environment specification was classified as either “high”, “medium” or “low”. For example, the test environment specification required for a web server is low, an application server is medium while a database server is high. Shawbrook gained knowledge and increase its capability of the use of the Azure cloud environment and as a result are actively using the platform to undertake cloud-based testing.

The above constitutes an advance in knowledge and capability in the field of Data Engineering and Computer Science, as per sections 9 a) and c) of the BEIS Guidelines.

Technological Uncertainties and activities carried out to address them

The following technological uncertainties were encountered while developing the Ambit Enterprise upgrade, mainly pertaining to system uncertainty:

  • Implementation of the new Ambit Enterprise application could disrupt existing business processes

The biggest risks for the programme of change, was the potential disruption of existing business processes due to the implementation of the change without validation of the upgraded application against the existing functionality. This was the primary focus of the risk mitigation process for the project. Following the test phases set out in the test framework would enable a clear understanding of all the residual risks encountered approaching implementation, providing stakeholders with the context required to make a calculated judgement on these risks.

When an issue was identified through testing, a triage process was undertaken to categorise the issues as either a technical issue, or a user issue. User issues were further classified as “training” or “change of business process”. Technical issues were classified as “showstoppers”, “high”, “medium” and “low”. These were further categorised by priority as “must haves” and “won’t haves” in order to get well-defined acceptance criteria for the substantial list of bugs that arose from the testing cycles. In total, 251 technical issues were identified.

The acceptance criteria for the resolution of issues were:

  • A code fix was implemented
    • A business approved work around was implemented
    • The business accepted the risk

All showstoppers were resolved with either a code fix or and an acceptable work around. Configuration issues were within the remit of Shawbrook’s business application support (“BAS”) team to resolve, whilst other issues could only be resolved by the FIS development team. When the application went live, there were no issues raised post release, and all issues present were known and met the acceptance criteria of the business. 

  • Business processes may no longer align with the new web-based application

Since the project was an upgrade, there was the potential for operational impact of existing functionality due to differences between the Ambit client server solution, and the upgraded Ambit Enterprise web-based solution. The BAS team at Shawbrook were required to make changes to the business processes in order to align with the way the Ambit Enterprise solution now operated. Where Shawbrook specific issues could not be resolved through the configuration of the application with the business processes, changes were made to the functionality within Ambit, for example, additional plug-ins were developed for the Sales Portal platform to integrate with the Ambit Enterprise application. 

Because Ambit Enterprise was a web-based application, application and security vulnerabilities needed to be identified so that the correct security level was achieved. Because of this, performance and security testing, which was currently not being executed, needed to be introduced to the test framework. Performance testing also needed to be executed so that speed and stability requirements under the expected workloads were met.

Summary and Conclusions

The team at Shawbrook successfully developed a test framework which could be used across all projects within Business Finance. The development of the test framework lead to the generation of a regression test pack for the Ambit Enterprise upgrade. By undertaking these R&D activities, Shawbrook gained knowledge in the use of Azure Cloud Environment for testing, and increased its automated testing capabilities, enabling the transition to a continuous delivery framework whereby the majority of testing is automated.


[1] Ambit is the asset finance application operating within the business unit, 70-80 percent of transactions on all lending is captured and managed through Ambit

[2] FIS is the Ambit Enterprise vendor

Advertisement

Artificial Intelligence Capabilities

AI is one of the most popular talked about technologies today. For business, this technology introduces capabilities that innovative business and technology leadership can utilise to introduce new dimensions and abilities within service and product design and delivery.

Unfortunately, a lot of the real business value is locked up behind the terminology hype, inflated expectations and insecure warnings of machine control.

It is impossible to get the value from something that is not understood. So lets cut through the hype and focus to understand AI’s objectives and the key capabilities that this exciting technology enables.

There are many definitions of AI as discussed in the blog post “What is Artificial Intelligence: Definitions“.

Keeping it simple: “AI is using computers to do things that normally would have required human intelligence.” With this definition in mind, there are basically three things that AI is aiming to achieve.

3 AI Objectives

  • Capturing Information
  • Determine what is happening
  • Understand why it is happening

Lets use an example to demonstrate this…

As humans we are constantly gathering data through our senses which is converted by our brain into information which is interpreted for understanding and potential action. You can for example identify an object through site, turn it into information and identify the object instantly as, for example, a lion. In conjunction, additional data associated with the object at the present time, for example the lion is running after a person yelling for help, enables us to identify danger and to take immediate action…

For a machine, this process is very complex and requires large amounts of data, programming/training and processing power. Today, technology is so advanced that small computers like smart phones can capture a photo, identify a face and link it to a name. This is achieved not just through the power the smart phone but through the capabilities of AI, made available through services like facebook supported by an IT platform including, a fast internet connection, cloud computing power and storage.

To determine what is happening the machine might use Natural Language Understanding (NLU) to extract the words from a sound file and try to determine meaning or intent, hence working out that the person is running away from a lion and shouting for you to run away as well.

Why the lion is chasing and why the person is running away, is not known by the machine. Although the machine can capture information and determine what is happening, it does not understand why it is happening within full context – it is merely processing data. This reasoning ability, to bring understanding to a situation, is something that the human brain does very well.

Dispite all the technological advancements, can machines today only achieve the first two of the thee AI objectives. With this in mind, let’s explore the eight AI capabilities relevant and ready for use, today.

8 AI Capabilities

AI-8Capabilities

  • Capturing Information
    • 1. Image Recognition
    • 2. Speech Recognition
    • 3. Data Search
    • 4. Data Patterns
  • Determine what is happening
    • 5. Language Understanding
    • 6. Thought/Decision Process
    • 7. Prediction
  • Understand why it is happening
    • 8. Understanding

1. Image Recognition

This is the capability for a machine to identify/recognise an image. This is based on Machine Learning and requires millions of images to train the machine requiring lots of storage and fast processing power.

2. Speech Recognition

The machine takes a sound file and encodes it into text.

3. Search

The machine identifies words or sentences which are matched with relevant content within a large about of data. Once these word matches are found it can trigger further AI capabilities.

4. Patterns

Machines can process and spot patterns in large amounts of data which can be combinations of sound, image or text. This surpasses the capability of humans, literally seeing the woods from the trees.

5. Language Understanding

The AI capability to understand human language is called Natural Language Understanding or NLU.

6. Thought/Decision Processing

Knowledge Maps connects concepts (i.e. person, vehicle) with instances (i.e. John, BMW) and relationships (i.e. favourite vehicle). Varying different relationships by weight and/or probabilities of likelihood cn fine tune the system to make recommendations when interacted with. Knowledge Maps are not decision trees as the entry point of interaction can be at any point within the knowledge map as long as a clear goal has been defined (i.e. What is John’s favourite vehicle?)

7. Prediction

Predictive analytics is not a new concept and the AI prediction capability basically takes a view on historic data patterns and matches it with a new piece of data to predict a similar outcome based on the past.

8. Understanding

Falling under the third objective of AI – Understand what is happening, this capability is not currently commercially available.

To Conclude

In understanding the capabilities of AI you can now look beyond the hype, be realistic and identify which AI capabilities are right to enhance your business.

In a future blog post, we’ll examine some real live examples of how these AI capabilities can be used to bring business value.

Also read: