Archive for the ‘xCP’ Category

#MMTM16: Case management: The good, the bad and the ugly

April 27th, 2016 Comments off

People who have read my previous blogs know I have a soft spot for xCP and case management according to Documentum. The past months I have wondered why this is.

The first and easy answer is the fact that probably more that 70% of the solutions I personally have implemented for my clients, where some sort of case management implementation. The next question I asked myself was: What do you mean: case management? It was all document management! What makes it different from the other solutions? Thinking more and more about that question made it clearer where my soft spot comes from. IMG_0797_small

People who work with me will confirm: I am a bit more than a little chaotic. To be able to function it is mandatory for me, to have an easy high level overview of all the stuff that is hanging somewhere on my to-do list. Case management is (in my eyes) exactly that functionality. Give every knowledge worker their own dashboard, with what is important for them at that point in time. And what I see in my day to day encounters with end users is that demand, that thirst, for that overview from every knowledge worker.

IMG_0820_smallIt is never about one document only. It is always about a group of information items that have, at this specific point in time, a relation with each other and this relation has a certain current status, that makes it important to show to me (a knowledge worker) right now. I need to be able to drill down to the specific pieces of information and change all pieces at once, separate or in combinations. This has to do with the fact that most (but not all) knowledge workers don’t work on one large document, but on a lot of separate pieces of information that need to be handled quickly. When you are part of the quality authors of a life sciences company or managing all assets of a large power-plant (my other 30% of the solutions I implemented), having a real document centric management system, that has the focus on that specific document and its related documents, is very important and demands an EDMS like D2. All the rest of us need xCP.

In my experience, all other types of document management systems will have way more to do with case management than with real, pure document centric management: Working on pieces of information that have some sort of relation with each other during their existence.

Case management is all about a good dashboard that shows you the right information for the task/action you want to perform.

Hand drawing Content flow chart on transparent wipe board.

With TaskSpace, Documentum took the first leap into the real case management world and showed that it is way better to have a Case Management solution that is built on the foundation of an ECM system than a Case Management system solely based on a relation database. This first go at a case management solution was good, but lacked a good and consistent developing environment and a flexible and very user friendly interface. (Beside some annoying bugs in the core)

And then came xCP2. The idea is so simple, but so great that I really jumped with excitement when I found this. This is really the vision we all were hoping for from EMC-ECD (IIG at that time). This is the good in my story. The product team, who came up with this approach, should be decorated :-). Sure, the 2.0 version was far from perfect, it had too much issues and lacked some functionality to make easy deployment and testing possible, but it was clear that this is the direction that Case Management needs to go.

With the new version coming up, and the change in deployment strategy, ECD is taking the right approach to make this a very stable and easy to implement system.

IMG_0821_smallBut there is still a bad. This has to do with the fundament of information classification and the way Documentum is structured. It is easy to create a great app in xCP Designer and to make the perfect dashboard and underlying supporting pages. It is relative easy to make a workable deployment strategy to deploy new features and solve bugs without too much interference for end users. But once in production with the number of cases growing rapidly, that great dashboard becomes slow, slower, the slowest… At first, you have happy end users, who love the possibilities of designing their interface together, and the flexibility and modern look and feel you can give them. Suddenly, after a couple of months their comments are a bit more cold and distant. In the end, the solution is still good and they are happy, but you feel that the performance of their first and main screen is getting annoying.

So my hope when it comes to xCP and Momentum 2016 is that the new product team of xCP has put a lot of thought and effort in the performance improvement of the historical queries in xCP. Challenge Jeroen van Rotterdam and his baby xPlore (xDB) to make those queries super-fast. A whole xCP solution is as good as the main dashboard!!

Digital TransformationAnd then came the ugly. Don’t be alarmed ECD, this time it is nothing you need to change :-). The ugly is all about the fight between the top 5 big IT companies who like to annoy each other by downgrading the support for the others fundament. It started with Apple who did not like Microsoft Silverlight or Adobe’s Flash. The arrogance to just not support it, shows how big their ego is. But that was only the beginning. Now a lot of browser-companies don’t like Oracle and push to the limits to make the use of Java in your back-end web-application difficult or even impossible (Chrome). And last but not least Microsoft, who is doing so great in trying to be friends with everybody now that Nadella is behind the steering-wheel, still needs to show the strength to the others. JavaScript is the most common used front-end languages to create a dynamic webpage. It is the new standard for web development and the only easy way to fulfil the UX demands of the new user. But why should that be of any concern to Microsoft or Mozilla? Sure it is easy to shout about security issues and all, but in the end it is just budget that makes it not possible to make JavaScript run very fast. To see the difference in performance of an xCP application between IE10 and Firefox and Chrome is frightening. Even the new Microsoft Edge is still lacking compared to the others and we see no improvement in JavaScript speed in the new versions of Firefox. So the ugly is only something we can hope will improve but is for sure a challenge we consultants need to be aware of when implementing the next great Case Management solution in xCP.

A Case of Component Based Authoring

September 30th, 2015 Comments off

Component Based AuthoringYesterday afternoon I attended an EMC webinar about their Next Generation solutions for Life Science, when a slide passed by about Component Based Authoring. It was a different way of expressing the same subject Jeroen van Rotterdam addressed recently in his EMC Spark blog called ‘Who is using Word?‘ From that blog, comes this quote:

Then there is the trend towards targeted point solutions with very domain-specific capabilities to create these smaller chunks of content. A generic word processor is far from efficient in this scenario, and even harder to customize with the desired user experience. Content creation applications are so much more powerful in a business context and becoming less focused on text.

It’s fun to read about a trend – in this case Component Based Authoring – when you’re already practising this approach. It feels for me as if this is the only way forward in case based solutions being delivered today.

My current project is implementing an EMC xCP based solution to support a decision making process where each decision is backed by carefully build cases.

In its previous implementation, documents were the content containers. A lot of copying and rewriting was taking place. A cumbersome and error prone way of working. We didn’t investigate it, but if I were to place a bet, I would say that it’s almost a guarantee that each document is formatted uniquely and it’s highly likely that not every document contains the mandatory information. The flip-side of the coin is, that this freedom is very well received by the end-user who is using Microsoft Word, a tool perceived as very user friendly and productive (don’t get me started…), to let his creativity flow.
You could argue that the needs of the end-user are prevailing over those of the enterprise. At Informed Consulting we believe that connecting people and the enterprise should be a win-win situation and is key to success.

With the new xCP solution we’re applying Component Based Authoring and Word is now only needed for the supporting documents. Not for the key information of the case. That key information is divided into logical components and authored independently. With this approach we created a balance between both user and enterprise needs. But in order to achieve this, more is needed than just solving the challenge of business process re-engineering. In fact, in this case the process is hardly changed.

Once you know what key information you need to capture, it’s time to let the UX (user experience) designer do her thing. My colleague Sandra did a tremendous job with the key users, to design screens for both capturing and displaying information. There has to be a natural order in the information that fits the way of working in the business. This means defining where on the screen a content component is positioned for a particular role (yes, different roles will typically lead to different positioning…), which content components need just plain text formatting and which need rich text to be able to add lists, mark text bold or even include hyperlinks but on the other hand prevent the usage of fonts other than what the corporate style-guide dictates. It means defining where you need to restrict input to predefined taxonomies (or just simple drop-down boxes populated with values) and where you need supporting wizards. A sample of the latter is one where the user provides answers and numbers after which the system draws a conclusion that is used as input for the decision. To cut a long story short, information with a good user experience will help to make the transition into component based authoring smooth.

Another key aspect is the transition from paper to digital. A topic on its own. In our project we opted for a gradual transition because it’s more than a business process change to replace meetings full of annotated documents, prepared off-line over the weekend, with information accessed digitally through tablets and laptops. As an intermediate, the individually authored content components are aggregated in PDF/A documents. These documents are available for on-line reading as well as printing. It’s now up to the business themselves to execute the behavioural change process. In the mean time they can still print and scribble away where and whenever they want.

The third aspect I want to mention is archiving. Although it should be part of your business process re-engineering, it typically isn’t. Too often archiving is not seen as a business process. But even if it is, it’s a beast of its own. Still today it is common practice to archive ‘just’ documents. With component based authoring, you can no longer think in terms of archiving documents. Neither can you think in terms of archiving these content components on their own. They have relationships with other content components and together they have meaning. A content component that holds the annotation of an approval, only has meaning in its context. Archiving thus needs to evolve into Contextual Archiving whereby containers are archived and these containers include the appropriate content components as well as their relationships. Rethinking needs to be done around the purpose of the archival and the retention policies. How can you meet the archival goals for a case if key information in that case needs to be destroyed before the case itself gets destroyed? And what will regulators say when you include a content component into multiple containers which are managed independently and whereby not all (logical) instances of the content components are destroyed simultaneously? When you think about it, component based authoring reveals what has been hidden under the covers of a Word document for a long time: we didn’t manage the information but only the container that carried that information…

Times are changing in the ECM playing field. New ways of working, progressing technology, distributed collaboration and blurring boundaries pave the way into an interesting future. Next-Gen ECM / Next-Gen Information Management… Welcome into my world!


This post also appeared on LinkedIn.

Day 8 in the countdown and UI is key for Case Management

April 27th, 2015 1 comment

and the story continues…

Today is King’s Day in The Netherlands. A good day to dress in orange and have some fun. One of the ‘fun’ things is that everybody is allowed to sell their junk. A garage sale only with everybody together in one street on little carpets. In theory it is for kids but the parents control the cash. 🙂 Walking with my seven year old daughter and seeing her rushing through the stuff to find the perfect thing, I could not help and drift away to my previous blog. User Experience and case management.

Walking with hundreds of people in one little street and looking at hundreds of carpets with stuff, how do I see what I need and where I really should steer away from? There are some basic rules. If it is dirty, stay away. If it is boy stuff, probably not interesting; if it is all black and army green, same thing. If it is pink, white, light blue, stop and have a look; if there are two girls in the age of 10-14 sitting on the carpet, same thing. So in less that an hour we where able to ‘do’ the street and my daughter was some good stuff richer.

And doing good case management is all about this. How can I, as a designer, setup a page of a case or a task, in a way that the person looking at it can easily make a judgement on the case within seconds. Working with our user designers at Informed Consulting, I notice they use these same concepts I just described to create the PERFECT page:

  • Simple and serene look and feel;
  • Try to identify blocks of data that have some sort of understandable relationship within the whole case/task;
  • Use colors and/or icons to show states and actions;
  • Distinguish between viewing and editing;
  • ‘Important’ stuff should be in the top center;

And the list is longer, but when a good UI expert is finished, it all sounds so natural, so logical. It is super but sometimes also a bit frustrating to see the reactions of the users. I did spend hours and hours, to define all the requirements SMART and good, came up with the perfect solution and set of functions needed per role. But only when they have seen our mock-up, the users are getting excited: This is what I want, this is what we need! When do we get it?

Suddenly, that system that helps them do their tasks in the way the company wants them to, is actually fun to use and simple and easy. Things I did not hear a lot when developing a WebTop solution.

At our booth in the Momentum area we are showing our great products SPA4D and LoBConnect, but if you are interested in good xCP2 design or a good mock-up, please step up to our booth and I will show some great examples.

9 days to go to EMCW: why is case management so cool?

April 26th, 2015 1 comment

I was just trying to finish my last tasks before World. One important task is finishing a mock-up for a client. A mock-up for their new xCP 2.1 application. Doing this I more and more wonder about this new concept CaseManagement. Is this just an other buzz word or does it realy introduce a new paradigm in ECM?

The basic functional difference is the ability to create an object with relations, transactions (sorry have to say stateless processes, very good name……?) and have structured datasets (contentless objects, another perfect name to explain to an end user….?). All nice technical functions that I really like but does it make that much difference to the end user? Is this the ECM chicken with the golden egg or just some extra nice modern features?

Where it gets interesting is looking at the challenges of a case. Simply put, a case is a large amount of related information about a set of tasks that have to be performed or a goal that has to be reached. The challenge for every user within a case management solution is the overview. How do I see within one glimpse what the case is about and what am I supposed to do with it? With all those great technical options, relations, transactions etc.. it is so difficult to see the tree within the forest (nice Dutch expression, but I think everybody would understand this one instantly).

So why is Case Management a gamechanger and what is the basic necessity for a good Case Management system? In the end it is easy, maybe not for the average Documentum consultant, but the answer is: USER EXPERIENCE. Simple but so true. To be able to give an end user a system that is workable, it needs to have such a perfect user design that within seconds a caseworker knows what it all is about.

A normal Documentum consultant who was used to work with WebTop did not really know or want to know what User Design was, for the simple reason that designing any good user experience in WebTop was a challenge or should I say impossible.

But now we have xCP. This gives the designer a real flexible tool to fully design the interface and give the person the right display of information to work very efficiently and like what they are doing. The interaction, or should I use an other buzz word, the agile approach, you can have with the usergroup before you start to create a technical solution, but simply create a mock-up is baffling. Users cannot wait to get the system, workshops are actually fun to do and the results using tools like Axure are super. So far my thoughts about the new xCP and tomorrow some more detail about the options of a good design. (As far as this simple Documentum consultant understands it).

xCP2 NoSuchMethodError

February 18th, 2014 Comments off


In xCP2.0 most configuration and development happens within Documentum xCP designer. However in some cases you must use Composer to create extra features for your Documentum application. In my case I was working on a demo application for one of our customers. A colleague of mine had created in Composer a Documentum project to create a set of test documents for his Documentum 6.7 environment, and I wanted to use these for my Documentum 7.0 environment.

This lead to several error messages when running the Composer project. The most important error message was “java.lang.NoSuchMethodError: com.emc.xcp.runtime.engine.handler”. To solve this error first I tried to search the internet for any insights into the problem. Sadly I was not able to find a solution. I did find several blogs which mentioned it is a known issue for the Documentum 7.0 environment and that it would be solved in the new release of xCP2, version 2.1. Secondly I found a blog which mentioned the used DFC of Documentum 7.0 and Composer 7.1 are different which could lead to these problems. From here on I tried to create a solution myself.
Read more…

Installing xCP2 – lessons learned

January 6th, 2014 Comments off

The past few weeks I’ve spent quite some time trying to install xCP2 from scratch. Since there are a lot of components to install and because I ran into some problems along the way this took me a lot longer than I’d expected.
To prevent people from making the same mistakes I did I thought I’d share my experience.
Read more…

Categories: Documentum, xCP Tags:

The integration of D2 and xCP

November 12th, 2013 Comments off

Most people who follow what EMC has been doing with Documentum know that the product currently supports 2 separate application layers: D2 and xCP. They come from different backgrounds, with D2 being more aimed at document centric applications and xCP aimed at case management applications. As they evolve, they are starting to overlap more and more. With the next release, D2 will add more workflow capability and extensibility and xCP will add more document management functionality. If this continues, how will future customers be able to choose between the 2 products?
The answer is, you won’t have to since they are gradually merging.

Even last year, when xCP2 first came out, there were already whispers that over time xCP and D2 will merge and become 1 product. This merge will take a few years, since the two products are built on different technology layers. D2 uses Google Web Toolkit (GXT), xCP uses ExtJS. D2 uses SOAP services, xCP uses REST services. These are major technology differences that make merging these products a long an difficult process.


Let’s look into the future for a bit. I wonder what a product that merges D2 with xCP would be like.
Let’s call this new future product xD (excelerated Documentum). What will this product be? What will convince customers to upgrade to xD?

I think that EMC will create xD with the stongest parts from D2 and xCP:

  • It will have a run time configuration layer taken from D2.
  • It will also have the strong build time configuration taken from xCP.

Creating a merged runtime

To make that combination work, a new runtime will be needed that supports both the D2 and the xCP functionality.
This is where the major technology choices will need to be made. Will it use the Google Web Toolkit, or ExtJS? Will Soap or REST services be used? Time will tell, but currently my money is on ExtJS with REST.
If my guess is right, that would mean that some of the great D2 functions will need to be ported to the ExtJS/REST runtime:

  • auto naming, auto linking
  • lifecycle functionality with state based authorization
  • C2 annotation/mark-up and O2 Office integration

Configuring Applications

Once all of the functionality is available in one runtime engine, the configuration tools can be added on top.
There will be build time configuration with xCP Designer and run time configuration with the D2 configuration matrix. So what things will be configured using each tool?
A paradigm that would work for me, would be that the build time configuration tool could be used to create a sort of template app. A set of types, rules and processes that define an application.
The run time tool can then be used to fill in the run time details to create 1, or more xD applications using the template app.

What things would be configurable at run time?

  • Users, roles, authorization for objects and functions
  • Picklists
  • Document content templates
  • User interface pages and workspaces with widgets that have been configured build-time
  • UI widgets that integrate external data
  • Search experience
  • Viewer and Office integrations
  • Reports

What to configure build time?

  • Object types, relations and aspects
  • Lifecycles and processes
  • UI widgets and page fragments
  • Business events
  • Full-text indexing
  • Content transformation
  • Back-end external system integrations

An application platform that could do all that would be very flexible and I would love to use it to build awesome applications for my customers.

EMC can you make xD happen please?

To D2 or to xCP, that is the Question

November 12th, 2013 Comments off

Now the Momentum Developer Conference is over for some weeks, it’s time to look back and see what we’ve learned.
I chose to follow the D2 track this time and since I’ve already done a project with xCP2, that gives me the opportunity to compare the two products.

The question many people are asking is which product to use for what. It seems to me that the long term answer to that may be very different from the short term, since both products are converging and are bound to be merged in some way in a couple of years. I have some thoughts on that, but I’ll save that for a later post.

So, when you want to build a Documentum application today, what product do you use? D2 or xCP?
Given what I’ve learned this week, I would say the choice depends mostly on the core functionality that you need. We all know since last year that xCP 2 has a very powerfull design tool that will let you build almost any application UI and gives you many options to integrate that with your current, or external applications. Now that I’ve seen what D2 4.1 can do, I realize that the same goes for D2. It also offers a composable UI that can be extended with custom functionality and integrated with other applications.

So the main differentiator between D2 and xCP is not the UI, but the underlaying OOTB functionality.
The functionality that D2 offers is most geared toward Document Centric Applications (or old-school ECM if you will). It has lots of features in that area, such as Auto-naming, Auto-linking, Documentum lifecycles, Virtual documents, etc..
xCP on the other hand has been created with Case Management Applications in mind. It has features such as Business objects, Stateless processes and Discovered metadata.

So there it is. My simplification of the current situation: If your application is mainly about documents, you should consider D2, if it has a case or data object focus, consider xCP2. That will give you the most usefull OOTB functionality.
Having said that, there are other things to take into account when selecting a product, such as the OS and database platforms you are using and other technical and organization details, so take my view as a pointer, but not as the whole truth and the only truth.

What you think? Feel free to let me know.

xCP 2 Designer : Connecting the Dots

January 25th, 2013 Comments off

In November EMC introduced the new product xCP 2.0; it is a complete overhaul of their Case Management solution. With xCP 2 comes xCP Designer. Designer is the new all-in-one configuration tool that can be used to create xCP applications. xCP Designer is a great step forward from the days of FormsBuilder, ProcessBuilder, Taskspace, Composer and several other tools that were needed to create xCP 1 applications.

xCP Designer makes application creation much easier than before, but there is a learning curve. It is a powerful tool that can be used to create an object model, events, business processes, queries and the user interface. This can be a lot at first and since so much has changed from the previous version, the question arises of what goes where? And more importantly: How do you combine all these elements into a usable application?

One thing I learned while doing an xCP project is that when information needs to go from one component to another, the Designer only allows you to specify inputs. You always need to go to the Destination component and specify where it gets its input from. It is an information pull model. Once you get your head around this, it becomes easier to connect the dots.

For instance, if you want to create a page to update account details for a customer, you may want to perform some validation on the inputs before allowing the user to press the Save button. Let’s say we want to check that a valid bank account nr was entered. In xCP Designer this can be configured using a Stateless Process. The process would take a customer ID as input, perform some activities that check the account nr in the bank’s CRM system and produce a validation message as output.
The process could be as simple as this:

A few quick tips:

  • xCP Pages can only set and read the variables of a process. Packages cannot be used.
  • Don’t forget to set the ‘Stateless Service settings’ of your input variable to ‘Use for input only’ and for your output variable to ‘Use for output only’.

Now that we have the process, how can a user interface Page make use of it?
First of all we need to add the Stateless Process as a Data Service Instance to the Page.

  • Open the Data Service Instances panel, click on the green + sign and add the process to the page
  • Select ‘Refresh when input value changes’ on the General tab of the process
  • On the Input tab, specify the widget that we wish to validate the value of, in this case the Account nr field.
  • Notice there is no Output tab, even though the process produces an output message

So where does the output message go?

  • Add a Value Display field to the form that will show the output message
  • For the value of the field you can select the output message of the Stateless Process

As an extra you can also configure that the Save button is only enabled when the validation message is empty. You can do that on the Behavior tab of the Save button.

As you can see, when you want to connect the dots in xCP Designer you must always specify on the Destination object where it gets its inputs.

I hope this post was useful to you. You can leave a comment if you have anything to add.

Categories: Documentum, Uncategorized, xCP Tags:

First impressions of xCP 2.0

November 23rd, 2012 Comments off

Last week I attended the Momentum Developer Conference.It was the first one to be held in 6 years and it was a great succes.With all the new products that EMC is releasing there was a lot to be learned. And learn we did, in keynote sessions, presentations and hands-on labs.

One of my main interests was in xCP 2.0, a completely new product that can be used to create Documentum applications with a fresh, modern UI.The slides from Momentum in Vienna looked great, so I was keen to find out more. And so I did, in some great sessions, a full day of hands-on labs and a Hack-a-thon where we built our own xCP application.

My first impressions of xCP 2.0 are very positive. Having had experience with Documentum since Workspace 3.0 i can compare it with most of their products. The first thing I noticed is the overall level of enthousiasm. Dan Ciruli and Ahson Ahmad did a great co-presentation about what xCP can do and after that people really wanted to get their hands on and never let go. There is so much excitement in the developer community. They WANT to start building with this new tool. That is very different from the old applications like WebTop, where the feeling was more that you HAD to build with WDK, like it or not (and I won’t even go into RightSite here).

What can we expect from xCP2.0?

It is platform for building applications on top of Documentum 7.

It has a development tool called xCP Designer, that integrates and replaces all of the tools you needed for xCP 1 applications, like Composer, FormsBuilder and ProcessBuilder.

The Designer is used to configure all components of an application. Designer projects can be version controlled using SVN or some other version control system. Projects can be aggragated into libraries that can be re-used in other projects.

WDK has been replaced by a modern user interface based on HTML, CSS and extJS.

It supports all of the new D7 features, such as Business Events, Relationships and Stateless Processes.

Instead of FormsBuilder there is now a Page editor that can be used to build an application’s user interface. There is a Master Page and you can add your own pages. Pages are made up of widgets. The options for inter widget communication are very powerfull. Widgets can be linked so that a widget is updated when another widget’s content changes for instance. Combining that with the new expressions model and stateless processes opens up some great opportunities.

Data Services are operations on objects in the system. Data Services can be used to add, change, or delete information in your xCP application. Data Services are generated automatically for the object types you model in xCP Designer, so if you add a Employee, CaseFolder, or HrDocument type to your application, you will be able to use Data Servies to work with these objects in your application’s UI widgets, or processes. Data Services can also be created from Queries (DQL-, BAM- and full text queries).

Business Events are the replacement of the old TBO and give you the ability to configure many of the things that you needed to program in Java in D6. With a Business Event you can start a process, or add data to the BAM database when things happen to objects in the system, such as its properties change, it is linked, its is related to another object, etc.

Relationships aren’t actually new; they have been in the object model for years, but they have been enhanced so that the relation can have it’s own custom properties. xCP Designer supports releationships everywhere and really makes them shine. This really changes the way be build Documentum applications.

xCP leverages the xMS deployment mechanism. It takes a bit of setting up, but after that, deploying your application can be done by simply clicking the green ‘play’ button in xCP Designer. Very nice!

So, what is my impression, having worked with it for a day?

I think it’s great. This is the sort of thing that Documentum needed, the sort of thing that can change a customer’s mind set from ‘Why do I want this?’ to ‘I really want this!’ The sort of thing that will finally stop the old timers from thinking back warmly to the good old days of WorkSpace.

The new xCP model offers so much power and flexibilty that we spent a full day in labs with a room full of developers and none of them complained that we did not write any code at all.

The only things that can bar xCP2 from being a success now are product bugs and frustrations in run-time debugging. As for the former, we will see in the coming months but it looked pretty stable in the labs. As for the latter, the xCP product team is working on an end-to-end debugger in xCP Designer.

Enough said, I am off to the PowerLink download site. D7 and xCP2 are available there now!