Well, testing is non all most hitting the keyboard in addition to clicking the mouse until you lot stumble upon to a greater extent than or less hidden defects inwards the application. Finding corner-case defects that nobody inwards existent environs would e'er come upward across mightiness non brand much sense. Similarly finding defects, which are trivial in addition to own got to the lowest degree gamble to problem a real-time user tin swallow away your precious testing time. At the same time, missing of import defects could survive vital for the reputation of your application afterward loose in addition to also for your ain credibility every bit a tester. Keeping all these things inwards mind, often it becomes flake tricky to accommodate a testing strategy that answers all these possible loopholes in addition to nonetheless helps the testing squad to perform adequate testing on schedule.
Coming dorsum to my Manager’s question, he had a proffer for his ain inquiry - to focus most fourth dimension on high-risk areas of the software in addition to less fourth dimension on the areas of less risk. In other words, exam deeply in addition to ofttimes inwards areas of high risk, in addition to spread the balance of the testing endeavour broadly in addition to less ofttimes over the areas of less risk. But instantly the inquiry was how to create upward one's hear which are the high-risk areas in addition to which are of depression risk. Some to a greater extent than brainstorming, in addition to nosotros came upward alongside these points to start with:
1. Pareto Analysis
2. Try in addition to seat High-risk areas
3. Analyze User feedbacks
Pareto Analysis:
As most of you lot mightiness already know, Pareto analysis is a statistical technique inwards decision-making that is used for alternative of a express number of tasks that create meaning overall effect. It uses the Pareto regulation (80-20 rule) - the stance that for many events, 80% of the effects come upward from 20% of the causes. Or inwards damage of lineament improvement, a large bulk of problems (80%) are produced past times a few fundamental causes (20%). [Wikipedia]
In representative of our Product, nosotros job JIRA for number tracking (bugs, user stories, improvements etc). And nosotros decided to filter out terminal v years (coinciding alongside the commencement beta loose of our Product) JIRA bugs (with Resolutions ranging from Unresolved, Completed, Fixed, Insufficient Details, Cannot Reproduce) in addition to perform a Pareto Analysis on the filtered bugs to run into if a blueprint exists. Though personally I don’t believe much on statistics, this fourth dimension the findings were interesting (if non shocking)! In our case, the Pareto Analysis showed that 80% of the bugs that were reported inwards terminal v years were acquaint inwards areas constituting only 25% (well, fiddling to a greater extent than than 20% though) of the whole application. Now nosotros had at to the lowest degree something to start considering every bit the high-risk areas inwards our Product.
Try in addition to seat High-risk areas:
Risk analysis tin survive used to create upward one's hear where testing should survive focused. As it is adjacent to impossible to exam every possible facial expression of an application, every possible combination of events, every dependency, or everything that could conk wrong, jeopardy analysis becomes necessary (if non mandatory) for most contexts of software development. This mightiness require analytical/judgment skills, powerfulness to mean value similar an end-user, mutual sense, in addition to past times experience. Some of the considerations tin include:
» Functions those are often used past times the users.
» Functionalities those are most visible to the user.
» Complex functionalities.
» Functions that own got a lot of code refactoring, updates or põrnikas fixes.
» Functions that require a consistent score of performance.
» Functions that job novel technologies.
» Functions that require interfacing alongside external systems.
» Functions that job 3rd political party plug-ins/tools.
» Functions developed past times to a greater extent than programmers at the same time.
» New functionalities.
» Functions developed nether extreme fourth dimension pressure.
» Functions those are most of import to the stakeholders.
» Functions that reverberate complex describe organisation logic.
» Functionalities that own got large fiscal acquit upon (e.g. shopping cart, online transactions, payment gateways etc).
» Functionalities that own got large security acquit upon (e.g. wellness attention products, life critical systems, software to survive used inwards automobile/airlines, navigational gadgets etc).
» Functionalities that own got large security acquit upon (e.g. login forms, database transactions, authentication in addition to authorisation criteria etc).
» Talk to your developers in addition to essay to seat parts of the code that are most complex, in addition to thence most prone to errors.
» Similar/related functionalities alongside bad history of defects.
Analyze User feedbacks:
User feedbacks often supply skilful plenty stance most the areas inwards which the halt users own got most gamble of finding defects/problems. If you lot own got a Product back upward squad for your software, proceed your eyes in addition to ears opened upward to the aid desk telephone telephone transcripts. By doing so you lot tin own got an overall stance of the jeopardy areas that your halt user is prone to hitting upon! You tin seek aid of your Business Analyst to instruct to a greater extent than or less ideas on the areas that she thinks every bit high-risk zone.
Once you lot own got a clear moving-picture exhibit of the high-risk drive-slow zones of your software, you lot would survive inwards a far improve seat to excogitation out a strategy for your Testing efforts. Test deeply in addition to ofttimes inwards areas of high risk, in addition to spread the balance of the testing endeavour broadly in addition to less ofttimes over the areas of less risk. However, I am curious to hear your stories. How orbit you lot create upward one's hear the high-risk zones inwards your software? How orbit you lot allocate testing endeavour (and time) for dissimilar areas/components? Share your ideas via commenting.
Happy Testing…