I've been on a quest for the perfect task/ time management system for years. I concluded quite some time ago that the goal will always remain elusive but the questing is valuable. Although many trials of new systems get discarded, I tend to keep the bits that work for me and incorporate them into my ongoing personal system.
I commonly hit two issues: most systems (e.g. GTD) seem overly rigid, and flat task lists, even with categories, don't support the way my task list grows. My tasks often grow hierarchically. The task starts life as something like "Draft plan for perpetual motion machine". But as I start working on that task it spawns sub tasks like ""Review past work in this space", "Meet Fred re: his Project X work" and so on.
Hierarchical task management systems do exist but are rare. I have used ListPro, and I have used MS Project quite a bit. Project is a good hierarchical task manager but its features are overkill for most personal task lists. They both have their own rigidities, and don't integrate with Outlook in the right way. Ultimately I actually want my tasks to show up in Outlook. Because I want to see them along with my calendar and be able to allocate them to slots on my calendar, get reminders etc. Outlook 2007 rocks for all this now but it still doesn't do hierarchy...
With the combination of OneNote 2007 and Outlook 2007 I now have a system that works very well for me. Here's how I manage my task list and workflow now.
1. I created a ToDo page in OneNote in my general section. This always contains my current to do list and grows and evolves as my tasks change.
2. I have a direct keyboard shortcut to this page, Ctrl-Alt-T, so that I can instantly go to this page whether OneNote is running or not. This works from anywhere. See my post on Keyboard Shortcuts for Favorite OneNote Pages for how to do this.
3. I write each task on a line.
4. I hit Ctrl-Shift-1 to mark that item as an Outlook task for today (or Ctrl-Shift-2 is tomorrow, 3 is this week, 4 is next week, Ctrl-Shift-K pops up the Outlook task dialog for custom date and fields). This process gets the tasks roughly distributed on my calendar correctly.
5. That line gets flagged as an "Outlook Task" in Onenote. It gets added to the task list in Outlook, and there is two way sync between them. If it gets marked done in Outlook it shows up as done in OneNote and vice versa.
6. There's also cross linking. A link is created in the Outlook task that will jump you directly back to this item in OneNote. Or you can right click the flag in OneNote to open the matching task in Outlook.
7. I add hierarchy to the task list and manage the structure and priorities of my tasks in OneNote by indenting lines. Or change order and priorities by moving things up and down. Alt-Shift + left arrow, right arrow, up arrow, or down arrow are great keyboard shortcuts for doing this easily and quickly.
8. I manage my time on the Outlook calendar. The tasks show up in the "task well" below each day on the calendar. I can drag the task onto a slot on the calendar to schedule it. I can drag it out to a different day if I want to defer it. This is very quick time management.
Now my work flow typically looks like this:
1. Hit Ctrl-Alt-T, I can look at my task list and get an overall view.
2. Move things around with Alt-Shift arrows, for example to bring important stuff to the top.
3. I can mark things done. I can add new things. I can add additional context and links to references or details I'll need to refer to when doing the task.
4. I also see my tasks show up in the “ToDo bar” on the right of Outlook whenever I’m in Outlook. So they’re always in front of me.
5. And I see them distributed across date in the Outlook calendar and allocate time accordingly.
6. I can update the status in either place.
7. I leave "done" tasks on my OneNote page for a while (they are flagged as done), but as I work on the parent task I can quickly see which of the sub tasks are done and what's left to do. Periodically I delete the done tasks from the ToDo page, for example when the parent task is complete. I always have a permanent record of them in Outlook. Ctrl-A once, followed by delete is a fast way to delete a task line.
8. Also sometimes I add tasks out of context of my OneNote ToDo page. For example, if I'm taking notes in a meeting. I can use the same process to flag any item in the meeting notes as a task to do. I don't have to switch contexts, and later when I link back to the task I'll see all the information from that meeting that might relate to the task.