Top Banner
4b Companies have used this systematic process and set of foms to select tools that more close4 match their requirements. IEEE SOFTWARE Evaluating and Selecting Testing Too ROBERT M. POSTON and MICHAEL P. SEXTON Programming Environments times, software-developmentmanagers are pushing to get more and better testing done faster.Most recognize that automat- ed testing tools facilitate higher quality and more productive testing, but acquir- ing such tools is often quite complicated. Managers typicallymake the first move toward purchasing tools by assigning someoneto review them. Initially, the peo- ple assigned are enthusiastic about their responsibility. On the surface, the job seems interesting and easy to complete - a simple matter of surveying and compar- ing commercialtools and reporting results. Unfortunately,tool evaluationsseldom end happily. Managers often ignore or re- ject recommendations, complaining that evaluators have failed to do their home- This article also appears in the Proceedings of the Sympo- sium on Assement of Quality SofCware Development Tools, IEEE CS Press, Los Alamitos, Calif, 1992. 07407459/92/05M)/W33/$03 00 0 IEEE S work and cannot quantify their findings. Managers are reluctant to purchase tools on the basis of incomplete information. Evaluators, on the other hand, may blame managers for not clearlyspecifymg the in- formation expected in evaluation reports. When managers do buy a tool, it may not be used. People don’t want to advertise their part in buying expensive tools that sit on the shelf, so fewwrite follow-up reports on savings or losses. Instead, the company with a nonperforming tool suffers in si- lence. Some companies consistentlybuy test- ing tools that serve their s o h a r e testers and developers well. What is their secret? Part of it may be that their managers and evaluatorsuse a systematic data-collection method -usually with forms or checklists to evaluate tools. Ever since testing tools were invented, people have circulated poorly written and 33
10

Evaluating and selecting testing tools - IEEE Software

May 08, 2023

Download

Documents

Khang Minh
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Evaluating and selecting testing tools - IEEE Software

4b Companies have used this systematic process and set of f o m s t o select tools that more close4 match their requirements.

I E E E S O F T W A R E

Evaluating and Selecting Testing Too ROBERT M. POSTON and MICHAEL P. SEXTON Programming Environments

times, software-development managers are pushing to get more and better testing done faster. Most recognize that automat- ed testing tools facilitate higher quality and more productive testing, but acquir- ing such tools is often quite complicated.

Managers typically make the first move toward purchasing tools by assigning someone to review them. Initially, the peo- ple assigned are enthusiastic about their responsibility. On the surface, the job seems interesting and easy to complete - a simple matter of surveying and compar- ing commercial tools and reporting results.

Unfortunately, tool evaluations seldom end happily. Managers often ignore or re- ject recommendations, complaining that evaluators have failed to do their home-

This article also appears in the Proceedings of the Sympo- sium on Assement of Quality SofCware Development Tools, IEEE CS Press, Los Alamitos, Calif, 1992.

07407459/92/05M)/W33/$03 00 0 IEEE

S

work and cannot quantify their findings. Managers are reluctant to purchase tools on the basis of incomplete information. Evaluators, on the other hand, may blame managers for not clearly specifymg the in- formation expected in evaluation reports. When managers do buy a tool, it may not be used. People don’t want to advertise their part in buying expensive tools that sit on the shelf, so few write follow-up reports on savings or losses. Instead, the company with a nonperforming tool suffers in si- lence.

Some companies consistently buy test- ing tools that serve their soha re testers and developers well. What is their secret? Part of it may be that their managers and evaluators use a systematic data-collection method -usually with forms or checklists to evaluate tools.

Ever since testing tools were invented, people have circulated poorly written and

33

Page 2: Evaluating and selecting testing tools - IEEE Software

Testquality and -productivity predictions

. \ \

tvaiuator's list

4. Rate tools

Tool-evaluation Tool surveys database

tools - -. __. _.

Figure 1. Tool evaluation.

Test-productivity (cost) data

Predicted cost of testing in staff months Predicted cost for all testing Predicted cost per testing activity

Planning testing Defining test objectives Designing tests Constructing test environments Executing tests Evaluoting tests and software

Test-quolity da ta

Failure density Test coverage

Requirements coveroge Input toveroge (valid, invalid, etc.) Output coverage Structure coverage (DU path, branch, etc)

Present doto from recent

project

Predicted dato if new tools are

not acquired -

Figure 2. Data-collection fm ja?- needs analysis.

badly organized survey forms throughout their companies under the guise ofcollect- ing useful tool data. No wonder people had difficulty malung wise tool selections when data was collected in such a manner. A data-collection system that leads a com- pany to successful tool selections must be carefully devised.

Such a system was recently created for indusq-wide use, if indeed, in a slightly unorthodox way. In 1987, a group of skilled tool users and software developers came together to develop a Reference Model for Computing System-Tool In- terconnections, IEEE Standard 1175,

which enables tools to communicate. The goal of the working group was to define tool interconnections, but the group soon reabzed the importance of considering in- terconnections during tool evaluations. As I I75 describes, interconnections affect and are affected by how a tool works in an organization, the platforms it runs on, and how it shares information with other tools. If any of these interconnection aspects are ignored, successful tool implementation will be thwarted. Other evaluation criteria are necessary, but they must be supple- mented by interconnection criteria.

Besides their knowledge of intercon-

nections, those working on 11 75 shared many experiences about subtle distinc- tions in tools and what makes one slightly better than another in a certain situation. When the group completed its work on 1175 in December 1991, it also intro- duced a spin-off of its work - a useful tool-evaluation system. Of the companies that supported work on 1175, several are experimenting with t h ~ s system, and four have used it to purchase and implement selected tools successfully.

One reason for this success is the system's many organizational features and safeguards. It ensures that evaluators re- cord information only once in one place, protecting against redundant or overlap- ping information. It provides a compre- hensive view of tools under consideration. It accounts for tool-dependent factors like functionality, performance, and ease of use, as well as environment-dependent in- formation like how the tool affects or is affected by the organization using it, the platform it runs on, and other tools. Fi- nally, it minimizes subjectivity. The infor- mation evaluators enter is quantified, al- lowing comparisp by measurement. When the tools are in place, an evaluator can use these statistics to reevaluate them.

Naturally such a system is only as effec- tive as the forms it uses. We have found a combination of forms works best for eval- uation: some from 1175, a needs-analysis form, and forms for tool-selection criteria and tool classification to organize selec- tion criteria and data about the tool. Cri- teria weighting, rating, and summary forms are also needed once data is col- lected.

With these forms, evaluators have a reasonably accurate and consistent system for

+ identifymg and quantifylng user needs,

+ establishng tool-selection criteria, + finding available tools, and + selecting tools and estimating r e m

on investment. As Figure 1 shows, these forms encom-

pass more than just tool selection. Our data- collection system is also suitable for evaluat- ing software tools other than testing.

34 M A Y 1 9 9 2

Page 3: Evaluating and selecting testing tools - IEEE Software

ANALYZING USER NEEDS

When managers make an educated guess (usually prompted by the techcal staff) that employees can benefit from using automated testing tools, they have identified a possible need. As a tool evalu- ator, your first responsibility, before look- ing at any tools, is to find out if the managers’ perceived need is an actual need.

We assume that evaluators perform all activities including needs analysis. Some companies may assign people other than evaluators to the activities we describe or even partition the evaluation process dif- ferently. But our data-gathering system should give you a comprehensive tool evaluation, even allowing for organiza- tional differences.

Needs analysis is important to the credibility of all concerned with tool eval- uation and will be referenced many times throughout the evaluation. A well-pre- pared needs analysis can prevent a variety of purchasing mistakes.

The first step in needs analysis is to visit the quality-assurance department, which may have productivity and quality statis- tics already compiled. You may end up vis- iting several other departments before completing the analysis.

Figure 2 is a form for organizing needs- analysis data. To use it, you must know what your company means by “testing” and what activities are involved. Many people assume that software testing in- cludes both failure detection and elimina- tion (debugging), but some progressive organizations now consider testing to he failure detection only.

The next step is to determine how much testing is being done now. First, see how many staff months were expended in testing on the most recently completed software project (you usually won’t find that many statistics on older projects) and then look at how many projects are sched- uled in the next year or two. By using sta- tistics &om the most recent tx-oiect and

ing in staff months, assuming the testing staff uses no new tools. The estimate serves as a baseline for comparison with tool-assisted testing.

Test quality is also important, with the customer being the ultimate judge. Find out how many failures customers have un- covered in the last software release. Such failures are often reported in tenns of fail- ure density or number of failures per thou- sand lines of code. Reports on recent fail- ure densities are useful for inferring failure densities for future projects.

Besides examining and projecting from failure histories, you should be alert to an- ticipated changes that could influence test effectiveness. Examples are planned activ- ities to reduce failures, like manual inspec- tions, and upcoming staff reorgfizations.

Estimated test quality is meant to shov predicted test quality if no new testing tools are introduced. Like the productiviq estimate, the quality estimate will be re. ferred to later in the evaluation.

Several techniques to predict softwarc productivity and quality are more accuratc than the simple extrapolations we suggest Function points, publicized by Caper: Jones,’ and test-quality measurement, de. veloped by Programming Environ- ments,‘ are two such techques. But fo tool evaluation, these techniques arc overly sophisticated. Ballpark estimate: with error margins as high as even 20 per cent should be adequate to justify mos tool evaluations.

Figure 3 shows typical failure thresh. olds - number of allowed failures -

4 1 A 0 1 I 1 I I I I I

I

1976 1978 1980 1982 1984 1986 1988 I990

I ,

predicting testing work On upcoming pro- Figure 3. Failure threshoh. A failure threshold is the number o f allowed failures. Some companies st

jects, YOU Can tsimate the number of staff i threshoh as absolute numben. Motorola, fir example, has established the s i x - s i p quality factor $3.. months required for near-term testing. ‘ failuresper million parts. Other companiesset a failure-reduction goal. Hewlett-Packard is striving to reduc This estimate is the predicted cost of test- failure densig by afartorof 90percent.

I E E E S O F T W A R E 3 5

Page 4: Evaluating and selecting testing tools - IEEE Software

compiled from Bzlsinars Week's special issue on q~al i ty .~ If predicted staff-month ex- penditures for testing are very low, or if predicted failure-density numbers are below a company-established threshold, you should go back to your manager be- cause the testing need may not warrant a full-scale tool evaluation.

ESTABLISHING SELECTION CRITERIA

Once you have quantified the company's need for testing tools, your next job is to establish criteria for tool se- lection. In the form in Figure 4, selection criteria are arranged in four groups: gen- eral, environment-dependent, tool-de-

pendent functional, and tool-dependent nonfunctional. Each group serves as a fil- ter for subsequent groups. In that way, only the tools most likely to succeed are considered further.

After you enter the selection criteria, the final process in establishmg criteria is to weight them.

Criterio Weighting value factor ~-

Group 1: General criteria Minimum acceptable 1.1 Productivity gain 1.2 Quality gain

Group 2: Environment-dependent criteria Moximum allowed cost for 2.1 Testing tools 2.2 Organizational chonges for new or revised

2.2.1 Policies 2.2.2 Techniques 2.2.3 Work-product stondards 2.2.4 Meosuremenh 2.2.5 Training courses

2 3 Platform changes 2.3.1 Hardware - 2.3.2 Operating system - 2.3.3 Database system - 2.3.4 language system - 2.3.5 Communications system - 2.3.6 Human-interface system - 2.3.7 Information-exchange facilities - 2.4.1 Information transfer utilities - 2.4 Tool-interconnection changes

Group 3: Tool-dependent functional criteria Minimum acceptable function 3.1 Tool function I 3.2 Tool function - 3.3 Tool function - 3.4 Tool function -

Group 4: Tool-dependent nonfunctional (ckrocteristic) criterio Minimum acceptable 4.1 Performance (response time) 4.2 Human foctors (user friendliness)

- - - - 4.2.1 Time to learn lcasual and dedicated users) 4.2.2 Time to use (cosual and dedicated users)

4.3 Reliability (mean time between failures)

Figure 4. Form fir recording tool-selection criteria.

36 M A Y 1 9 9 2

Page 5: Evaluating and selecting testing tools - IEEE Software

Ge~d cliterk. A company wants to see higher development productivity and software quality as a result of incorporat- ing new testing tools. As Figure 4 shows, these general criteria are the first a ter a tool d be subjected to. The basic ques- tion is will the amount of potential im- provement in testing productivity and quality satisfy the company?

Productivity and quality thresholds are dictated sometimes by company policy, sometimes by project managers. Some companies (or managers) demand very high thresholds, as Figure 3 shows; others are more lenient. It is important to know exactly what your company's threshold is.

To use the form in Figure 4, you record under Criteria Value the " m u m ac- ceptable thresholds, usually in percent- ages, that will justify tool purchase. For example, the company may require a 50- percent minimum productivity gain and a 40-percent minimum quality gain.

E n v ~ o n m e n t d ~ ~ criteria. Group 2 contains criteria about the tool's environ- ment. Under Criteria Value, you enter the most the company is willing to spend for each item. The degree of this commit- ment will critically affect a tool's eventual use. If commitment to every item in Group 2 is low, the company is probably not serious enough about tool implemen- tation to justify further tool evaluation.

If you can't get any commitments on dollar amounts for these items, the evalu- ation is not lost. You simply proceed as though the items have no budget restric- tions until you identify one or two tools that meet all other criteria. Then you backfit from the estimated tool cost to Group 2 criteria.

As the form in Figure 4 shows, Group 2 items include the maximum allowable cost for testing tools, organizational changes, platform changes, and tool-in- terconnection changes.

Testing took This criterion reflects how much money the company has available to buy testing tools. The company might not have any money in its current budget to fund testing tools, but it may intend to allocate funds during its next fiscal period.

You can sometimes get a forecast to fill in here if money is not yet budgeted. With an actual or projected maximum amount, you spend time considering only tools the company can afford.

Ogmi..b/w/ ch/yes. Items in h s section are also referred to as organizational sup- port elements because they represent the tool's organizational environment or con- text.

Tool evaluators and managers often give little consideration to these support elements, because they do not understand how important they are to a successful im- plementation. Studies completed as early as 1984 show that implementation usually fails when companies try

+ Techniques. Also called methodolo- gies or procedures, techniques are written descriptions of how to perform an activity. Under Criteria Value, you enter the most your company could spend to create or modify techniques. Most companies do not ay to create their own testing tech- niques but simply use well-regarded tech- niques &om the software industry? Mod- em testing tools usually support popular techques, so new tools are unlikely to cause changes in techniques. Occasion- ally, however, an innovative tool builder will incorporate a new techque that will cause testers to change how they work. Tools that require a company to change its testing techniques (work procedures) will

have a cost attached that to incorporate a new method or tool without

you should account for. + Wmk-product stan-

accounting for these ele- Manaaers Can also h r z . ~l~~ called docu- merits?,' use Shtistics from mentation standards,

work-product standards These items are de- fhed in 1 175 as needs analvsis and arewrittendescriptionsof

+ Policies. Also called directives, instructions, or

are written descriptions of

the items (documents, code, or data) thatmust be

Work-product standards

selection citeria to methodologies, policies reevaluate tools once produced in an activity.

who must perform what thev are ourchased. for testers include de- l l

activities in which life- cycle phase using which tools. Under Criteria Value in Figure 4, you enter the most your company could spend to create or modify policies to ac- count for new tools. If a new tool enables testers to create test cases in the first life- cycle phase of development when they usually create them in the last life-cycle phase, company directives or instructions to software engineers must be rewritten to reflect the change.

If no company policies are in place, management may consider three altema- tives for acquiring policies. Some testing- tool vendors provide bee sample policies with tool purchase. Management can also hire consultants to tailor company policies or write new ones. Usually the most ex- pensive alternative is to fund employees to develop or modify policies. A from- scratch policy will probably be difficult and time consuming for employees to cre- ate, since few will be experienced policy writers.

scriptions of test plans, test cases, and failure re-

ports. Does the company need to change any of those standards to accommodate a new tool? If so, you enter under Criteria Value how much money management can allocate to make those changes.

+ Memremens. Also called metria, measurements are written descriptions of how to evaluate work products quantita- tively. When testers measure how many test cases have passed, failed, or have not been exercised, they have measured a work product quantitatively. Testers also need to measure things like test coverage and software reliability. Suppose a com- pany wants to buy a testing tool that cre- ates test cases. Does the new tool change how the company counts passed and failed test cases? If it does, you enter under Cri- teria Value how much money the com- pany could spend to change metria defi- nitions to accommodate new testing tools.

+ Training. T h s item represents expe- rience in applying other support elements

I E E E S O F T W A R E 37

Page 6: Evaluating and selecting testing tools - IEEE Software

Managing testing

0 Predict cost and schedule for testing 0 Plan testing of work products, activities, and resources 0 Monitor testing of work products, activities, and resources 0 Report testing of work products, octivities, and resources

Defining requirements and test objectives

0 Record requirements ond/or test objectives 0 Verify requirements for testability

Designing tests 0 Design, generate, and document specification-based test cases [=1 Trace requirements, input, output to and from test cases 0 Design, generate, and document product-based test cases 0 Trace paths, branches. and statements to test cases 0 Predict expected output

Constructing test-execution environments 0 Check code 0 Instrument code for tracing dataflow and control flow

Generate test harness (interfaces, stubs, drivers, etc.)

Executing tests

0 Record executions of test cases and scripts 0 Replay executions of test cases and scripts 0 Record test case and script actual outputs 0 Control test case ond script librories a Trace dataflow ond control flow

Evaluating tests and s o f t w o r e 0 Evaluate test-case pm/fail (compare actual and expected output1 0 Evoluote failure statistics (toto1 foilures, failure-detection rote, etc.) 0 Evaluate testing work (test cases created, passed, etc.)

0 Requirements Coverage 0 input coverage (valid, invalid, etc.) 0 Output coverage (normal and error outputs)

Evaluate test quality

Structure coverage (interrupt, DU path, bronch. statement, etc.)

Evoluote softwore quality 0 Functionality 0 Performance 0 Usability 0 Availability 0 Reliability 0 Maintainabilily

while using tools. When a new testing tool is purchased, testers d probably require training in three parts. They need to learn how to operate the tool, how to prepare tool input and how to use tool output. Most testing tools are easy to operate. Training usually amounts to a quick walkthrough of a menu system and can often be accomplished on the job. But learning to derive input for sophisticated tools and how to handle output efficiently requires classroom time. The amount you enter under Criteria Value is how much the company is willing to pay for training.

pkrtfwm hnp This section of the form in Figure 4 deals with criteria for selecting hardware and software platforms. Under Criteria Value, you enter the amount the

company is &g to spend for changes to these platforms. Managers often say that a new software testing tool must run on ex- isting hardware. You enter a zero when that restriction is imposed. You may also find similar restrictions on other platform components (items 2.3.1-2.3.7). However, because platform configurations are in flux in most companies, you should check that information is up to date. An investment allowance of zero for a platform compo- nent one week may change to a large al- lowance the next week.

Todinternnneairn dmgs This section of the form has to do with how the new tool will affect communications among tools. Questions include does a new tool require a new repository? Must import and export

capabilities be added to new tools or to already purchased tools to facilitate neces- sary communications? Must a transfer u d t y or tool interface be built? This area is highly specialized, and you’ll probably need to talk to expert tool users.

You may also want to consider tools that conform to 1175 because tools that read from and write to 1175’s Semantic Transfer Language will require little in- vestment for tool-interconnection changes.

Toocdependent fulKtiond titer# In Group 2 of Figure 4, all criteria are related to the tool’s environment (context) in Group 3, all criteria are related to the tool itself.

Typically, people in an organization get together and brainstorm about the functions and features they want in new testing tools. The brainstormers try to produce a wish list to give to evaluators. The informal requirements on the wish list are essential for tool evaluation, but the list is usually incomplete and may contain definitions that are inconsistent with in- dustry-accepted or vendor definitions. Often the list will contain overlapping or redundant requirements.

Testers and managers can use Figure 5 , whch gives testing-tool classifications, as a checklist for selecting jobs (functions) they want testing tools to do. Within each job category is a list of smaller jobs or tasks. Testers and managers can check or num- ber the boxes at the left of the task names to assign task priorities. When this check- list is filled in, it will contain more com- plete, organized, and substantive informa- tion than can be found in most wish lists.

You can plug the information &om this checklist into Group 3 of Figure 4. Beside 3.1 to 3.4, there is space to enter four tool- function names. You record the most re- quested function &om the checklist as 3.1 followed by other functions in order of preference. If you are asked to compare more than four functions among tools, you can extend the Group 3 list, but it is easier to locate appropriate tools if you concentrate on a few, high-priority func- tions.

As the evaluation progresses, testers and managers may change their minds

M A Y 1992 38

Page 7: Evaluating and selecting testing tools - IEEE Software

Names of applicable standards

about the tool functions they want most. The function in 3.1 may become 3.2 and so on. Ifnecessary, you can use the space in Criteria Value to assign the new priorities.

Tookdependent nonfulKtknd aitem Like Group 3, Group 4 is concerned with the tool itself, but Group 3 deals with func- tions while Group 4 deals with a tool’s measurable properties, attributes, and characteristics. Performance, often mea- sured in response time, is the most widely referenced characteristic. Other measur- able characteristics include reliability and human factors, such as the time it takes to learn a tool and use it.

In tlus section of the form in Figure 4, you enter one minimum acceptable re- sponse time that applies to each function listed in Group 3. Response time must be defined accordmg to a standard load or benchmark For example, a function that compares expected and actual outputs must compare two 100,000-byte files (load) in less than one minute (response time).

Human factors is a very tricky area in tool evaluation. Nearly every wish list will include a requirement that testing tools be easy to use or user friendly. These terms are red flags! A user can be frequent, a- sual, left-brained, right-brained, a touch typist, or a hunt-and-pecker. “Easy to use” is too vague to work with.

Also, at this point, you shouldn’t wony about mice, menu systems, touch panels, or any of the interface features people dunk a tool must have to be easy to use. Instead, concentrate on quantifiable human factors hke the time it takes to leam and use a tool.

Under Criteria Value in Section 4.2, you enter the most time the company al- lots for a tester to leam to use a tool (4.2.1) and the most time the company will give a trained tool user to perform a testing func- tion (4.2.2).

Under Criteria Value in Section 4.3, whch deals with reliability, you enter how many tool breakdowns (number of times the tool is inoperable) the company will tolerate. Testing tools are supposed to make other software products reliable or failure free, so it seems appropriate to

Figure 6. Tool-to-Organizatiun interconnection profile. This fm can alro be wedfbr creating an Organiza- tion profile by replacing “Tool Name” with “Organization Name.”

judge testing tools for their reliability. Occasionally, when examining very

similar tools, you may consider character- istics in addition to those listed in Group 4, like robustness or maintainability. These and other tool-dependent characteristics are detailed in a technical report from the Software Engineering Institute.’ If other characteristics are important, simply ex- pand this section, but remember that ex- pansion is an exception. More is generally not better in most sections.

We*+tiy. After you have filled out all criteria values in Figure 4, you are ready to meet with the testers who wdl use the new tools to reach a consensus on the relative importance, or weight, of the criteria. The rules for assigning weights are simple. Every criterion must have a weight, and no two criteria may have the same weight. If two or more criteria are weighted equally, common sense should tell you that weighting begins to lose its usefulness. The most important criterion gets the greatest weight; the least important crite-

I E E E S O F T W A R E

non gets the lowest weight. Putting weights on criteria is an easy but

significant activity because it brings tool users to agreement on which requirements are most important. And it makes every po- tential tool user part of the evaluation.

SEARCHING FOR TOOLS

If you’ve followed the preceding rec- ommendations, you are well prepared for tool shopping. You’ve completed a needs analysis, edsted management‘s help to establish benefit and cost thresholds, and made sure that the testers sanction the tool’s requirements and generally agree on what is most important.

At tlus point, you’ll be relying on a number of standards, articles, and sur- veys. We suggest you begin with the fol- lowing:

+ IEEESd 1175/1991,ATnbl--Ui~Stan- dnd~Moddj6rCizwputmgS’Td h tm”. ContactIEEE, Stan- Of- fice, PO BOX 1331, F’katawa~, NJ 08855- 1331;(908)562-1571.

39

Page 8: Evaluating and selecting testing tools - IEEE Software

Tool-To-Platform Interconnection Standard Profile

Tool name: Date:

Plotform interconnection Names of applicable standards

Hardware

Operating systems

Database systems

language systems

Communications systems

~

User-interface systems

Data-file-exchange formats

Document-exchange formats

Description-exchange formats

Figure 7. Form fm creating a hardware and software profile. Thir form can also be used to create an organization profie by replacing “Tool Name” with “Organization Name.”

+ Poston, Robert R., “A Complete Toolkit for the Software Tester,” American Pmgammer,Apr. 1991,pp. 28-37. Poston describes all types of testing tools and how they fit into the software-development life cycle. Contact Programming Environ- ments (address on p. 42).

+ Test Preparation, Executim, and Anal- ysk TmlsRepart, Software Technology Sup- port Center, 1992. This survey, which is annually updated, will be of particular in- terest to the US defense community. Contact Greg Daich, STSC, 00- ALCITISE, Hill Air Force Base, Salt Lake City, U T 84056; (801) 777-7703 or Defense Service No. 458-7703.

+ Ta‘ng Tmk Reference Guide, A Cata- log $Sojhare Quality Suppart Tmk, com- piled by Jerry Durant, Software Quallty

Engineering, Jacksonville, Florida, 1991. This is a long list of commercially available tools that assist with quality assurance as well as testing. Contact SQE at (800) 423- TEST

+ Graham, Dorothy R., Cumper- Aided Sojhare Esting: The CAST Report, Unicom Seminars, Uxbridge, Middlesex, UK, 1991. T h ~ s tool description and sur- vey is particularly useful to European tes- ters. Contact Unicom Seminars, Brunel Science Park, Cleveland Rd., Uxbridge, Middlesex, U38 3PH; (08-95) 56484.

creotillg orgmhation profiles. While wait- ing for these publications to arrive in the mail, you can use the forms in Figures 6 through 8 to profile or outline the organi- zation in which tools will operate. You

need only delete “Tool Name” at the top of the form and insert “Organization Name.” Names of standards documents go in the blanks on the right side. If no document references are available, refer to the items in Group 2 (environment-de- pendent criteria).

In filling out the form in Figure 7, again enter the applicable standards. If the references called for are not available, 1 175 (pp. 13 and 14) provides a list of rec- ommended standards for each category.

The form in Figure 8 deals with tool- to-tool communication. 1 175 offers all the information required for this form if the company needs standards for connecting tools. Most companies want to buy tools that can communicate with each other on day one. They do not want to spend time and money budding interfaces. This is a pay-now or pay-much-more-later issue. Pay a little now for a complete profile that leads to the purchase ofintegrable tools, or pay a lot more later to build interfaces so that tools can work together.

Usillg surveys. After using the forms in Figures 6 through 8 to create organiza- tional profiles, you are ready to use them as tool surveys. Usually tool surveys wdl list many more tools than you care to con- sider. Also, thefre often out of date be- cause they’re not published frequently enough to keep up with the changes in the tool market. You may be able to screen some tools out immediately, such as those that do not perform any itemized func- tions. Your goal is to compile a short list of candidate tools flom the long survey lists.

You can make your short list more complete by searchmg for new-product announcements in trade joumals. Many times your evaluation may be underway when promising new tools come on the market.

C~nttKting vendors. When you are satis- fied with the short list, the next step is to request current information about the candidate tools from vendors. You can write a form letter askmg vendors for

+ current product description or bro- chure,

+ pricelist,

4 0 M A Y 1 9 9 2

Page 9: Evaluating and selecting testing tools - IEEE Software

+ completed set of tool-profile forms (send blank forms in Figures 6-8 for ven- dors to complete),

+ list of current users who will spend time talking to potential users, and

+ case studies or references to case studies that document productivity or

The kind of reply you receive can tell you a lot about the vendor. A prompt, complete reply often means good service ahead; a late, incomplete, or inaccurate re- sponse may foreshadow unsatisfactory fu- ture service.

You can verify vendor-provided mfor- mation by checking with people who have used or studied the vendor’s tool. With the corroborated tool information, you are ready to compare what a tool offers with what the organization needs. The closer the tool profile correlates with the organi- zational profile, the higher the probability that the tool will serve the company well.

quality gains.

Using other whotia~s. Beyond the infor- mation the vendor provides, you may find published evaluations ofa tool. Sometimes people within your own company have al- ready reported on a tool. Many tool evalu- ations appear in trade magazines.

However, magazines often claim their evaluations have been performed by ex- pert tool users. But is the expert tool user also an expert tester? Can the expert iden- tify the merits of a reliability testing tool as opposed to a control-flow testing tool? Does the expert know the difference be- tween a terminal-based execution tool and a host-based execution tool? Unless the expert understands testing well enough to make these kinds of distinctions, the eval- uation in the literature may not be a good source. The general rule here is to be wary of accepting any published evaluation or in-house report without question.

SELECTING TOOLS

With vendor feedback and published evaluations at hand, you are ready to begin rating tools. A rate is a number between zero and one, much k e a correlation fac- tor in statistical analysis. You derive it by comparing vendor-supplied and other

I E E E S O F T W A R E

Tool-Interconnection Stondord Profi le

Tool nome: Dote:

Tool interconnections

Mechanisms for transfers Direct File-bosed Central repository Communication system Other

Processes of transfers Send Receive

Information descriptions Syntax Semantics

Names of applicable standards

Project manogement Measurement (metrics)

Figure 8. Form for creating a tool-intwcmnectim poj?k.

collected tool information to the Criteria Value information in Figure 4. If tool in- formation completely matches a criterion value, the rate is 1. If there is no tool infor- mation for a criterion, the rate is 0. If tool information does not map to a criterion precisely, you must calculate (or estimate) how close the correlation is. For example, suppose a vendor’s productivity gain is documented as 40 percent in Group 1 and the company requires a 50-percent gain. You would enter a rate of 0.8 (40 percent is 80 percent of 50 percent).

An example of a criterion that may call for an estimated rate is training. The com- pany may be considering a test-execution (capturdplayback) tool. The vendor pro- vides fkee one-day training on how to op- erate the tool but does not offer &g

on how to prepare tool input or use out- put. The testing staff d train itself in YO on the job. You must estimate how much this self-training will cost the company and rate it accordingly.

The next step is to score each criterion by multiplying weight by rate. The tool with the highest total score is the tool you’ll usually recommend.

Now comes a summit meeting with managers and testers. You are not looking for a rubber stamp on your choice at this time. Rather, you should encourage inter- action and discussion about the results. When everyone has a chance to express an opinion and vote on which tools should be selected, tool implementations are more likely to succeed.

In h s meeting some testers may fer-

41

Page 10: Evaluating and selecting testing tools - IEEE Software

vently support a particular tool. These tes- ters are champions or agents of change! Testers who strongly believe in a tool will push its implementation. Managers should note these champions. They should be the first users of the tool they advocate.

Sometimes champions will not emerge right away. Even with a complete paper evaluation, testers may want to test drive a tool before casting a vote. Many vendors will supply a trial-use or evaluation copy of a tool for a limited time so that testers can try out a tool in their own environment. Trial use sounds like a good idea, but it often leads to wrong decisions. The big- gest problem is time. Often testers do not have enough time to complete their regu- lar work assignments, let alone evaluate a new tool. Usually testers can do only a surface evaluation, especially if the tool is powerful and sophisticated.

Another problem with trial use is the differing levels of user expertise. If a proj- ect has 10 experienced testers and one in- experienced tester, the new tester is often the one with the most time to try out the tool because the experienced people are tied up in the project’s critical path. Con- sequently, managers get a report &om someone who doesn’t have the back- ground to understand all the tool’s impli- cations or possibilities.

If testers can devote enough time and appropriate expertise to complete a thor- ough trial use, they should request an eval- uation copy. Otherwise, they should make selections on the basis of the well-re- searched evidence you present.

REEVALUATION

When a tool is selected, the initial eval- uation is hished. The selected tool goes on to be implemented. When a tool promises big increases in quahty and pro- ductivity and tool selectors have great contidence in a tool, a company may im- plement that tool on many projects simul- taneously. Other companies will elect a more cautious approach, implementing a tool one project at a time.

The first project in whch a tool is im- plemented is often called a pilot project.

In a pilot project, the tool’s champions hould be brought in to use the real prod- ct for the first time.

After the tool has been used on a pilot roject, it should be reevaluated. Every ime a testing tool is introduced on a pilot roject, new technology is inserted into an rganization with the expectation that it vill improve software quality and devel- )pment productivity. Reevaluation tells nanagement if the tool performed as ex- )ected.

ecause what we are describing is a B system, with a process as well as

forms, it gives managers and tool evalua- tors a reliable way to identify the tool that best fits their organization’s needs. As an added benefit, evaluation can continue after the tool has been used for a while to measure how it lives up to expectations. The process we have described can be used again and again, and the forms are easy to incorporate into spreadsheets for continual use. Needs analysis is particu- larly useful. Managers can refer to this form for productivity and quality statistics gathered before tools were implemented and compare them to numbers docu- mented after tools are used. +

ACKNOWLEDGMENTS As we developed the draft of this article, Gregory T. Daich of SAIC at Hill Air Force Base carefully re-

viewed each section. We thank him for his thought-provoking comments.

REFERENCES 1. C. Jones,AppliedSofnome Meanrremmt,McGraw-Hill, NewYork, 1991. 2. R. Poston, “The Power ofsimple Software TestingMemcs,” The h r T, Sept. 1990, pp. 1-4. 3. Businerr Week, “The Quality Imperative,” special bonus issue, Fall 1991. 4. B. Bouldin,AgmtrofChmge, Yourdon PressRrentice Hall, Englewood Cliffs, NJ., 1989. 5. G. Deffenbaugh, “CASEingThe Joint,” Unir Review, Dec. 1991, pp. 24-30. 6. B. Beizer, &$wure Emkg Ecbnipes, Van Nosnand Reinhold, New York, 1989. 7. R. Firth et al., “A Guide to the Classification and Assessment of Software Engineering Tools,” Tech. Re-

port CMU/SEI-87-TR-10, ESD-TR-87-111, Software Engineering Institute, Pittsburgh, 1987.

Robert M. Poston is president of Progra”ng Emmnments and the originator of the T software-tesnng tool. He has also c h r e d the standards effort to develop IEEE Stan- dard 1175.

Poston has received numerous professional and mdustry achievement awards and has lectured worldmde on sohare-enpeenng subjecb. He received a BSEE from Cal- ifomla State Polytechnic University and has been prominent m IEEE actMnes for 25 Y-.

Michael F! Sexton 1s a software e w e e r pt Programming Ennronments, where he codeveloped the teSt-eXCUhOII tool called Runner. He IS also a lieutenant III the US Army reserves m the 41 lth Chemcal Co.

Sexton graduated from Worcester Polytechn~c hshtute in Massachusetts mth a BS m computer saence. He IS pumung a master’s degree in computer saence at Monmouth College m West Long Branch, NewJemy. He is a member of the LEEE.

Address queshons about tlys amcle to Poston at P r o p m n g Enmonments, 4043 State Hwy. 33, Tinton Falls, NJ 07753, (908) 918-01 10; fax (908) 918-01 13

4 2 M A Y 1992

~~ ~ - ~ ~~ ~