In-Depth
No Time for Open Source in the Service-Enabled Enterprise
- By Alan Joch
- March 1, 2006
The Big Idea
PRIME TIME, SOME TIME
- Open-source apps are attractive for SOA for many of the same reasons they are popular for other development projects.
- Although open-source apps may be taking areas such as Web server development by storm, they aren’t always a choice for more leading-edge projects, such as SOA.
- Developers are less likely to use open source to push the envelope because they are concerned about support and the long-term roadmap for many open-source projects.
Mike Myer affectionately calls RightNow Technologies
a “schizophrenic” company. The mind-numbing
part isn’t the CRM software and hosting services
that customers purchase from the company,
says Myer, VP of development and CTO. Rather, it’s RightNow’s
mix of open-source technologies in its back-end servers and clientside
Microsoft .NET and C# programs that create a split personality.
Myer binds the two worlds together using a service-oriented
architecture. “The Web browser client—the thick browser application
we’ve built—essentially makes remote procedure calls with
Web service requests to the server,” he explains.
Besides straddling two diverse technical worlds, RightNow is
trying to marry a significant open-source component to a Web
services environment. Despite a flurry of high-profile announcements
late last year for open-source projects addressing
key foundational elements of SOAimplementations, usable technologies
are rare today, and companies combining open-source
and SOAare even rarer, analysts report.
However, open-source and industry observers say that might all
change over the next year as companies such as RightNow combine
the business flexibility of SOAwith their open-source passions. “We
are very happy with open source in our back-end architecture,” Myer
says. “With a service-oriented architecture, you should be able to
combine disparate technologies and never know what the technology
is on the other side of the connection.”
A pair to open
Open source and SOA are a natural pair, if for no other reason
than they’re among the hottest technology movements hitting
today’s IT departments. Arecent survey by Forrester Research
found that about 60 percent of enterprises with 5,000
or more employees are adopting SOA. In addition, a quarter
of Global 2000-class companies reported an enterprise-level
commitment to SOA.
Out-of-the-box and Web services standards still make sense
Open source may be hot in some circles, but for SOA user Furrukh Khan, the convenience of a commercial platform just makes sense. The director of the technology at the Collaborative for Applied Software Technology chose Microsoft .NET to create and launch OR-Eye, which is now rolling out to 5 hospitals at the Ohio State University Medical Center.
The SOA application, and its follow-on version, known as OR-Eye 2, helps automate data-collection processes in operating rooms and intensive care units and develop correlations between drug treatments and patient outcomes. “OR-Eye makes an electronic anesthesia medical record,” Khan says.
Before OR-Eye, vital-sign monitors communicated in a proprietary network that created islands of information that couldn’t easily share information with other hospital areas. Now, Web services run in an SOA environment to extract data from the operating rooms, where it’s recorded in patient records or made available to clinicians through secure Web applications that physicians can call up anywhere they find a wired or wireless Internet connection.“This means a [consulting] surgeon or anesthesiologist now has the capability to look at a whole procedure going on in an operating room even if they’re sitting in a cafeteria or at home,” Khan says.
The medical center created the necessary Web services integration and secure messaging capabilities using first .NET’s Web Services Enhancement (WSE 2.0) and later Windows Communication Foundation services, which provides a unified programming model for implementing Web services standards. “We can create our service-oriented architecture so that secure conversations are handled in a standard way at the infrastructure level,” Khan says. “Even though we used Microsoft technologies, on the wire, whatever we send is based on standards, so the system is interoperable with any other system based on standards.” Key standards for OR-Eye include WS-Security, WS-SecureConversations, WS-Policy and WS-Trust.
The out-of-the-box SOA components and Web services standards OSU gets from a commercial product keep Khan from moving to open source. “For us, [the commercial alternative] is an inexpensive solution because OSU has site licenses,” he explains. “With Windows Server 2003, we don’t have to buy anything on top of what comes out of the box. Basically we are spending no money on software except for just buying the standard operating system. You can also get security, reliable messaging, transactions and everything else based on open standards. It’s the same thing if we were to buy IBM WebSphere. That would come with IBM’s implementation of these protocols.”
An integrated package also cuts down on training costs, he believes. “I think as far as training curve is concerned, [commercial software] is certainly the least steep way to get into SOA,” Khan says.
—Alan Joch
Also significant were future plans. Only 1 percent of the total respondents
say they plan to cut back on SOAprojects in the coming
year. “So somebody got burned or an unrelated company change
meant they would be doing less with SOA, but that number says
there certainly isn’t much disillusionment,” notes Randy Heffner,
a Forrester analyst. About 70 percent of the respondents say they
will increase their SOA activities in the next year, he adds.
Open source is fanning similar passions.
In key categories including Web
and app servers, open-source alternatives
command larger market shares than
commercial counterparts, thanks to
high-profile software from organizations
including Apache and JBoss.
“With service-oriented architectures,
you’ve got a loose federation of different environments,
and some of those can be opensource
pieces,” says Robin Bloor, partner at
researcher Hurwitz and Associates.
Commercial apps are still
warm and cozy
The nexus of SOAand open source is
still developing, partly because commercial
products offer better out-of-the-box
integration of SOA components
than do most of the cobbled-together
technologies available from the open-source
world. There’s also a lingering
comfort factor with commercial software
for some applications.
“Customers tend to be more comfortable
at this stage with commercial
software for a lot of the high-end quality-of-service applications related to
transaction processing or high availability,”
says Carl Trieloff, director of open
source for Iona Technologies, a developer
of commercial and open-source integration
products. “Today, you can build
a full SOA out of open source, but [the
technologies are] in the early stages, and
you don’t have all the high-productivity
development tools,” he adds.
Thus, while open source may be taking
areas such as Web server development
by storm, it isn’t always a choice for
more leading-edge projects, such as
SOA, says Michael Goulde, a Forrester
analyst. “[IT departments] often implement
open-source applications that are
similar to ones they built with non-opensource
products in the past,” he says.
“Open-source products have matured
to the point where they are more
than adequate for doing standard database
work or standard Web application
kind of work,” Goulde says. “But [developers]
tend to push the envelope less
with open source. People are concerned about support and the long-term
roadmap for a lot of the open-source
projects out there, so they are tending
to stick with the safe path.”
As always, open source is attractive
Open source will be attractive
for SOA implementations for
many of the same reasons it’s becoming
the [platform] of choice for other
development projects. Goulde says the
opportunity for innovation engendered
by the open-source community’s
hallmark collaborative development
methods will be a draw for SOAdevelopers,
too. “We’ve interviewed quite a
few corporate developers, and they’re
moving in the direction [of open
source for SOA],” Goulde says. “So I
would expect that in the next several
years, a lot more will be done in terms
of service-oriented architectures.”
Other attractions include the fast
adoption of industry standards by the
open-source community, compared to
the jockeying that often takes place
among commercial-software vendors
who have financial stakes in promoting
proprietary solutions. Commercial
vendors also face longer and more
drawn-out release cycles that delay
adoption of standards or revisions to
the specifications. By contrast, the
standing philosophy within the opensource
community is to “release early
and often, which allows you to incorporate
standards support very quickly,”
Goulde points out.
Open-source users also like the fast responses
they get when technical questions
arise. “There are so many people
using these tools that when we do have
issues, the response is really fast,” says
Corey Ostman, director of new technology
initiatives at Pricegrabber, a vendor
of online comparison-shopping services.
Pricegrabber is a longtime user of
the LAMP stack (Linux, Apache,
MySQL and PHP/Perl). “If something
comes up in MySQL, for example, we’ll
generate queries that we email directly to
the MySQL support team. And because
they are spread throughout the world,
one day we might get an answer from
New York, and another day it might be
from Israel. There are so many developers
out there, so many discussions going
on, that information is always available.”
Adds RightNow’s Myer, “With proprietary
technology, there’s actually a
frustration with being at the mercy of
the support staff. Oftentimes we know
the tools better than the support person
on the phone [does].”
The whole package matters
Commercial SOA software,
from companies such as BEA,
IBM, Oracle, SAP and Sun Microsystems,
currently has a developmental leg
up on open source by offering integrated
core technologies, such as databases,
application servers, Web services directories,
services orchestration and perhaps
an integrated development environment
and an enterprise service bus.
“What you get is a fully developed vision
of these different elements that fits
them together for an overall picture for
SOA,” Heffner says. “Each of the vendors
vary in terms of exactly how they paint
that picture, but it’s a larger picture of
SOA in a more unified way” than what
open source now offers. “In the opensource
world, you have to cobble pieces
together, and not all the pieces are there,
at least in terms of being from big names.”
So for now, open-source adherents must
mix and match with commercial offerings
to launch their SOA environments.
Sometimes, roll-your-own is easier
Part of RightNow’s business model is
the hosted environment it offers customers
who want someone else to manage
their CRM resources. The servers
that run this environment rely on Linux
as the core operating system, along
with MySQL and Apache, the opensource
database and Web server, respectively.
RightNow uses the GNU
Compiler Collection to build apps and
the PHP scripting language to create
the presentation layer for its programs.
“It’s like a Web application on the server
side,” Myer says.
To make remote procedure calls, Myer
currently uses a proprietary protocol his
company developed, but his group is
now moving to Web services standard
Simple Object Access Protocol, a transition
planned for completion before
mid-year. “To develop the SOAP interface,
we created our own SOAP layer on
the server side, so from our own application
we are processing incoming
SOAP requests,” he explains.
To do that, Myer uses the open-source
tool, Libxml2, an XML C parser and
toolkit originally created for the Gnome
development platform. “At this point, it’s
probably one of the best open-source
XML parsers and XML stream processors
out there,” Myer says. “We spent
some time looking at the gSOAP[a Web
services development toolkit] earlier
this year, and while it was a reasonable tool, for us, the decision came down to
the fact that we already essentially had
a service-oriented architecture on the
server. So we just needed to change the
protocol for it. It was easier to roll some
of our own technology there as opposed
to standardizing on another tool.”
Interesting stuff on the horizon
The active development community devoted
to open source means it’s almost inevitable
that a wider range of SOAspecific
technologies will come into being. “The
world of open source is such that if you
search long enough, you can find anything,”
Heffner says. “But when you look at the
bigger names, there’s not much that has
been architected around SOA. However,
there are some interesting initial pieces.”
Among the recent announcements is a
toolset for which development is being
fostered by Eclipse, the open-source
community backed by BEA, Computer
Associates, Hewlett-Packard, IBM, Iona,
SAP and others. The goal of the project,
known as the SOATools Platform Project,
is a framework and a set of development
tools for creating, assembling and
deploying SOA systems. “There’s not a
lot of code there yet, but maybe in about
a year or a year and a half there should be
a fully open-source development suite for
SOA,” Trieloff predicts.
Without a common toolset, SOAdevelopers
need to do some on-the-fly integration
of technologies if they’re committed
to open source. “You don’t have
tools specifically to say ‘I want a server
here and I want a server there, and I
want this link to talk to the following
[components], and I want to apply the
following policy,’” Trieloff observes. “So
to actually construct the SOA from a
high level today, you’d use the tools available
to write the services in Java or C++
and then use specific tools to deploy the
services. Then you have to use different
management tools. So the proprietary
SOAsuites look more integrated at this
point than the open source.”
The open-source community is also
planning its Version 1.0 release of a Java
ESB by April of this year. It could
smooth messaging in SOA environments.
Known as Celtix, the opensource
project is sponsored by Iona and
hosted by ObjectWeb. “There is a huge
amount of interest, and there’s a lot of
work getting off the ground with this,”
Goulde says.
Celtix participants say the ESB will be
designed to provide technologies for
connecting Web services with distributed
SOAcomponents, including application
servers, Web servers and legacy
mainframe components.
Although the Celtix announcements
generated a lot of buzz, not everyone believes
the ESB is the key to jumpstarting
open-source SOAs. “This Celtix
technology is probably going to be good,
so I’m not trying to denigrate it, but I’m
a little skeptical about the enthusiasm
for the bus,” Bloor cautions. “An ESB isn’t
the foundation of SOA. There are a
lot of SOA implementations that have
been done completely without an ESB—and I’m talking about big insurance companies,”
not only small, less complex implementations,
he says.
For his part, Myer says his ongoing
SOA interest is focused on Mono, an
open-source initiative sponsored by
Novell to create a development platform
for running .NET applications on Linux
and other operating systems. This effort
would feed into RightNow’s work to
move development of its Windowsbased
user interface to .NET and C#.
Mono could provide a valuable run-time
framework. “I’d love to see the Mono
project reach the point where we could
take a full Windows user interface application
and run it on Linux as well as on
Windows.” Now that’s something to get
your mind around.