One of the news items
picked up
on earlier this week was around the release of Oracle's
Business Activity Monitoring ('BAM') feature for Application
Server 10g. From the
amount of articles written about BAM this is obviously a key
product for Oracle, so I decided to take a further look.
According to
Ephraim Schwartz and James Niccolai for Infoworld,
"In response to market demand for more real-time business
information, Oracle announced today it will offer a BAM
(business activity monitoring) tool, Business Activity Manager,
as part of an upgrade to its application server software due out
in the middle of the year.
The BAM component will run on the existing Oracle10g Application
server, released at the start of the year, and on Application
Server 10.1.2, due out this summer. It will not run on earlier
releases such as Application Server 9i, according to Thomas
Kurian, senior vice president of Oracle Server Technologies.
Included in Business Activity Manager are the ability to detect,
correlate, and analyze separate events such as RFID scans, bar
code readings, or events out of an enterprise application or a
supply-chain process event.
Kurian said the the BAM application is unique in that it can
correlate both traditional historical events out of a data
warehouse with real-time events."
So Business Activity Monitoring will be an add-on feature for
Application Server 10g, and looks like it uses the
B2B-connectivity that comes with AS10g. This would seem logical
as a big part of AS10g's appeal as a middleware platform is
through it's ability to get different ERP and CRM systems
talking together, using technologies such as XML, SOAP, web
services and so on. Note the RFID scans mention (current
flavour of
the month with Oracle) and the nod towards integrating
current activity with historical data warehouses, which concurs
with the current Oracle vision of
integrated, real-time data warehousing.
Martin Lamonica for CNET Asia notes that the
introduction of Business Activity Monitoring is part of
a general Oracle strategy to make money out of
integrating software:
"The introduction of the new data-gathering software is
part of Oracle's strategy to bring in more revenue from the
business of stitching together incompatible software. Oracle in
January introduced Customer Data Hub, integration software sold
as a stand-alone product that uses XML (Extensible Markup
Language)-based protocols called Web services to centralize
information about customers. The company earlier this year
introduced an update to its suite of server-based transactional
software, called Oracle 10g Application Server.
Making disparate systems share information cost-effectively is a
perennial problem for companies and represents billions of
dollars in technology spending. Kurian said many companies have
already automated several individual business processes, such as
manufacturing or human resources, by investing in packaged
applications or writing custom applications. Now, companies are
looking to automate "cross-functional business processes" that
span a number of computer systems, he said."
Customer Data Hub was originally mentioned by Oracle
back in
February this year and is a way of bringing together data on
all trading entities into a single data store - which is of
course an Oracle database. Customer Data Hub raised a few
eyebrows at the time as it was seen as a bit of an about-face by
Oracle, who up until then had advocated 'Oracle-only' solutions
as the only way to deliver a successful ERP project. When you
looked at Customer Data Hub in more detail though, what you
actually saw was in fact quite a consistent approach - keep your
third-party ERP applications (Siebel, Peoplesoft and so on) but
use the Oracle database (via the Customer Data Hub) as your
single store of trading entity data. Business Activity
Monitoring looks to be building on this approach and directly
taking on integration specialists such as WebMethods, Tibco and
SeeBeyond, in the process positioning Application Server 10g as
the centre of your ERP framework. In addition, if you read the
CNET Asia article you'll also see references to something called
Business Process Execution Language, a web services protocol
being championed by Oracle, IBM and BEA as a standards-based way
to integrate ERP data.
Duncan Lamb
mentions BAM and BPEL in an article in his (always
excellent) blog:
"CRN
: Daily Archives : Oracle To Update App Server With Business
Activity Monitoring : 2:53 PM EST Thurs., May 13, 2004: "The
BAM data feeds into a central management console, where it can
be correlated, filtered and subjected to analytics, according to
Oracle. The results can be viewed on a portal dashboard. "
According to the article, the BAM capabilities include support
for BPEL, which is coming out the winner in the standards wars
for the "Process Execution" slice of the
alphabet soup of the SOA. Oracle has not settled on a
standard itself however, announcing
it will support both BPEL (initially proposed by MS and IBM) and
WS-Choreagraphy. Thank goodness for both of them, for
as the article says, "Oracle's move brings clarity to the
respective focus of each group."
So what's all this about BPEL? Well, BPEL is a bit of a hot
topic in the application server and web services world at the
moment, and in
this SearchWebServices.com article it is defined as
"BPEL (Business Process Execution Language) for Web services
is an XML-based language designed to enable task-sharing for a
distributed computing or
grid computing environment - even across multiple
organizations - using a combination of
Web services. Written by developers from BEA Systems, IBM,
and Microsoft, BPEL combines and replaces IBM's WebServices Flow
Language (WSFL) and Microsoft's XLANG specification. (BPEL is
also sometimes identified as BPELWS or BPEL4WS.)
Using BPEL, a programmer formally describes a business process
that will take place across the Web in such a way that any
cooperating entity can perform one or more steps in the process
the same way. In a supply chain process, for example, a BPEL
program might describe a business protocol that formalizes what
pieces of information a product order consists of, and what
exceptions may have to be handled. The BPEL program would not,
however, specify how a given Web service should process a given
order internally."
From an Oracle point of view, one of the best places to start
learning about BPEL is Mike Lehmann's
Web services,
BPEL4WS, J2EE blog. Mike is the Product Manager for Oracle's
BPEL engine and has put together a number of articles on web
services and BPEL that you might want to take a look at to get a
heads-up on the technology. As a starter, Mike's put together a
couple of good articles,
"Who Needs Web Services Transactions?" and
"Oracle Backs BPEL4WS and WS-Choreography", together with a
powerpoint presentation, "BPEL:
Business Processes with Web Services" which you might want
to take a look at.
So, how does this affect us? In terms of data warehousing and
BI, probably not much at the moment, and it's probably only
going to be relevant to organizations using Application Server
10g as a kind of 'central customer data hub' in conjunction with
the latest release of Oracle Applications. In the long term
though, it's another pointer towards Oracle's vision of
pervasive, real-time business intelligence, that merges current
activity with historical data, and you can see the Oracle
Application Server being a more central part of this process,
using all the interconnect functionality within the application
server platform to bring the disparate data together. What this
probably means to someone like me (who's probably more
comfortable using the RDBMS as the integration engine) is that
to stay ahead of the game, you're going to need to gain a
familiarity with web services, BPEL, XML, SOAP and so on, as
increasingly data warehouse sources are going to be in this form
rather than just flat files and database links.