Alfresco Test 'Approval' Workflow

Showing results for 
Search instead for 
Did you mean: 

Alfresco Test 'Approval' Workflow

0 0 1,783

Obsolete Pages{{Obsolete}}

The official documentation is at:

Back to Workflow.

Test Process

The following process definition provides a test bed and complete example that encompasses the most useful workflow features.


The following process represents the typical flow of review / approve / publish. 

500px|none|Review, Approve & Publish Workflow

On the surface it's a simple process with relatively few states and transitions.  This level of detail is typically reached an analyst who's performing some kind of business process analysis or re-engineering.

Of note is that the process parameters consists only of the Content to review and a Due Date to review by.  Also, three workflow 'roles' have been identified, although, the first 'Initiator' is system assigned.

Implementation Detail

The next level of detail (implementation) adds behaviourial logic to the process by hooking into state entry/exit and transition events.

(1) On Transition

  • Apply �Review Lifecycle� Aspect  (draft, under review, approved, published)
  • Set �Review Lifecycle� to �under review�

(2) On Resource Assignment

  • If due today assign to direct to 'Publisher' else assign to 'Reviewer'

(3) On Transition

  • Copy Content(s) to Approved Folder (created for process instance)
  • Set �Review Lifecycle� to �approved�
  • Send �Approved� e-mail to Initiator

(4) On Decision

  • If any content is HTML (and not already reviewed by Publisher) route via �qa� transition else route via �publish� transition

(5) On State Enter

  • Transform Approved to xxx format
  • Publish via FTP

(6) On Transition

  • Set �Review Lifecycle� to �published� (on copy or original?)
  • Send �Published� e-mail to Initiator

(7) On Transition

  • Send 'Publish Failed' e-mail to Initiator

To support the above logic, process context (i.e. variables) may be used, such as recording the Approved Folder to which content was copied.


Review Lifecycle Behaviour

Once approved or published, further edits to the Content may take place.  Upon edit, the Review Lifecycle should be reset to 'draft'.

Review Task Behaviour

In the above Workflow, it is assumed the Review Task is assigned to an individual.  However, it may be possible to assign Review to many people (or a group).  In such a case, the following may also be required:

  1. Task Pool - someone from the group volunteers to own the task
  2. Parallel Tasks - each person in the group is tasked to Review in parallel.  The task is deemed complete when a) any one of the people completes their task or b) every person completes their task

Workflow Samples