Sunday, May 20, 2012

IPA Timecard Process Published

Hey there IPA True Believers! Granted it's been several weeks since I've put up anything new here and the main reason is I've been heads down with a customer putting a process in production, which went live this past Friday! This was not a large, complex process but rather a smaller, complex process because remember, there's no such thing as a simple process to automate with Interaction Process Automation (IPA).

You Mission, Should You Choose To Accept It: Make This Suck Less
The customer was moving internal systems for tracking time-off requests and as a result they would no longer have the ability for their hourly employees to submit timecards. Prior to this solution they had a... wait for it... a manual process with emails and spreadsheets, which seems to be pretty common, low hanging fruit that's a perfect place to start with IPA.

The basics of the process are as follows:
  1. Non-exempt (hourly) Team Members submit time sheets for a two week period to their Supervisor.
  2. Supervisor can Approve or Reject a Timecard. Approve sends it along to Payroll, Reject routes it back to the Team Member.
  3. Payroll can Reject to Team Member, Reject to Supervisor or Approve the Timecard.
Sounds simple enough, right? Oh I didn't use the word simple. Nope. Far from it. We're using Active Directory via a Handler to pull the Supervisor of the Team Member, another Handler to grab the Process Version and lots of other fun stuff that made this anything but simple. Did I mention the Timecard Work Item has over 50 Edit Boxes on it? Try placing that many fields plus labels on a Work Item. I have a tip on that for another upcoming post as well. Looks pretty once you get there but it takes considerable effort and good GUI design to make it usable.

They had a very short timeframe, which hopefully is more of the exception than the norm with an Interaction Process Automation deployment. From contract to Phase 1 go live, we were just a little over 5 weeks, which was very aggressive moving from As-Is, To-Be flows and Work Items, to go live this past Friday. Thankfully the requirements were manageable so the initial consulting with As-Is and To-Be were relatively short, with the bulk of the effort going into implementation, testing and training.

Keys to Success:
  • Phase 1 requirements management - with an aggressive timeline the best way to set everyone up for success is stripping down an absolute minimum set of requirements and making sure to keep it simple, because it's easy to start going sci-fi with all the tools of CIC and the unlimited potential of Web Services.
  • Well Defined Existing Process - we weren't inventing anything new with this process, we simply moved it out of emailed spreadsheets into Interaction Process Automation. Granted there are many super neat-o keen things we did with Phase 1 and additional upcoming Phases, but it's helpful with a tight timeline to have a nice, smaller-ish known existing process to get started with a client.
  • IPA Best Practices - I was able to incorporate the Database Driven Design (with the kick-ass 4.0 SU1 IPA Database Tools woo hoo!!!) and what I'll call an Actions process into the Timecard, both of which set us up for ease of making changes in the future.
  • Done is Better Than Perfect - and I tend to cringe at this being somewhat of a perfectionist. I'll add some more error handling as we go but suffice to say in our training sessions I emphasized if you try to break it you probably will. We were on a very aggressive timeline so some of the finer points of error handling were not possible due to time constraints.
Quick aside about an Actions process: I'll dedicate an upcoming post to this but for now suffice to say it's helpful to create a secondary process to accompany each main process you build with Interaction Process Automation. Right now the Actions process sends emails on Submit. This will make it easy to introduce more detailed email notifications without having to re-publish the main process.

Click Me To See The Awesome!
Here's a peek at Timecard Work Item (from hell) for the Team Member to Log Time. It's got big, sharp pointy teeth. Look at the bones!!! Oh I know what you're thinking, why are Changes Saved on the screen? Well we don't have a modeless dialog to pop such things in IPA, at least not at this stage...

So we're live and will be adding some additional features and fleshing things out a bit more, time permitting (har har). For not it's onto some slightly larger and more complex processes with the same customer to implement with Interaction Process Automation.

Speaking of IPA Best Practices, I'll be co-presenting with Jason Loucks, an IPA Template Developer at ININ, during the upcoming Interactions 2012 conference next month in Indianapolis, aka, the Heart of the Silicorn Valley. Hope to see you there!

In the meantime...

Happy Processing!


  1. Hi Rick,

    On the form, you've got the "submit" button greyed out... is that just giving the illusion that they cant press the button or are you actually doing something to stop them pressing one button?

    1. Hi Bee - correct on illusion! I wanted to keep the buttons in the same place between pages, and for Submit only to be "enabled" on the last page. Even in 4.0 SU1 we don't yet have conditional enable/disable. So...

      I made a Submit button, used light gray text, took a screen cap of just the button and dropped that image on the Work Items where it's not active. Good eye and thanks for the question!


Note: Only a member of this blog may post a comment.