The new version of OptimalJ increases the amount of a user interface that can be generated automatically from a model, says David Hewick, lead architect for payments and trade at RBC Financials Group (formerly Royal Bank of Canada), and an OptimalJ user.
Compuware is a survivor in the Java tools arena, pulling in $1.3 billion in revenue last year. It competes with Borland Corp.'s dominant JBuilder Java development tool, IBM's powerful Rational Software unit, and Sun Microsystem's Java Studio Enterprise line of tools. Other Java tool vendors attempting to compete in the space have either disappeared or been acquired as was WebGain Inc.'s Visual Cafe (acquired by Borland in 2002).
OptimalJ specializes in starting with a business model and translating it into a software model, using terms and business-process definitions shared between business experts and software designers in the tool itself. The infrastructure of an application, such as how it connects to a database or how it is activated on a network, can then be generated automatically.
OptimalJ is based on "model-driven architecture" that starts with the business model, says John Williams, Compuware's director of strategic initiatives.
Hewick is a user of OptimalJ 3.2 and is considering upgrading to 3.3, which became available Jan. 24. With Release 3.2, RBC Financial jumped from being able to generate 40% of an application through automatic Java code generators to 70%.
"We found a pretty big difference" between OptimalJ and other development tools, he says. "There was a 30% reduction in the overall Java development effort," through the automated coding facilities. Code produced by generators tends to follow recommended best practices for Java and amounts to pre-tested code, saving more labor in the development process.
A major element in the 3.3 release is the ability to model the page flow of the user interface, the series of screens through which a user will interact with the application. The pages can be modeled in OptimalJ's Form Painter. If a user needs data, a form can be modeled that not only shows how the user will request the data but binds the page to an SQL query and drivers that go get the data from the right database. Ties to other resources, such as a software module that checks a customer's credit rating, may be bound to the user interface as well.
"You couldn't model the user interface in the tool before. There was a very generic user interface for Web applications. Release 3.3 looks like it will let us do a lot more in the tool, rather than generate a form and fix it afterward [outside the tool]," Hewick says.
OptimalJ 3.3 also adds automated integration with mainframe "green screen" applications and to SAP's R/3 applications. The integration makes it easier to tap SAP and mainframe applications as services, pulling out needed data and results for a services-oriented architecture application. "The developer can focus his time on solving the business problem, rather than writing the same plumbing over and over again," Hewick says.
Compuware also is offering Vantage Analyzer Java Edition 3.3, a means of monitoring Java 2 Enterprise Edition applications for user response times. It supplies diagnostic information if a performance problem develops, Williams says.
It's also supplying DevPartner Java Edition 3.3, which optimizes how an application uses memory by analyzing memory leaks that are hidden from view during normal operations. Memory leaks occur when an application generates software objects that should be used and destroyed, but instead hang around filling up memory. Pricing starts at $2,300.
OptimalJ pricing starts at $2,200 for a single Developer Edition, $6,000 per developer for Professional Edition, and $18,000 per developer for the Architecture Edition.