Disclaimer

The opinions shared here represent those of the contributor themselves and not those of their employers nor that of Big Men On Content as a whole.

Earlier this week David Le Strat teased some of the hands on xCP 2 opportunities available at EMC World next week in Vegas. The product is still a few months away but I was part of a small group last week that got to spend three days with the current build.

Before you embark on your own journey to learn about xCP2 I would like to share a few of my observations on the new product. I will also point out that this is 100% my own opinion and interpretation. If you see differences later between what I describe here and how it is discussed and positioned by EMC you can chalk it up to my idiosyncrasies. The concepts though should be consistent so here are my top five favorite things about xCP2 ( in no particular order)

xCP2.o is a brand new product

When EMC first launched the xCP term it quite frankly confused me. I repeatedly got asked the question “so what is technically new about this?” After four or five meetings reciting the carefully prepared marketing points about how different xCP was I chunked them and confidently declared – it isn’t. Same core tool set. You have been doing this all along.

Yeah I know. Case case case case case.

But click to slide two and the four pillars of the transactional content management toolset (Capture,Manage,Process & Report) were still there just covered with a new set of buzzwords. What I came to see though was how you thought about designing your application can be different with these tools. We had realized the untapped potential of configuration and utility processes.

xCP2 is “2.0 “in the same sense that Web 2.o was a reinvention of our web experience. This is a fundamental change in the way you will experience both development and use of Documentum applications. I have been doing this for a long time and I am not easy to impress. I also do not vapidly swoon over every feature and tweak in our portfolio but I have to admit I had more fun learning xCP2.o than I have had in a long time with anything content management related.

I know what you are thinking. The fact that I think it is fun at all is an indication of a serious mental condition but those of us that do this for a living actually enjoy solving problems with technology. Much of what we do is tedious and unrewarding but in xCP2.0 certain constructs and approaches to true solution composition have finally come into their own.

xCP2 introduces a completely reimagined runtime user interface architecture based on Spring and ExtJS. Unlike WDK (or any other Documentum Client to date) an xCP2 application is built and deployed to an app server environment as a complete package independent of a preexisting framework install. No WDK xml configuration. Everything can be is bundled into a complete custom war with all of the client dependencies and externalized parameters like service URL’s and environment lifecycle settings that don’t require manual reconfiguration post deployment. In other words – it eliminates the need for static framework middle layer (WDK/TaskSpace/Webtop) in between the app server and the purpose built application.

One Tool To Rule Them All

xCP Designer brings together functions of Composer, Process Builder, Forms Builder and TaskSpace Administration into a single IDE. I had no idea how much better life could be until I actually tried this. Constructing application pages, creating stateless services to populate dropdowns from web services and wiring them together in the same tool made putting together a purpose built app extremely easy. I thought I would miss the webform concept from Forms Builder but I never want to look back.

Stateless Processes

OK, technically stateless processes were added in 6.7 but xCP2 makes them part and parcel of the developer’s methodology. Almost all of the configurable automatic activities available in the process engine can be leveraged either synchronously or asynchronously. This is HUGE. It opens up the ability to decompose scenarios into units of work that can easily shared across the application and invoked by the UI or other services. I had always considered the parameter definition and concept of correlation something of a mystery but this has been simplified so even I can understand.

The xCP lab I attended had us configure stateless processes to return a list for populating drop downs based on values supplied by other widgets on the page. The invoked processes actually run from the app server so there is no dependency on the workflow engine and timer architecture (truly stateless) and it is extremely fast. With this pattern, you are no longer limited to OOTB forms adapters or challenged by the deployment complexities of custom ones.

Modeling Relations

This is a pet feature of mine. When you shift your thinking to consider more ECM applications in terms of cases, it became clear that more than content, the relationships between entities are more important. There are many types of relations in an content management system. Containment is a good example. I can model a parent child relationship in documenutm as a folder to document, as a root to child node in a virtual document or by manually creating a meta-data representation with special use of object properties. We also have had the dm_relation construct for many years. A way to abstractly model relation types and instantiate them as relation instances. To be honest few have made good use of the idea.

What understanding case management taught us is that it is the metadata of the relationship itself that is most powerful. Relationships have qualities unique to the instance like effective dates that are useful in many contexts. With xCP2 you have the ability to model relation types with their own data model and EASILY reference those structures throughout the xCPDesigner, in processes and custom code. I will cover this in more detail later but leveraging this idea is one of the qualities that truly transforms the way you think about and build an application.

OOTB Document Viewer

xCP2 will ship with a basic document viewer. This did not make my list because the xCP viewer will be better than all others. It is very basic and ICG Brava!, Daeja and others will still be supported and needed. Those tools provide far more capability (e.g. redaction) It is just that I have always thought it was absolutely silly that EMC didn’t have it’s own.

There are dozens of other big changes to learn about (like Business Objects) so if you are fortunate enough to be at EMC World I encourage you to get to one of the labs and try it out. I believe that whether you are a long time user or new to Documentum you will like what you see. And most important, talk to the product managers. Give them your feedback. They really want to hear what you have to say.

Thank you for sharing information on XCP 2.0. I like the stateless processes functionality that you have explained and can’t wait to use this feature. Also, Does xCp designer tool comes with a IDE to develop ExtJS custom components or do we need develop this in Eclipse or any other IDE?