Thursday, February 21, 2008

I got a mail yesterday from a German student asking about the future of workflow and my thoughts on it. I will share the thread. It was written in a hurry, so take it for what it is. Leave a comment to give him another view point.

Read from bottom to top.

-----

my reply:

What you are describing does indeed sound like a typical WF application, and it is absolutely suitable for that.

Custom activities: don't be afraid. Just create one that is a wrapper around your huge ole-api. Creating an activity is little more than deriving from Activity and overriding the execute method.
Put some properties on there and of you go.
Or create multiple activities that do different things to the ole object.

It sounds to me that you want to re-host the workflow designer. That is certainly do-able and there is a project from some1 you can download that actually did that. However, it was in need of more debugging. I don't have the url here. Sorry.

What WF is not, is a magical system that requires no development. It is really meant to be a foundation, which a developer uses and builds upon to create a system that really suits the client wishes. So that means, configuring it, creating external data exchange services and building custom activities. Only then will you create a system that your client can use in the way you described. You need to mold it to behave like you want.

In our case, it was definitely the developers that created the workflows. Best we could hope for was that business analysts could understand it (and they did). However, I've always felt it was possible to create a system that they could use directly.

Success!
Ruurd

-----Original Message-----
From: Sven
Sent: woensdag 20 februari 2008 20:56
To: me
Subject: Re: Some questions about the future of WF

Hi Ruurd,

thank you very much for your in-depth statement! I had not expected this detailed level ;-)

Actually as a part of my project I have to evaluate if WWF fits into an existing CRM Application.
It should be possible for solution partners (customizing the application for their customers) without in-depth programming knowledge for example to "wire together" some custom activites to visually build for example the processing of an incoming mail, a little workflow for some little approval process (like you press a button inside the application on an address form, the workflow gets some field from the current record, decides based on the field which e-mail model to use, sends the email and finally writes some information to the same record, like "e-mail XY sent") or things like that... (sounds like a classic
Flow-WF)
But their could be use for some "state machines", too. Like there is a WF-Service running and dispatching incoming mails to different employees...

Is WWF suitable for this ? These things could be done today in the application by coding some huge VB-Scripts, there is a huge OLE-API in the application...

What I missed is a "CustomOLEActivity" to call whatever function in an application with OLE-API (there are a lot on the market) and to simply return some values...
(the ExternalDataExchange/CommunicationActivity with wca.exe-Tool-way looks like beeing very complicated - at least if you have to build a CustomActivity for a huge OLE-API, or have I missed something out ?)

On my "first look" the designer looked a bit complicated (even for people with some advanced knowledge, i have to target not the computer dummies, but also not the programmers on the other hand, some level "between", lets say "System Administrators"), but perhaps you can give me from your own experiance some hints in which direction I have to go for this...
(who is editing the workflows in your big project?)

Implementing everything "from scratch" looks like an even bigger effort... (would be the other choice...)

Thanks a lot for your help and guidance !

Bye
Sven

my reply:
>
> Basically, I see quite a few problems surrounding WF. It is very
> shielded, the designer is not very good still and there is no good
> update strategy (updating long running persisted workflows to new
> versions). I think that last issue is one of the biggest problems it
> has, although it hasn't gotten much publicity.
>
> However, as a platform, it does what it should do very well. They are
> going to use it as the biztalk workflow engine and are already using
> it as the human workflow engine for sharepoint.
>
> I feel we are moving toward an industry that needs to mature (the IT
> development industry I mean). It is looking for DSL's and other ways
> to make developing software a more manageable and predictable process.
> Workflow has a definite place in that eco-system, where you can
> visualize the flow of your program. This means you have an artifact
> that will actually help a developer communicate with a business analyst or a client.
>
> To be concrete:
>
> So, why do I think developers have been slow to take it up: a
> difficult programming model and some serious issues that are not well understood yet.
> It is a radically different approach to building software, and it
> takes time for ppl to feel confident with it.
>
> Is there a future: I say _yes_. If you understand the problems of
> todays WF framework, you can already build great things, and I've
> heard about some of the stuff that Microsoft is doing on the next
> version, which will alleviate some big problems. Since we need this
> kind of technology to build better software, there is definitely a future for it.
>
> Is it already used in the industry: Well, I have used it, but I have
> yet to hear of big projects using it. Then again, Biztalk is used
> extensively and the WF engine is every bit as powerful. (rules engine maybe slightly less).
> Sorry, no example possible...)
>
> I do not think it will disappear.
>
> Kind Regards,
> Ruurd Boeke
>
> -----Original Message-----
> From: Sven
> Sent: woensdag 20 februari 2008 19:48
> To: me
> Subject: Some questions about the future of WF
>
> Hello!
>
> I'm a computer student from the university of applied sciences of
> Emden, Germany.
>
> Actually I'm working on a project dealing with the Windows Workflow
> Foundation.
>
> As it was introduced one and a half years ago, but I see not so much
> implementations or books about it, I wonder why it has been adopted so
> slowly by the developpers.
>
> What do you think about this? (just some thought will be helpful for
> me!) Is there a "future" ? Or will this stay an "Microsoft Internal" - Affair ?
>
> Is this already used in the industry ? Where ?
> (If you could give me some examples from your experience this would be
> very helpful for my work)
>
> Is this really a technology to build on or might it disappear slowly
> like other "cool" stuff in the past ?
>
> Thank you very much in advance for any hint!
>
> Sincerely,
> Sven

Name
E-mail
Home page

Comment (HTML not allowed)  

Enter the code shown (prevents robots):