Workflows in SharePoint: When to use Designer vs. Visual Studio?

SharePoint has two primary tools available from Microsoft for design and development:

SharePoint Designer 2007 and Visual Studio 2005.

Both tools allow creating custom workflows in SharePoint.  SharePoint Designer 2007 is a tool used when a no coding approach is required and a one time solution workflow is required. The SharePoint Designer allows users to create workflow by creating conditional logic based on the list’s data, and the user can publish the workflow directly to the list or library for immediate use.

A one time solution workflow is a workflow that will be specific to a particular site and library in SharePoint. The workflow will not be portable and it is only configurable through the SharePoint Designer tool.

Visual Studio 2005 can be used to create complex and logic rich workflows through programming. The workflows can be designed and developed to be portable and configurable.  To deploy workflows design and developed with Visual Studio 2005, an administrator must approve the workflow as trusted code and upload the new “feature” to the SharePoint server.  Once uploaded, the site collection administrators will have to “Activate” the new workflow before users can use the workflows in their lists and libraries.