Compuware is the first major tool vendor to adopt the Object Management Group's Model Driven Architecture, advanced by OMG in 2002 as a set of standards that includes OMG's Corba. It includes the widely accepted Universal Modeling Language (UML), a strict set of diagrammatic notations that let a model of an application be automatically converted into its underlying code. Model Driven Architecture is also based on XML Metadata Interchange, a standard that gives software modelers the ability to store and exchange application models using XML.
Compuware has built these standards into OptimalJ 3.0, a modeling-based development tool. The infrastructure components of an application typically account for half the effort put into development, product manager Mike Sawicki says. If designed in OptimalJ's front-end UML, that infrastructure can be automatically generated by the product's Java code generators, "relieving the team of 50% of the work that needs to be done," he says.
In addition, the application's data-handling elements can be generated from the model. The rest of the coding is done manually by a Java programmer.
"Designers can work at the Universal Modeling Language level," manipulating a set of symbols and coding notations that tell the code generators what to do, Sawicki says. "The Java developer then extends that code where necessary."
Other companies are trying to advance their development systems in a similar manner, but neither IBM nor Borland Corp. has made it onto OMG's list of companies that have adopted Model Driven Architecture. IBM, however, added strengths in front-end design, testing, and integrated development environments through its acquisition of Rational Software last year. Borland acquired TogetherSoft, which had built products in front-end modeling and design.
Both IBM and Borland use UML in their front-end tools. Compuware is bidding to stay in direct competition with the market leaders with its adoption of Model Driven Architecture.
Compuware also released a study it sponsored through the Middleware Co. that shows that the modeling approach is 35% faster and yields higher-quality code. The testing company gathered two separate teams, one using OptimalJ and the other an unnamed integrated development environment.
Each team had an architect and two developers and was given an extensive list of specifications. Details on the results are available here.
The Middleware Co.'s test results have previously been subject to dispute. Last year, it said that Microsoft .Net technologies could be used to develop a frequently referenced Java application, PetStore, with a higher transaction rate than could be developed in Java. Microsoft had paid for the study, and its conclusions produced a storm of criticism over the company's methodology.
"We felt The Middleware Co. had learned from its experience. We felt they were the best qualified to conduct this test," says Dan Schoenbaum, Compuware's VP of strategy.
Kat Shenoy, president of the custom development software company E-Softsys LLC, says his developers in Bangalore, India, use OptimalJ because it cuts the application development cycle by 40%. The reduced need for bug fixes after application deployment cuts maintenance time by 80%.
Of the two, he thinks the reduction in maintenance time is the larger savings and comes about because the Model Driven Architecture approach "produces more error-free code. You spend less time hunting for and fixing bugs."
Code produced by OptimalJ code generators is treated as "protected" code by the system and can't be changed by the developers who add customization features, Shenoy says. On the other hand, the generated code "has good hooks when you want to add custom code."
In addition to being based on standards, OptimalJ invokes best practices and patterns of development found in Sun Microsystems' recommended Java blueprints. The blueprints are part of Sun's Pattern Catalog. Sun consultants have audited OptimalJ and have confirmed that Compuware has implemented the catalog's recommendations, Schoenbaum says.
The development system also builds applications that can be automatically geared to interact with legacy systems, both CICS/Cobol and IMS/TM. Code generated by OptimalJ may be imported into a preferred development environment, such as Borland's Jbuilder or IBM's VisualAge for Java. OptimalJ Developer Edition is priced at $800 per developer, Professional Edition at $5,000 per developer, and Architecture Edition at $10,000 per architect.
John Meyer, analyst at Forrester Research, said in a recent study, "Developing Efficiency: Moving Away From A Code-Centric Strategy For Competitive Advantage," that companies must stop investing heavily in custom programmer-driven development. They should adopt a component/service assembly/orchestration approach to development, building applications from components or a "model-driven, pattern-based" approach. OptimalJ was an example of the latter, he said. Other companies that are recognized by OMG for implementing Model Driven Architecture include Headway Software, Kabira Technologies, ObjectFrontier, and Project Technology.