Scroll Top
  • Home
  • Articles
  • Ensuring Software Quality and Meeting Customer Expectations

Table of Content

Automatic tests

Security Tests

Manual testing

Exploratory and acceptance testing

Company testing sessions

Conclusion

ARTICLE

Ensuring Software Quality: Atfinity's Commitment to Meeting Customer Expectations

As a member of the Atfinity Quality Assurance team, I am very aware that Quality Assurance is a critical component of great software. The testing feedback loop is essential to streamline developers, designers, and configurators to create an amazing product together.

At Atfinity, we take this philosophy to heart and employ a multi-faceted approach to Quality Assurance. Despite the complexities and endless possibilities for testing in our diverse environment, we strive to leave no stone unturned when it comes to testing every aspect of our software. Here, I would like to give you an overview into our different testing methodologies:

Share

Automatic tests

We use automatic testing to ensure the functionality of our code changes before they even hit any testing server. Our developers use two different techniques, unit tests and integration tests, to thoroughly test individual pieces of code like functions and classes, as well as the system as a whole.

While unit tests are faster and easier to write, integration tests test more in context and ensure that everything works as intended once it’s used on a synthetic Atfinity configuration. By using automatic testing techniques, we can catch bugs and defects early in the development process, ultimately saving time and resources in the long run.

Security tests

Many of our clients use Atfinity to process privacy relevant information. This means security needs to be tight. To ensure high security, we use both automated and manual security tests.

Automated tests make sure that every new line of code follows good coding practices that make security problems less likely. They also ensure that none of the libraries Atfinity is using have any open security problems.

But since automated checks cannot catch everything, we also have security experts checking each new major version of Atfinity. They do something called a “penetration test”: They try to “hack” the system and tell us about any vulnerability they find.

Manual testing

Despite the advancements in technology, manual testing still finds over 50% of software bugs. There are just many things humans can easily spot as problems where automated tests struggle.

Visual problems are a good example: An experienced tester easily figures out that a laptop icon is wrong for an error message, but an automated system sees nothing wrong.

At Atfinity, we therefore create a huge repository of manual tests we perform for every new version. A team of experienced testers tries every functionality in the software and checks if it still works. While this part of the testing process is very labour intensive and therefore expensive, it ensures that our software works for our clients at all times.

Exploratory and acceptance testing

Structured manual and automatic testing are important parts of our Quality Assurance strategy at Atfinity. However, with new versions of our software always containing more features, it’s important to go beyond our structured test cases and test our software in novel ways.

Exploratory testing allows us to simulate real-world scenarios that cannot always be accounted for in structured tests. By imagining ourselves as customers or compliance officers, we can test the software in a more intuitive and realistic way.

This approach helps us identify issues that may have been missed in structured testing and ultimately leads to a more reliable and user-friendly product.

Company testing sessions

Have you ever wondered why all the people in Atfinity know the software so well? One answer is our company testing sessions that we perform for every new version:

The whole company comes together and tests the new version on new and existing configurations. Everybody tries all the new features and plays with the software for a complete day. Since everyone has their own ideas about what features should do, quite often we have very interesting discussions emerging as a result.

Conclusion

Quality assurance is an essential aspect of software development that ensures the final product meets the desired quality standards. This involves a set of processes and techniques that identify and fix defects and errors in the software.

For Atfinity, quality assurance means that everyone on the team continuously works to ensure that their software is of high quality, including rigorous testing, reviewing and analysing code, and implementing best practices and standards.

Incorporating quality assurance into all aspects of software development can lead to a culture of quality and a commitment to producing reliable and efficient software.

Share

Join the Future of Banking

Book your demo today and see why leading financial institutions
worldwide trust Atfinity to drive their digital transformation.

Join the Future of Banking

Book your demo today and see why leading financial institutions worldwide trust Atfinity to drive their digital transformation.

Privacy Preferences
When you visit our website, it may store information through your browser from specific services, usually in form of cookies. Here you can change your privacy preferences. Please note that blocking some types of cookies may impact your experience on our website and the services we offer.