QA Tester vs. QA Engineer vs. QA Architect

[This article was collectively written by few of my colleagues and myself few years back when we were in process of structuring the QA Organization framework. I landed upon it today while I was going through some of my old notes. A lot of collective experience and brainstorming had gone into it. Publishing it here with the hope that it might be useful to a wider community.]

Background:

Our organization’s target customers are typically Independent Software Vendors (ISV) and Application Service Providers (ASP). For such typical partners, Software Product Engineering is an exercise in managing complexity. The complexity exists within the software design itself, within the software organization of the company, and within the industry as a whole. It can span multiple technologies and often involves multiple sub-disciplines. Software specifications tend to be fluid, and change rapidly and often, usually while the SDLC is still going on. Software teams also tend to be fluid, likewise often changing in the middle of the design process. Hence it is important that the team has to have the ability of making decisions under constraints of limited time, resources, and knowledge. This is where the notion of Engineering holds its value.

Engineering is more about how you do the process than it is about what the final product looks like. Programming and the build/test cycle are central to the process of engineering software. We need to manage them as such. The economics of the build/test cycle, plus the fact that a software system can represent practically anything, makes it very unlikely that there are any general purpose methods for validating a software design.

Considering the above the Engineering aspects and the non-engineering aspects of Software Development needs to be identified. Also, it needs to be recognized that there are specialists who are well-versed in doing either of the tasks. These specialists typically originate on the basis of their educational path or as in many cases – the aptitude. At the same time it is important that the expectations of the capability of the individuals needs to be well-understood by all the stakeholders. Any mis-match in terms of capabilities and expectations, typically tends to adversely affect on the final outcome of the SDLC delivery.

While this applies to all the domains of SDLC, this exercise is being done for professionals who are involved in the Quality Assurance (domain). The goal is to categorize these professionals based on their inherent capabilities (and hence the expectations set on them)

Assumptions

  • The table below characterizes three different roles. These roles are similar from the functional perspective (i.e. Quality Assurance), however are different from capabilities and expectations perspective.
  • While the table below does not suggest a career roadmap, it can help individuals in terms of career aspirations.

Comparison of Roles:

QA Tester vs. QA Engineer vs. QA Architect

QA Tester QA Engineer QA Architect
Function – Strong in test execution. Function – Test planning, Test Design and execution. Function – Define approach to test entire systems
Write and execute test cases – may not be coverage driven. Requirements driven testing. Prepare test plans, develop test cases and execute tests with a focus on coverage. Design, plan, execute, monitor, improve testing process for a testing engagement.
Determines Quality. Good to answer – did you find any bugs? Engineers Quality. Good to answer – what is the quality of the product? Provides answers to -

  • What are the quality attributes and goals of the product?
  • What should be the test strategy, methodology and test tools so as to ensure product quality?
Linear thinkers, low capability of analysis and re-usability of efforts/resources. Logical thinkers. Ability to resolve issues using abstraction. Capability in analysis/predictions/improvements. Analytical and creative. Systems thinking and quantitative/statistical thinking capabilities.
Requires a defined environment. Typically are weak in finding solutions in ambiguous/constrained environments. Can reconcile conflicting constraints. Able to define the environment.
Low process oriented capability. Process and metrics/measurement driven. Defines standards, guidelines, methodologies, metrics.
May not be cost sensitive (time, effort, monetary, etc.) Cost sensitive Cost sensitive
Good for UI Testing

  • Regression testing
  • Portability testing
Good for System/functionality testing

  • Performance testing /Automation
  • Independent validations
  • Domain testing
  • Programming skills orientation
Good for defining, planning and managing for test engagements.
  • Ability to understand the goals of an organization and suggest a test architecture.
  • Able to suggest alternative approaches and benefits of the same.
  • Ability to suggest improvements to process and technology areas for a test system.
  • Ability to define the framework for testing.
  • Ability to analyze risks and provide mitigation plans.
  • Ability to analyze test requirements and provide a solution in terms of test approach and design, suggested tools etc.
  • ability to design the entire test life cycle processes.
  • Capability to lead and co-ordinate a team of analysts for testing engagements.
  • Software development skills.
  • In touch with new methodologies and tools for software testing.
  • Ability to design, plan and execute and monitor a testing process.
Typical involvement is in later stage of SDLC Best to have them involved in complete SDLC Cycle. Best to have them involved in complete SDLC Cycle.
About these ads

Tags: , , , ,

8 Responses to “QA Tester vs. QA Engineer vs. QA Architect”

  1. QA Tester vs. QA Engineer vs. QA Architect Says:

    […] QA Tester vs. QA Engineer vs. QA Architect […]

  2. QA Tester vs. QA Engineer vs. QA Architect « Manish Rathi's Blog engineering software Says:

    […] Read more here: QA Tester vs. QA Engineer vs. QA Architect « Manish Rathi's Blog […]

  3. Why Product Development today needs a Product Engineering Platform? « Manish Rathi's Blog Says:

    […] which I had written in my pre-blogging days. Few weeks back I had posted another one titled "QA Tester vs. QA Engineer vs. QA Architect". Once again, rather than having it cold-stored on my file system, I am posting it here with the […]

  4. Mukul Says:

    Nice article. Will help in building a Quality process in my organization. Thanks.

  5. Bobby Bitchin Says:

    I think you need to change your title and premise to “Test Analyst” vs. “Test Engineer” vs. “Test Lead”. Reason being is that from the beginning using the term “Quality Assurance” is totally misleading for what it is these positions do. They are involved in Testing only, and Testing is a piece of the QA puzzle. Other areas of Quality Assurance include Audit, Metrics, Process Management, Software Configuration Management & Build, and Risk Management to name a few.

    If all you are doing on a project is testing then you are a “Tester”, period. You are not QA. You do not and cannot test in quality to a product/system. Period. You cannot “determine” the quality of the system, all you can do is report your findings from your testing effort and allow all stakeholders to make a determination of readiness to ship the product. That doesn’t always mean it is “quality”.

  6. Prashanth Says:

    You seem to be confused a bit. Even though both are related, QA and Testing are different. QA has more to it than Testing. Having said that, good article on “testing” fundamentals though.

  7. Nik V Says:

    I have found Quality to be very hard to define in the business of product design and manufacture. My organization long ago simplified it to “what the customer wants”, which can be a very difficult goal to achieve. We use defect metrics to monitor manufacturing and customer problems. We did away with our quality testers a long time ago with the objective to spread the idea that everybody is responsible for quality rather than a select few. I agree with the statement you cannot test in quality, but you can concentrate on the processes of design engineering and manufacturing to create processes that produce high quality products. My company develops software to interface with spectrometer instruments as well as designing and manufacturing the spectrometers.

  8. QA Tester vs. QA Engineer vs. QA Architect « QA – грамотно Says:

    […] [This article was collectively written by few of my colleagues and myself few years back when we were in process of structuring the QA Organization framework. I landed upon it today while I was going through some of my old notes. A lot of collective experience and brainstorming had gone into it. Publishing it here with the hope that it might be useful to a wider community.] Background: Our organization's target customers are typically Independent … Read More […]

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s


Follow

Get every new post delivered to your Inbox.

%d bloggers like this: