Before setting up your workflow, first map out your workflow definition. For example, you need a custom workflow for tracking defects. You can implement the following workflow model:
The New status – A new defect is reported, you will require that the title, description, status, and priority of the defect is entered. If the defect is reviewed and it is not really a defect, it can be closed.
The Assigned status – Once the new defect has been reviewed, it is assigned to a developer to be fixed. At this point, you want the title, description, priority, and severity to be locked, and the Assigned To field to be required.
The Resolved status – Once the developer fixes the defect, the status is set to Resolved. In that case, the resolution code and description are required.
For the preceding example, this is how your workflow planning map might look: