The answers to these questions depend on a number of factors. For instance, you should take into consideration if your company, or single departments within your company, rely heavily on certain functional aspects of one tool and not as much on the functional aspects of another. Of course, if one tool embodies a function that you desperately need and the other one doesn't have anything that comes close, then your decision should be an easy one. But you should thoroughly review the pros and cons of each testing tool, and be careful not to rush the process. Hasty decisions are often irrational and do not take the whole picture into account -- which could cause you aggravation down the road.
My experience in dealing with people in this situation seems to follow a well-worn pattern. The chosen tool often doesn't answer to the company's needs and/or is not compatible with other systems, meaning end users are unable to properly use the tool, which in turn makes the tool incapable of providing the ROI it was intended to provide -- and, in the end, incapable of increasing quality.
Just as importantly, do not allow any vendor to influence your decision. Many software vendors make promises to their clients in order to gain new business. Some guarantee speedier time-to-market and better ROI; others tout their optimized testing capabilities; and still others promise access to a wealth of QA-related resources at your fingertips, like white papers and online and personal support (for an extra fee, of course).
An in-house individual who has little or no contact with prospective vendors should review and analyze the tools and their processes to see which ones best fit the company's current and future needs. It may also be wise to steer clear of appointing temporary hires or consultants for this task, simply because many software vendors form partnerships with consultant agencies, and their influence can sometimes trickle down the chain.
Your ability to make a good decision without being influenced by internal or external factors is important. Nowhere is this truer than when a merger of two or more companies, or the merger of departments within a company, gives rise to the question of which software testing tool will continue to be used and which one will be dumped. The reality is that many commercial software testing tools are very similar to one another, and the decision often rests on which one is better for the environment in which it will be used. You should consider the manner in which the tool will be used, who will use it, how it will be managed, how the tools' implementation will be communicated, and if any governance is needed to ensure its correct use throughout the enterprise.
Your decision should not be based on whether one of the merged departments or companies was using one tool more than another tool, or whether a vendor touts one feature more than another. Also, your decision should not be based solely on the requests of management (although, to a certain extent, adhering to their wishes is important). Rather, you should collaborate with the technical staff that will be using the tool on a daily basis. They have the best knowledge of what the company needs to maintain quality, and what kind of testing tool will be most likely to help the merger transition smoothly.
During your decision-making process and discussion with managers and technical staff, you may want to take the following into consideration:
- What are all the software testing tools that are currently being used?
- Many tools have applications within applications -- how will you integrate their functions?
- How accessible to the users are the tools? (Client/server, Web-based, VPN, etc.)
- What kinds of system applications exist in the company? In what software language, database and framework are they orchestrated?
- How many of the tools' functions are being used? Is it worth it to even keep these tools around if you're using only one function, only some of the time (i.e., automation scripts, data within the test management system, etc.)?
- If your company picks one tool over another, can data be consolidated and automation scripts be converted?
- Companies and their individual departments need to have a structured process for the tools' integration. If the tools are integrated without a structure, you will not be using them to the best of their ability. What are the current processes your company has in place and how can they be improved?
In today's world, it seems that software quality is only as good as the tools that assure it. So companies need to look at the broader scope of how those tools are put into place. Making an informed decision about the kind of software testing tool to use, planning ahead for its implementation, and developing a strategy for integration will ensure that quality is practiced to its fullest.
About the author: John Scarpino is director of quality assurance and a university instructor in Pittsburgh. You may contact him at Scarpino@RMU.edu.