Customizing the IBM Case Manager UI

Dave Perman and Lauren Mayes had the unenviable position of presenting at the end of the day, and at the same time as the expo reception was starting (a.k.a. “open bar”), but I wanted to round out my view of the new Case Manager product by looking at how the user interfaces are built. This is all about the Mashup Center and the Case Manager widgets; I’ve played around with the ECM widgets in the past, which provide an easy way to build a composite application that includes FileNet ECM capabilities.

Perman walked through the Case Manager Builder briefly to show how everything hangs together – or at least, the parts that are integrated into the Builder environment, which are the content and process parts, but not rules or analytics – then described the mashup environment. The composite application development (mashup) environment is pretty standard functionality in BPM and ACM these days, but Case Manager comes with a pre-configured set of pages that make it easy to build case application UIs. A business analyst can easily customize the standard Case Manager pages, selecting which widgets are included and their placement on the page, including external (non-Case Manager) widgets.

The designer can also override the standard case view pages either for all users or for specific roles; this requires creating the page in the mashup environment and registering it for use in Case Manager, then using the Case Manager Builder to assign that page to the specific actions associated with a case. In other words, the UI design is not integrated into the Case Builder environment, although the end result is linked within that environment.

Mayes then went through the process of building and integrating 3rd party widgets; there’s a lot of material on the IBM website now on how to build widgets, and this was just a high-level view of that process and the architecture of integrating between the Mashup Center and the ACM widgets, themes and ECM services on the application server. This uses lightweight REST services that return JSON, hence easier to deal with in the browser, including CMIS REST services for content access, PE REST services for process access, and some custom case-specific REST services. Since there are widgets for Sametime presence and chat functionality, they link through to a Sametime proxy server on the application server. For you FileNet developer geeks, know that you also have to have an instance of Workplace XT running on the application server as well. I’m not going to repeat all the gory details, but basically once you have your custom widget built, you can deploy it so that it appears on the Mashup Center palette, and can be used like any other pre-existing widget. There’s also a command widget that retrieves all the case information so that it’s not loaded multiple times by all of the other widgets; it’s also a controller for moving between list and detail pages.

This is a bit more information that I was counting on absorbing this late in the day, and I ducked out early when the IBM partner started presented about what they’ve done with custom widgets.

That’s it for today; tomorrow will be a short day since I fly home mid-day, but I’ll likely be at one or two sessions in the morning.

IBM FileNet BPM Product Update

All this news this week about Case Manager, my old friend BPM seems like it’s been left on the sidelines, although partially hidden within the new Case Manager offering. However, we have one session by Mike Fannon, BPM product manager, giving us the update on what’s happening with BPM.

The first thing is new OS platform support for Linux and zLinux; although this is important for many customers who have standardized on Linux – or want to integrate BPM with CM8 on their mainframes – you can imagine this is not the most exciting announcement to me. Yes, I have customers who will love this. Now move on. 🙂

Next is the port of the Process Engine to a standalone Java app (not J2EE), from its original C++ beginnings. Although this seems on the surface to be not a lot more exciting than the Linux support, this is pretty significant, and not just for the performance boost that they’re seeing. This means improvements to the complexity of the APIs and database interfaces, better standardization, and also brings PE in line architecturally with the Content Engine and even allows PE and CE to share the same database. In the future, they’re considering moving it to a J2EE container, which provides a lot more flexibility for things like server farming.

They’re also supporting multi-tenancy, allowing multiple PEs to run on the same virtual server with separate application environment, user space, backup and restore for each tenant. These PE Stores (analogous to CE Object Stores) seem to be replacing the old isolated regions paradigm, and there are procedures for moving isolated regions to separate PE Stores. If you’re an old BPM hack, then all your old VW-prefixed admin commands will be replaced as the vestiges of Visual WorkFlo are finally purged. As the owner of a small systems integration firm, I designed and wrote one of the first VW apps back in 1994, so this does bring a small tear to my eye, although this has obviously being too long coming.

From an upgrade standpoint, there are supported upgrade paths (some staged, some direct) from eProcess 5.2 (can’t believe that’s still out there) as well as BPM 3.53 and later, including migration tools for in-flight process instances. There are changes to the data model of the underlying database tables, so if you’ve built any applications such as advanced analytics that directly hit the operational database, you’re going to have some refactoring to do.

Process Analyzer has been extended to add capabilities for Case Manager, such as aggregation based on case properties. In addition to using Excel pivot tables, which has always been done in the past for PA, you can use Cognos BI instead. Of course, since PA is based on a set of cubes in a MS SQL Server/MS Analysis Services engine that is trickle-fed from the PE database, this has always been possible, but I assume that it’s just better integrated now. Unsurprisingly, they to have a direction to eliminate Microsoft technology dependencies, so at some point in the future, I expect that you’ll see PA data store ported off the SQL Server/Analysis Services platform. The Process Monitor dashboard has also been updated to handle Case Manager data, and better integrated with Cognos.

There were a number of enhancements to the ECM Widgets in March and June, such as support for Business Space instead of the Mashup Center, and some new widgets for process history and get next work item (finally). It looks like they’re building out the widget functionality to the point where it’s actually usable for real applications; without the get next work item, you couldn’t use it to build any sort of heads-down processing functionality.

There are really few functionality improvements to BPM; most of this is refactoring and platform porting. I think that a lot of the BPM creative juices are going towards Case Manager, and if you look at the direction of the 100% Java PE port and ability to share databases with CE, it’s possible that we’ll see some sort of merging of ECM, BPM and Case Manager into a single engine in the future. IBM, of course, did not say that.

IBM Case Manager Technical Roundtable

Bill Lobig, Mike Marin, Peggy (didn’t catch her last name) and Lauren Mayes hosted a freeform roundtable for any technical questions about the new Case Manager product.

I had a chat with Mike prior to the talk, and he reinforced this during the session, about the genesis of Case Manager: although there were a lot of ideas that came from the old BPF product, Mike and his team spent months interviewing the people who had used BPF to find out what worked and what didn’t work, then built something new that incorporated the features most needed by customers. The object model for the case is now part of the basic server classes rather than being a higher-level (and therefore less efficient) custom object, there are new process classes to map properties between case folders and processes, and a number of other significant architectural changes and upgrades to make this happen. I see TIBCO going through this same pain right now with the lack of upgrade path from iProcess to AMX BPM, and to the guy in the audience who said that it’s not fair that IBM gives you a crappy product, you use it and provide feedback on how to improve it, then they charge you for the new product: well, that’s just how software works sometimes, and vendors will never have true innovation if they always have to be supporting their (and your) entire legacy. There does need to be some sort of migration path at least for the completed case folder objects from BPF to Case Manager native case objects, although that hasn’t been announced, since these are long-term corporate assets that have to be managed the same as any other content; however, I would not expect any migration of the BPF apps themselves.

More process functionality is being built right into the content engine; this is significant in that you’ve always required both ECM and BPM to do any process management, but it sounds like some functionality is being drawn into the content engine. Does this mean that the content and process engines eventually be merged into a single platform and a single product? That would drive further down the road of repositioning FileNet BPM as content-centric – originally done at the time of the FileNet acquisition, I believe, to avoid competition with WebSphere BPM – since if it’s truly content-centric, then why not just converge the engines, including the ACM capabilities? That would certainly make for a more seamless and consistent development environment, especially around issues like object modeling and security.

One consistent message that’s coming across in all the Case Manager sessions is accelerating the development time by allowing a business analyst to create a large part of a case application without involving IT; this is part of what BPF was trying to provide, and even BPM prior to that. I was FileNet’s evangelist for the launch of the eProcess product, which was the first version of the current generation of BPM, and we put forward the idea back in 2000 that a non-technical (or semi-technical) analyst could do some amount of the model-driven application development.

There are obviously still some rough edges in Case Manager still, since version 1.0 isn’t even out yet. In a previous session, we saw some of the kludges for content analytics, dashboarding and business rules, and it sounds like role-based security and e-forms isn’t really fully integrated either. The implications of these latter two are tied up with the ease in which you can migrate a case application from one environment to another, such as from development to test to production: apparently, not completely seamless, although they are able to bundle part of a case application/template and move it between environments in a single operation. Every vendor needs to deal with this issue, and those that have a more tightly integrated set of objects making up an application have a much easier time with this, especially if they also offer a cloud version of their software and need to migrate easily between on premise and cloud environments, such as TIBCO, Fujitsu and Appian. IBM is definitely playing catchup in the area of moving defined applications between environments, as well as their overall integration strategy within Case Manager.

IOD ECM Keynote

Ron Ercanbrack, VP at IBM (my old boss from my brief tenure at FileNet in 2000-1, who once introduced me at a FileNet sales kickoff conference as the “Queen of BPM”), gave a brief ECM-focused keynote this morning. He covered quite a bit of the information that I was briefed on last week, including Case Manager, Content Analytics, improved content integration including CMIS, the Datacap and PSS acquisitions, enhancements to Content Collector, and more. He positioned Case Manager as a product “running on top of BPM”, which is a bit different than the ECM-centric message that I’ve heard so far, but likely also accurate: there are definitely significant components of each in there.

He was followed by Carl Kessler, VP of Development, to give a Case Manager demo; this covered the end-user case management environment (pretty much what we’ve seen in previous sessions, only live), plus Content Analytics for text mining which is not really integrated with Case Manager: it’s a separate app with a different look and feel. I missed the launch point, so I don’t know whether he launched this from a property value in Case Manager or had to start from scratch using the terms relevant to that case. It has some very nice text mining capabilities for searching through the content repository for correlation of terms, including some pretty graphs, but it’s a separate app.

We then went off to the Cognos Real-time Monitoring Dashboard, which is yet again another non-integrated app with a different look and feel. He showed a dashboard that had a graph for average age of cases and allowed drill-down on different parameters such as industry type and dispute type, but that’s not really the same as a fully integrated product suite. Although all of the components applications are functional, this needs a lot more integration at the end-user level.

I did get a closer look at some of the Case Builder functionality than I’ve seen already: in the tasks definition section, there are required tasks, optional tasks and user-created tasks, although it’s not clear what user-created tasks are since this is design-time, not runtime.

Ercanbrack came back to the stage for a brief panel with three customers – Bank of America, State of North Dakota, and BlueCross BlueShield of Tennessee – talking about their ECM journeys. This was not specific to case management at all, but using records/retention management to reduce storage costs and risks in financial services, using e-discovery as part of a legal action in healthcare, and content management with a case management approach for allowing multiple state government agencies to share documents more effectively.