Get in the Flow (Task Flow that is)

Call them what you like (task flows, work flows, process flows), flow diagrams are an important part of any software project. As a developer, you may be more familiar with sequence diagrams, a nifty way to visualize an exchange of messages between different processes and the order in which they occur.

Well another useful diagram is the end-to-end task flow. This handy dandy diagram shows all the steps necessary for a user to accomplish a task. Buy a pair of shoes? Select shoes, select size, add to cart, go through checkout process. Simple and easy.

And yet, what is it really telling you? Well, a flow diagram gives you an overview of the end-to-end process, the start to finish if you will. It lets you know what the user needs to do in order to start a task (select those really cool shoes) and what defines that the task is completed (display order confirmation). In between those two points are all the necessary steps to go from start to finish.

Shoeflowbasic_3

Initially, the in betweens are very high level (as evidenced by the above diagram). As more information becomes available, the flow is modified, added to, subtracted from and generally redrawn to show not only the user tasks, but also the system tasks (return error message, validate and continue), alternative routes (continue shopping, display upsell message) and decision points.

Shoeflowenhanced_3

I've found flow diagrams to be very helpful because they let team members know how their stuff fits into the big picture. Let’s face it, on most projects the end-to-end flow is never developed lineally by one developer. Instead, it’s broken down into pieces and parts and assigned to various people. Seeing the end-to-end diagram up front gives you the overall picture of how an entire feature will play out and, more importantly, shows you how and where your piece fits into the whole. It'll get you thinking about potential points where code can be reused (sweet!) or better ways the data can be used at the presentation layer.

End-to-end diagrams let you see that what you're working on is no longer a lonely story in isolation, but rather something that’s part of a defined sequence that contains a beginning and middle and end. It ties what you're doing into the whole and brings a coherency to the process. This is especially valuable for large features that are spread out across teams and even iterations.

Technorati Tags: , ,

Related posts:

  1. Use a Task Flow to Show “How do I ___?”
  2. What are Task Flows?
  3. User Task Flows Help Developers:
  4. Use Case Diagrams
  5. Flow in Applications

Comments: 6 so far

  1. Lombardi Software has a free Web-based tool, Blueprint, that helps you discover, map, and visualize a process. Much like you describe here. https://blueprint.lombardi.com/

    Comment by Craig Moser, Wednesday, September 19, 2007 @ 2:13 pm

  2. Thanks, Craig — I’ll be sure to check it out!

    Comment by Alice Toth, Wednesday, September 19, 2007 @ 7:44 pm

  3. I recently started using Visio again, and must say I’m pretty impressed by how easy it is to make these flows. They’ve proven to be a great source of documentation to explain some of my work to peers.

    Comment by David Cumps, Thursday, September 20, 2007 @ 4:55 pm

  4. Thanks, David — I’m glad to hear someone else finds them just as useful. What I like is that they’re not a technical diagram like, say, a db schema so they’re easily understood by non-developers as well.

    Comment by Alice Toth, Thursday, September 20, 2007 @ 10:40 pm

  5. Hi Alice,

    Workflows must be mandated in transactional UI design (not so much in informational UIs). If a UI designer can’t do them they should be shot!

    In my business we have been promoting detailed user interface workflows for years now.

    They serve the following purposes:
    - Absolutely no question of what users want – They can even replace scenarios and personas if you like.
    - Completely clear communication to designers and developers on exactly how the interface fits together.
    - Unquestionability (is that a word) for my clients that this UI design stuff is really really complex.

    The thing I often hear is ‘oh, we are just reskinning our application for another (customer) audience. The functionality is the same so the UI is easy.’ That is so untrue for transactional apps and workflows demonstrate the value of detailed interaction design.

    One of my partner companies only asks for workflows as a deliverable now. They are smart and the government sites they do use similar patterns, but with different workflows. The workflow gives them the insight they need about customer interaction and any more work by my HCI consultants IN THEIR CONTEXT is a waste.

    Thanks

    Comment by James Breeze, Tuesday, October 9, 2007 @ 5:21 am

  6. James, you rock!! In my experience, developers totally understand and get workflows. Business people don’t necessarily get it until you walk them through one and then, as you say, they get that it really shows the customer interaction.

    Where I struggle most is in dealing with people who understand the theory of software design, but have never really been involved in software projects. They either don’t understand workflows or they’re not conceptual or something. That’s still a challenge I need to overcome. :)

    Comment by Alice Toth, Tuesday, October 9, 2007 @ 11:37 pm

Leave a comment

Powered by WP Hashcash

Launch: Pathfinder Newsletter

    Get a monthly update on best practices for delivering successful software.

    Subscribe via email


    Subscribe via RSS      RSS icon

Topics

Search

WordPress

Comments about this site: info@pathf.com