Thursday, July 19, 2007

2005/03/11: Workflow user interface

2005/03/11: Workflow user interface

My current obsession is workflow, and particularly a workflow-oriented user interface to everything.

Once upon a time computers were expensive and people were (relatively) cheap. So the idea was that people would attend to the computer and keep feeding it. The modern progress bar continues that idea: "here's something to look at while you wait for the computer to finish something". Window systems, and underlying multiprocessing, mean that computers can do more than one thing at one. Instead of looking at the progress bar we go to another window. Now we don't know when the activity is finished except by coming back to it. So we have to remember all the things that we are trying to juggle and keep going back and checking them for progress. So we need a workflow user interface, and what do people use: they use e-mail. That's something they keep looking at and maybe it comes with a notification system. But it is a really bad workflow user interface.

A real workflow user interface lets us know what activities need user input, or want it, or would be willing to receive it. My conception is that activities are organized in a tree and the nodes change colour: green means that this activity can't proceed without input from this user; yellow means the user might push things along, but does not have primary responsibility to do so; orange to red means that the user can only do things that won't affect other players much. For example if the activity is a chess game then the tree node for that activity is green if it is your move and orange if not (since you could resign) and red if the game is over.

Now we don't need a progress bar: the node for that activity will be reddish until it goes back to waiting for us to input. More on this another day.

Wirelessly networked PDAs threaten to become ubiquitous combined with mobile phones. These can hardly afford a multiwindow UI. Also it will be hard for the user to look around for stuff needing attention. Also interaction activities are likely to be the main applications. So for various reasons my workflow user interface is likely to be a good answer.