I was chatting with a few customers that have both WebSphere Process Server and FileNet P8. A very interesting discussion emerged with the enterprise architects - they all want to know how to decide which product to use for which BPM initiative. I said it depends very much on your scenarios. Each product has strengths in addressing certain scenarios:WPS Scenarios
If the project you are planning has some of these characteristics, WPS will be a good starting point:
- Transactional processes that interconnect with the enterprise applications, are short lived, and may not require human interaction. Sometimes this is referred to as straight through processing. This is a simple usage pattern of WPS where a process invokes multiple services and coordinates the actions under the same transaction.
- System to system integration that needs connection to many backend services (e.g. Siebel, SAP and PeopleSoft) through built-in invocation capabilities such as WebSphere Adapters. You need to connect to these major systems and applications through a variety of interfaces that can be Web services based, Java based, using JCA, or use messaging as the transport mechanism.
- Your application needs to ensure a high degree of interoperability with other systems using Web services standards, for example a B2B application. You might require the use of some ESB to do mediations (e.g. accessing SOAP headers or doing transformations). These application patterns are especially common if you are using Industry Schemas such as Accord, OAGI, SWIFT, HL7 etc.
- You need a high-performance business-process engine that can run critical business processes securely, with transactional integrity. You require built-in support for two-phase commit, recovery, error handling.
- Your BPM application needs to transform many existing IT assets into flexible and reusable "services" - functions that can be easily mixed and matched to quickly address evolving business process requirements. For example, you might want to assemble from CICS platform and integrate them seamlessly with Web services that allow you to show quick time to value when you deploy your new BPM application.
If the project you are planning has some of these characteristics, IBM FileNet will be a good starting point:
- Content centric processes that are highly collaborative and require users to make decisions based on documents, images, or other type of content during the processes. Typically, content is unstructured information ranging from simple e-mails, pictures, documents, instant messages to complex forms, contracts, and reports. Content can include any file format such as scanned images, electronic documents and rich media.
- You application needs to use a lot of active content to trigger or affect business processes. For example, content received via fax, e-mail, or Web can trigger a process. Additions and changes to content, such as new document creation, can trigger a new process to act on the content. Active content includes the delivery of information in a way that is more unified, accurate, and contextual to the business processes.
- You need to manage records for compliance with no user involvement. You want to reduce the risk of litigation and provide business continuity by enforcing corporate compliance procedures, storing only records that are required, only for as long as they are required, and ensuring that expired records are destroyed in a legally acceptable manner.
- You want to manage the lifecycle of the content as states of a process. For example, a security procedure document on a highly secure installation may require updates, reviews, and approvals every five years. In this case, the document has several states, active, in review, in approval, etc. The document itself is considered the process, and it may launch processes at each state transition.
For enterprise end-to-end long running business processes, I think many will need to involve both active content support provided by FileNet, and composite services support provided by WPS. In a recent proof of concept, an immigration office is adopting BPM to build their next generation immigration business processes. An instance of an immigration process is very much long running. An applicant files (e.g. tax forms, employment information, medical records) are typically submitted when the applicant applies for immigration, and the documents need to be securely stored. Different documents will need to be activated in context as the application goes through different steps in the immigration process. Different services will also need to be invoked to process the application, for example, credit and education background checks. Humans will need to be involved at various stages - to interview the applicant and to deal with any exceptions. Real-time visibility to such end-to-end process is also very important. For example, if an applicant calls in to ask for the status of their application, the immigration office can provide them with information as to what step they are at in their application process. If an application gets stuck in a certain step pending for more information, the immigration officer can get alerts and be able to take actions immediately to prevent backlog.
With the BPM 6.1 products, you can now build an end-to-end BPM solution using both WPS and FileNet much more seamlessly. You can use WebSphere Business Modeler 6.1 to model your end to end business processes that can be deployed on both WPS and FileNet. You can also use WebSphere Business Monitor 6.1 to monitor your complete business process. My team and I have developed a developerWork series to illustrate this end to end integration. Let us know what you think.[Read More]
Have you ever been in one of those meetings where rules and policies are used interchangeably and you start to wonder if they are actually the same thing or are they different thing? Within the context of our BPM products, business policy and business rule are two different things. They can be used separately or they can be used together to improve business agility.
Business policy support is provided by WebSphere Business Services Fabric. A business policy represents how the business intends to operate in a given business context. It allows the business leaders to make rapid changes and test ideas with far less resource such as re-building the business processes or systems.
Out of the box business rule support is provided by WebSphere Process Server. It is seamlessly embedded into the WPS component model via SCA. Business rules enrich WPS business processes and let customers externalize frequently changing process conditions for rapid change. Both if-then rules and decision tables are supported. If more advanced rules logic or management is needed, you can use other business rule management system such as ILOG JRules.
Now let's look at an example on where business process, business policy and business rules can be used together to provide a very flexible implementation that can respond to changes quickly. Imagine a simple Auto Quote business process. One step in this business process could be to invoke a pricing service. The business leader might want to use different vendor pricing services, depending on whether the requester is high risk or non-preferred. For these kind of coarse grained process logic that deals with service abstraction, using business policy from WebSphere Business Services Fabric to determine the appropriate pricing service to invoke based on context, content or contract will be a good implementation choice.
Within a particular pricing service, a service provider might choose to implement certain if-then-else logic using business rules instead of plain Java code. For example, what discounts to apply based on the time of the year. For these kind of fine grained decision logic, using business rules from WebSphere Process Server or other rules vendors will be appropriate to enable the business user to make decisions based on changing business needs.
It has been a while! It is sort of hard to talk about what we are doing when we don't have a name. And believe me, the name has changed many times.
And now we have a real name, it is IBM BPM BlueWorks and Project Virtuoso.
Come to our sessions at Impact to see what this is all about. Looking forward to seeing you.
I took a day off to go see Rogers cup at the York University yesterday. After six hours of rain delay, Roger Federer played but he blew it with all kinds of unforced errors. So the big debate continues - who is the No.1 in men's tennis?
There has also been a lot of BPMN 2.0 debates recently. For those of you that are new to BPMN, the OMG site provides a good introduction and summary of BPMN. My colleagues at IBM (e.g. Matthias Kloppmann, Pablo Irassar, Stephen A. White, Suzette Samoojh) have been working with many of the industry leaders (e.g. Frank Leymann, David Frankel, Vishal Saxena) to develop a BPMN 2.0 spec in response to the BPMN RFP by OMG last year. The BPMN 2.0 spec will provide a notation and model for business processes and an interchange format that can be used to exchange BPMN process definitions between different tools and make process definitions more portable. Overall, the contributions from our BPM team have been quite well received by the industry.
A question I get frequently asked is what is our product plans for supporting BPMN in BPM? Well stage one BPMN support is here with the release of WebSphere Business Modeler 6.1.2. You can now use the BPMN standard graphical notation (e.g. gateways, tasks, events) to draw your process diagrams. You can toggle between the previous Modeler notation (if you are more comfortable with the old notation), but the new BPMN notation will definitely help those business analysts that are familiar with other process modeling tools out there.
But this is just the beginning. In the labs, we have been working on BPM 2.0 - our next generation technologies - for example, supporting Web-based BPMN authoring, integrating our acquisitions such as Telelogic System Architect and FileNet with the BPM Suite. The debates can continue, but there is only one No.1 and the player with the best techniques, strategy and execution will win. I believe IBM BPM and Roger Federer will emerge as the Dark Knight with many capabilities to come that will hugely benefit our fans.[Read More]
I have been working with our Research and BPM Incubation teams on getting some of our BPM functions hosted on the Web. One reason for doing this is to make it simpler for customers to get into BPM without a huge investment. A key enabling technology that makes this possible is RESTful SOA. Jerry Cuomo talked about this extensively in his blog and interview with InfoQ and provided a very good direction on where we are going.
Today you can get pretty useful content from services outside the Enterprise such as getting the RSS feeds for stock or commodity price, traffic or weather. You can assemble them into interesting applications using Mashup tools. Serena calls these applications Consumer mashups and Data mashups. Now think about how you can also unleash some of your Enterprise SOA assets to the Web and allow the business users to compose their business applications. New interesting applications can then emerge from services that are available from both inside and outside the Enterprise.
To help you unleash some of your Enterprise SOA assets, Mihnea Galeteanu and Eugene Kharlamov wrote an article to show how to enable your SCA components to export HTTP bindings so that they can be callable via REST. Through the use of HTTP Data Bindings, you can now serialize and deserialize a business object to and from the HTTP body. This is a very neat capability because it can enable your AJAX client to pass JSON to a business object that is used by any SCA component such as BPEL and Business Rules.
If you are using WebSphere Business Monitor for your BAM solution, you can also use REST to get to your BAM data. WebSphere Business Monitor exposes its metadata such as the list of deployed monitor models, their KPIs, and the monitored metrics via a set of REST Services. Through these URIs, you can use other clients such as an Excel spreadsheet or a Google widget to get access to your BAM data and use them in the context of your business applications.
Last but not least, the WebSphere MQ team has also created the WebSphere MQ Bridge for HTTP that allows a client application to exchange messages with WebSphere MQ from any platform or language without the need for a WebSphere MQ client. This enables business users to access WebSphere MQ with no MQ skills. They can simply use a Web application or write a script to post a message to MQ to trigger an enterprise level application or event.
As we go forward in 2008, you will be able to access more and more of our BPM platform via REST. The WebSphere Process Server, WebSphere Business Services Fabric, FileNet, and Project Zero teams are all working on exposing RESTful interfaces. Make a wishlist for the business applications that you want your LOB to assemble themselves without IT involvement, share it with us. If we understand your popular scenarios, they may actually come true...[Read More]
I hope you have a chance to visit BPM BlueWorks
and read some of the behind the scenes architecture
I have been helping a number of my colleagues with BPM BlueWorks registration. Since this seems to be a common question, I thought I share this with everyone.
- Only FireFox is supported. Safari does work reasonably well but not IE.
- Enter a random company name - it doesn't matter what as long as it is unique in the system and it is not on a Denied Party List (DPL). Unfortunately we do not know which name is on this list.
- Enter an email address that is non-IBM. Right now because of some legal logistics, IBMers are not allowed to register with their IBM internet id. If you are from IBM, use your own private email address, or if you are just testing, you can use a made up email id from mailinator.com - e.g. email@example.com.
- Note: mailinator.com is known to be sometimes slow. If you use mailinator.com, you can just go there and open the email and there will be a link.
- You should receive an email notification. If you do, it is good. The first person to register for a company becomes the company admin. You can invite others to join, or others can just enter the same company name and join the company.
- After registration, close your browser. When you received the email, open a new browser session. This will prevent running into a WebSEAL problem. If you see an error message that mentioned something like pkmslogout, do this trick.
- The address you entered doesn't matter. We have mistakenly missed some countries but they will be added in the next upgrade. If your country is missing, you can alter it using My Profile in the Company widget after you login.
And yes, we are hosting at Asbhurn, the same location as LotusLive.
Enjoy. Let us know what you think...
Tom and Sandy announced BPM Blueworks yesterday at Main Tent. Jerry talked about Project Virtuoso at his WebSphere Trends and Directions session. Craig is going to do a live demo on his keynote today. But if you really want to understand how all these really work, come to my session tomorrow:
Title 1362A - Delivering BPM as a Service, Wed May 06, 1:30pm at Venetian Lando 4205.[Read More]
The new WebSphere Dynamic Process Edition 6.1.2 from the IBM's BPM Suite includes a new Asset Repository for BPM that is powered by Rational Asset Manager. It enables teams working on a BPM project to store and share artifacts through the BPM solution life cycle. In 6.1.2 WebSphere Business Modeler, WebSphere Integration Developer and WebSphere Business Monitor Toolkit are all integrated with the Asset Repository to enable a new level of BPM assets reuse as well as linkages between the BPM artifacts (e.g. process models to process implementations to monitor artifacts). By leveraging the governance and impact analysis capabilities built in RAM, the business to IT collaboration can be improved. For example, when changes are required for a new business initiative, impact analysis via the relationships that are captured in RAM can help the business understands the impact to related services.
Speaking about repository, many of my colleagues such as Marc-Thomas Schmidt has led the definition of our repository strategy starting a few years ago and now we have a very good story. The WebSphere Service Registry and Repository Advanced Lifecycle Edition is a offering to consider if you want to manage and govern your SOA assets end to end from development to runtime. Using the RAM to WSRR integration, you can select certain assets (e.g. WSDL interface for your process) from RAM and publish that directly to WSRR. This allows you to capture and maintain the relationships between development and runtime assets and has ability to analyze and manage changes as your SOA systems evolve. This redbook provides guidelines on how you can you RAM and WSRR for your SOA lifecycle governance.
A question that I frequently get asked is how does the Asset Repository relate to our existing source control systems such as ClearCase or CVS. Working with our Rational colleagues Carlos Ferreira and Gili Mendel, we put together the following table to help explain how the two technologies are complimentary and both essential.
| ||SCM (ClearCase, CVS) ||Asset Repository for BPM |
|Primary roles ||Developers ||Business Analysts, Developers, Architects, Managers etc |
|Content level ||Files ||Assets - an asset can contain multiple related artifacts (files) and associated metadata |
|Change rate ||Frequent - work in progress ||Rare - hardened reusable components |
|Collaboration ||For creation of artifacts and parallel development ||For review and reuse of assets: discussion forums, emails, notification, RSS feeds |
|Taxonomy ||N/A ||BPM asset types and relationships. Customers can add additional classification |
|Search ||File based ||Metadata based search, custom metadata attributes |
|Metrics ||N/A ||Track asset usage, feedback and popularity |
|Review and approval ||Change management ||Review boards, customizable review process |
|Asset types, relationships and Impact Analysis ||None ||Recognize BPM asset types and relationship. Help with end-to-end traceability including production deployment |
|Versioning ||Done at source files level ||Done at asset level. An asset can contain multiple files |
|Client Access ||Eclipse ||Both Eclipse and Web |
Are you one of those early practitioners that have deployed WebSphere Process Server with WebSphere Portal to implement a BPM solution that requires human involvement in a business process? Did you recall how hard it is to configure such a deployment? You need to understand all the parts (e.g. Business Process and Human Task Container, WMM Staff Plugins, LDAP, Portal and Process Server cell setup etc), how they interrelate, obtain each product followed by their requisite fix packs, install the products and then the fixes in the proper sequence. You can easily spend over 100 hours researching and experimenting before you can get your systems setup properly.
Can you imagine that we now have a new SOA Configuration Solution that can create a working Process Portal in under two hours in 5 simple steps:
- Plug hard drive into a laptop or a workstation. The SOA Deployer image contains everything needed to deploy a working Process Portal.
- Mount the hard drive and start the SOA Deployer image.
- Access the Web UI using a browser and answer deployment questionnaire. There are 16 questions and between 29 to 68 parameters requiring input, with many of the entry fields containing meaningful default values.
- Relax while images are deployed.
- Wait for confirmation that the images are activated as specified.
That is all. This new pattern based deployment has emerged from extensive experience gathered from many of our customer implementations. Give it a try. I am sure you find this a huge consumability improvement.[Read More]
Last year, we talked about the various entry points a customer can take to begin their BPM projects: Modeling & Simulation, Business Activity Monitoring (BAM), Process Execution and Optimization, Rules and Pre-built Frameworks, Content and Collaboration.
At Impact, a number of our customers such as USAA (Session 2344) and NYS (Session 2402) shared with us their experiences on using BAM as their on ramp to BPM. They are really fascinating stories on how BAM helped them understand and manage their workload better, provided more objective evaluation of their employees performance, gave reliable, timely reports to stakeholders, and allowed their business to plan future process improvement projects based on hard data.
So if you are wondering how you can do a little BAM? Here are 5 easy steps to follow:
- Instrument your application to emit Common Base Events and test the events emission. Determine what operations and attributes from your application you want to monitor.
- Create a Monitor Model using the WebSphere Business Monitor Development Toolkit. Add metrics, key performance indicators, and conditions that might trigger business actions. Start with simple and small number of key metrics (e.g. < 10) and increase complexity over time because new BAM users might not know what they need.
- Design your Monitor Dashboards. The dashboards is a good way to get early stakeholders feedback and generate excitement that can help ensure your organization adoption and buy in. Demonstrate them early.
- Integration and Testing. Before the production roll out of your new BAM solution - test, test and more test. You are almost there, but take your time on this final step. Here are some items to consider: Have you tuned your CEI server, your messaging engines and queues? Did you include the network configurations (e.g. proxies, firewalls) in your integration testing? What is your recovery strategy in the case of system failures - do you care about the loss of events? Does your system need to support load fluctuations on a periodic basis etc.
- Launch your project. Celebrate your success. Use some of the insights you derived from your BAM data and start planning your next BPM project.
It really is quite simple![Read More]
At Impact 2008, IBM made a number of cool announcements around BPM. I also attended a number of sessions where customers spoke about their very interesting journeys towards BPM - from valuable lessons learned with unexpected (pleasant) surprises, to ROI quick wins and new insights on how to roll out their next BPM project. Craig Hayman also commented on how BPM is a bit like the early days of the application server where everyone is asking what BPM means.
Bruce Silver, a well-known analyst on BPM started blogging about our BPM story and how we need to tell our story better. He is absolutely right. We have done a lot in the BPM space in the last few years. There are a lot of BPM capabilities across the IBM Software Group portfolio, and our world-wide development teams have worked really hard to integrate many products to produce a truly integrated and compelling platform. The IBM BPM Suite that was announced at Impact is a testament to the establishment of BPM as an integrated suite in our software group portfolio.
I plan to use this blog to delve into a range of BPM-related subjects. We invite you to speak out on BPM through comments in the blog - from where your organization stands on BPM adoption, to your challenges and experiences. By tapping into the Wisdom of Crowds, we can all learn from each other and explore new ways to align your business with IT that can deliver immediate value to your company.
A colleague in GBS asked me if BPM has good integration with the Rational Tools. I said of course. I pointed him to a few articles that he found quite useful. Sometimes these things can be challenging to find, so I will include them here for your reference:
- This Redpaper is a must read if you want to use Rational Software Architect together with WebSphere Business Modeler to create your process models and to design your services. It shows how you can leverage some of the Industry Models assets (e.g. IFW, IAA) in the tools and enable business to start from proven industry specific models and not from scratch.
- Here is an article that can help if you want to use Rational RequisitePro with WebSphere Business Modeler to link business process models with business requirements.
- Finally a new asset repository for BPM that is powered by Rational Asset Manager 7.1 will be released this month (BPM 6.1.2 release). It enables teams working on a BPM Project to store and share artifacts through the BPM solution lifecycle. The BPM tools (e.g. Modeler, WID, Monitor Toolkit) are all enabled to this asset repository. More on this topic next month.
It seems like the question on overlaps in our portfolio keep coming up. But is some amount of overlap really such a bad thing? I mean, each technology that we have is really coming from a different angle, optimized for certain business scenarios and applications. For example, take WebSphere Process Server and FileNet P8, they are optimized to handle different kinds of business processes. Depending on your scenarios, you might want to choose WPS or you might want to choose FileNet. Maybe you even need to use both.
If you take a step back, choosing what technology to use perhaps is not so different from choosing your favorite toy - e.g. your car, your house, what entertainment system to buy or even your running shoes. I buy a new tennis racquet every couple years. I am always looking for the next new technology that can give me that extra competitive edge best suited to my ability at the time. Having lots of choices is actually a very good thing. The real question is how do you choose based on your requirements (e.g. more control, more power, bigger sweet spot)? And can you draw on others experience if you are uncertain how to choose (e.g. your friends, your heros or even your competitors)?
I plan to use the next few blogs to discuss different scenarios that will motivate using different starting points for BPM. I will also share some of our engagement experiences on how different companies have adopted BPM and making those right choices for their business needs.[Read More]
My colleagues and I did a live BPM chat on dW yesterday. It was a lot of fun. Check out the published
chat transcript if you missed it.[Read More]
There is a new course on BPM 6.1 using WebSphere Business Modeler, WebSphere Integration Developer, WebSphere Process Server and WebSphere Business Monitor. The instructors for this course are the IBM Redbook Authors and subject matter experts. These workshops are targeted to IT Architects, Specialists, Developers, and Operations Professionals.
Interestingly enough, they are offering this first in Toronto. Could it be because spring is really beautiful here?
Enterprise architects often asked us how IBM solves a problem similar to theirs. With 370,000+ employees and operations in over 170 countries, IBM uses technology to operate its daily business operations. In many cases, IBM's technical internal challenges are much more complex than some of our clients.
The November 2007 issue of IBM System Journal was dedicated to IBM internal IT-Enabled Business Transformation. Of special interest, Lance Walker paper discussed some of the lessons learned from using SOA within IBM, including both business and technology challenges. I hope you find this an interesting read.[Read More]
I have been hiding but for good reasons. My team and I have been really busy on our BPM Zero incubation project. Next week, I am presenting our work at the Devoxx Conference under the title BPM 2.0. Really looking forward to the discussions and feedback. Hope to see you there.[Read More]