Maintenance Tools
Maintenance Tools
Section VI
Modern
Maintenance Tools
Software testing functions within maintenance departments must cope
with the demands for software to provide more complex functions and fea-
tures. Maintenance tools cover a wide range of activities and enable de-
partments to build and enhance applications more effectively.
This section provides an overview of some popular maintenance test
tools and demonstrates how they can improve the quality and productivity
of a maintenance effort.
The objectives of this section are to
• Describe when a maintenance tool is useful.
• Provide a testing maintenance tool selection checklist.
• Discuss types of maintenance tools.
• Provide descriptions of modern and popular testing maintenance
tools.
405
Part 35
Introduction to
Maintenance Tools
Many testing tools are available today. Some of these tools are used for new
development, and many are also especially suited to the maintenance area.
Software testing is facilitated by the effective use of maintenance tools. In
testing maintenance changes to software, the tester identifies the types of
maintenance tools used by the maintenance team and determines whether
they will be helpful in testing.
Software maintenance tools are computer programs that can be used in
development, analysis, testing, maintenance, and management of other
computer programs and their documentation. This section discusses
some maintenance tools that can be useful in maintaining software sys-
tems.
Generally, there are two maintenance tool categories: technical and
management. Management maintenance tools assist the maintenance man-
ager in controlling and tracking all of the maintenance tasks. Some of the
software maintenance tools in this category are discussed in the following
sections.
Technical maintenance tools help analyze, change the source code and
documentation, and test the system. A regression testing tool is an exam-
ple of an automated technical tool to test the system repeatedly. It may be
useful under the following circumstances:
• Tests need to be run every build of an application, e.g., time consum-
ing, unreliability, and inconsistency using human resources.
• Tests are required using multiple data values for the same actions.
• Tests require detailed information from system internals such as SQL,
GUI attributes that require an automated approach.
408
409
410
Runtime
Code Load/ Problem CM/Process Web Code Error
Vendor Name Complexity Regression Performance Management Management Site Coverage Analysis
ClearCase x
ClearCase x
MultiSite
ClearDDTS x
ClearQuest x
JavaLoad x
JavaStar 1.2 x
LoadRunner x
McCabe QA x x
Runtime
Code Load/ Problem CM/Process Web Code Error
Vendor Name Complexity Regression Performance Management Management Site Coverage Analysis
Rational Purify x
6.0
Rational x x x
TestFactory
Rational Visual x
PureCoverage
6.0
SQA SiteCheck x
Test Station x
TestStudio
WinRunner 5 x
Xrunner x
415
416
417
418
419
420
Diagnostic Routines
Diagnostic Routines assists the maintenance staff by reducing the amount of
time and effort required for problem resolution. Some common routines are:
• Trace—Generates an audit trail of actual operations during execution.
• Breakpoint—Interrupts program execution to initiate debugging
activities.
• Save/restart—Salvages program execution status at any point to per-
mit evaluation and reinitiation.
• Dump—Gives listings (usually unformatted or partially formatted) of
all or selected portions of the program in main storage at a specific
point in time.
421
422
423
424
425
426
427
programmer, these diagnostics can help identify the sections of code that
cause the error as well as identify what is taking place there.
Although these aids are extremely useful, they are after-the-fact mainte-
nance tools used to help determine what has gone wrong with an opera-
tional system. Far more useful are diagnostic capabilities designed and
implemented within the source code as it is developed. This type of diag-
nostic is normally disabled but can be turned on through the use of one or
more control parameters.
429
McCabe’s McCabe QA
Product Description. This tool provides a comprehensive solution to the
following issues: (1) What is the quality of the system? (2) Has it been con-
structed in an efficient and effective manner to minimize testing and main-
tenance costs? (3) How can we accurately measure risk and improve
quality while still meeting critical deadlines? (4) Have new versions of the
software increased or degraded the quality?
With its interactive, visual environment, one can quickly and objectively
gauge the quality of the code. The tool combines cutting-edge graphical
technology and industry standards of measurement to help focus resourc-
es where they will have the greatest impact on your projects.
Product Features.
Platforms Supported.
Product Features.
• Runs on JDK 1.x or JDK2 compatible platforms and environments: it’s tru-
ly cross-platform. JavaStar leverages the benefits of Java technology for
GUI regression testing. It is the first testing tool to test at the language
level and the only GUI tool that runs anywhere that Java applications
and applets run. Java’s “write once, run anywhere” advantage simpli-
fies the test creation process with only one set of tests to create and
maintain, providing immediate return on investment.
• Developers and QA engineers can speak the same language. JavaStar’s
scripting language is Java. Since JavaStar’s tests are written in the Java
programming language, there are no machine-dependent scripting lan-
guages to learn, so QA engineers and developers are finally able to
431
• Increases test versatility by removing hard data. JavaStar’s tests are eas-
ily parameterizable, which makes it easy to change values in a test by
replacing hard-coded data with references to data stored in external
files. Tests that are independent of specific data have wider usability
so fewer modules can be combined to make more varied tests.
System Requirements.
• 5 MB RAM
• 4 MB disk space
• Any additional requirements of the object under test
Rational Robot
Product Description. Rational Robot allows one to create, modify, and
run automated tests on Web, ERP, and client/server applications. It is the
only test automation solution that offers reusability and portability of test
recordings across Windows platforms to provide one recording that plays
back on all Windows platforms.
Rational Robot includes comprehensive Object Testing of object prop-
erties and data for C++ and other integrated development environments
(IDEs).
Product Features.
433
System Requirements.
Rational TestFactory
Product Description. Rational TestFactory automatically detects runtime
errors without user assistance and generates optimal scripts for regres-
sion testing. It is a unique automated software quality tool that does for
quality engineers what the word processor did for writers. Rational
TestFactory finds reliability defects in Visual Basic applications automati-
cally, without recording or scripting.
This tool delivers on the promise of automated testing by exhaustively
and automatically exercising the application to test every path through it
for reliability defects. Whereas functionality testing requires user interven-
tion, organizations can now perform reliability testing with Rational
TestFactory automatically, without user intervention.
Rational TestFactory automates the tedious and error-prone aspects of
reliability testing. Rational TestAccelerator helps you perform this reliabil-
ity testing even faster by harnessing multiple computers to perform testing
in parallel. Rational TestFactory lets you divide automated test develop-
ment into a series of steps. Rational TestAccelerator lets you develop and
run these steps on multiple computers. Rational TestAccelerator performs
test generation and test execution in parallel, so you finish reliability test-
ing faster.
Product Features.
System Requirements.
• Rational TestFactory:
434
Platforms Supported.
• Rational TestFactory:
— Windows NT, Windows’95, or Windows’98 Visual Basic 4, 5, or 6
• Rational TestAccelerator:
— Windows NT, Windows’95, or Windows’98
Product Features.
• Flexible test capture—Lets one build consistent, documented tests
that can be used over the life of the application from tester to tester
and release to release. With Test Station, tests can be captured at any
point in the software development process.
• Unattended test execution—Tests are intelligent scripts that provide
dynamic verification of application responses against expected re-
sults, duplicating expectations and decision points. When unexpected
application responses occur during test execution, the tests identify
those responses and react accordingly. Recovery options log the de-
tails of application failures and then continue the testing process if
possible. In addition, Test Station’s playback synchronization pro-
vides proper test playback regardless of system performance.
435
System Requirements.
• Test Station:
— IBM PC 386 or 100% compatible machines
— MS-DOS or PC-DOS 5.0 or higher
— 326K conventional memory or 30K with LIM 4.0 compliant expand-
ed memory manager or DPMI 0.9 compliant extended memory man-
ager
— 10 MB minimum storage requirements
— Supports most network terminal emulation and communications
protocols, including IBM 3270, IBM 5250 (AS400), Hewlett-Packard
2392, Tandem 6530 and Unisys
• Windows 3.X:
— IBM PC-386 or greater and 100% compatibles
— 4 MB minimum memory plus Windows system requirements
— 10 MB minimum disk storage
— Supports Wall Data Rumba (Office 2.1A) and Attachmate Extra!
V4.3A terminal emulation
• Windows’95 and Windows NT-16-BIT:
— IBM PC-486 or greater and 100% compatibles
— 4 MB minimum memory plus Windows’95 or Windows NT system
requirements
— 8 MB minimum disk storage per installed copy
• OS/2:
— IBM PC-486 or greater and 100% compatibles
— 4 MB minimum memory plus OS/2 system requirements
— 10 MB minimum disk storage
— Supports IBM OS/2 Communications Manager terminal emulation
Platforms Supported.
436
• Windows 3.1x
• Windows’95
• Windows NT – V4.x local testing 16-BIT applications only; no emula-
tion supported
Product Features.
437
• Minimum 16 MB RAM
• Minimum 16 MB disk space
Platforms Supported.
• Windows’95
• Windows NT
438
Product Features.
439
441
• It provides the only scalable load testing solution for managing the
risks of client/server systems.
System Requirements.
• 16 MB minimum RAM
• Approximately 100 MB disk space
Platforms Supported.
• UNIX
SunTest’s JavaLoad
Product Description. Implementations of applications and applets writ-
ten for the Java platform have emerged as the leading technology to imple-
ment client/server and Internet-based applications. It is crucial to
understand how these applications behave and react under a variety of
load conditions before they are deployed. JavaLoad software allows devel-
opers to target load testing at every point in an application’s architecture
and the development process. From running GUI clients directly to target-
ing server-side interfaces using protocols like HTTP, CORBA/IIOP, RMI, JD-
BC, or proprietary networked protocols, JavaLoad software helps you
ensure that your Java-technology-based distributed application is sol-
id—end to end.
System developers depend on load testing to isolate potential bottle-
necks or problems before deploying their business-critical Java-technolo-
gy-based applications and applets. Because JavaLoad software is written in
the Java programming language, it can load test your application at every
tier of the system, employing any number of client machines. JavaLoad
software can test clients and servers in a heterogeneous environment—the
norm in real-world enterprises. From a single point of contact, JavaLoad
software stresses your entire system to isolate and identify potential client
and server bottlenecks.
Product Features.
ing from any machine, anywhere in the network, so your single point
of contact can move with you.
• End-to-end load testing—With JavaLoad software you can design load
tests to meet specific requirements. JavaLoad software can load test
an enterprise application from a pure client perspective or isolate
each server-side interface and protocol. Testing with JavaLoad soft-
ware helps ensure your enterprise application can handle the load it
needs to handle, without creating problems elsewhere.
• Development life cycle load testing—JavaLoad software can be used
throughout the product development life cycle. JavaLoad software is
compelling among load testing tools, because it can validate architec-
tures, benchmark hardware, and stress the integrated system.
• Tightly integrated with JavaStar tool—Coupled with Sun’s JavaStar
product, a Java GUI capture/relay tool, JavaLoad software can concur-
rently invoke numerous JavaStar scripts that faithfully replay user
events using the actual Java-technology-based GUI clients of an enter-
prise application. Using JavaStar timers, any event can be timed and
recorded, reporting the true response time a user will experience un-
der loaded conditions.
• Get load test results at your convenience—Using the JavaLoad console,
from any machine accessible to the JavaLoad test, the JavaLoad prod-
uct conveniently generates reports of all test data, including the num-
ber of simulated users engaged, the average response time per user,
an analysis of the session, and a comparison of different test sessions.
The data are critical not only to finding but also to fixing the problems
that decrease productivity and compromise enterprise information
assets. Because JavaLoad software leverages the Java technology’s
animation capabilities, you can run enterprise-wide load testing, and
see graphical reporting on bottleneck and performance problems all
over the enterprise, in real time. This lets developers find problems,
understand causes more clearly, and fix them more rapidly.
• Telemetry channels monitor each tier of the system—Whether it is client
response time, number of simulated users, or database server data ac-
cess time, any telemetry data that can be expressed as a name-value
pair can be accessed, monitored, and reported—in real time or as a
post-load test report or chart.
• Synchronized test information—JavaLoad software stores all test infor-
mation in the JavaLoad Central Repository including the programs
and data files that comprise the load tests, and all result data generat-
ed from the load sessions. JavaLoad software automatically synchro-
nizes this data across the test network without relying on any file
system protocol such as NFS or FTP. JavaLoad software ensures that
all load tests on each host are running the same version. After running
test sessions, JavaLoad software collects all test results and records
443
System Requirements.
444
just like real users. It contains a single point of control for client, server,
and Web load testing and supports hundreds or even thousands of virtual
users.
By automating both client and server load testing from a single point
of control, LoadRunner helps developers get an accurate view of system
behavior and performance throughout the application development life
cycle.
Product Features.
445
System Requirements.
• Controller
— 32 MB RAM
— 70 MB disk space
• Virtual Users
— Minimum 2 MB per virtual user
— 256 MB/100 virtual users
— Disk space: 10 MB each
Platforms Supported.
• Windows 3.x
• Windows NT
• Windows’95
• Sun OS, Solaris, HP-UX, IBM AIX, NCR
• SQL: Oracle OCI, Oracle UPI, Sybase dbLib, Sybase CtLib, Informix I-
net
• ODBC
• TP Monitors: Tuxedo
• Messaging: WinSocket
• Web: HTTP, Java
• Character-based: TTY, IBM 5250, IBM 3270
• Applications: SAP R/3, Oracle Financials, PeopleSoft, Baan
446
Product Features.
preVue-C/S features:
• Emulates 2-tier and 3-tier network traffic.
• SQL, HTTP, and Tuxedo traffic is captured and automatically turned
into client emulation scripts.
447
System Requirements.
N/A
Platforms Supported.
• UNIX
• Windows NT
Rational’s PerformanceStudio
Product Description. PerformanceStudio integrates functional and load
testing with test-system performance and delivers information needed to
make critical deployment and resource planning decisions. It includes
Rational’s award-winning Robot product for script recording and built-in
test-asset management, as well as innovations such as data-smart record-
ing, client-smart pacing, load-smart scheduling, and server-smart play-
back aimed at improving ease-of-use, accuracy, and scalability.
Product Features.
System Requirements.
NT Master Station:
• 99 MHz Pentium or higher (166 MHz for test runs greater than 50 vir-
tual users)
• 80 MB free disk space
NT Agent:
• Pentium, 99 MHz Pentium or higher (166 MHz recommended)
• 40 MB free disk space
449
Platforms Supported.
• Unix Agent
• Sun Solaris, HP, UX, IBM, AIX, additional port on request
Product Features.
• Pinpoints performance bottlenecks in all parts of an application, in-
cluding user functions, system calls, shared and third-party libraries.
• Detects performance problems everywhere in Unix applications:
— C and C++ source code
— Third party libraries
— Shared or system libraries
• Detects performance problems everywhere in Windows applications:
— C and C++, Visual Basic, and Java source code
— ActiveX, DirectX, OLE and COM components
— Dynamic Link Libraries (DLLs)
— Third-party DLLs
— Windows operating system code
• Presents accurate, repeatable performance data in an easy to read
graphical displays.
• Offers multiple, complementary views of performance data.
• Collects per-thread performance data.
• Automatically compares runs for fast verification of performance im-
provements.
Platforms Supported.
• UNIX:
— Sun SPARC workstations running SunOS 4.x, Solaris 2.3–2.6
— HP9000 Series 700/800 workstations running HP-UX 9.0.x through
10.30
• Windows NT:
— Intel architecture only
— Windows NT 3.51 or above
450
Rational’s ClearDDTS
Product Description. ClearDDTS is a change request management prod-
uct specifically designed to track and manage product defects and en-
hancement requests uncovered during product development and quality
assurance testing. It can be tightly integrated with software configuration
management products, such as ClearCase, to help users effectively manage
change throughout the software development life cycle.
Product Features.
System Requirements.
Server:
• Approximately 55 MB of disk space
• At least 32 MB of RAM
Platforms Supported.
451
Rational’s ClearQuest
Product Description. Rational ClearQuest is a scalable and configurable
defect tracking/change request management product for tracking and re-
porting on defects and other types of change requests throughout the de-
velopment life cycle. ClearQuest shortens development cycles by unifying
all team members—project managers, QA managers, testers, develop-
ers—in managing software development change.
Product Features.
System Requirements.
ClearQuest Client
• Windows NT 4.0 with Service Pack 4, or Windows 95/98
• Approximately 80 MB of disk space
• At least 32 MB of RAM (recommended: 64 MB of RAM)
ClearQuest Web Server
• Windows NT Server 4.0 with Service Pack 4
• Microsoft Internet Information Server (IIS) 4.0
• 50 MB of hard disk space
• 128 MB of RAM
Platforms Supported.
• Windows’95/’98/NT
• Microsoft IIS
• Microsoft Internet Explorer
• Netscape Navigator
• Sybase SQL/Anywhere 5.5.04
• Oracle 7.3.4 or higher
• SQL Server 6.5 with Service Pack 5 or SQL Server 7.0
452
Rational’s ClearCase
Product Description. ClearCase provides a comprehensive configuration
management solution, including version control, workspace management,
build management, and process control. ClearCase offers a uniquely trans-
parent, nonintrusive approach, and supports multiple platforms and IDEs,
making it easy to deploy and maintain, without forcing you to change your
existing environment, your tools, or the way you work.
Product Features.
Platforms Supported. Client and server: Windows NT, Solaris, HP, AIX,
SGI, Digital Unix, Sun OS, Siemens Sinix, UnixWare
453
Product Features.
Platforms Supported. Clent and server: Windows NT, Solaris, HP, AIX, SGI,
Digital Unix, Sun OS, Siemens Sinix, UnixWare
Product Features.
454
• Pinpoints all slow pages and predicts performance time for all commu-
nication paths.
• Can impersonate both Microsoft Internet Explorer and Netscape Nav-
igator to see the different server responses to the different browsers.
• Integration with SQA Suite: SQA Robot as the Web Site Test Case.
System Requirements.
Platforms Supported.
• Microsoft Windows 95 or Windows NT 4.0 or later
• ActiveScan View requires Microsoft Internet Explorer v3.0 or later
Product Features.
455
System Requirements.
Platforms Supported.
• Intel architecture
• Windows NT 4.0 or above (including Japanese Windows NT 4.0)
• Visual Basic 5.0, 6.0
• Visual C++ 4.2-6.0
• Microsoft Visual Studio 5.0, 6.0
• Microsoft VJ++ 1.11 VM build 2553 or higher
• Windows CE applications run in emulation mode on Windows NT; em-
ulation software available with Windows CE SDK
456
Product Features.
System Requirements.
Platforms Supported.
• Intel architecture
• Windows NT 4.0 or above (including Japanese Windows NT 4.0)
• Visual C++ 4.2–6.0
• Visual Studio 5.0, 6.0
• Windows CE applications run in emulation mode on Windows NT; em-
ulation software available with Windows CE SDK
457