Yesterday, I was struggling to achieve a basic goal. I wanted to list out the sections of the application and specify all the different buttons and menus and features. It was basically a quick outline of the product to be used as a UI specification doc. There are lots of task managers, but none achieved my goal. I had three requirements:
- An outlining tool as easy as MS Project 2007.
- A column for task name and notes.
- Output HTML in a dynamic tree form.
Some “nice-to-have” features, but weren’t required:
- Online, but just as fast as MS Project. (Possible, I think with EXTJS). Needs to be editable by multiple people.
- Columns for %Complete, Target Date, Owner, Priority, Effort Level
Details of the interaction design:
- SHIFT-LEFT and SHIFT-RIGHT should indent/outdent.
- Drag and drop should work for reorder
- Cut and paste from excel or notepad should work. (Tabs should be considered indents)
- Cut and paste TO text should paste with tabs
- Export to UL/LI should work.
- Export to UL/LI Tree should work by using the jquery Tree plugin or Ext Tree.
- Should be able to select multiple rows to delete/move/copy. (Shift-Click)
- Keyboard should work for up/down
- Pressing enter at the end of a task should go to the next line to start a new task.
- Pressing tab at the end of the task should go to the next column
- Show levels should work. Great feature.
- Should be sticky so that the last open/close stays
Here you can see how it looks in Project. I think this would be a really useful quick tool. Some people do open source project development. I do open source product definition. Feel free to add/modify this with me. And of course, feel free to build it. Please give me some credit somewhere on it if you do. 🙂
Interaction Design is fun.