What is workflow?
The workflow process is traditionally defined in office terms—moving
the paper, processing the order, issuing the invoice. But the same
principles and tools apply to filling the order from the warehouse,
assembling documents, parts, tools, and people to repair a complex
system, or manufacturing the complex device.
In software world we encounter workflow when we have to atomize process, approval mechanism,
document routing, process sequence, execution sequence and many more…..
With the automated workflow management system:
· Work doesn’t get misplaced or stalled—expediters are rarely required to recover from errors or mismanagement of the work.
· The managers can focus on staff and business issues, such as individual performance, optimal procedures, and special cases, rather than the routine assignment of tasks. The army of clerks is no longer required to deliver and track the work.
· The procedures are formally documented and followed exactly, ensuring that the work is performed in the way planned by management, meeting all business and regulatory requirements.
· The best person (or machine) is assigned to do each case, and the most important cases are assigned first. Users don’t waste time choosing which item to work on, perhaps procrastinating on important but difficult cases.
· Parallel processing, where two or more tasks are performed concurrently, is far more practical than in a traditional, manual workflow.
How I implement workflow?
I have the same problem like I have to atomize the entity levels according to their status , presenting sequence on User Interface and can be attached any entity at any level. Their history is flow is also a problem. Currently I am working in financial domain before that I have encountered this same problem in my news management application. Like after news arrival I have to maintain its flow according to its current status where it will be present and to whom. Its history like who change status what changes he made and when he did this. I have to take care of it like at first stage someone can attach other entity also like documents, any media etc. So, I have to maintain at any stage document attachment, media attached history.
· Default Workflow
· State wise entity attachment
· Maintain the history record of each entity like its current state and its previous state.
· Implement Horizontal workflow
· Implement Vertical Workflow
Before explaining the above three points. I want to explain the workflow then we can discuss the workflow states and it will be easy to digest. Because without explaining workflow, workflow states will be meaningless. Workflow system starts from workflow entity, any other entity will be attached with workflow and with any specific workflow states will be attached. Workflow states further associate with state changes and its history.
Logical View of Workflow system
After creating a workflow end-user can make default workflow to free from every time assigning the same workflow for any module. For instance for any module user can assign a workflow instead of assigning it every time. It saves time and effort automatically module will be attached with its defined workflow.
State wise entity attachment
It obvious that if an entity is in initial level some documents and other actions stuff can be attached which can be vary depending on its state. So keep track of every state attachment is very necessary.
It also help to retrieve its previous state.
Maintain the history record of each entity like its current state and its previous state
It’s very necessary to maintain the record of any entity of its life cycle journey .Easily traceable like who change its state, what documents attached with it, When user want to revert the record than it can easily find its all states.
State Change History
Implement Horizontal workflow
One function of a workflow system is to get the work to the right person or process—to move the work through the organization. This is sometimes called “horizontal” workflow. In my news management system news is flow in horizontal direction. Every responsible put their action and forward it to other responsible for their action.
Implement Vertical Workflow
Normally a case consists of multiple tasks—programs, portions of programs, or manual steps performed at each step in the workflow. Therefore another possible workflow function is to see that all the tasks are completed the “vertical/parallel” workflow. In my system when any breaking news come and directly approve by the news director. News management system service closely monitors the status of news and generates an email and sms to responsible person.
P.S For further assistance you can mail me on rizvinazish@gmail/yahoo.com