Java apps face more performance issues, study finds

Cast quality metrics score Java apps lower on performance, higher on technical debt

In a wide-ranging study of software quality released Thursday, enterprise Java applications were found to have a greater incidence of performance issues, although this can likely be explained away by variations in developer experience and Java nuances, the producer of the study said.

The study, the Cast Report on Application Software Health, also found Microsoft .Net applications had lower security scores and Cobol applications high security scores. Cast, which provides software analysis and measurement services, examined structural quality of 745 applications used by 160 companies. Cast assessed security, performance, uptime, changeability, and transferability -- the ability to quickly understand code in application.

[ See InfoWorld's report on an anticipated demand for mainframe programmers. | InfoWorld's Neil McAllister explains why we need even more programming languages. | See if you can pass InfoWorld's programming IQ test, round 1, and programming IQ test, round 2. | Get software development news and insights from InfoWorld's Developer World newsletter. ]

"A couple of things we saw in relation to Java is the performance scores frequently were lower," said Bill Curtis, Cast chief scientist. Java's "technical debt," -- Cast's term for the effort needed to fix violations of coding and architectural practices -- was higher than for other domains. Java required more than $5 per line of code while the average for business applications was $3.61 per line of code.

But Java is impacted by factors such as interaction with frameworks like Struts or Hibernate, which could drag down performance scores, Curtis said. Also, programming experience could be an issue, with Java programmers having varied backgrounds. Cast examined 339 Java applications. In addition to .Net, Java, and Cobol, technologies such as C, C++, Visual Basic, and Oracle Forms were included in the study.

In the security realm, .Net applications received some of the lowest security scores, Cast said. Cobol, however, scored high, which was attributed to these applications running on more-secure mainframes with less exposure to the Internet. The older age of Cobol applications also likely means they already have undergone extensive security remediations. The types of applications leveraging Cobol, such as financial applications, tend to be subject to regulations as well.

In other findings, Cast determined that outsourced and in-house developed applications did not have any difference in structural quality. Cast also found that development methods such as agile and waterfall scored higher in structural quality than custom methods. Waterfall scored highest in changeability and transferability.

Cast's study covered primarily server- and mainframe-based applications, but the company anticipates involving more mobile device applications with mobile computing on the rise. Data obtained from applications in the study was maintained in Cast's Appmarq structural quality benchmarking repository.

"Although these results may not characterize the entire global population of IT business applications, they do emerge from the largest sample of applications ever analyzed and measured for a full spectrum of structural quality characteristics," Cast said.

This article, "Java apps face more performance issues, study finds," was originally published at InfoWorld.com. Follow the latest developments in business technology news and get a digest of the key stories each day in the InfoWorld Daily newsletter. For the latest developments in business technology news, follow InfoWorld.com on Twitter.

Copyright © 2011 IDG Communications, Inc.