15 March 2008

Part 1 - Introduction to Workflow





Objective
  • Define workflow terms
  • Define task types
  • Understand types of workflow

Workflow terms

  • A workflow consist of a set of steps/procedures that are interconnected in predeccessor-successor relationship. It is represented by a flowchart. In Teamsite workflows implements business workflow and also a *package of files and instructions.
  • A bussiness workflow is a real world process used by an organistaion to produce a result.
  • **Job: A new workflow instance started by an execuation of a workflow model. This job is identified by a numeric job ID. A job is a collection of tasks and links but all the variables have been filled in. Job has one or more files attached to it. Many jobs can be started from one workflow model.
  • Job specifications are XML files that describe a specific job instance. You can create these files either by invoking the instantiation of a workflow template or a workflow modeler only through a TeamSite v6.7.1 GUI.
    However previous version of TS v6.5 uses the workflow template to create the job specification
  • Instantiation: Means that the workflow model is being filled in with values to gnerate a true job specification. If any variables are user supplied, then instantiator display a form to gather information from user.
  • Workflow modeler (new feature in v6.7.1) is a TS authoring tool for defining a workflow model that will implement a recurring and approving business process for content management. Think of a workflow model like an automated flowchart use to i)manage content developement life cycle ii)automate development tasks iii)customise procedures. It saves the workflow model as a XML file with *.ipm extension.
  • Workflow template: (old feature in v6.5 but still supported in v6.7.1) Workflow templates are XML files with a .wft extension (known as wofty files) that describes the job specifications for a particular workflow. These files are created dynamically with embedded Perl script to dynamically generate the output job specification. Then it is transfer to the TeamSite server where they can be instantiated by users, as needed, to become specific jobs. The configuration file available_templates.cfg lists all the workflow templates available to users to be instantiated.
  • The server-side workflow subsystem resides on the TeamSite server and contains all the executable files that provide workflow functionality.
  • Task: A single step in a workflow process which can be perform by a perseon or program & the task status is either inactive or active and identified by a task ID. More than one task can be active at a time. Active means user has not yet completed the task's work.
  • Activation: User or program for that task has not yet completed the task's work
  • Transition: Occurs when one task is finished, which cases the current task to become inactive and activate the current task's successor (according to the workflow model) which may be one or more other task.
  • Transition options: There are two or more possible ways to transition, usually depending on the outcome of the task.
  • Links is a connection between two or more tasks and present the oder in which tasks are performed. Links can activate more than one tasks at a time. Links can also re-activate task that have already completed (i.e. activate an inactive task), creating loops.When a task is completed, the next task starts automatically. Links create predecessor/successor relationship between tasks. When a predecessor task is completed, it activates its successors. Links can have multiple predecessor/successor.
  • Start and end event - Workflow model has one or more start and end event. All successors of start evetns become active as soon as workflow job is started. WHen any end event activates, the workflow is terminated. Start event has no predecessor. End event has no successor.
  • Serial task activation - A workflow model in which no more than 1 task is active at one time.
  • Parallel task activation - A workflow model in which more than 1 task active at a time.
  • Parell Transitions - If a user task has 2 or more successor, the user selects one of them to be the next task

*The package is routed from one user to the next:

  • Each user reads instructions to see what they need to do to the files
  • Afer doing their work, the user addes comments to hte package what they did and pass the package to the next person in sequence.

**When a workflow job is started, the following occurs

  1. Workflow job is instantiated
  2. Workflow job becomes active
  3. Task in workflow becomes active if they are successors of a start event.

Workflow users

  • Business users define the workflow requirements
  • Developers implement workflows
  • Content Managers/Contributor initiate and maintain the jobs and automate and perform the tasks.

Task Types
Most workflows are automated by the program. Those tasks that can't be performed automatically must be assigned to a user to manually perform a interactive task (e.g. review/approve or reject, content creation, etc). So there are two types of task:

1. Automated task: Perform operations on the worflows flikes like copy, lock, submit, etc..

2. User-interactive tasks comes in 3 types:

  • User task - Standardise TeamSite (TS) workflow task types designed to give user the tools needed to work on the workflow inside their "to-do" windows. Example include: create/edit files, fill in forms/metadata, review and approve/reject, compare and merge.
  • Group task - Assign to a list of people and will show up in all their "to-do" windows, until one of the user takes ownership (i.e. starts the work), which assigns the task to that person. After that the group task becomes a standard user task. Example include lock/unlock, email notification, copy/move files, submit, deploy, execute program.
  • Custom user task - Known as CGI task because the task is created by system adminstartors from common gateway interface task, which can provide customise task.


Workflow types
TS has two "out of the box" common workflows, but any number of other workflows can be created during TS installation. Workflow is dependent on busines needs and operations.

  1. Assign workflow: Where a person asign work to another team member. Some examples include:
  • A team member (Assigner) assign a set of files and instructions to another person
  • Assignee completes the work
  • The Assigner who assigned the work then reviews it, and either approves/rejects the work
  • After approval, the files are automatically submitted.
  • Email is sent to the Assigner and Assignee.

2. Submit worfklow - Runs a job to submit a workflow using the default_submit workflow template.

Workflow Events

Workflow events are the initiation of starting a job when a user selects the following event:

  • Action->new job
  • Submit
  • Assign
  • Create/delete a DCR

Resources
For further details, read: Workflow Developers Guid v6.7.1 SP1

No comments: