Managing Workflow for Customer Requirements
 
  June 2006 - Pragmatic Software Newsletters 
 
 

Newsletter Sponsors

» Remoteus (http://www.PragmaticSW.com/Remoteus.asp) is remote desktop sharing software used to simplify help desk support by allowing your support team to connect to client PCs.

» Software Planner (http://www.SoftwarePlanner.com) is a web-based solution for managing the software life cycle.  Tracks customer requirements, tasks, defects, test cases and allows document sharing.

» Web Information Center (http://www.WICDirect.com) is a web reporting system that presents information from SQL databases in a polished format.  Pivot tables and Crystal Reports integration.

Managing Workflow for Customer Requirements
For teams managing software projects, it is crucial to define good customer requirements and specifications.  Just as importantly, the workflow around the requirements gathering process must be defined so that everyone understands how a requirement moves from the idea stage to completion.  Below are some tips for collecting customer requirements and defining the workflow.

  1. Define the Workflow Statuses - For a new customer requirement to move from an idea to completion, it takes steps and approval processes.  Workflow is normally tracked via the "status".  Let's create a simple workflow, where the client requests a feature, approves or rejects it, your team completes the requirement and bills it.  Below are some possible sets of statuses (workflow) for this process.  Notice that we numbered the workflow so that they appear in a logical order.
     
    Workflow Statuses:

    01-New (Awaiting Design)
    02-Design Completed
    03-Awaiting Client Approval
    04-Closed (Client Rejected)
    05-Approved
    06-Ready for Billing
    07-Closed (Completed)


  2. Flowchart the Workflow - Flowcharting the workflow allows team members to understand the process in full.  We created the flowchart below using Microsoft Word.
     


  3. Advanced Workflow - In our example above, we used simple workflow.  However, if your team uses software to manage customer requirements, you should be able to implement more robust workflow.  For example, the software should allow you to define "state transitions". This identifies how a status can transition from one status to another.  In our example, above, you may want to only transition from 03-Awaiting Client Approval to either 04-Closed (Client Rejected) or 05-Approved, because none of the other statuses would be applicable at that point in your workflow.  Likewise, the software should also allow you to define what fields (or items) you wish to make required upon different states. In the example above, if the requirement is changed to 02-Design Completed, we may want to require that the engineer enter an estimated cost.  Robust requirements tracking software will allow you to define the field attributes for each state transition.   Software Planner (http://www.SoftwarePlanner.com) does this nicely, you can see how this is handled from Software Planner by viewing this movie:

    http://www.pragmaticsw.com/GuidedTours/Default.asp?FileName=Workflow
     

  4. Customer Requirement Template - It is also wise to document your requirement in detail so that you are sure that your client agrees with your approach and design.  Here is a customer requirement (functional specification) template:

    http://www.PragmaticSW.com/Pragmatic/Templates/FunctionalSpec.rtf

Helpful Templates

  Below are some helpful templates to aid you in developing software solutions on-time and on-budget:

About the Author
Steve Miller is the President of Pragmatic Software (http://www.PragmaticSW.com).  With over 20 years of experience, Steve has extensive knowledge in project management, software architecture and test design. Steve publishes a monthly newsletter for companies that design and develop software.  You can read other newsletters at http://www.PragmaticSW.com/Newsletters.htm.  Steve's email is
steve.miller@PragmaticSW.com.


 

Pragmatic Software Co., Inc.
383 Inverness Parkway
Suite 280
Englewood, CO 80112

 

Phone: 303.768.7480
Fax: 303.768.7481
Web site:
http://www.PragmaticSW.com
E-mail:
info@PragmaticSW.com