Are you using some particular document handling/workflow product? If so, tells us which one that is, and if not, then the question of how to add workflow capability to an application is rather open-ended. But either way, tell us some more details.
Alfresco includes two types of workflows out of the box. One is the Simple Workflow which is content-oriented and the other one is the Advanced Workflow which is task-oriented.
The simple workflow features of Alfresco enables you to define a simple approve- reject workflow for your documents. The email templates and notification business rules are helpful to notify all the concerned people involved in the workflow process. You can also implement complex workflows by chaining the spaces with multiple approve and reject steps.
The complex task-oriented workflow requirements can be handled by Advanced Workflow features. You can create a task, attach multiple documents and send it to multiple people for review. Using the dashboard views, you can view all the tasks assigned to you and all the tasks you have assigned to others. You can track the tasks to closure using the web client user interface.
There is a dedicated Chapter in the book titled "Chapter 9. Workflow", which explains you the concepts such as : �Enable simple workflow on documents �Create email templates and set email notifications �Extend workflow with multiple approval steps �Implement a complex workflow scenario for digital asset management �Start an advanced workflow from the list of predefined workflows �Assign priority, due date, reviewer and documents to the workflow �Take ownership of a task �Reassign a task �Change the workflow state �List tasks assigned to you and tasks completed by you �Cancel or abort the workflows you have started �Create your own custom advanced workflow