View Single Post
Quote:
Originally Posted by tacartwright
I will try to think of interface ideas for dealing with a true DAG model of tasks.
OK, here goes!

First, I did look at OmniPlan. It allows one to specify both prerequisites and (follow-on) dependencies for every task. And then, there are four different kinds of relationships for each, to capture how the dependencies interact with timing. This level of detail is too complicated for OmniFocus, IMO.

I remembered that one can describe a task DAG purely in terms of task prerequisites. Using my painting example:
Decide to paint: no prereqs
Measure walls: prereqs = Decide to paint
Pick color: prereqs = Decide to paint
Buy tools: prereqs = Decide to paint
Buy paint: prereqs = Measure walls, Pick color
Paint: prereqs = Buy tools, Buy paint
Thus, once “Decide to paint” is done, there are three “next actions”: Measure walls, Pick color, and Buy tools. “Buy paint” doesn’t become a next action until “Measure walls” AND “Pick color” are complete.

In this way of thinking, all the interface has to let you do is add, review, and delete prereqs for each task.

Here’s a crude mock-up of my interface idea:



This is a fragment of an OmniOutliner/kGTD document (as a base). I added an extra column for prerequisites. If a task has prereqs, then it gets a “prereq icon” to its left: a blue curvy arrow with red circle that tells how many prereqs there are. So, Task 3 has 2 prereqs, Task B has 1, and Task 1 has none.

The mock-up shows a prereq being added: You drag the prerequisite task over the prereq column for the dependent task. In this case, we’re making Task B a prereq of Task C — a blue arrow appears next to a task with no prereqs to provide a target for dragging. Once this drag is released, Task C will have a blue arrow with a red circle and the number 1.

Here’s another mock-up to show how to review the prereqs for a task:



Here, we have clicked the prereq icon next to Task F. Task F itself is highlighted in one color — probably the default highlight color — and its prereqs (Task A and Task E) are highlighted in another color. I think something like this satisfies the “review prereqs” use case.

When a prereq icon is selected, I think hitting the “delete” key (or picking a menu item) would be sufficient to delete all of the prereqs associated with the task. I’m not sure how to delete just one prereq from the list. Contextual menu on the prereq icon? Not sure.

That’s about it for a basic interface.

Now, I think the entire prereq system should be optional — some users might be intimidated by even this much. No problem, just leave out the extra prereq column. Then, all tasks are considered sequential (or parallel, or leave the choice as an option).

And even when the prereqs are being used, I think it should be optional whether the “Next Action” view lets you see tasks that do not have prereqs met yet. I don’t want to see them, but others might.

Finally, just to make sure there are no legal issues here, I place all of these ideas into the public domain. May the best GTD system win! :D

— Tim

Last edited by tacartwright; 2007-10-03 at 06:13 PM..