views:

110

answers:

5

I'd be interested to know what techniques people use to diagram initial process flow when in the initial design phases of a fairly complicated web application?

To be clear I am talking about the route through a process from the users perspective, and how that route branches based on decisions and conditions. I'm not trying to model underlying processes.

Are flow charts still the best tool for this kind of thing? Perhaps UML can be used for this? Is there something better?

Could you also please suggest the best tool (windows based preferably) to use for your given answer.

Thanks

+1  A: 

I'd go with pen and paper, or maybe a white-board if you are feeling fancy.

Desigining a process flow on a computer is just a pain, its much easier to scribble out a flow diagram on paper than it is to mess around with Visio - only worry about computerising it once you need to neatly document your design.

If you are looking for some suitable apps then try this question:

Best Free Professional Looking UML Tool?

Kragen
+1  A: 

I'm not sure of any specific tool (other than Visio) but you should have a look at Business Process Modeling Notation (BPMN).

Kane
+1  A: 

Business Process Modeling Notation (BPMN) may help you with this. I know an architect who uses Agilian for this and recommends it highly.

Pratik
Agilian looks good, but is far too expensive for me.
UpTheCreek
+1  A: 

Remember that any system, no matter how big, has a single point that you can start from. Pen and paper is a tried and tested route. A drawing/modelling package is mainly used to communicate those ideas to others as it can be made available on a known server or via email for example.

I tend to stick with UML, but remember that it is a tool to use and unless you're a modelling fanatic diagrams only need to be good enough to get the point across.

I don't even think about the code initially, just what processes need to occur and slap them together. Hence use cases and sequence diagrams are where I start. (Actually I sometimes don't even bother with a use case.)

For speed keep the processes fairly simple (don't bother thinking about underlying logic too deeply) and work incrementally. After all you wouldn't write encryption routines for password handling before you had a means to enter a password, would you.

A sequence diagram is easier than a flow chart IMHO as there is no real need for decision making.

ChrisBD
+1  A: 

We have been working on an approach to business process representation that departs from the usual workflow approach, i.e. the machine metaphor where the organisation is a "machine" that "executes" the business process. We call it the "work product pool" approach, and it centres around products rather than tasks. As ChrisBD says, there are no single starting points, and the work product pool approachs acknowledges this and uses an opportunistic, people-oriented take to process representation.

If you google for "work product pool" you will find a few articles that describe the approach. The ISO/IEC 24744 standard metamodel is particularly suited to modelling business processes using this approach, too.

CesarGon