In this context we are looking at an approach to assessing the functionality of a software system ensuring that is meets specified requirements and quality standards. In short, we are talking about functional testing. 

 

So what is functional testing and why should you care? 

Let’s take a hypothetical example of flight booking system for fictional flight service “Smart Air”! Recently they have put in a new flight booking system to allow customers to book flights taking into account all that entails from booking the flight, luggage allowances, in flight meals and seat allocation.  

The business has set out a list of requirements that Smart Air’s website should be able to capture and take into account that modern travellers like to be able to book via portable devices and use these too to board the plane. 

 

The business team have few additional considerations for their system: 
1. Customer expectations 

Recently customer expectations for software functionality have evolved rapidly. Customers now demand seamless experiences, quick response times, and intuitive interfaces. With competition growing fiercer, any functionality issues can lead to frustrated users who might switch to a competitor. Companies are continuously prioritising a customer-centric approach to remain relevant.  

 

2. Global Reach 

Smart Air has a global user base with flights going from different airports all over the world. So ensuring that software functions correctly for users across different geographies, languages, and cultures. 

 

3. Security  

Security is another area that Smart Air deems vital to their testing strategy, as competitors having recently experienced data breaches with loss of customers data including personal, and in some cases, credit card details. Reputational damage and revenue loss ensured, also resulting fines.  

 

4. Compliance 

Smart Air wants to mitigate risks associated with non-compliance, security vulnerabilities, and functional deficiencies.  

 

5. Functional Testing 

Examining the considerations above, it is vital that Smart Air gets their functional testing strategy right, testing their systems with known inputs and assessing its output against expected results with the primary goal is to ensure that the software functions correctly and meets user requirements. 

 

6. Cost of testing  

Some board members at Smart Air are concerned with what is perceived as the cost of testing.  Any question like this could be countered by the question what is the cost of not testing? 

Answering this, the cost of not testing provides increased risk of damage both reputationally and financially and only by investing in rigorous compliance quality and functional testing, organisations can confidently release software that not only performs its intended tasks but also does so in a manner that aligns with legal and industry standards, ultimately promoting trust among users and stakeholders.  

By choosing to invest up front in vigorous functional testing on the outset, using time honoured metrics, shows that this investment significantly offsets the cost of having to fix/mitigate for issues that appear on the user’s end  

 

Fig 1 – Lettering in plus signs where FARQ is used represents the individual components i.e. FA- Functional Assessment, Risk and  Quality 

 

Conclusion 

In a world where software permeates every facet of our lives, from booking flights, banking apps to social media; functional testing has become a vital part of quality assurance. Its role has evolved from merely validating features to encompassing security, global compatibility, and user satisfaction. The complexity of modern software, rapid development cycles, and heightened user expectations make functional testing more necessary than ever before. As we continue to rely on technology, investing in robust functional testing processes is not just good practice; it's essential for delivering software that meets the needs of our digitally connected world.

 

So, in short, we should all give a FARQ…!