The document discusses a project to implement a dynamic workflow system using EMC Documentum xCP to streamline an approval process for over 200 documents per month at a financial services company. Key aspects included gathering requirements, designing a single workflow to handle 30+ document types and reviews by 16 departments, and using custom methods like "Gatekeeper" and "Keymaster" to dynamically route documents and track completion. The results were a significant increase in productivity and cost savings of $9700 per user.
8. Takeaways Learn why are parallel workflows better than sequential. Learn how to combine hundreds of workflows from a dynamic process into a single workflow. Project experience: Know your users better Learn how to design the “perfect” application Overcome objections when the word “compliance” comes up in conversation
9. The Company – A medium sized financial services company Organized 1958 More than 284,000 client families $16.4 billion in managed accounts and brokered mutual funds $51.2 billion in-force life insurance policies $623 million in banking assets
10. The Company – The environment Around 300 people in the home office in 16 departments Recent leadership turnover (CEO, CTO) New corporate philosophy being implemented. IT department transitioning from Java to .NET
12. The Problem Over 200 documents need approval every month 30 different types of documents Up to 16 different departments need to approve Each approval needs to be recorded (compliance) A single generic form used to gather approvals No written guidelines on process
13.
14. A single person had to “shuttle” each document to each individual signer
23. Gathering RequirementsThe “In a perfect world…” Use Case “What would the perfect application do to solve your problems?” Don’t Be Afraid! Be Bold and Imaginative!
36. The execution “If you vote for me, all of your wildest dreams will come true.”
37. Building a foundation Specific components used: Content Server EMC Documentum xCP BPM provided by Business Process Services (BPS) TaskSpace (originally used My Documentum for Outlook) xPlore Composer – for development
38. First things first Take inventory What written policies exist? Is there already a defined terminology? What structure is already there? What can be reused? Don’t reinvent the wheel!
45. Would prefer to shop online or check Facebook than to do actual work.
46.
47. A meeting of minds Each department was given a checklist of all document types and they choose which ones they wanted to Review, get an Informational copy or just ignore. This matrix was used to determine who reviewed documents.
48.
49. People may come and go but roles never do. Management is very easy.
50.
51. Dynamic Parallel Workflows Have One Flaw After the split, the join MUST know the exact number of completed tasks before completing.
52. Solution: Gatekeeper and “Keymaster” Two simple custom methods: One that replaces the split function in the workflow, the other is a form control. Gatekeeper determines which departments need to review documents and uses setOutputByActivities(list) Keymaster is a document processor inForms Builder. It writes the final number of required departments as a process data value.
53.
54. Next, does a little cleanup by removing the activity timers for unused activities.
57. One year later in production… Productivity benefits and cost savings equal $9700 per user. Net ROI: $5,567 per user Workflows completed: 1154 Documents circulated: 3250 Worker productivity increase of 14% Impact to overall net profit: 5%
68. If task left dormant, the server would send an email “reminder”.
69. One workflow to rule them all Custom workflow method “Keymaster” would pause workflow until all departments finished review. From there, the submitter could review all comments and make changes. When finished, a choice was given to have the departments to re-review or go forward to legal review. Past legal review, a “release authority” (an executive on some level) would give final approval. Place hooks were left so further workflows could be launched based on document type once approved. Keymaster
70.
71. Next, does a little cleanup by removing the activity timers for unused activities.
72.
73. Developer Tip: How to get everyone behind compliance. Compliance is a major obstacle. Use a little child psychology to get everyone on your side. The “bad guy” is always an external force to the company. The Government The Voters The Competition The Economy Corrupt Business Owners Never blame another department It because of those “few bad apples” that you must to be compliant. “Legal and Compliance are looking out for us.” Improves performance through metrics. Protects the innocent user. If all else fails to convince doubters, resort to “It doesn’t matter. It’s the law.”
Editor's Notes
Situation – A little bit about the company, the situational background at the timeProject – What exactly did the project sponsors want out of the software to solve the problems they sawPlan – A blueprint how my team decided to tackle the problemExecution – How it all went downResults – What did we see a year later?
Don’t mention company if possible. (Sheesh… the backstory on this.)
When gathering requirements, it is more than valid to ask the question: What would the perfect application do to solve your problems?That allows you to ask the people who use the application everyday what they think and what are their “pain points”.
Don’t reinvent the wheel!Check to see if there are already written policies regarding documents: Retention policies, record definitions, etc.Is there a defined “language” or terminology that everyone can agree to? For example, what exactly is a “client communication”?Is there a taxonomy already defined?
This isn’t an insult to the user base. It’s a generalization of attitudes and feelings that most people will encounter when facing change. The UCL reference is for humor. Good ol’ Saturday Night Live.
There is logic available to split the workflow along several paths but eventually needs to combine again. The Join task functionality is limited in that it doesn’t know at runtime if Dept. A and B need to review the task; or if it Dept. B and C; or all three. Now expand the problem to 16 departments.
Yes, it’s from Ghostbusters. Originally in Documentum 5.3, I had to use a replacement Split and Join function. With 6.5 and above, just the replacement Split was necessary.
Using the concepts learned, it’s easier than ever to use a single workflow to handle dynamic situations… Not just based on content type, but anything requiring a decision matrix.
Workflow Summary
I haven’t met a department that didn’t groan when the word “compliance” is mentioned and have resistance. You MUST convince people that compliance is in their best interest, or face a constant uphill battle. Best way to convince these people is a little ol’ psychology. Make a straw man argument. The bad guy is someone else and you don’t want to be on his side do you?