Mar 152009

When dealing with workflows, a commonly requested feature is the ability to have automated E-Mails sent out from the workflow.  Alfresco documents a way to do this via the AlfrescoJavaScript action, by writing some Javascript code to send out the E-Mail.  While this approach provides great flexibility, it also requires your Javascript skills to be up to par.  Wouldn’t it be great to have a specialized E-Mail action instead that could be configured via XML?  Of course it would.

Here’s a simple example of how such an action could be used:

<action class="org.alfresco.repo.workflow.jbpm.Mailer" config-type="bean">
   <subject>Content awaiting review!</subject>
   <text>New changes have been submitted and are awaiting your review!</text>

This is a bit easier to work with as a workflow author than having to code an E-Mail action being sent via Javascript. It does have some limitations though in this simple form, so let’s enhance it a little further. A few things that might be desirable include:

  • Comma and/or semicolon separated E-Mail addresses
  • Variable resolution of E-Mail addresses
  • Variable resolution of task assignee E-Mail addresses (bpm:assignee)
  • Variable resolution of multiple task assignee E-Mail addresses (bpm:assignees)
  • Variable resolution of task group assignee E-Mail addresses (bpm:groupAssignee)
  • Variable resolution of multiple task group assignee E-Mail addresses (bpm:groupAssignees)
  • Variable resolution within the subject and body text

By implementing an Alfresco jBPM action to handle these various requirements, one could ultimately specify a quite dynamic E-Mail action, such as the following:

<action class="org.alfresco.repo.workflow.jbpm.Mailer" config-type="bean">
   <to>, ${bpm_groupAssignees}, ${somewf_somePersonsEmail},</to>
   <subject>Content awaiting review!</subject>
   <text>New changes have been submitted and are awaiting your review!</text>

Further enhancements could include leveraging E-Mail templates already registered with the repository.  To get your hands on an implementation of the E-Mail action described here, see improvement ALFCOM-2555 in Alfresco’s JIRA.  If you have suggestions for how to further improve this simple extension, please comment here!

Reblog this post [with Zemanta]
Oct 212008

I just got around to watching Friday’s webinar by Optaros about Alfresco in the media industry.  In it, Bob Fitzpatrick highlights three major points regarding how to increase online revenues:

  • Increase user engagement with your content
  • Extend the reach of your content
  • Enable API access to your content

As a prerequisite though, companies should be converting their content into assets that can be managed centrally.  In so doing, content can be easily related to other content and then be syndicated, retrieved by third parties, or composed and presented to users.

In addition to the aforementioned strategic goals, companies should strive to deliver on them in an efficient manner.  According to Bryan Spaulding, this means building a system with a Media Service Architecture that scales and enables exposure to PCs, mobile devices, and TVs.  And don’t forget to instrument your system such that feedback can be obtained to enable reporting and thus tweaking of the platform.  Jeff Potts reminds us that Alfresco and Optaros can be levaraged to get you there faster via their awesome capabilities.

What is interesting to me about all this is the different approach to the problem.  At Ringside Networks, we focused on the “beefy middle”, as Shaun Connolly so eloquently put it.  In a nutshell, this meant enabling social interactions in the context of existing web sites with existing users and content.  Restated in terms of a Ringside customer’s objectives, those three goals might look like this:

  • Increase user engagement with your web site
  • Increase the reach of your company/brand
  • Enable API access to your site’s social capabilities and/or users

In the Alfresco/Optaros case, the underlying premise is that content is of the utmost importance, and that people will pay to enable their users to interact with your content, or better yet to advertise around your content.  In the case of Ringside, it was all about identity and interaction on your site amongst your users, with new eyes sourced from various social networks.  SocialPass is taking yet another approach, which brings people to your site, regardless of where they came from.  Either way, people would pay to bring users to their web sites.

I think the best of both worlds can be achieved.  There will be some shops that won’t be positioned to re-architect their content management systems, and will pay to bring new users to them.  Hopefully their advertising revenue will more than offset the costs of customer acquisition.  Other shops will be well positioned to capitalize on their content via a solid Media Service architecture.  Finally, there will be shops that do both.  I can imagine the NY Times online syndicating images, videos, and stories, providing API access, and serving photo galleries and videos along side related stories with personalized SocialPass conversations involving Facebook users, MySpace users, E-Mail invitees, and Twitter invitees all on the same page with integrated ratings and persistent commentsThis is nirvana!!!

Sep 162008

Since my last post about how I could have used a Document Management (DM) system in a former life, I’ve been thinking about the statement I made about how certain I was that it would have saved the company time and money had we used a DM solution.  That’s the kind of statement that a Tech enthusiast likes to make withouth substantiation, and yes I’m a tech enthusiast.  However, it would be much more powerful to boil it down to dollars and cents.  It wouldn’t take much to truly quantify those savings either. Additionally, it wouldn’t take much effort to estimate savings and calculate a projected ROI for DM implementation.

I’m thinking back to my week of Lean Six Sigma Green Belt training, and I recall the general concept that you can’t improve a process that hasn’t been measured.  That said, it would be fairly easy to simply time someone performing a task or set of tasks before DM implementation to estimate cost savings, and then again after DM implementation to monitor progress.  You could go deep and set up a control chart if you really wanted to, which actually may yield information about special cases that cause delays, and provide further opportunities for automation.

I’m wondering if any Six Sigma experts or system integrators out there have actually done any projects that leveraged DM software to increase knowledge worker efficiency and automate their work.  If so, please comment here and share what you’ve found!

Sep 152008

Last week I began working for Alfresco Software, as I previously announced.  During that first week, I learned about Document Management, amongst other things (like the Spring Framework for example).  The end result: I wanted to kick myself.  It really would have been nice to have Alfresco’s Document Management solution in place when I was working on Gestalt/Accenture’s CMMI level 3 compliant Agile software delivery method!

Our process for defining processes was basically this:

  1. Draft the process
  2. Pilot it (and make revisions based on what was learned)
  3. Approve it
  4. Deploy it

Of course, there were several sub-steps within those processes, and they required version control, auditing, and moving documents to different folders at certain times (a document workflow).  At the time, we used Sharepoint as best we could to manage all this.  It handled version control and auditing, but it had two shortcomings as I recall.  First, there was no automated way to baseline a set of documents as being part of a release candidate (such as you can do with CVS or Subversion tagging).  Second, the moving of documents was all manual, every step of the way.  This doesn’t sound like much, but as I recall, we had six or seven folders in the workflow, and we could have used some automation when doing round robin peer reviews within our team.  And the deployment of these assets was no trivial matter; I remember it took me almost a whole day to learn how to deploy a set of process assets, and then deploy a set of them for the first time.

So as I went through “Getting Started With Document Management“, I was shaking my head the whole time.  It is so easy to create content rules and workflow rules.  Instead of manually moving documents from folder to folder, a workflow could have been set up to do that automatically.  Instead of manually notifying a teammate that it’s their turn in the round robin peer review chain, the workflow could have done that for us.  And best of all, we could have easily set up a templatized space that could have been used for all of the processes and associated documents that we delivered over the course of over two years.  Finally, because Alfresco is open source and standards based, we could have extended the platform to automate our specific processes for deploying process assets.

Considering the number of documents we handled, the amount of reviews, the number of gates in the process, and the number of people involved, I have no doubt that if we used Alfresco we would have saved a lot of time and therefore money as we defined, piloted, approved, and deployed new Agile processes across the company.

So yeah, document management software is a great thing.  I only wish I knew about it years ago.