locked
Workflow designer guidance RRS feed

  • Question

  • Hi,

    I'm interested in providing technical users with a UI for designing their own custom workflows. I would like to hide/abstract most of the built-in WWF 4.0 activities with custom activities so as to shield users from low-level logic contructs like assignments, conditional branching, etc. There is (was?) an MS Research project called Trident which demonstrates an approximation of what I would like to do.

    My question: what approach should I pursue with this end in mind? Can I get where I want to go with custom activity designers in a rehosted WorkflowDesigner? Or do I need to consider a wholesale replacement of WorkflowDesigner (this is what the Trident project did, according to another thread)? Is such a thing even possible with WWF 4.0?

    Thanks in advance for your help.

    Wednesday, October 20, 2010 9:03 PM

Answers

  • what you can begin with is rehost designer, and you create your own custom designer so the user won't see those low-level logic activities.

    when you build up the rehost app, you just add your custom activities. these should work for you.

    you don't need to replace the whole workflow designer.

    you can get the sample sdk from this link

    http://www.microsoft.com/downloads/en/details.aspx?FamilyID=35ec8682-d5fd-4bc3-a51a-d8ad115a8792&displaylang=en

    • Marked as answer by Andrew_Zhu Thursday, October 28, 2010 6:49 AM
    Wednesday, October 27, 2010 5:58 AM
  • I would first look at rehosting the designer, but only providing a subset of activities on the toolbox (such as your custom activities). I am not sure how you would replace branching and so forth (but I guess that would be done by your activities, you could use a Sequential style workflow and your activities could control looping and so forth)

    More info on this is here:

    http://msdn.microsoft.com/en-us/library/dd489451.aspx

    Or, if you wanted to really abstract things away from the user, you could just present them with some sort of wizard, let them make choices, and then you assemble the proper workflow based on the choices they made. SharePoint uses this sort of approach with their SharePoint workflow designer (and I am not sure about Trident, I am not familiar with it)

    I would investigate these approaches before trying to design your own wholly custom design experience not based on the rehosted workflow designer.

    Thanks,

    Steve Danielson [Microsoft]
    This posting is provided "AS IS" with no warranties, and confers no rights.
    Use of included script samples are subject to the terms specified at http://www.microsoft.com/info/cpyright.htm

     

    • Proposed as answer by Andrew_Zhu Monday, October 25, 2010 5:48 AM
    • Marked as answer by Andrew_Zhu Thursday, October 28, 2010 6:49 AM
    Wednesday, October 20, 2010 10:07 PM
  • The issues that caused Trident to move away from WorfklowDesigner - I haven't asked anyone who knows but I would guess they might also be related to data flow and/or runtime behavior, which is at least as important as design-time behavior.

    I would encourage you to spend some time experimenting with very simple custom activities without worrying about custom designers straight away, to see if you can get data flow like what you want. If you don't need persistance and/or interopability with standard activities you can even build activities that use custom data passing conventions instead of arguments...

    Tim

    • Marked as answer by Andrew_Zhu Thursday, October 28, 2010 6:49 AM
    Wednesday, October 27, 2010 9:13 PM

All replies

  • I would first look at rehosting the designer, but only providing a subset of activities on the toolbox (such as your custom activities). I am not sure how you would replace branching and so forth (but I guess that would be done by your activities, you could use a Sequential style workflow and your activities could control looping and so forth)

    More info on this is here:

    http://msdn.microsoft.com/en-us/library/dd489451.aspx

    Or, if you wanted to really abstract things away from the user, you could just present them with some sort of wizard, let them make choices, and then you assemble the proper workflow based on the choices they made. SharePoint uses this sort of approach with their SharePoint workflow designer (and I am not sure about Trident, I am not familiar with it)

    I would investigate these approaches before trying to design your own wholly custom design experience not based on the rehosted workflow designer.

    Thanks,

    Steve Danielson [Microsoft]
    This posting is provided "AS IS" with no warranties, and confers no rights.
    Use of included script samples are subject to the terms specified at http://www.microsoft.com/info/cpyright.htm

     

    • Proposed as answer by Andrew_Zhu Monday, October 25, 2010 5:48 AM
    • Marked as answer by Andrew_Zhu Thursday, October 28, 2010 6:49 AM
    Wednesday, October 20, 2010 10:07 PM
  • what you can begin with is rehost designer, and you create your own custom designer so the user won't see those low-level logic activities.

    when you build up the rehost app, you just add your custom activities. these should work for you.

    you don't need to replace the whole workflow designer.

    you can get the sample sdk from this link

    http://www.microsoft.com/downloads/en/details.aspx?FamilyID=35ec8682-d5fd-4bc3-a51a-d8ad115a8792&displaylang=en

    • Marked as answer by Andrew_Zhu Thursday, October 28, 2010 6:49 AM
    Wednesday, October 27, 2010 5:58 AM
  • The issues that caused Trident to move away from WorfklowDesigner - I haven't asked anyone who knows but I would guess they might also be related to data flow and/or runtime behavior, which is at least as important as design-time behavior.

    I would encourage you to spend some time experimenting with very simple custom activities without worrying about custom designers straight away, to see if you can get data flow like what you want. If you don't need persistance and/or interopability with standard activities you can even build activities that use custom data passing conventions instead of arguments...

    Tim

    • Marked as answer by Andrew_Zhu Thursday, October 28, 2010 6:49 AM
    Wednesday, October 27, 2010 9:13 PM