|
 |




webMethods
B2B v3.0 Whitepaper
October
1999 |
Want
to print this whitepaper?
Use this version.
|
|
EXECUTIVE
SUMMARY |
This document
is an overview of webMethods B2B software solutions as they relate
to business community integration. It presents an architecture for
integration that transcends categories typically imposed on business-to-business
(B2B) relationships.
By design,
webMethods B2B addresses cross-enterprise integration as a fundamentally
distinct discipline. It uniquely provides flexible options for integrating
data seamlessly from many disparate sources, regardless of communication
protocol. This includes flexibility in both the selection of integration
models and the distribution of responsibility for integration efforts.
Simply defined,
webMethods B2B is a scalable, XML-based platform for Business Community
Integration that enables open, Internet-based integration of enterprise
applications with those of customers, partners and suppliers. As
reliable as it is secure, webMethods B2B offers rapid, cost-effective
deployment and real-time, transactional exchange of business data.
webMethods B2B:
- Extends
automated e-commerce links to more trading partners than any other
solution
- Supports
open standards, allowing companies to sidestep one of the most
challenging barriers to business community integration: the politics
of deploying proprietary technologies throughout partner organizations
- Integrates
with, leverages and extends existing business processes and applications
(including EDI, ERP, databases, e-commerce and other operational
systems) beyond corporate boundaries
All told, webMethods
B2B enables tighter integration and greater efficiencies within
business communities.
|
|
|
THE
B2B LANDSCAPE |
Over the years
various technologies have emerged for coordinating how information
flows within companies and across organizational boundaries. Traditionally,
these technologies have been associated with specific types of business
or business-unit relationships:
- Electronic
Data Interchange (EDI) for loosely linked, long-term relationships
between trading partners
- Enterprise
Application Integration (EAI) and middleware technologies for
tightly linked, back-end data flow across multiple applications
or divisions within a single organization
Most companies,
however, do not have the luxury of establishing only one type of
business relationship. It is a given that supply chains will overlap.
But as businesses increasingly invest in B2B technologies, Information
Systems (IS) departments face being overloaded with multiple proprietary
solutions, not to mention potential overhead that could ultimately
impede business opportunities.
Early B2B technologies
have provided valuable lessons for next-generation B2B infrastructures.
For example, EDI supports only limited transaction sets, and the
process of integrating any conventions and extensions that depart
from standard document structures has proven cumbersome and expensive.
In an effort
to mitigate these limitations, next-generation B2B infrastructures
must be able to realize more fine-grained interactions and exchanges,
with richer and more flexible data structures. The majority of these
interactions are, and will continue to be, document-based.
Since various partner applications do not need to reference one
another directly, documents need to be created and sent, received
and processed, in batch or near real-time.
Other interactions
(e.g. middleware technologies) require a service-based approach
to integration. These real-time interactions allow tighter links
between partner applications and processes. Distributed resources
will need to interact with each other as peers. A SAP Financials
application, for instance, should be able to "see" a Baan Manufacturing
application as a native SAP resource, even when the two applications
are separated by corporate firewalls.
Each approach
involves varying degrees of process coordination between partners'
information systems. The fact that, to date, there has been no single
B2B solution offering both document and service-level exchange has
complicated things further.
Fortunately,
there is now a solution that meets all the criteria: webMethods
B2B.
Business
Community Integration Defined
Business Community Integration is generally defined as the automated
exchange of information occurring independent of or alongside manual,
human-based processes. It uses the open protocols of the Internet
to allow an enterprise to exchange or share information across corporate
boundaries or "firewalls" with it's network of customers, suppliers,
and business partners by:
- Enabling
companies to exchange documents with and offer real-time services
to their top trading partners.
- Enabling
companies to connect to B2B marketplaces of buyers and suppliers
(also known as portals, hubs, or networks).
When a business
community is fully integrated, an organization's enterprise applications
such as enterprise resource planning (ERP), customer relationship
management (CRM) and legacy applications can interact seamlessly
and securely with those of their external business partners - without
cumbersome manual processes or significant changes to the organization's
technology infrastructure.
As a result
of Business Community Integration, orders can be entered more rapidly
and with fewer errors, products can be shipped sooner, compliance
can be monitored in real time, and customer queries (such as price
quotes and product availability) can be addressed more efficiently.
|
|
|

Figure 1 - Business
Community Integration Via webMethods B2B
|
|
|
|
The Role
of XML (eXtensible Markup Language)
A business community integration solution must address the complexity
of integrating application services from any number of disparate
information systems. The message format must be open and flexible
enough for different applications to understand and process-a need
met by XML.
XML is a metadata
language that defines a universal standard for structuring data.
It is an extremely simple dialect of the Standard Generalized Markup
Language (SGML), the International Organization for Standards (ISO)
standard for defining the structure and content of electronic documents.
Though its initial focus was the exchange of structured documents
over the Web, XML supports a wide variety of applications.
For the first
time, businesses can agree on how data is structured, whether that
data is passed as a document or encoded in a message format for
service requests and responses. In fact, XML enables business data
to be served, received and processed on the Web as easily as HTML.
Not surprisingly,
XML is playing a critical role as a number of standards bodies and
an increasing number of proprietary technology vendors address the
challenges of business community integration. Applications of XML
run the gamut:
- Simple generation
of XML documents from flat files
- Configuration
and log file formats
- Capture of
statistics for performance analysis
- Sophisticated
XML document routing and transformation engines
- XML encoding
for real-time information exchange
In February
1998, the World Wide
Web Consortium (W3C) adopted XML as a formal recommendation.
Since that time XML usage has soared. Technology heavyweights, including
Microsoft, SAP, IBM, Sun and Oracle have all announced their support
for XML. This wide acceptance is also exemplified by vertical industry
groups who are defining specific XML vocabularies, including the
Open Application Group Interface Specifications (OAGIS), RosettaNet's
Partner Interface Processes (PIPs) Framework, and Ariba's Commerce
XML (cXML).
For more information
on XML, webMethods recommends The XML Handbook by Charles Goldfarb
(Prentice Hall Computer Books; ISBN: 0130811521).
Business
Community Integration Requirements
While XML offers far greater flexibility and extensibility than
traditional messaging formats like EDI, XML cannot deliver business
community integration by itself. Applications must first be adapted
to learn how to communicate using XML. A B2B infrastructure must
also be in place to manage the integration process over time, route
requests and translate messages that conform to different Document
Type Definitions (DTDs).
Above all, the
total business community integration solution must minimize the
business risks of adopting its infrastructure. Understanding the
cost of entering into new business relationships, while managing
the ongoing costs associated with changing existing relationships,
are essential.
From a technical
perspective, a B2B solution must also:
- Leverage
existing enterprise and business partner infrastructures
- Integrate
heterogeneous systems across firewalls
- Provide authorization
and security across corporate firewalls
- Guarantee
delivery of messages
- Support both
document- and service-based integration
- Manage change
and support ongoing evolution
- Support XML-based
vocabularies and technologies
- Pose minimal
impact on partners' IT infrastructures
- Transform
and map data
- Deliver scalability
and performance
webMethods B2B
meets all of the above requirements and more.
|
|
|
WEBMETHODS
B2B SOLUTIONS |
The webMethods
B2B suite of products resolves complex integration challenges by
leveraging open, ubiquitous Internet standards, including XML, HTTP,
SSL and X.509 digital certificates. Throughout a business community
or portal customer base, webMethods B2B seamlessly links data, information
systems and collaborative processes in real time:
- webMethods
B2B facilitates secure, guaranteed bidirectional information
exchange between disparate applications within a business community.
Critical business applications, such as customer relations, procurement
and financial services, easily extend beyond the firewall to integrate
with EDI/ERP systems, legacy applications, databases and Web sites.
- webMethods
B2B for Portals extends webMethods B2B to manage vast online
business communities. The "hub" for hub and spoke, as well as
for multi-buyer/multi-seller marketplaces, it provides rapid,
cost-effective links between operational systems of business partners
over the Internet. And it is the transaction engine at the center
of prominent B2B portals, including mySAP.com, Grainger.com, MRO.com,
Tech Trader, VerticalNet, and Dun & Bradstreet's Global Access
Platform.
- webMethods
B2B for Partners delivers fast implementation and activation.
It cost effectively links key business partners, regardless of
partner size or technical capabilities. Supporting both hub-and-spoke
and federated architectures for partner integration, it also provides
partners with the full enterprise integration capabilities of
webMethods B2B.
|
|
|
BROAD
XML SUPPORT |
Unlike most
XML-based solutions, webMethods B2B supports XML on a broad scale.
It uses XML for all of the above-noted functions as well as for
an abstraction layer above all B2B services.
To advance the
adoption of XML-based technologies, webMethods actively participates
in standards groups. These include the World Wide Web Consortium
(W3C), the Open Applications Group (OAG), the Supply Chain Council,
the Financial Products Markup Language (FpML) technical committee,
and RosettaNet, to name a few.
A member of
W3C's XSL and RDF working groups, webMethods co-authored XQL, an
XML Query Language, in 1998 with Microsoft and Texcel. In addition,
webMethods works closely with leading technology vendors on XML
efforts such as Microsoft's BizTalk, SAP's XML BAPIs and IDOCs,
Sun's Java API for XML Parsing, and Ariba's cXML. All of these technologies
and initiatives are supported natively by webMethods B2B.
|
|
|
WEBMETHODS
B2B COMPONENTS |
B2B Registry
webMethods B2B is a 100% Java process that runs on any operating
system supporting a Java runtime (version 1.1 or later). It provides
a common platform for applications to exchange information with
other applications and data resources that reside locally or across
the Internet behind firewalls.
Architecturally,
all applications and data resources made accessible by a webMethods
B2B are exposed as services that reside in a common registry. A
B2B service is uniquely identified and invoked by an interface name
and service name, assigned when an administrator registers the service
in the B2B Registry. The interface name may be nested to any level,
enabling a descriptive registry.
In general,
a B2B service accepts inputs from a client application, processes
them, then returns output to that client. All B2B services and interactions
that flow through webMethods B2B are represented with XML -- used
to describe the data transformations that must occur when data is
exchanged between different business applications. Addressing inevitable
changes within cross-organizational systems, this approach provides
a critical layer of abstraction between one business system and
another, while allowing linked systems to be modified dynamically
without requiring coding, code generation or modification of source
systems. Disparate sources of information, including ERP and legacy
systems, databases, and online e-commerce Web sites, are seamlessly
linked and uniformly accessed.
|
|
|

Figure 2 - B2B
Registry
|
|
|
|
Highly scalable
and fault tolerant, webMethods B2B supports server clusters through
session replication across servers and multiple, concurrent client
connections-each of which can make multiple, asynchronous service
requests.
FLOW
At the heart of webMethods B2B v3.0 is FLOW, a process-oriented
language developed by webMethods for visually linking B2B services
between business systems.
A B2B service
represents a single, discrete function. However, there are times
when it is necessary to execute a set of services together. With
FLOW, new B2B services can be defined as a sequence of B2B services
to be processed in a pipeline that includes rich semantics for sequencing,
branching, looping, as well as a full complement of data transformation
capabilities.
A B2B service
defined by FLOW allows webMethods B2B users to access multiple XML
or HTML documents; perform transformations, database queries and
updates; invoke services in ERP applications or on systems that
reside behind firewalls at partner sites; and return desired-result
sets to the clients.
FLOW can be
used to implement synchronous, real-time data exchange, asynchronous
document delivery, or complex long-running transactions such as
RosettaNet PIPs. For example, a B2B service can be created that
takes a purchase order (P.O.) from a buyer, then executes the following
series of B2B services before submitting it to an internal ordering
system:
- Receive a
P.O. submitted by a Buyer
- Log the receipt
of the P.O. to an audit file
- Perform a
credit check and location verification against Dun & Bradstreet's
Global Access Platform
- Post the
P.O. into an ERP system
- Return an
acknowledgement to the sender
|
|
|

Figure 3- webMethods
flow
|
|
|
|
Using the visual
editing tools provided with webMethods B2B, developers can visualize
a "pipeline" of data flowing across a set of B2B services. Pipeline
is a general term used to refer to the data structure in which input
and output values are maintained for a FLOW service. It allows B2B
services in the FLOW to share data. The pipeline starts with the
input to the FLOW service and collects inputs and outputs from subsequent
services in the FLOW. When a service in the FLOW executes, it has
access to all the data in the pipeline at that point.
In building
a FLOW service, the webMethods B2B Pipeline Editor enables data
elements to be visually mapped to and from B2B services. It allows
different, but compatible, data types to be mapped to one another.
For example, a string value called AccountNumber can be mapped to
a string List called Accounts. At run time, webMethods B2B automatically
performs the structural transformation necessary to map the data
in AccountNumber to Accounts. The webMethods B2B Pipeline Editor
also provides 'Value Modifier' operators to set default values for
variables, to 'override' pipeline values by hardcoding specific
values, as well as to reference other pipeline variables at runtime.
Besides using
different variable names and data structures to represent sets of
data, B2B services can represent data in different formats. This
is common with date and time variables, where, for instance, one
service might use "01/01/99" and another "January 1, 1999." To resolve
data differences, webMethods B2B provides a set of value-transformation
services that enable transformation of values from one format to
another.
Note:
FLOW represents a superset of the functionality previously provided
by Web Interface Definition Language (WIDL). While WIDL is still
supported by webMethods B2B for backwards compatibility, all new
B2B services are implemented in FLOW. FLOW is more generic and considerably
more powerful than WIDL, and not so explicitly targeted to Web Automation.
FLOW introduces
the ability to manage long-running conversational transactions such
as the PIPs defined by RosettaNet. Like WIDL, FLOW is a 100% XML-based
vocabulary, and any WIDL construct can be represented in FLOW. In
addition to maintaining 100% compatibility with WIDL, webMethods
provides a WIDL-to-FLOW Assistant for conversion of existing WIDLs
to FLOWs.
Protocol
Manager
Protocol "listeners" accept incoming requests for B2B Services.
The primary protocol for webMethods B2B is HTTP/HTTPS, which provides
access to B2B Services via XML messaging, remote invocations from
other instances of webMethods B2B, or directly from browsers. webMethods
B2B is extensible to support any number of simultaneous protocols
including SAP RFC, FTP, IIOP and RMI.
Security
Manager
webMethods B2B provides comprehensive security features as a foundation
for industrial-strength B2B applications:
- Authentication
- All client connections to a webMethods B2B server are authenticated
by either a user ID and a password, or through the use of an X.509
digital certificate. webMethods B2B can authenticate itself to
other clients or remote servers by use of its own digital certificate.
- Authorization
- Security policies can be enforced by the use of Access Control
Lists (ACLs). ACLs define what users (or groups of users) are
authorized-or denied-access to a B2B service or to an interface
that includes a collection of B2B services. Each B2B service can
have its own ACL.
- Data Privacy
- Both inbound and outbound requests can be secured using the
Secure Socket Layer protocol (SSL). This is the standard protocol
for providing secure communications over the public Internet.
SSL libraries are embedded in webMethods B2B.
webMethods B2B
can be configured to obtain user and group information from external
directories supporting Lightweight Directory Access Protocol (LDAP)
or Network Information Service (NIS).
Context Manager
Each B2B
service is a multi-threaded process. This means that the server
does not generate a new "instance" of a service each time a client
requests it, but simply spawns a new thread for the service. As
a result, the server can process multiple, concurrent requests using
a single copy of the service in memory.
Internally,
webMethods B2B uses a Context Manager to maintain information about
the state of each request-in-process. This context manager enables
clients to maintain a multi-transaction conversation with a webMethods
B2B server. A client's context is cleared when the client's session
terminates or expires.
Cache Manager
Each B2B
service supports result-caching, which can greatly improve throughput
when many clients request the same service with identical inputs.
Caching can be dynamically enabled or disabled on a service-by-service
basis. A service cache may also be configured to pre-fetch data
at pre-determined intervals. Cache expiration can be set for each
individual service.
Transaction
Manager
webMethods B2B eliminates the need for client applications to address
network and systems failures. It does this by providing persistent,
secure, guaranteed store-and-forward capabilities over the Internet-capabilities
that have the following attributes:
- Once a request
is submitted, it is guaranteed to either be processed once and
only once (idempotence) by the target webMethods B2B server, or
to fail outright, irrespective of network or system failures.
- All failures
are fully logged so that state may be recovered.
webMethods B2B
includes a Transaction Manager that registers transactions in a
local job store and monitors the progress of each transaction. If
the Transaction Manager does not receive a result for a transaction
in its job store, it resubmits that request to execute the service.
It continues to resubmit requests until it either receives a result
or the transaction expires.
A guaranteed
delivery transaction has two attributes that determine how long
it stays in the job store before it expires. These
are the time-to-live (TTL) and the retry limit. The TTL specifies
the number of minutes that a transaction is to remain in the job
store before expiring. The retry limit specifies the maximum number
of times that the Transaction Manager can resubmit a request. A
transaction expires when the TTL or the retry limit (if specified)
is reached, whichever comes first.
Database
Manager
webMethods B2B accesses databases using JDBC. The B2B Database Manger
provides automated generation of B2B services directly from SQL
statements and database table structures. B2B services generated
via this method do not require compilation; they are immediately
available in the B2B registry. The B2B Database Manager also provides
a simplified API to JDBC drivers to make it easier to create B2B
services that perform more complex database operations.
Web Automation
Web Automation
automates all HTTP interactions with XML and HTML documents and
forms. While e-commerce Web sites are intended for human access
via browsers, they, in fact, provide interfaces to corporate applications
that have been Web-enabled.
Web Automation
provides a mechanism that treats the functionality of all Web sites
(Web-enabled applications) as B2B services. These services can be
invoked natively from business applications to enable existing Web
sites, whether they deliver data in XML or HTML, to be leveraged
as the lowest-barrier building block for business community integration.
If partners
have not yet exposed business functionality to Web sites, they can
select the Web-enabling technologies that best suit their environment
to securely expose interfaces to business partners. Web Automation
provides a general method of representing request/response interactions
over standard Web protocols-allowing the Web to be utilized as a
universal integration platform.
WebTap: Mediated
Access to Web Applications
Through its WebTap feature, webMethods B2B acts as a proxy between
browser clients and Web sites or Web-based applications. WebTap
controls an end user's browser experience while allowing B2B services
to intercept and modify data that passes through webMethods B2B.
And its "triggers" can intercept Web transactions and substitute
local logic and/or pages for what would otherwise be performed by
the third-party site.
The most straightforward
application of WebTap is its ability to play an active role in procurement
applications. By defining WebTap "triggers," a B2B service can intercept
informational and transactional elements of Web-based interactions.
For example, shopping carts from e-commerce Web sites such as Dell
or CompuCom can be intercepted as end users proceed to "check-out."
Once a shopping cart is intercepted, the contents can be transformed
into a format suitable for transfer to into a procurement application,
which can then process the order to workflows defined by the purchasing
organization.
Another application
of WebTap is the aggregation of services and documents located behind
multiple password-protected sites. By allowing WebTap to automate
sign-on to multiple Web sites, an end user only needs to be authenticated
to webMethods B2B-which can,in turn, be responsible for authenticated
access to applications or Web sites across the Internet.
Integration
Modules
Integration modules are custom-developed services that run within
a thread of a webMethods B2B server process. They can be used to
extend the integration capability of webMethods B2B to other resources
not supported "out of the box".
Integration
modules allow legacy APIs to be exposed as B2B Services. Previously
complex, low-level APIs can be made accessible to browsers, B2B
clients, other integration modules, and other applications via guaranteed,
secure XML messaging.
Integration
modules also extend ERP packages (e.g. SAP, Baan, Peoplesoft, Oracle),
EDI and traditional middleware (e.g. MQ Series, MSMQ, Oracle AQ,
Active Software) beyond corporate boundaries-securely, easily and
rapidly.
webMethods
B2B Administrator
Administration tasks such as updating license keys, adding users,
monitoring server activity, and setting configuration options for
individual services are performed via the webMethods B2B Administrator.
This administrator
also provides a view with sliding window statistics on all B2B services,
and enables configuration for SMTP based notification when individual
B2B services fail.
|
|
|

Figure 4- Sliding
Window Statistics as presented in webMethods B2B Adminstrator
|
|
|
|
Logging Facilities
The Audit
Log
The Audit Log maintains an audit trail for all services that the
server executes. For each service, the server adds two records that
contain information about the service. It adds one record when it
begins execution, and includes the timestamp of when execution began.
It adds the second record when the service terminates, and includes
the timestamp of when the service terminated.
The Error
Log
The Error Log maintains information about all errors and exceptions
that have occurred in the B2B system.
The Server
Log
The Server Log maintains information about the version of the webMethods
B2B [Integration?] server that is running, and the operations that
the server has performed. Additionally, this data can be used or
general debugging purposes.
The Session
Log
The Session Log maintains information about all sessions in the
B2B system. webMethods B2B creates a session when a developer connects
to the server or a client connects to the server to execute services.
Each record in the Session Log includes a timestamp indicating when
a user established a connection with the webMethods B2B server.
The Statistics
Log
The Statistics
Log maintains statistical information about the consumption of system
resources:
- Total memory
- Free memory
- Number of
threads in use
- Number of
current connections/lifetime average of number of connections
- Average
number of connections for last poll cycle
- Number of
current requests/ lifetime average of number of requests
- Average
number of requests in last poll cycle
- New requests
per minute at the beginning of the poll cycle
- New requests
per minute at the end of the poll cycle
Transaction
Logs
The Transaction Logs maintain information about guaranteed delivery
transactions. They contain a record of all critical operations that
the server performs for each guaranteed delivery transaction. The
server maintains one log for inbound guaranteed delivery transactions
and a separate log for outbound transactions.
These logs can
be used in conjunction with the appropriate job store to identify
specific information about a transaction. For example, if a transaction
fails, the log can determine how far the transaction traveled before
failing, enabling appropriate measures to recover that transaction.
Package Management
and Replication
A package contains a set of services and related files, such as
specifications, records, and output templates. By placing related
files in a package, all the services and files in the package can
be managed as a unit. Packages can be selectively enabled, disabled,
refreshed or deleted with one action.
B2B services
can be grouped using any package structure, though most organizations
group services into packages by function or application. For example,
you might put all purchasing-related services in a package called
"Purchase Order Mgt" and all time-reporting services into "TimeCards."
If you have
more than one instance of webMethods B2B installed, you can use
the package replication feature to copy all the services and files
in a package to another instance of webMethods B2B. Package Replication
makes it easy to maintain a package on one instance of webMethods
B2B, as well as automatically propagate changes to other webMethods
B2B instances that may reside behind firewalls across the Internet.
Package Replication is also used to "Promote" packages to production
by publishing packages from development to test to deployment installations.
|
|
|
SUMMARY |
The goals
of business community integration are to increase the efficiencies
of distributed communications across organizations while decreasing
the cost of such communications. By more closely coordinating activities
between business partners, businesses can realize dramatic productivity
gains. EDI has achieved limited success in this regard. Business
community integration moves beyond the limited transaction sets
supported by EDI to automate all data flows across the community.
The challenges
of business community integration are threefold:
- Enterprises
want to integrate their systems with those of their business partners.
- Customers
must first agree on a methodology and a technology base to achieve
integration. This includes agreement to invest in both the products
and resources (including training) required to deploy B2B solutions
in all partner organizations.
- Companies
must next overcome technical barriers, including security, data
representation and process definition.
Yet, the largest
barriers to achieving integration with business partners are political
barriers-deciding to invest in technology, implementation, and training
of staff. webMethods B2B overcomes these barriers, providing a frictionless
path toward tighter integration with business partners over time.
Widely deployed,
webMethods B2B combines the benefits of both document- and service-based
approaches to business community integration, leveraging XML as
a core technology for the integration of diverse business systems.
The integration architecture that underpins webMethods B2B supports
a variety of emerging standards. It allows enterprise systems to
be integrated once, and functionality to be exposed as either documents
or services (real-time interfaces), as part of a RosettaNet PIP
or an OBI transaction, as an EDI document, a CBL document, a cXML
document, an arbitrary XML message, a thin client library (C/C++,
Java, Visual Basic), or via browser-based applications.
Bottom line,
webMethods B2B is a scalable, reliable and secure solution for business
community integration. It extends the reach of your e-commerce systems,
ERP and legacy applications to enable industrial-strength automated
links with your customers, partners and suppliers.
|
|