Quality Assurance. Why Bother?
Cyberpunk 2077 and Heathrow Airport Terminal 5. What do a futuristic video game and an airport terminal have in common? They both cost millions to produce. They were both expected to be flagship entities for their industries. They both encountered expensive issues once they went live. They both faced massive media backlash, lost customer faith, and lost millions in revenue.
Cyberpunk 2077 was released by developers, CD Projekt Red in late 2020. Despite being delayed on multiple occasions, the game was released in a state many considered to be unfinished. The game, despite having a well-received story and gameplay, was riddled with bugs. Players experienced crashes and were unable to complete missions. On base level PlayStation 4 and Xbox One consoles textures would not load. Environments updated at a speed that would have been unacceptable in 2005, let alone 2020. The game failed to live up to the hype of the zeitgeist that had been generated in the gaming community.
Public perception of CDPR plummeted and has yet to fully recover. The game was pulled from Sony’s digital storefront, with CDPR delivering refunds to unhappy customers, a rare move in the highly subjective video games industry. The game has since received numerous patches and has been reinstated in digital storefronts, but the impact to CDPR’s reputation and bottom line remains.
The British Airports Authority’s Heathrow Airport Terminal 5 was officially opened in 2008. Queen Elizabeth II declared the terminal to be “a 21st Century gateway to Britain.”. The launch, however, did not live up to the billing. Problems were encountered immediately with staff and passengers unable to locate T5’s new car parks. Security checkpoints were not open as expected, leading to bottlenecks and delays. Software issues caused luggage to not be recognised by the baggage system. Computer Weekly reported that the server capacity had been exceeded, leading to the baggage system becoming frozen.
As a result of the issues encountered at T5, 34 flights were cancelled on launch day. Difficulties continued at the terminal for 10 days.
It is arguable that the issues CDPR and BAA encountered could have been avoided with better QA and testing. Both CDPR and BAA Staff complained that their feedback had been ignored by project leaders. Issues in both projects lead to urgent fixes being deployed after release at huge expense.
Recent history is riddled with examples like the two above. Data breaches have occurred across multiple industries, financial companies experienced issues with making and receiving payments. Stock exchanges have closed, vehicles have been recalled, air control systems have failed leading to flights being grounded. The list goes on.
Quality Assurance is vital for the development of robust, secure, functional software. Genuinely unforeseen issues do occur in the real world, but by maintaining diligent Quality Assurance, companies can more easily predict and prevent software failures, and eliminate the unexpected from impacting their reputation and their financial bottom line.
Fine, we’ll just let the customer test at the end of the project.
You can wait till development is complete and let your customers test their new system. But what happens when they find a bug?
Picture this: a client tries to enter a phone number 07777 777 777, and they see an error displayed on screen. They entered the number correctly and cannot bypass the error. They submit a request for help. The front-end team recreates the issue but can’t see anything wrong with their code. They pass the issue to the back-end developer who can’t see anything wrong with theirs either. They check the database and see that the field length is incorrect for the customer to enter a phone number. The developer checks the requirements, and they find the field length requires entries of 13 digits long, including the +44 prefix, and not the 11 digits when replacing +44 with 0.
This could have been avoided by carrying out Quality Assurance on the requirements and ascertaining that phone numbers would need to cater for users entering +44 (or any international code) or 0 as a prefix. The issue would then be fixed, verified, and passed back to the client to check.
From being reported by the end user, the issue has been touched multiple times, each time incurring financial cost. Had Quality Assurance been carried out on the requirements (sometimes called Static Testing) the team could have saved money, time, and effort by ensuring that the requirements actually fit the customer needs.
Zentive carry out Quality Assurance at all stages of the Software Development Life Cycle, from requirement planning and documentation to live-proving of deployed software. This ensures that our clients avoid financial leakage by our QA team eliminating expense by reporting issues and challenges at the earliest possible stage of software development.
QA. That’s for Testers, isn’t it?
Quality Assurance is so much more than software testing. QA is a mindset that when applied correctly, permeates a whole business. When every contributor to a platform becomes quality focussed, standards improve. As mistakes are eliminated, quality of deployed products becomes higher, rework is reduced, velocity improves, time to deliver is reduced, and financial leakage is prevented.
By applying high standard Quality Assurance to our software development, Zentive ensure that we deliver the best possible product, in the fastest possible time, at the highest possible quality, all without our customers incurring unexpected costs.
Check back in, for future articles about Quality Assurance.