Some end-user thoughts on the design of the Workflow system --
For the foreseeable future, I'll be building sites which need to be
accessed from multiple devices, with different presentation
requirements. This includes the standard desktop browser, but also
includes WAP, and likely also includes Palm OS web clipping.
To support the same business logic with different presentations, may I
stress that the Workflow piece be designed to be as "MVC-ish" as the
rest of Struts.
For example -- perhaps you define logical "activities", composed of
logical "steps" and logical "pre-" and "post-conditions". But as far as
mapping these things to actual screens (JSP pages) -- keep in mind that,
depending upon the device, the developer might want to put all steps
onto one screen, or split them across multiple screens (or even skip
certain steps for certain devices). By keeping a loose coupling between
JSP pages and the logical definition of the workflow (and by allowing
the flexibility of combining or splitting steps among pages), I'll have
better support for this kind of UI problem.
Thanks,
Bryan