Software Quality Assurance Trends 2015
Software quality assurance is an integral stage of a full-cycle product development. According to the World Quality Report (annually delivered by Capgemini, Sogeti, and HP) nowadays companies invest more in testing and quality assurance because of rising customer expectations.
Why is quality assurance important?
If you choose a wrong QA strategy or worse omit a testing stage, the company takes on a range of additional risks:
- Brand reputation. A low quality product released with significant performance issues will definitely lose popularity with potential end-users.
- Competitive threat. The competition at the software or mobile app market is fierce. Your competitors are hard on your heels, thus if your product fails, they will get an advantage immediately.
- Product revenue loss. To launch a new product costs a lot. If a product does not come up to user expectations it means the revenues will not come up to yours as well.
- A prolonged development cycle. If QA is not included in development life-cycle you are sure to have bugs and many of them. To fix discovered bugs and improve the app performance more development work will be necessary. Again, it will delay the market delivery and shorten the testing period.
To avoid the risks listed above, you need to know several things about what’s going on at the software QA testing market.
1. In-house TCoE Vs Independent Testing
According to the World Quality Report more companies deploy a fully functional Testing Center of Excellence (TCoE) which is to coordinate a testing process with business development from the very beginning. To set a TCoE is not easy as it requires a well-established structure of clear organization, direct governance, streamlined processes and reliable tools and environment. If a software development company has an established TCoE, it means it pays significant attention to the quality of delivered products.
Independent testers are third-party companies or crowd sourced testers, MyCrowd or UserTesting.com, for example. As an app is tested on a range of platforms with an additional focus on usability testing, the approach is exceptionally good if a user feedback is important: games and certain types of mobile applications. Customers usually pay for discovered bugs only. Independent testing is a way out for those who are either pressed for resources and/or need a detailed end-user feedback.
Nowadays most established software development companies have a full scale testing departments within their structure. The department usually includes highly qualified QA engineers divided in teams including team leads. As a rule, Quality Assurance features automation and manual testing practices, which become an indispensable part of a product development process from the very beginning. Collaboration with in-house testing departments is more reliable than turning to independent testing. However, the latter can offer greater testing coverage and reduced spending.
2. Mobile Testing
The mobile market is boosting the corresponding testing sector. Mobile users become more sophisticated and to succeed at the market an app is to be thoroughly tested. According to the World Quality Report now more than 55% organizations carry out mobile testing compared to 31% in 2012. It is quite surprising to learn that some apps are delivered to the market having undergone no tests at all.
According to the report of the companies that do not perform testing:
- 52% lack the devices, which is crucial because of the mobile platform fragmentation and multiple devices available within the same OS;
- 48% lack mobile testing professionals, which seem to be in demand at the job market;
- 38% lack in-house testing environments. Many mobile development companies are small business entities, growing start-ups which usually have to save and cut down costs. Unfortunately but rather commonly, testing departments are viewed as excessive in a company structure.
So, the overall situation with testing of mobile apps is not that shining, however, in general, the figures show that things are getting better slowly and there are companies which have significant expertise in mobile testing, an established quality assurance process and professionals with necessary skills and knowledge on board.
3. Cloud Testing
As going into the cloud is another general software market trend, cloud testing is to be on the rise as well. Cloud testing experts have to pay special attention to:
- Consonance testing;
- Bandwidth and latency testing;
- Load & performance testing;
- Stress testing
Testing of cloud-based applications provides a range of challenges. Meanwhile, it allows customers to save on access to hardware and to different software configurations, reduce costs on creating and management of a test environment.
4. Agile Software Testing
As agile practices are still on the agenda, agile testing becomes a very important process for software companies which implement the methodology. Agile testing shares the common principles of agile development. It is primarily integrated in the development process instead of forming a separate phase somewhen between delayed code writing and full-scale marketing.
- testing and development processes go hand in hand, each iteration includes QA stage which is performed along with development;;
- QA specialists are full members of the agile team;
- quality assurance testers contribute to the requirement analysis and participate in planning;
- automation testing covers a significant part of the testing process;
- testing and coding are done incrementally until the feature is ready to be delivered to the market.
Unfortunately, many developers so enthusiastic about agile methodology and corresponding testing procedures violate them, which may cause certain doubts about overall Agile efficiency Thus, Agile still being proclaimed as a popular and applied development methodology, it sometimes lacks one of its core values a shared responsibility for the result, including its quality.
To sum it up, we have to state that in general the situation at the software testing industry is not satisfactory. Very few companies have elaborated testing processes and apply various testing methodologies depending on a tested piece of software. However, the growing pressure from users and customers make companies go into detail and revise the procedures, implementing new approaches and techniques. We hope that the next edition of the World Quality Report will be more optimistic.