Welcome!

Java Authors: App Man, Liz McMillan, Jeremy Geelan, Yakov Fain, Hari Gottipati

Related Topics: SOA & WOA, Java, Linux, SYS-CON Events

SOA & WOA: Article

Focus on SOA...and Orbitz Uses Jini and EJBs, Says CTO Hjelms

"Innovation Cycles Is What It's All About," Says Chris Hjelm

Without SOA, says Orbitz's chief technology officer, his company - founded in 2000 and successfully IPO'd since then - wouldn't be able to leverage its main competititive advantage: speed to market.

Helms then began to unpack this broad-stroke observation for a packed keynote hall at Day One of EDGE 2004, "Development Technologies Exchange" - the Java, XML, .NET, MX and Web Services techfest being served up in Boston's Hynes Convention Center Tuesday through Thursday this week.

Making this as much a case study as anything, Hjelms first established the parameters of the Orbitz operations: 800+ production servers (usually commodity PCs), 3.9 million lines of code on its Web site, and 110,000 lines of code being added or deleted on a weekly basis.

"Getting your architecture right enables you to do more things faster," Hjelms observed: in Orbitz's case, that above all means of course search faster. Orbitz's consumer-friendly site, he explained, masks a complex infrastructure."

Capable of searching over 2 billion flight/fare combinations, including feature searches unique to Orbitz such as Flex Search and DealDetector, the Orbitz system validates the effectiveness of SOA - "Traditional search on old mainframes would be too expensive," Hjelms noted. Yet within just 4 years, the Orbitz system has proved so effective, so growthful, and so user-friendly that Orbitz has in that short time captured some 17% of the entire online travel market (vs Expedia 40% and Travelocity 20%).

In the car space, Hjelms noted, Orbitz has captured a much larger market share. And on the messaging side, Orbitz sent out over 775,000 wireless messages in Dec 2003 alone.

Leveraging SOA, the company is able to deploy new SL implementations dynamically with zero impact to existing systems. "When we add a new carrier," Hjelms says, "that's done with zero impact on existing systems - all the systems could care less what airlines we're adding in. The folks doing the 'plumbing' can work separately from those doing the actual customer-facing work."

Orbitz has had to build a fairly sophisticated Customer Services Tool, he added.

"What are the enablers that allowed Orbitz to do what it does?" he asked rhetorically. "For a start we built it ourselves. Re-architecting existing systems is very hard to do. When you make hardware upgrades, it's a lot easier just to add a commodity PC."

Using Jini

Jini handles all of the interfaces between Orbitz and 3rd-party services, he explained, "managing down the complexity that would otherwise make it very difficult."

Orbitz has internally hosted J2EE inventory systems and, with the exception of one or two database servers, the entire complex runs on Linux "and it works extremely well," as Hjelms says. The advantages of deploying on Linux, he added, is that it is easily scriptable, which is why it is the building block of many commercial server appliances.

Recounting briefly the history of Orbitz's service-oriented architecture, Hjelms said that Java was the first big decision, and JINI the second. "So when SOA became popular, Orbitz had already found it."

"The JINI distributed computing framework focuses on interfaces and capabilities, not implementation and location," Hjelms said.

Using EJBs gave transactional capabilities to the system and provided a robust services layer - and they are colocated on a single VM to reduce latency.

"Redundancy, stateless capabilities, it's all just 'here' with this architecture," Hjelms says.

"This all allows the client code to focus on the capabilities not the implementation. Our developers don’t worry about that side of things."

"If you were to take the average person and explain GDS to them, their head would hurt," he added, "whereas we can get developers up to speed on Orbitz fast. We add a new machine, bring it up into the network and JINI recognizes it and starts to draw on it. It works."

"So the growth in our code base isn't in the services layer, it's in the application layer," he pointed out. That is the key to Orbitz's success, and that in turn is a function of its architectural choices.

What Next?

"From an industry standpoint nothing works better than SOA," Hjelms said. "At Orbitz we aspire to autonomic computing - we're still 3-4 months away from that."

Enhancements going forward will include a Guaranteed Model for Delivery, and building the redundancy and scalability of the database interactions.

New features on the business side are being implemented constantly, Hjelms said. "Web services allows entry into new markets and facilitates new business models, leverages existing SOA, allows access for non-Java clients and systems, and furthers the goal of flexibility and robustness."

"Web services on top of an SOA is pretty much worthless unless you get SOA right," he observed. "You have to get the SOA right first. Then, like Amazon, we'll open up our transaction engine to anyone who wants to innovate against it."

With 90 or so software developers, the company does all its hiring through referrals. "It's an open source culture, it's rare we have a project team bigger than 4 or 5 people. (Usually 2 or 3.)"

In his final comments Hjelms said: "SOA is a key enabler but...the key competitive advantage for Orbitz is speed."

More Stories By Java News Desk

JDJ News Desk monitors the world of Java to present IT professionals with updates on technology advances, business trends, new products and standards in the Java and i-technology space.

Comments (4) View Comments

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.


Most Recent Comments
exdlex 02/29/04 12:49:52 PM EST

Funny, that SOA came first then JINI considering that the source code Orbitz bought from datalex a few years ago was based on JINI and SOA it ain''t. You really can''t put too much stock in anything promulgated by a stockholder.

I guess it depends on the meaning of the words, "added" and "delete" are.

stf 02/27/04 11:10:26 AM EST

"3.9 million lines of code on its Web site, and 110,000 lines of code being added or deleted on a weekly basis." Is this man kidding?! How the hell does he think he can manage this much code, whether it's SOA or not-SOA? And if he has to add that much code every day, there has to be something seriously wrong with his software-development - is this just a typo or does he have monkeys in his backyard hacking away code?!?

Jim Cakalic 02/27/04 09:50:35 AM EST

Maybe I''m just missing it, but I don''t see anything in this article which really explains the application of a Services-Oriented Architecture or how such a design resulted in a any benefits to either development or deployment. It''s all hype and no substance.

Inet 02/27/04 01:16:40 AM EST

He is bragging. Orbitz''s main fare search engine is licensed package software.