Automated Unit Testing Boosts Software Quality and Productivity
By: Sarah Conway
Adoption of automated unit testing requires management commitment and
enforcement to ensure compliance across IT teams
the availability of
"Coding In Quality for Business Agility," a new IDC white paper sponsored
by Agitar Software examining how automated, iterative unit testing can help
software development teams improve the quality of their applications and
reduce development costs. With software defects costing the U.S. economy
roughly $60 billion each year, the paper cites a study by the National
Institute of Standards and Technology that suggests $22 billion of these
costs could be recovered through better software testing.
"IT organizations continue to feel relentless pressure to deliver more
results with fewer resources as they cope with the increasing complexity
and business criticality of software systems and applications," said
Melinda-Carol Ballou, program director for Application Life-Cycle
Management Software at IDC and author of the white paper. "Automated unit
testing, especially incorporated into test suites, can help software
development teams boost the overall quality of the software they deliver,
cut costs, reduce the risk of failure due to defects, and free up resources
that can be more productively applied to new development to generate new
business value."
According to IDC, typical "top-down" software development encourages
little testing before code is sent to Quality Assurance (QA) teams. The
white paper estimates that software defects found late in the development
cycle can cost 10 to 100 times more to fix when compared with the cost of
fixing bugs during initial code creation. Errors that accumulate due to
late bug detection force developers to revisit the entire code logic,
delaying production and preventing development teams from smoothly
adjusting code to suit changing business demands.
Unit testing allows development teams to inspect units of code during
each phase of development thereby delivering more cost-effective, flexible
and high-quality software. Citing exhaustive manual unit test code
generation as the main barrier to unit test adoption, the white paper
advises developers to adopt comprehensive automated unit testing solutions
such as Agitar Software's AgitarOne to significantly reduce the risk of
regression errors.
The white paper stresses the need for an up-to-date test suite to
continually verify an application's quality as changes are made to legacy
and newer code. IDC highlights how automation in unit testing gives
developers immediate feedback on the code they check, allowing for
immediate repairs to accelerate development and capturing business metrics
to indicate the level of progress in a software development cycle.
AgitarOne is cited as a tool that can help development teams overcome
the barriers to unit testing. The white paper highlights various features
of AgitarOne, including "change detection" features through automated JUnit
generation, "software agitation," which provides interactive exploratory
testing, automated code rule enforcement, project dashboards to evaluate
development progress against business targets, continuous integration
support with cruise-control, and server-based deployment to further speed
large enterprise deployments.
"For an enterprise that depends on how well it can deliver and enhance
its software applications, fragile code is dangerous. The agile enterprise
needs applications that are easy to change," said Jerry Rudisin, CEO of
Agitar Software. "Having and using a thorough set of unit tests is the key
to delivering good code sooner and to changing the code later with
confidence. That's why unit testing should be a top priority for any
development organization that is serious about time-to-market,
productivity, and quality. Agitar's solution provides the automation needed
to make unit testing far more thorough and effective than is practical with
a purely manual approach."
Full article...
Other Resource
... to read more articles, visit http://sqa.fyicenter.com/art/
|