Portfolio

Boosting software quality for investment portfolio management ecosystem

a1qa provided complex software testing support and shaped QA processes to help the developer of financial software reach their business objectives.
Big data testing
Financial services
Functional testing
Integration testing
Mobile app testing
Test automation

Overview

Our experience with a1qa has been outstanding from day one. They’ve delivered a level of professionalism, quality, and agility that rivals and in many cases surpasses larger firms. From initial scoping to test execution and ongoing optimizations, a1qa has demonstrated deep experience and consistent communication.

CTO

The client is the US-based founder of a professional infrastructure, designed for both novice investors and seasoned market players. The IT solution helps end users undertake investment operations and make sage tradeable decisions with confidence.

Aimed at delivering high-quality trading software and avoiding expensive post-release defect fixing, the customer decided to involve the a1qa team.

Services offered

Functional testing
Test automation
Mobile apps testing
Integration testing
Big data testing
Business intelligence engineering

Project scope

The client developed a web application built around a unified database containing trading statistics from global stock exchanges. It consists of several key components designed to provide users with structured market data and insights:

  • System services and console utilities that run on a schedule or in response to specific events, keeping financial data (calculations) up to date by fetching updates from external services.
  • A paid service for creating, importing, and analyzing financial portfolios, managing alerts, and researching both securities and cryptocurrencies. It also features a news section with articles from analysts and publishers. It’s integrated with a vast number of services – aggregators that provide data on brokerage accounts and allow importing portfolios from brokers, CRMs for managing users, their subscriptions, and payments, an API that provides access to the created portfolios and positions, and many more.
  • A desktop application for graphical visualization of financial statistics.
  • A portal for managing, exporting, and visualizing financial portfolios, with tools for creating and managing notifications based on portfolio position data. It also serves as a data provider for investment-advisory websites via get-codes and an API.
  • Software that enables investors to analyze the market’s time cycle. Its main goal is to show users where the market is heading and highlight the most likely periods of decline or growth.
  • A B2B solution for allowing financial advisors to conduct data research, create investment portfolios with certain sets of positions (sorted by a company, position type, paid dividends, etc.), and publish those portfolios on their websites or a B2C platform.
  • A B2C platform for equipping end users with access to the tools for finding novel investment opportunities, streamlining decision-making, tracking their assets, and other trading activities.
  • Mobile apps (Android, iOS) — that provide customers with an opportunity to commit investment activities without being bound to a certain place.

Overall, the software is a combined ETL and BI solution that transfers data from external vendors into a historical database with minimal processing. Applications then use this data for purposes such as displaying tables and charts, calculating indicators, running investment strategies and recommendations, and monitoring events with automated notifications.

a1qa provided extensive QA support to help the client reach their set business goals:

  • Provide impeccable quality for the IT products through a combined QA strategy
  • Expedite software delivery time and increase test coverage by implementing test automation.

A complex software testing approach comprised the high-priority verifications aimed at delivering sound software for individual investors and traders and mitigating any business risks related to financial losses.

Testing the B2B solution

The B2B app consists of a website, API, and a console for nightly test runs.

The a1qa team supported the client throughout the entire SDLC — from an idea to the release of a new feature — by performing functional testing and test automation.

Functional testing

As the cost of trading app error is high, QA engineers conducted functional testing within all functionalities to prevent expensive bug-fixing after going live.

The QA team verified the calculation formulas manually to ensure data accuracy for research statistics as well as tested different options of data sorting.

In order to have a timely response to changes, business affiliates harness alerts — modifications triggered by a certain condition. The a1qa experts tested this feature against a large amount of input data.

To give financial advisors an opportunity to publish information about various positions and their prices on their websites, the client developed HTML- and JS-based embedded views.

The development team generated HTML and JS codes, affiliates put those codes in the back-end of their websites, and the QA engineers made sure that the data transferred accurately as well as complied with one in the source system.

Another option to publish investment data is to do it via API. To verify that affiliate’s websites contain the necessary description of positions, the a1qa team suggested implementing test automation.

Test automation

To optimize QA workflows and shorten the testing time, QA engineers performed image-based test automation. Test scripts identified defects by comparing each pixel of an original screenshot and a screenshot taken after a test.

To keep pace with changing data and timely check modifications in the software, the QA team introduced a console that ran automated tests every night while recalculating all the figures for correctness. After each launch, test automation specialists checked the run results for software bugs related to inappropriate API parameters. To accelerate this analysis, the team utilized an in-house Aquality Tracking tool that automatically compared failure logs with previous runs and assigned the appropriate status if the issue had been encountered before.

Verifying the quality of desktop analytical systems

The client also engaged the QA team in testing desktop solutions that alleviate research activities and provide data in convenient formats.

The analytical systems harnessed source data from databases (DBs) used by the B2B solution. To correctly process assets, the platforms leveraged WQS files with established calculation rules.

The QA engineers checked uploaded data for consistency, completeness, and relevance, as well as verified the compliance of the system’s calculations with pre-defined rules.

Checking the quality of the B2C platform

The B2C platform is based on dozens of subscriptions that provide end users with various tools for investment activities. The a1qa team was to check that every instrument worked as intended and that a certain end user had access to the possibilities they paid for. QA engineers fulfilled the following QA activities:

Functional testing

To verify the expected available tools (showing statuses of tokens, calculating position size, filtering positions, etc.), the a1qa team connected to the third-party CRM system via API calls, compared the actual results with paid opportunities, and detected defects.

a1qa helped the client ensure high-quality software while enabling end user’s trust and confidence in managing their investments.

Mobile apps testing

The a1qa team initiated the testing of mobile versions of B2C platforms, including web mobile versions and native apps to provide all users with an impeccable experience.

To provide availability of the apps across the globe against any devices, QA engineers conducted cross-platform and cross-browser checks using real devices.

Test automation

As the scope of calculation activities was vast, the a1qa team introduced test automation. Engineers started from writing automated tests using C# and applying Docker for deploying test environment in AWS before running tests. Then, they moved to data-driven automated testing to be in line with daily changes in financial figures.

To run tests without modification, the team uploaded a copy of the DB, put it in the test environment, and blocked data changes. This resulted in stable figures and allowed conducting streamlined automated testing while minimizing scripts code smells from 190 to 1. Additionally, a containerized approach proved highly effective, identifying over 100 major defects annually and freeing up significant time for manual testers to focus on other priority activities.

Big data testing

The expert team assigned by a1qa was to ensure the validity, reliability, precision, integrity, and timeliness of the data sets (global stock exchange trading statistics, currency cross rates, financial market news, etc.) received from numerous providers. In the case of switching to other data vendor, the engineers conducted data migration and performed its testing while making sure all the information was safe and sound. To maintain high standards, the team implemented a behavior-driven development approach for data testing using Gherkin and SpecFlow. This methodology provided several key benefits. It ensured requirements were clear to both technical and business stakeholders, significantly reduced logical defects in complex financial calculations, and allowed for the reuse of scenarios for both automated checks and comprehensive data regression testing.

To enhance the quality of big data used for functional testing, the engineers spotted defects, validated them, and analyzed them to revise programs operating with input data. In cooperation with developers, the QA engineers prepared business rules that were covered by a monitoring system and were updating them in a timely manner for monitoring logs of inbound data processing programs.

While verifying the correct calculation of complex financial metrics, the QA engineers in unison with the development team were implementing an algorithm on the QA’s side and running various data sets to identify inconsistencies.

In addition, QA specialists created a daily comprehensive system status report based on the large number of SQL queries applied by the QA team. It allowed receiving internal metrics of system viability, increasing data quality, and reducing the number of calls to the client’s customer support service in the case of incorrect financial data.

Moreover, a1qa’s QA specialist was involved in business intelligence engineering. She prepared datasets using programming languages and visualized them through dashboards, thus transforming complex information into an accessible format, allowing platform end users to easily understand it, explore it, and extract the insights they needed.

a1qa’s core focus was financial data related to stocks and investments, as end users often requested validation of investment strategies. Researchers and financial analysts defined the criteria (for example, which stocks or indicators to analyze), and the engineer tested these strategies on historical data, simulating various scenarios, such as following a strategy since 2000s to see how much profit or loss it would have generated. Based on these historical results, a1qa could predict how effective the strategy could be for business.

Next, successful strategies were added to the platform and offered to premium end users. The client ran marketing campaigns, promoted new strategies and indicators, and showcased potential outcomes to them. a1qa also worked with user data, such as measuring the impact of marketing campaigns, tracking user growth, monitoring newly opened positions, or analyzing whether users followed financial recommendations provided by the platform.

One of the main challenges related to handling large data volumes. Therefore, a1qa suggested an incremental approach: starting with a limited dataset to validate the strategy and then scaling up the analysis. This helped optimize both processing time and system resources.

Integration testing

B2B and B2C solutions used data from numerous broker sites. To streamline the integration with them and provide subscribers with transparent investment processes, the client integrated proprietary platforms with a data aggregator. The a1qa team performed thorough integration testing, which helped the customer verify that all the data was of the same format and all the necessary information had been transferred successfully.

Beyond core technical testing, the QA team played a pivotal role in streamlining the client-side user experience by managing incoming inquiries via Salesforce. By actively triaging user-reported issues and providing direct technical insights to the customer support team, QA specialists ensured a faster resolution cycle. This collaborative approach helped bridge the gap between end-user feedback and software development, considerably reducing response times and improving overall product stability within the financial ecosystem.

In order to always deliver the project on time and within budget, a1qa:

  • Applied need-driven scalability.

Each time the workload increased, a1qa briskly assigned more QA experts to cope with any client’s arising concerns.

  • Built Agile-based QA processes from scratch.

The experts nailed an operative communication plan. By participating in Scrum events, the QA team established effective interaction with the development team while providing support in processing the user’s feedback.

  • Designed a customized education system.

To navigate software’s complex business logic and sophisticated financial concepts, a1qa established a robust knowledge transfer program mandatory for all new team members. Beyond a domain immersion course, the program features specialized modules tailored for data engineers and automation specialists. By continuously updating these materials, a1qa ensures that every team member is equipped to meet deadlines and master the intricate investment glossary from week one.

  • Increased QA efficiency to cope with suboptimal tester-developer ratio.

There were 6 QA experts to ensure the high quality of code written by 26 developers. Therefore, a1qa demonstrated high flexibility and initiated process enhancements. a1qa introduced retrospectives to review the project’s success, identify space for improvement, and solve occurring issues.

  • Increased the visibility of the results obtained.

For that, a1qa discussed with the client the most significant aspects and customized a comprehensive report describing the current software quality state, statistics on the status of discovered issues, open defects dynamics, data on automated test results, and more.

Due to a1qa’s commitment, the client managed to avoid post-release expensive defect fixing and meet set deadlines. The client is content with business and operational benefits received during the partnership with a1qa and appreciates current cooperation.

Technologies & tools

  • SQL Server Management Studio
  • Lighthouse
  • TestMo
  • Jira
  • Jenkins
  • PostgreSQL
  • Selenium WebDriver
  • VisualStudio
  • SonarQube
  • Allure
  • MSTest
  • GitHub
  • CursorAI
  • ChatGPT
  • SpecFlow
  • Apache Superset
  • Amazon Quick Sight
  • Tableau
  • Python
  • Snowflake

Results

  • Verified that every financial instrument and subscription tier worked as intended, directly contributing to end-user confidence in the platform’s investment tools due to professional QA assistance throughout the SDLC.
  • Shifted the burden of repetitive regression testing to automated scripts, accelerated time-to-market, and minimized scripts code smells from 190 to 1, allowing internal resources to focus on higher-value business logic and innovation.
  • Developed a customized onboarding and education framework that reduced the ramp-up time for new project members, ensuring consistent quality regardless of team turnover.
  • Shortened the “idea-to-release” cycle by 2 weeks, allowing the client to respond more rapidly to market shifts and competitive pressure in the financial sector.

In numbers

12+
years of the project duration
13
QA engineers involved during the peak load
1,300+
found defects with automated tests
2-week
decrease in the feature life cycle (from idea to release)
190X
decrease of scripts code smells

Get in touch

Please fill in the required field.
Email address seems invalid.
Please fill in the required field.
We use cookies on our website to improve its functionality and to enhance your user experience. We also use cookies for analytics. If you continue to browse this website, we will assume you agree that we can place cookies on your device. For more details, please read our Privacy and Cookies Policy.