The Quality Assurance (QA) role is the role responsible for guaranteeing
a level of quality for the end client, and to help the software development
team to identify problems early in the process. It is not surprising that
people in this role are often known as "testers". Of course, the role
is more than just testing. It's about contributing to the quality of the final
product.
What's the Quality Assurance
role?
The quality assurance (QA) role is
one that is focused on creating a quality deliverable. In other words, it is
the responsibility of the QA role to make sure that the software development
process doesn't sacrifice quality in the name of completed objectives.
The QA role works with the
Functional Analyst (FA) and the Solutions Architect (SA) to convert the
requirements and design documents into a set of testing cases and scripts,
which can be used to verify that the system meets the client needs. This
collection of test cases and scripts are collectively referred to as a test
plan. The test plan document itself is often simple providing an overview of
each of the test cases. The testing cases and scripts are also used to validate
that there are no unexplained errors in the system.
The test plan is approved by the
Subject Matter Experts (SMEs) and represents the criteria to reach a project
closing. If the test cases and scripts in the test plan are the agreed upon
acceptance criteria for a project then all that is necessary is for project
closure is to demonstrate that all of the testing cases and scripts have been
executed successfully with passing results. A test case is a general-purpose
statement that maps to one or more requirements and design points. It is the
overall item being tested. It may be a specific usability feature, or a
technical feature that was supposed to be implemented as a part of the project.
Test scripts fit into the test
cases by validating that case. Test scripts are step-by-step instructions on
what to do, what to look for, and what should happen. While the test cases can
be created with nearly no input from the architecture or design, the test
scripts are specific to how the problem was solved by the software development
team and therefore they require an understanding of not only the requirements,
but also the architecture, design, and detailed design.
The quality assurance role is
split into three parts:
First The role creates test cases
and scripts.
Second The role executes or supervises the execution of those test cases and
scripts.
Third The role facilitates or performs random testing of all components to
ensure that there's not a random bug haunting the system.
In some organizations, the quality
assurance role has two specializations. The first is the classic functional
testing and quality assurance as described above. The second, is a performance
quality assurance role where the performance of the completed solution is measured
and quantified. The performance QA role is an important part of the large
system development quality assurance process.
The quality assurance role also
has within it a wide range of potential titles and specific responsibilities.
From the entry-level quality assurance professional who executes and document
tests to the QA lead who works with the FA and SA to create the testing plan,
cases, and scripts. The role also extends through QA manager position that may
take responsibility for the quality of a solution. At this level the QA manager
and solutions architect work as peers to ensure the final solution has the
highest quality.
Getting Started as a Quality Assurance Professional
Split evenly with the developer
role the standard QA role is an entry role into the software development
process. The QA can be entered with a basic understanding of the process, and
minimal - if any - prior experience.
The entry spot for the quality
assurance role is simply running the testing scripts created by another quality
assurance professional. This requires no special skills other than the
willingness to step through a process one step at a time and to document the
results. Once experienced with running scripts other parts of the software
testing process will open up and eventually the opportunity to take on the
quality assurance responsibility for a part of the system - or future systems
may open up.
The role requires an attention to detail so anything that you can use to demonstrate this attention to detail is helpful. It is also helpful to demonstrate any time where you had to keep meticulous records, whether it was for a science experiment or any other kind of task. Since getting started with QA means taking good notes, penmanship is a plus. If this is a weakness, it's possible in some cases to take notes electronically; good penmanship is replaced with the need to be effective at taking notes on the computer.
Comments
Post a Comment