Want Quality Code? Get Tools to the Dev Managers

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 evolves
  • 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 questionable code.

“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 challenge.

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:

About the Author

John K. Waters is a freelance writer based in Silicon Valley. He can be reached at [email protected].