Centralize? Decentralize? Concentralize!

As I wrote in various articles, organization is one of the 3 key requisites for successful automated testing, the other two being test design and automation architecture.

A question coming up quite commonly in larger corporations and organizations is whether to centralize the test automation, either at division or corporate level, or whether to decentralize: distribute over the various groups and projects.

The question centralize/decentralize is probably one of the most common in organizational science, and numerous publications can be found on the topic. In my own experience as management I found that there is not one “good” solution. Both centralizing and decentralizing have advantages and disadvantages. The arguments for centralization are leveraging of knowledge, tools and environments. A strong central group can acquire the tools and equipment, and allocate them efficiently to various projects. They can also specialize in the various technical and non-technical aspect of testing and test automation, building knowledge, like testing and automation techniques, and create common libraries and in-house tools for various needs.

A decentralized organization of testing brings it closer to the project and the subject matter. The project manager will generally have a better grip on the activities, quality, timelines and costs involved. And it will generally be easier to leverage subject matter expertise when the testing are organized locally, even in some cases have the subject matter experts involved in test creation. However, it is more challenging to reach the same professional level, in particular for the automation part, and automation efforts can go lost after a project has finished, either by ineffective automation strategies, or simply because nobody is left to take care of the developed test-ware.

For automated testing however, I feel there is a good hybrid solution, which I like to nick-name “concentralize”. It would typically look something like this:

In this solution a core group concerns with activities like:

  • know how, methods and techniques
  • technology, tools (both acquired and in-house)
  • common libraries, actions and interface definitions
  • environments, like server racks, virtual machines, etc
  • retaining and preserving developed testware

The core group supports testing teams that are local, meaning inside or close to projects and departments. Within the test teams there is distinct:

  • test development, that includes:
    • high level test design, and test development planning
    • design development of test modules
  • project level automation, as much as possible distinct from the test development. It will typically entail activities like project level actions, interface handling, and scripting (see the Action Based Testing method for more details how this can work)

The testing teams in turn work with, and answer to, the various stakeholders, for input and assessment of developed test modules and their execution results.

In addition to the formal organization I recommend to have at least some form of informal “networking”. This could take the form of “special interest groups” for fields like test design and automation techniques. These groups periodically gather, on a voluntary basis, to discuss the profession. Typically at each meeting one of the members will present a topic, like a project experience, a research item, etc. It can also make sense to invite outside speakers. Each group has a chairperson and a secretary. The organization should stimulate with facilities, food, cost coverage of external speakers etc. This is a very cost-friendly way to build the testing and test automation profession, thus benefiting all projects involved.

 

LogiGear Corporation

LogiGear Corporation LogiGear Corporation provides global solutions for software testing, and offers public and corporate software-testing training programs worldwide through LogiGear University. LogiGear is a leader in the integration of test automation, offshore resources and US project management for fast and cost-effective results. Since 1994, LogiGear has worked with hundreds of companies from the Fortune 500 to early-stage startups, creating unique solutions to exactly meet their needs. With facilities in the US and Vietnam, LogiGear helps companies double their test coverage and improve software quality while reducing testing time and cutting costs. For more information, contact Joe Hughes + 01 650.572.1400

LogiGear Corporation
LogiGear Corporation provides global solutions for software testing, and offers public and corporate software testing training programs worldwide through LogiGear University. LogiGear is a leader in the integration of test automation, offshore resources and US project management for fast, cost-effective results. Since 1994, LogiGear has worked with Fortune 500 companies to early-stage start-ups in, creating unique solutions to meet their clients’ needs. With facilities in the US and Viet Nam, LogiGear helps companies double their test coverage and improve software quality while reducing testing time and cutting costs.

The Related Post

Introduction In many of the Test Automation projects that we are involved with using our Action-Based Testing methodology, management has expressed a need to relate tests and test results to system requirements. The underlying thought is that automation will create extra possibilities to control the level of compliance to requirements of the system under test. ...
Has this ever happened to you: You’ve been testing for a while, perhaps building off of a branch, only to find out that, after all of this time, there is something big wrong. It’s a bad build and now you have to go backwards, fix something, and get a new build. Basically, you just wasted ...
September Issue 2019: Advancing Automation
Take 5 and test your knowledge on the Software Testing essentials covered in our March 2019 issue. Good luck!
Jenkins is a Continuous Integration (CI) tool that controls repeatable tasks in software development. Check out this guide to see how TestArchitect seamlessly integrates with Jenkins to establish a CI environment for Automated Testing.
When it comes to performance testing, be smart about what and how you automate Listen closely to the background hum of any agile shop, and you’ll likely hear this ongoing chant: Automate! Automate! Automate! While automation can be incredibly valuable to the agile process, there are some key things to keep in mind when it ...
Every once in a while a book is put together that should be read by every person with a relationship to software development. This book is one of them. Everyone dreams of automating their software testing, but few make it a reality. This down-to-earth book contains stories of 28 teams that went for it, including ...
Automated Testing is a huge part of DevOps, but without human-performed quality assurance testing, you’re increasing the risk of  lower-quality software making it into production.  Automated Testing is an essential DevOps practice to increase organizations’ release cadence and code quality. But there are definitely limits to only using Automated Testing. Without human quality assurance (QA) ...
Two dominant manual testing approaches to the software testing game are scripted and exploratory testing. In the test automation space, we have other approaches. I look at three main contexts for test automation: 1. Code context – e.g. unit testing. 2. System context – e.g. protocol or message level testing. 3. Social context – e.g. ...
What is the Automation ROI ticker? The LogiGear Automation Return on Investment (ROI) ticker, the set of colored numbers that you see above the page, shows how much money we presumably save our customers over time by employing test automation as compared to doing those same tests manually, both at the design and execution level.
Developers of large data-intensive software often notice an interesting — though not surprising — phenomenon: When usage of an application jumps dramatically, components that have operated for months without trouble suddenly develop previously undetected errors. For example, the application may have been installed on a different OS-hardware-DBMS-networking platform, or newly added customers may have account ...
I’ve been teaching a lot lately, was in India for one week, and I’m off to Seattle in two weeks to teach on performance topics. I thoroughly enjoy teaching, it allows me to stay sharp with current trends, and provides a nice break from the “implementation focus” that I generally have day to day.

Leave a Reply

Your email address will not be published.

Stay in the loop with the lastest
software testing news

Subscribe