Introduction
Software Quality Assurance is and always will be a challenge,
furthermore it can be a costly one. To get it right requires a combination of
the right people and the right processes, both which require investment and a
prioritisation within the organisation. Below are some of the key elements in getting
it right.
Build the right QA team
Firstly, let’s not kid…hiring good QA’s is hard. There are
many low end candidates and a fair bit of needing to separate the wheat from
the chaff. We see a lot of CV’s from candidates working in large outsources and
most of these candidates are more suited to working in a tightly managed team performing
routine tasks. You need to find diligent, bright people that are capable of
understanding the systems. The nature and complexity of the systems have a big
effect on the calibre of candidate. There is a large difference between testing
a simple ecommerce website selling widgets versus a risk management system for
a financial institution. These QA’s will need to get into the nitty-gritty of
the system, how the users will use it and what the dev’s might not have thought
of in order to find the faults. The other consideration is when you hire the
right people, due to their calibre you will need to allow for career
development and its fairly common to see the right candidates move into BA
roles, so the challenge doesn’t end with hiring the right candidate.
Testing Automation
If you are not automating the majority of your testing, QA
becomes a mind-numbing and time consuming process that is a breeding ground for
human error. It becomes extremely difficult to get the consistent regression
testing that you need for high quality software in production. Back to the
point above, the right QA’s will have the ability required to ensure quality
test plans and the ability to automate them. Automating the regression testing
of the product is also the main area where you should consider using outsourced
resources if there is a bottleneck, as they can assist in getting over the one-off
resource bottleneck. Ideally, automated test scripts should be run nightly on
the latest build with the results being reviewed and interpreted every morning by
the test team, in turn this should filter to the dev team so that product
regression is kept to a minimum.
Storyboards and Testing Plans
All test storyboards should be logged in the product backlog
for reference, this number can be quite large, but it should be done. All bugs found
by the testing team should be logged to the storyboard too, so that it’s
included going forward to assist in avoiding product regression. Going back to
the automation, the more test storyboards that have been automated, the lower
will be the reliance on manual testing and the challenges that come with that.
Conclusion
Ideally, you should treat the testing as part of your
product development engineering and integrate the testing with the development
as much as possible. Automate as much as is feasible for your scenario and ensure
you have high quality QA’s for what needs to be performed manually.
George Toursoulopoulos
is a technology specialist and Director at Synetec, one of the UK’s leading
providers of software services and solutions.
No comments:
Post a Comment