On day 3
of Impact 2008, I focused quite a bit on networking but I did attend 2
sessions.
Advanced
Business Process Management Integration Techniques presentation focused on how
to use WebSphere Business modeler to model a business process that partly runs
to FileNet to manage documents and partly runs in WebSphere Process Server. The
presentation used a lot of screenshots and the speaker went through the slides
quickly leaving very little time to digest what was going on. My take away from
the session can be summarized as follows:
The integration between FileNet and
process server is at primitive level, which is expected given that IBM only
recently bought FileNet
In WBM 6.1, you can export the process
as XPDL format, a format recognized by FileNet
The integration between process server
and FileNet is not true integration. In other words, they don't work as one
product behind the scene. FileNet exposes its process as a web service, which the
process server has to invoke
FileNet has its own framework to
generate events, which are not CEI/CBE compliant events. However, WPS 6.1 comes
with a FileNet event adapter, which can convert FileNet event into CBE event
and log them in the events database for monitor to pickup
The most interesting part of the
example was passing attachments (documents to be stored in FileNet) between WPS
and FileNet. The speaker suggested that one way was to use JAX-RPC handler,
which raised several questions in my mind (none of them discussed in the
presentation)
JAX-RPC handler is part of JAX-RPC specification
but from development and tooling perspective, was it always supported? In other
words, did WebSphere Integration Developer provide tooling to configure and
develop handlers in versions prior to 6.1? If yes, are there scenarios when it
makes sense to use handlers as opposed to mediations given that handlers are
lighter than mediations
Is there any way to make attachments (or binary
data) part of the BO that flows through a process? Is it a good design decision
to do so? Probably not but then what is the best way to move documents through
the business process whether FileNet is used or not? I am going to find answers
to all these questions
The second session was [supposed to be] about
using bindings in WebSphere ESB. The abstract talked about using different
messaging bindings. In other words, the session was going to be about how
messaging systems can connect to SCA components running in ESB, what happens to
the data, how message is represented as objects etc. but the speaker announced
at the start of the presentation that he was only going to talk about MQ
bindings. This limited scope provided very little value. Also, during the
discussion the speaker merely showed the screenshots of WID where you would go
to configure bindings and set various properties. Anyone who opens WID can see
those screens. The real value would have been to discuss how to set binding
properties, when to select what value for the properties, when to use default
selectors and binders vs. when to create custom ones. The theme of the
discussion was 'here is where you configure things' as opposed to 'here is why
and how to do things.'
Before the end of the day I collected some
information on IBM partner program and met some friends I used to work with 5
years ago. Fortunately I didn't eat lunch at the conference so I don't have
anything to rant about the food.
I have
nothing but good things to say about my experience at Impact today. Yeah the
food continues to be bad but that's beside the point. I attended 3 labs today.
The first
lab was about performance improvements in WebSphere Process Server. The lab
showed how to design the application and components within the application to
achieve greater performance. The take away points are:
Keep the BOs small because they are
serialized to and deserialized from xml. Also, for a long running process they
are persisted in the database. Finally, smaller BOs are easier to handle in the
mediation
Try to reduce number of interfaces.
Consider one interface with multiple methods instead of several interfaces with
one method. Do you have methods with similar signature? Consider consolidating
them
Finally, there are things you can do in
the application server to improve the performance
The
second lab Hacking 101, was an eye opener. It made me thinking, "may be I
should stop going online." On the application design side, it discussed
SQL injection, cross site scripting and more. The lab was very informative and
gave the audience great pointers on how to design the application with security
in mind.
The third
lab was about WAS clustering. It walked through the steps to create a vertical
and horizontal cluster and manage the web server and nodes from the deployment
manager. The lab was about clustering 101, which one could probably pick up
from an article or a redbook but I thought it was a good focused exercise.
On day 3,
I am going to attend some more technical sessions. Hopefully the lecture style
sessions won't be boring.
Today was
the real first day of Impact 2008. Jim Haney - CIO of Harley Davidson kicked
off the conference, which successfully conveyed the message that the conference
was about customers and users. The conference started with the event "The
Smart SOA Approach Is Red Hot Globally." The event was a mixture of
entertainment by Drew Carey and his team and presentations by IBM and its
customers. Drew and his team were hilarious. The presentations were largely
dull with a few important take away:
Jim Haney showed a demo of a cool
website they have created for users to plan their bike ride from point A to
point B. The website uses web 2.0 technologies with underlying SOA
infrastructure. The website was a good demonstration of the fact that SOA and
web 2.0 are real and that they are here today
Robert LeBlanc of IBM talked about
business driven SOA and announced several vertical industry SOA frameworks e.g.
SOA framework for Banking industry
Tom Rosamilia of IBM talked about the
technology supporting SOA and BPM. He announced two new products WebSphere
Business Event and BPM Suite - both coming out in second quarter of this year.
He stressed that there is a major focus on business events and also talked
something about SOA Deployer. I am not sure whether SOA Deployer is a product
While the
opening event was interesting the very first session I attended was not. In
SOA, Web 2.0, people interaction: End-user interaction with SOA session, Jon
Rasiawski of IBM failed to make a connection between web 2.0 and SOA. The
presentation started with usual "business is changing constantly" and
"here are the challenges of CXO" stuff but failed to make a point of
how web 2.0 and people interaction address those challenges. Everybody gets the
value of SOA and everybody gets that it's all about customer experience, which
can be greatly enhanced by web 2.0 but how are SOA and web 2.0 related? Why and
how to think about them together? The session didn't discuss any of that. I did
hear some good examples of how mashups can be used. I also heard of a product
named Lotus Mashups, I am not sure whether it's a new product.
After the
first session, I attended a lab - Business Process Management Problem
Determination in WPS. A lab is a hands on session where attendees can follow
written instructions in a mentored environment and learn by doing. The lab was
great. It discussed how to setup a PMR with IBM in case of a problem, what
information to include in the PMR and how to collect that information. The lab
largely focused on turning on various logs and analyzing them.
The last
session I attended was IBM DataPower SOA Appliances: An Introduction by Christi
Cain of IBM. The content was good but the presenter wasn't very effective. She
didn't build the case for DataPower appliance and largely read from the slides.
The appliance and ESB or message broker have overlapping functionality. I would
have liked if they had covered when to use which. For most questions the answer
was "It depends on what you have."
Outside
the sessions the food was really boring - bunch of bad tasting salads, pastas
and some meat items. It was not clear whether the entrée was vegetarian. My
meat eating friends may have enjoyed the food. Tomorrow, I am attending more
labs and some technical sessions.
I am here in Las Vegas... not gambling (yet!)
but attending IBM Impact 2008 conference. Given my focus on SOA/BPM consulting
and my current project where I am helping my client come up with an approach to
define 'business design' (as IBM SOA Foundation calls it) and then derive SOA
from the business design, it would be a mistake not to attend. At this
conference, I will be focusing heavily on BPM, SOA and integration and I plan
to share my daily experiences here.
Before I talk about my observations on day
0, here is some day -1 stuff: Registering online was easy and I got early
registration and GWC member discounts. The registration confirmation email
didn't arrive right away; I had to call to get one. The agenda builder tool on
Impact 2008 was nice. You could see all sessions grouped by day, by track, by
type and by speaker. You can add the session you like to your personal agenda -
with the caveat that the tool won't alert you when you double book yourself.
You could email your personal agenda to yourself but the functionality never
worked for me (I never received the email). I had to manually add all sessions
in my outlook so they could show up in my phone.
Anyway, I arrived at the conference on
Sunday afternoon around 3:00 PM. The events before 3 were dedicated to the business
partners. Checking in was quick and I was impressed by all the computers
sitting around where you could pull up and print information about the
conference, look up conference attendees and even surf the web. MGM Grand is a
big hotel and finding your way around is not that easy. I would have liked more
signs or IBM associates walking around to help people. In any case, I was able
to walk between buildings and find places.
When I checked in, I was also told that the
lab registration system had made some mistakes and as a result it confirmed my
registration for part 2 event though part 1 was full. The letter stated that the
lab mentor will try to accommodate me when the lab starts, let's see what
happens.
After the registration, you could take
certification tests for free (well, I would rather say the testing fee is
included in the conference fee). This conference allows taking 3 tests per
brand, so you could take 3 Rational tests, 3 WebSphere tests, 3 SOA tests and
so on. I took one SOA test and passed. I might take more in the next few days.
At 5:30, I went to the solution center and
reception. Solution Center is a place where vendors come in and showcase their
SOA/BPM capabilities - many of them aligned with IBM offerings. What impressed me
here was a device that vendors could use to scan your badge if you stopped by
and starting talking to someone at a booth. This gave them an easy way to
lookup the visitor and follow up later. At some booths I found that the vendor
folks were busy talking to one another and drinking, and not paying much
attention to people stopping by at their booth. At some booths, people were not
as warm and welcoming. In many cases however, I found that people were eager to
talk about their SOA offerings. They were excited to discuss their solution and
answer any questions. I met with quite a few people (vendors and attendees) and
exchanged cards.
Overall, I had a good first day at the
conference. Tomorrow, I plan to check out SOA Jam and probably participate in
Smart SOA challenge.
I like everything about SOA except the
acronym and the way SOA is described. To make more sense, let me tell you a
story I read in a piece of paper stuck on somebody's cube. The story goes
something like this:
A person flying somewhere in a balloon gets
lost. He lowers his balloon and asks a man on the ground. "Excuse me!
Could you please tell me where I am?" The person on the ground responds,
"You are in a balloon about 25 feet above the ground." Hearing the
response, the balloon man correctly guesses, "You must be an IT person.
What you said is correct but it's of no use to me." The ground man replies
(also guessing correctly), "You must be a business person. You don't know
what you want, you are not asking the right questions, yet you want me to solve
your problem."
The story applies very well to SOA. While
the idea behind SOA is to promote a set of architectural principles that, by
design, support a better alignment between business and IT, we failed to include
the B for Business in the acronym. Not only that, we do a poor job at
explaining it to non-technical people. Those guys have absolutely no idea what
we are talking about when we use terms like service, architecture, loose
coupling, interoperability etc. They only care about satisfying the business
requirements. They care about business agility. They care about return on
investment. And they care about not having to write an enhancement request and
spend a ton of money when all they want is to see an additional field on their
screen.
You see, when we 'do' SOA, we knowingly or
unknowingly look at it from technical perspective. Our respected architect
tells us, "You should really expose this and that system as a set of
services." If he knows BPM, he would probably add, "You should also
analyze your business process and identify business services from them."
The architecture team starts identifying the 'toolset' to do this. The team
starts debating on the granularity of services and someone keeps repeating
"SOA doesn't have to be implemented using web services." (What's up
with that? Enough already!)
I say, for every potential SOA project, we
go back to the basics and think about the value proposition of SOA and what
it does for the business. I say, we use that value proposition to explain
to the business how SOA is about deriving IT architecture from business. I say,
we recognize and acknowledge (rather than defend) the IT pain points business typically has and try to show how
SOA helps ease the pain.
While I don't see the acronym changing, I
definitely see a potential to change our approach to SOA. Remember, there is
a B in SOA; you just have to find it.