Want Quality Code? Get Tools to the Dev Managers
- By John K. Waters
It's time for the software industry to recognize that code quality is in a
critical state, says Nigel Cheshire, CEO of Enerjy Software. It is, he says,
the most underestimated problem facing the industry.
"If software runs the world—and let's face it, it does—then
code quality is everything," Cheshire told ProgrammingTrends. "And
yet, what have we done as an industry to significantly improve code quality
at its source? Not much; certainly not enough."
Enerjy is a division of Teamstudio, which provides software tools and solutions
for Lotus Notes and Domino developers. Enerjy focuses on software integrity
tools for Java developers. Its Enerjy Code Analyzer is a best-practices audit
tool designed to uncover errors in Java applications. It works from within a
user's IDE to test, debug and document Java projects as they are developed by
reading and analyzing the code, creating a list of error conditions and linking
the conditions to specific lines of questionable code.
The company's definition of code quality covers:
- Defining and ensuring compliance with corporate coding standards
- Ensuring that performance is designed in and not compromised as the application
- Ensuring that resource leaks are not allowed to creep in and eat away at
performance over time
- Ensuring that the code structure remains clean and therefore maintainable
as the application develops
Cheshire isn't the first to suggest that the industry has a code quality problem.
In 2002, the U.S. Department of Commerce's National Institute of Standards &
Technology estimated the nationwide economic impact of inadequate infrastructure
for software testing could be $59.5 billion.
"What I find interesting about that statistic," Cheshire says, "is
the fact that, as an industry, we haven't actually done much of anything about
the situation in the intervening years."
Perhaps more interesting, Cheshire doesn't blame developers for delivering
“The code quality issue is really more of a manager issue than a developer
issue,” he says. “I’m not talking about the architect or CTO.
I'm referring to the ground-level people whose day-to-day job it is to manage
the development team—the people on whom the onus for ensuring the integrity
and quality of the code actually falls."
Cheshire's solution: Put a new generation of code-quality management tools
into the hands of the dev managers.
"These are the folks who are getting it in the ear when the product shifts,"
he says. "And they are not being served by the tool makers.”
Enerjy is planning a fall release of what Cheshire believes will be the first
tool designed specifically to help development managers meet the code-quality
Not that anyone should be waiting around for Enerjy's product release to begin
addressing this issue, Cheshire says. It is time to demand heightened code-quality
measures get built into development, he says. But do it a step at a time: Start
by defining the quality standards, take steps to enforce them in a developer-friendly
way, then monitor the code and correct deviations.
"IT and development managers are facing tougher challenges every day,"
Cheshire says. "Unless code quality is addressed up front, organizations
will continue to lose time and money, and the software industry as a whole will
continue to lose credibility."
For more information, go to: www.enerjy.com.
John K. Waters is a freelance writer based in Silicon Valley. He can be reached