title: Recommend a design pattern for a workflow application
body: <p>I am developing an application where the users can execute tasks / workflows. Each task is made up of a queue of actions to be executed. I want to be able to be able to have user input after the workflow is started.</p>
  
  <p><strong>Example:</strong></p>
  
  <ul>
  <li>Task starts
  <ul>
  <li>Action1 starts</li>
  <li>Action1 ends</li>
  <li>Action2 starts</li>
  <li>Action2 ends</li>
  <li>Action3 needs user input (UI opens window to get user input)</li>
  <li>Action3 gets user input</li>
  <li>Action3 starts</li>
  <li>Action3 ends</li>
  </ul></li>
  <li>Task ends</li>
  </ul>
  
  <p>I am developing this i C# and I am aware of Workflow Foundation and tasks in C#. They may have what I need, but I am also interested in hearing about a design pattern for doing this from scratch.</p>