HomeDigital EditionSys-Con RadioSearch Java Cd
Advanced Java AWT Book Reviews/Excerpts Client Server Corba Editorials Embedded Java Enterprise Java IDE's Industry Watch Integration Interviews Java Applet Java & Databases Java & Web Services Java Fundamentals Java Native Interface Java Servlets Java Beans J2ME Libraries .NET Object Orientation Observations/IMHO Product Reviews Scalability & Performance Security Server Side Source Code Straight Talking Swing Threads Using Java with others Wireless XML
A Spoonful Of Toplink, Helps The Medicine Go Down, by Gabe Allan

If there's one industry that challenges the enterprise Internet for growth and excitement, it's medicine and biotech. The pace of medical research and innovation rivals that of any dot-com startup or enterprise computing gambit.

At Glaxo Wellcome Inc., the giant pharmaceutical firm in Research Triangle Park, North Carolina, the latest technologies - Web, enterprise, and database - are being used to accelerate the company's pace of medical and biotech research.

Glaxo's aim is to gain competitive advantage over its rivals worldwide, and drive newer, safer, and more effective therapies and outright cures to the public...faster. Now helping the company's researchers meet that challenge: WebGain's TopLink for Java.

WebGain's TopLink is just one part of a larger company effort to integrate new, pure object applications and solutions with multiple Oracle8i SQL databases that house years of Glaxo's intellectual property - product, research, and drug discovery data.

The other 99 parts: the company's team of object-oriented programmers now working in Java. Their task is to integrate Glaxo's crucial relational database foundation with pure-object frameworks and applications architected in-house.

Integrating pure-object applications with relational database architectures is normally the programming equivalent of putting a size 12 foot into a size 10 sneaker: it's a tight, forced fit that's painful to work with.

This poor fit between pure OOP (object-oriented programming) languages such as Java, and relational database lexicons such as SQL, is called the "object/relational impedance mismatch." It's a classic conundrum that has challenged the best OOP programmers.

Using object/relational mapping, TopLink erases the impedance mismatch that's long slowed development of object-oriented relational database systems. And according to one of Glaxo's leading Java developers, that's not mere marketing talk.

Accelerate Time to Market
Roger Cornejo, systems manager for Glaxo Wellcome, says Glaxo's Java developers have eased TopLink into the company's development technology mix and, in his experience, have accelerated time-to-market of new object/relational Java solutions by as much as 75%.

"You can do the work in about a quarter of the time it would take if you had to code it manually, without using TopLink," says Cornejo.

Glaxo Wellcome's research is centered around Research Triangle Park. With work focusing on cancer and viral and metabolic diseases (HIV, asthma, sexually transmitted disease, migraine, etc.), the research information system handles dozens of projects for Glaxo Wellcome and provides IT support for the organization's 2,500 research scientists.

One of the most successful projects has been Glaxo's Targets Knowledge Base (TKB), a three-year-old effort to help scientists find, collect, organize, and distribute information related to early research phases of drug discoveries.

"When [research scientists] have new targets, they enter them into the system," says Cornejo. "They also enter related information to the target that will help other scientists understand them."

That information is now shared through an enterprise Java application distributed over the Web. Building the database, and making it easy to access for the Glaxo Wellcome researchers involved mapping complex Java objects to a nonobject relational database.

"The company has a large investment in relational database technology, and a huge amount of research data around the world that it wants to share," says Dennis Leung, director of product management for WebGain's TopLink.

The IT department's expertise is "in building applications that add value to Glaxo Wellcome," says Leung. "They don't want to have to worry about infrastructure or details; they want their developers to focus on rapidly building applications." That's where TopLink fits in.

Meeting the Market Need
OOP may be the flaming passion for Java professionals, but relational databases remain the order of the day. "People have a massive investment in relational technology," Leung says. "They feel comfortable with it, and they want to leverage their investment."

Joseph Feiman, research director for the GartnerGroup, in Stamford, Connecticut, agrees. "Object databases tried and failed to knock off SQL database environments," he says. "If you're building a distributed object architecture, it's still likely that you'll do it with a relational database on the data tier."

But merging the object and professional worlds has never been easy. The mindsets are different, and the programming skills required to master both are often hard to come by. Now, with TopLink for Java, it's actually easy for enterprise Java developers to merge the OOP and relational worlds.

"The vast majority of developers haven't discovered the benefits of O/R mapping," says Gartner's Feiman. "They're still using manual techniques or wizards to map directly, but that's inelegant. It's the disciplined developers interested in quality and longevity that are using products like TopLink."

Shopping for Solutions
There weren't a lot of choices when Glaxo began looking for an easier way to map Java objects to relational database tables in early '97. "Three years ago, you had to develop the persistence framework yourself, and make it generic and reusable," says Cornejo. "It wasn't for the faint of heart."

Though not faint of heart, Glaxo's Java team decided that building their own O/R mapping layer by hand didn't fit the company's plans. "We didn't want to write our own persistence layer," he says. "We wanted something that was essentially transparent to the bulk of our developers, and allowed us to lose some of the complexity the relational model brings."

Ideally, Cornejo says, the Glaxo developers would focus solely on the object model while developing. "We knew of TopLink," he says. "We decided to bring it in, and give it a whirl."

Glaxo's team began working with beta versions of TopLink for Java and Oracle's Oracle8i database, assured by both vendors that production versions of their products would be shipping before Glaxo was ready to deploy.

"They were definitely trailblazers, on both the O/R mapping and Oracle8i fronts," says WebGain's Leung. "Even those early releases allowed developers to easily store enterprise JavaBeans and business objects in relational databases. It's a nonintrusive, metadata approach, similar to object database semantics in the way developers deal with things at the object level."

Glaxo's Cornejo agrees: "Having early access to both TopLink and Oracle8i allowed us to run our application in a number of advanced architectural configurations," he says. "We used TopLink's three-tier support, and Oracle8i's CORBA capabilities, to build a three-tier Web application that runs on the Oracle8i [Java] VM."

WebGain's TopLink turned out to be an ideal solution that helped Glaxo's Java developers abstract the thorny relational database model away and maintain an all-Java, pure-object view of the application logic and business rules.

Building the System
"I've used the product to map approximately 60 domain objects to approximately 50 relational tables," says Cornejo. "We chose to share the data at the relational database level, and present that data in the HTML format. TopLink has dramatically reduced the amount of time that would have been required to make all this work."

Cornejo says TopLink's support for inheritance enabled them to apply different mapping strategies for different objects. Persistent objects were used to hold a lot of data, and were mapped to relational tables using one-to-one, one-to-many, and many-to-many relationships.

The evidence inheritance hierarchy was mapped by TopLink without affecting an application-level code or requiring a recompilation of any classes. Ultimately, Glaxo's then-beginning Java developers formally launched the TKB project.

All with a little help from TopLink. "When I started working with TopLink, I had about two months of Java experience," Cornejo says with a chuckle. "In fact the level of Java experience on the team was pretty low. Now we're building Java objects exclusively...and I'm afraid my SQL could get rusty!"

Since the initial deployment, Glaxo's Java team has architected six new releases, all of which transparently leverage O/R relationships. The company's scientists say the project has increased the efficiency of their leading research and is bringing product to market faster.

While WebGain officials say TopLink can deliver 30-40% productivity gains, Glaxo's Cornejon says it's even higher. "I think you can probably do the work in about a quarter of the time it would take if you had to code it yourself," he says.

Looking to the Future
The Glaxo Wellcome TKB project is now stable, but the company continues to use TopLink in its development efforts.

"The idea is to help scientists take new molecules further into discovery," Cornejon says. "Take a hit on a new molecule and progress it into a lead. There's no question that TopLink is helping us get there faster than we could have before."

Author Bio
Gabe Allen is a technology journalist based in New York who writes for many leading technology publications. He can be reached at [email protected]


All Rights Reserved
Copyright ©  2004 SYS-CON Media, Inc.
  E-mail: [email protected]

Java and Java-based marks are trademarks or registered trademarks of Sun Microsystems, Inc. in the United States and other countries. SYS-CON Publications, Inc. is independent of Sun Microsystems, Inc.