Upload
hanhu
View
218
Download
4
Embed Size (px)
Citation preview
TECHniquesSOA EnAblEmEnt EditiOn | iSSuE 2, 2009
webmethods Spotlight
capabilities of the product, but its service-
centric architecture was there from the
start – “webMethods B2B provides the
secure, scalable and robust service-based
infrastructure needed to leverage XML
vocabularies for the purpose of binding
business processes together over the
Internet.”
A mere seven months later, webMethods
B2B 3.0 was released. It included FLOW,
“a process-oriented language developed
by webMethods for visually linking B2B
services between business systems.” This
seamless mix of document orientation
(common in B2B products) and service
orientation (allowing basic process orches-
tration) was touted as webMethods’
competitive differentiator.
Let’s dispense with the history lesson and
take a look at what constitutes a service in
webMethods ESB Platform.
A service is essentially a piece of processing
logic that takes some input data, does
something with that data, and returns output
to the caller. Here are some examples of
simple services:
Take two strings as input and return a
single string consisting of the concatena-
tion of the inputs.
Validate an XML document against
its schema.
Transform an EDI document into an
XML format.
•
•
•
Firstly, let’s not confuse Service-oriented
Architecture (SOA) with Web services. Web
services and the WS* standards are emerg-
ing as the de-facto protocols for imple-
menting SOA, but the basic concepts of
SOA are much more generic:
Technology abstraction
Inter-operability
Loose coupling
Reusable services
Network-accessibility
When webMethods began as a company
back in the 1990s, it had the vision to use
the web to integrate business processes
across company boundaries using standards-
based services to wrap internal systems
and exchange data using agreed formats.
It submitted a proposal as early as 1997 to
the World Wide Web Consortium (W3C, the
standards body that oversees most web-
based standards) for Web Interface Defini-
tion Language (WIDL), “a Meta-language
that implements a service-based architec-
ture over the document-based resources of
the World Wide Web.” Sound familiar?
WIDL was a precursor to the Web Services
Description Language (WSDL), which was
drafted four years later.
In its early years, webMethods developed
the B2B Integration Server. Its first notable
release was version 2.1, launched with much
fanfare at the Gartner ITxpo conference in
March 1999. The press release focused
heavily on the business-to-business (B2B)
•
•
•
•
•
10 yEArS Of SOA with thE webMethodS eSb platforMBy Jonathan Heywood, Product Manager, webMethods ESB Platform, Software AG
“Hang on a minute!”, I hear you think, “SOA has only been around for about five years, and even the earliest Web service
standards were not drafted until 2001. So how can you claim 10 years of SOA?” Well…let me enlighten you…
Service-oriented architecture
(wikipedia)
in computing, service-oriented
architecture (Soa) provides methods
for systems development and integra-
tion where systems group functionality
around business processes and pack-
age these as interoperable services.
An SOA infrastructure allows different
applications to exchange data with
one another as they participate in
business processes. Service-orientation
aims at a loose coupling of services
with operating systems, programming
languages and other technologies
that underlie applications. SOA
separates functions into distinct units,
or services, which developers make
accessible over a network in order
that users can combine and reuse
them in the production of business
applications. these services commu-
nicate with each other by passing
data from one service to another, or
by coordinating an activity between
two or more services.
http://en.wikipedia.org/wiki/
Service-oriented_architecture
Nowadays, there is a lot of focus on the
aspects of SOA that make it work in a
large organization, such as governance,
security, process orchestration and compos-
ite applications. And this is where the
webMethods suite really comes into its
own. The tight integration across all the
products allows companies to leverage
even more value from their webMethods
service assets through governance (with
CentraSite), process orchestration and
monitoring (with webMethods BPMS) and
composite applications (with webMethods
Composite Application Framework).
In 2003, the webMethods B2B Server name
was changed to webMethods Integration
Server to reflect more EAI-like usage
patterns. As the market for EAI and ESB
continues to evolve, we have seen the
dawn of the next generation of our product,
webMethods Enterprise Service Bus Platform
(ESB). The webMethods ESB Platform
stresses its role in SOA enablement, integra-
tion and orchestration. The product has
evolved, but the core foundation has
remained the same. Our strong leadership
position in the Forrester Wave™ for Enter-
prise Service Buses1 (complimentary copies
of the Forrester Wave and other Waves
may be downloaded from the Software AG
website at http://www.softwareag.com/
awards) and other analyst rankings are
proof that webMethods hit the nail on the
head all those years ago. In the webMethods
ESB Platform everything is, and always has
been, a Service.
1 The Forrester Wave™: Enterprise Service Buses, Q1 2009, Forrester Research, Inc., January 2009.
SAG_
WM
Spot
_ESB
Plat
form
_Iss
2-09
_12M
ar09
to find the Software AG office nearest you, please visit: www.softwareag.com© 2009 Software AG. All rights reserved. Software AG and all Software AG products are either trademarks or registered trademarks of Software AG. Other product and company names mentioned herein may be the trademarks of their respective owners.
FLOW
Java
C/C++
Adapter
XSLT
.NET
Implementation
HTTP(s)FTP
SOAPJMS
webMethods BrokerScheduler
E-mailBPM Step
Java clientC/C++ client
VB clientInvoke from FLOW
Adapter notification
Invoke Method
ESBService
Services may also interact with an external
resource, such as a database or packaged
application. Examples of these services
might include:
Read a series of inventory transactions
from a flat file.
Look up the SAP customer number for a
given DUNS ID in a database.
Create a sales order in SAP using a
BAPI call.
And, of course, a service may consist of a
series of other services to provide a more
high-level, business-like function:
Place order – consisting of…
Transform EDI document to XML
Validate XML
Lookup SAP customer number
Create sales order in SAP
What webMethods ESB Platform does so
successfully is separate the implementation
of a service from the method of invocation.
Pretty much any service, however it is
implemented, can be invoked using a wide
range of protocols (Figure 1).
•
•
•
•
-
-
-
-
You can build a service in Java and invoke
it from a C++ client. You can have an
incoming e-mail trigger a .NET assembly.
And you can configure a received JMS
message to be forwarded to SAP as an
IDOC. The possibilities are endless. The
webMethods ESB Platform allows
Software AG to add more implementation
choices and more invocation methods in
the future. If a company has a service they
developed with webMethods B2B Server
in 2000 (before the days of Web services),
then they can enable that service to be
called as a Web service today with just a
few clicks.
With the intuitive IDE webMethods Devel-
oper (now moving to the Eclipse-based
webMethods Designer), even the most
complex of services and integrations can
be built without ever writing a single line
of code. Java services are typically only
needed for low-level technical utility
functions where FLOW would be too
cumbersome or inefficient. For the vast
majority of webMethods ESB Platform
customers, well over 95% of their code
base is FLOW.
FIGurE 1: ESB Service Abstracts Implementation from Invoke Method