Bug 314166 - improve scheduled presentation bins and sort order
Summary: improve scheduled presentation bins and sort order
Status: RESOLVED FIXED
Alias: None
Product: z_Archived
Classification: Eclipse Foundation
Component: Mylyn (show other bugs)
Version: unspecified   Edit
Hardware: PC Windows 7
: P1 enhancement (vote)
Target Milestone: 3.4   Edit
Assignee: Robert Elves CLA
QA Contact:
URL:
Whiteboard:
Keywords: noteworthy
Depends on:
Blocks:
 
Reported: 2010-05-24 17:01 EDT by Mik Kersten CLA
Modified: 2010-06-09 18:21 EDT (History)
1 user (show)

See Also:


Attachments
whiteboard from brainstorming (1003.67 KB, image/jpeg)
2010-05-24 17:03 EDT, Mik Kersten CLA
no flags Details
ideas (20.07 KB, patch)
2010-05-25 20:35 EDT, Robert Elves CLA
no flags Details | Diff
mylyn/context/zip (481.85 KB, application/octet-stream)
2010-05-25 20:35 EDT, Robert Elves CLA
no flags Details
as committed (19.27 KB, patch)
2010-05-26 00:06 EDT, Robert Elves CLA
no flags Details | Diff
v2 (13.93 KB, patch)
2010-05-26 15:14 EDT, Robert Elves CLA
no flags Details | Diff
mylyn/context/zip (199.35 KB, application/octet-stream)
2010-05-26 15:14 EDT, Robert Elves CLA
no flags Details
patch (2.28 KB, text/plain)
2010-06-07 13:56 EDT, Shawn Minto CLA
no flags Details
updated patch (5.70 KB, patch)
2010-06-08 14:39 EDT, Steffen Pingel CLA
no flags Details | Diff
mylyn/context/zip (12.56 KB, application/octet-stream)
2010-06-08 14:39 EDT, Steffen Pingel CLA
no flags Details
updated patch (5.97 KB, patch)
2010-06-08 16:21 EDT, Shawn Minto CLA
no flags Details | Diff
patch for Unscheduled bin (2.06 KB, patch)
2010-06-08 20:14 EDT, Steffen Pingel CLA
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Mik Kersten CLA 2010-05-24 17:01:56 EDT
The scheduled presentation currently has the following problems:
* Items can show up in more than one bin, eg, if something is both scheduled and overdue.  This duplicates information, is confusing, and makes the presentation appear buggy.
* Tasks are missing from the presentation, meaning that the user needs to switch back to the Categorized presentation to reliably find things.

Here's an updated design that addresses these problems, bins are:
* *Today*: Same us now, only place that "overdue" tasks show.  Day bins have are similar.
* *This Week*: no change, same sorting as now, "Next Week""Two Week" and "Future" bins are similar.
* *Outgoing*: new bin with all outgoing tasks
* *Incoming*: new bin with all tasks with incomings not already shown in above bins, sorted by modification date.
* *Unscheduled*: no change.
* *Completed*: all tasks that don't show in above bins.

The idea is that no tasks that show in a higher-ranked bin show in the bin below.
Comment 1 Mik Kersten CLA 2010-05-24 17:03:45 EDT
Created attachment 169733 [details]
whiteboard from brainstorming
Comment 2 Robert Elves CLA 2010-05-25 20:35:50 EDT
Created attachment 169920 [details]
ideas

Here is a proposed approach to this. Mik, Steffen, if one of you could take a glance at this.  There are performance concerns but we could help this some by breaking out the ScheduledTaskContainer's select method into specific categories (ThisWeek, Today, etc) so that some of that code doesn't run for every container. On the positive side, there won't be any duplicates!
Comment 3 Robert Elves CLA 2010-05-25 20:35:55 EDT
Created attachment 169921 [details]
mylyn/context/zip
Comment 4 Robert Elves CLA 2010-05-25 21:14:28 EDT
* Focus filter will need to be updated to expose the new bins appropriately.
Comment 5 Robert Elves CLA 2010-05-26 00:06:46 EDT
Created attachment 169929 [details]
as committed
Comment 6 Robert Elves CLA 2010-05-26 15:14:03 EDT
Created attachment 170074 [details]
v2
Comment 7 Robert Elves CLA 2010-05-26 15:14:06 EDT
Created attachment 170075 [details]
mylyn/context/zip
Comment 8 Steffen Pingel CLA 2010-05-26 15:54:56 EDT
Thanks Rob. I want to get the RC2 Helios build out and then let's commit this to head.
Comment 9 Robert Elves CLA 2010-05-26 17:16:07 EDT
committed v2.
Comment 10 Steffen Pingel CLA 2010-05-29 14:30:12 EDT
I have changed the presentation switcher as discussed on the call. If only primary presentations are available each presentation gets it's own toggle button.
Comment 11 Steffen Pingel CLA 2010-05-29 15:25:40 EDT
I don't like having the outgoing folder on the top. I often store draft messages or tasks as outgoing that I don't submit for long periods of time and I don't want to these to show up on the top. I also want to be able to schedule these and see them in the corresponding bin, e.g. when scheduling a meeting to discuss a new idea that's drafted on a task.
Comment 12 Mik Kersten CLA 2010-05-31 13:36:34 EDT
Great to see the switcher.

Regarding the drafts, isn't it an anti-pattern to queue up a bunch of draft tasks, similar to queuing up a bunch of draft emails?  Could you say more about these drafts that are OK to leave around?  I'm wondering if they're more along the lines of local tasks that you later want to convert to repository tasks.

Overall I'm liking Outgoing being prominent, but do find it a bit awkward that it's above overdue.  I'm just concerned that it disappears complete if it goes below the calendar bins.
Comment 13 Steffen Pingel CLA 2010-05-31 16:33:37 EDT
(In reply to comment #12)
> Regarding the drafts, isn't it an anti-pattern to queue up a bunch of draft
> tasks, similar to queuing up a bunch of draft emails?  Could you say more about
> these drafts that are OK to leave around?  I'm wondering if they're more along
> the lines of local tasks that you later want to convert to repository tasks.

I didn't know that this was an anti pattern. I usually have around a dozen of draft emails in my Gmail drafts were I collect thoughts about various long running tasks. I keep a list of larger architectural problems in Mylyn for instance that need more thought before I am ready to communicate these with others.

> Overall I'm liking Outgoing being prominent, but do find it a bit awkward that
> it's above overdue.  I'm just concerned that it disappears complete if it goes
> below the calendar bins.

To me the outgoings are not as important priority wise and since they are easy to find now having them under the calendar bins works well for me. Another oddness I noticed is that tasks jump when I submit them which is annoying because I often reschedule them from the scheduled perspective while submitting them.
Comment 14 Mik Kersten CLA 2010-05-31 17:51:02 EDT
Rob: Tasks with a due date on a given day are not showing up under that bin.  Here's the heuristic
* If a task is scheduled for Tuesday, shows up under Tuesday but not under This Week, even if it is scheduled for this week
* If a task is due on Tuesday, it shows up under Tuesday and no other day, unless it is scheduled for a day before Tuesday
Comment 15 Mik Kersten CLA 2010-06-01 00:16:21 EDT
Rob: I think that my latest suggestion on putting Outgoing on top maybe wrong, per Steffen's comments, and some inconsistency with it being away from Incoming.  Could you put it back to the order in the Description?  In terms of duplicate detection, it means that any incomings with a scheduled or due date that is in the past or shows this week do not show in Incoming, as they show above.
Comment 16 Robert Elves CLA 2010-06-01 14:53:30 EDT
Thanks for the input on this guys. When you get a chance, sync up and give the latest a try.
Comment 17 Steffen Pingel CLA 2010-06-01 17:48:23 EDT
I noticed that Incoming that are scheduled for next week do not show in focused mode. I also had that happen with another task that didn't seem to be scheduled at all. It had a completed subtask but that didn't seem to be the cause.
Comment 18 Steffen Pingel CLA 2010-06-01 17:51:30 EDT
I encountered the phenomena described in comment 17 again with bug 302907, let me know if you can't reproduce and I can try to debug here.
Comment 19 Robert Elves CLA 2010-06-01 18:29:52 EDT
I've added a fix so that future scheduled tasks with incoming are aggregated by the Incoming folder when in focused mode.  This results in duplicates being exposed when the find filter is used in focused mode, but probably not critical.

Could you explain a little more about what you were seeing with the task that wasn't scheduled at all?
Comment 20 Steffen Pingel CLA 2010-06-01 19:03:51 EDT
The task was not showing under Incoming although it had an incoming. I think it was in Unscheduled but I didn't check. This was the case in focused and unfocused mode.
Comment 21 Shawn Minto CLA 2010-06-02 11:11:32 EDT
I think that the problem is that there is a special case for focused mode and what shows in the incoming bins.  Also, I find it very odd that not all incoming tasks are displayed in the incoming bin (this may be a valid case for duplicates in my opinion).
Comment 22 Mik Kersten CLA 2010-06-02 20:51:49 EDT
Unsubmitted tasks should not show in "Outgoing" if they already show in "This Week".
Comment 23 Robert Elves CLA 2010-06-02 21:10:12 EDT
(In reply to comment #21)
> I think that the problem is that there is a special case for focused mode and
> what shows in the incoming bins.  Also, I find it very odd that not all incoming
> tasks are displayed in the incoming bin (this may be a valid case for duplicates
> in my opinion).
Thanks Shawn. The missing incoming issue is now fixed.   

I agree that it is a strange not to find ALL incomings in the incoming folder. What do others think?

(In reply to comment #22)
> Unsubmitted tasks should not show in "Outgoing" if they already show in "This
> Week".

I think this is along the same lines of the question Shawn raises about these in/out bins being explicit (always showing the complete set).  Thoughts?
Comment 24 Mik Kersten CLA 2010-06-02 23:40:59 EDT
I definitely see it as a valid point.  The question now is what has more utility, the conciseness, or the completeness.  I think we should stick with the current thing for a few days.
Comment 25 Steffen Pingel CLA 2010-06-03 01:07:16 EDT
I am still not seeing all incoming changes in the focused presentation. I am getting a bit worried that there is not enough time to fix these problems if we keep changing the design. 

I am big fan of having a presentation without duplicates. I am worried that if we soften that constraint we'll end up with a presentation that neither works well for browsing incoming (since it shows scheduled tasks) nor for planning (since it show duplicates).
Comment 26 Steffen Pingel CLA 2010-06-03 01:08:17 EDT
(In reply to comment #25)
> I am still not seeing all incoming changes in the focused presentation. I am
> getting a bit worried that there is not enough time to fix these problems if we
> keep changing the design.

The incoming was in Unmatched in case that makes a difference.
Comment 27 Robert Elves CLA 2010-06-03 23:16:32 EDT
(In reply to comment #26)
> (In reply to comment #25)
> > I am still not seeing all incoming changes in the focused presentation. I am
> > getting a bit worried that there is not enough time to fix these problems if
> we
> > keep changing the design.
> 
> The incoming was in Unmatched in case that makes a difference.
Did you mean Unscheduled here?
Comment 28 Robert Elves CLA 2010-06-04 11:24:33 EDT
Incoming overdue tasks not owned by the user were not being displayed in focused mode. This is now fixed in head.
Comment 29 Steffen Pingel CLA 2010-06-04 14:56:41 EDT
> > The incoming was in Unmatched in case that makes a difference.
> Did you mean Unscheduled here?

No, it was in Unmatched in the categorized presentation.
Comment 30 Robert Elves CLA 2010-06-05 20:52:56 EDT
(In reply to comment #29)
> > > The incoming was in Unmatched in case that makes a difference.
> > Did you mean Unscheduled here?
> 
> No, it was in Unmatched in the categorized presentation.
No changes have been made to the categorized presentation or the filtering of that presentation. Its possible this was an existing bug.
Comment 31 Mik Kersten CLA 2010-06-06 12:43:02 EDT
Rob: We have to finalize any feature changes today and fully hard on Monday.  Please post a summary of status.  We really need this feature to make it and to be solid.

Steffen: If there's nothing higher priority on your plate, please consider contributing to this one over other improvements and polish items.
Comment 32 Steffen Pingel CLA 2010-06-06 17:34:00 EDT
(In reply to comment #30)
> (In reply to comment #29)
> > > > The incoming was in Unmatched in case that makes a difference.
> > > Did you mean Unscheduled here?
> >
> > No, it was in Unmatched in the categorized presentation.
> No changes have been made to the categorized presentation or the filtering of
> that presentation. Its possible this was an existing bug.

Sorry for being unclear: The incoming was not showing anywhere in the scheduled presentation but when I switched to the categorized presentation I saw it in the Unmatched folder. I would have expected it to also show in the scheduled presentation.
Comment 33 Steffen Pingel CLA 2010-06-06 17:37:23 EDT
(In reply to comment #31)
> Rob: We have to finalize any feature changes today and fully hard on Monday.
> Please post a summary of status.  We really need this feature to make it and to
> be solid.
> 
> Steffen: If there's nothing higher priority on your plate, please consider
> contributing to this one over other improvements and polish items.

I am a little confused about the timing. The *final* build is on Tuesday. When do you suggest that changes should be tested and remaining bugs be fixed if feature work is proceeding until Monday? From my point of view, this is already the exception of the exception and the only thing we should be doing right now is testing, fixing blockers and updating documentation.
Comment 34 Mik Kersten CLA 2010-06-07 01:15:45 EDT
Steffen: I did not mean to imply a stray from your ramp-down timing. All changes should be in by tomorrow.
Comment 35 Steffen Pingel CLA 2010-06-07 13:55:13 EDT
Shawn and I found three cases that were not handled correctly:

- Completed tasks that are scheduled do not show in Incoming
- Outgoing tasks scheduled for the future do not show in Outgoing
- New Outgoing tasks that are scheduled show twice
Comment 36 Shawn Minto CLA 2010-06-07 13:56:09 EDT
Created attachment 171309 [details]
patch

Here is a patch to fix the problem of outgoing new causing duplicates and scheduled completed tasks with incomings not showing.  We still need to fix the outgoing for focused mode, but the code should be similar to what is in the Incoming class.
Comment 37 Steffen Pingel CLA 2010-06-07 14:10:56 EDT
Thanks Shawn. I still have the problem that outgoing/conflicting tasks scheduled for the future do not show in focused mode.
Comment 38 Steffen Pingel CLA 2010-06-08 14:39:40 EDT
Created attachment 171446 [details]
updated patch
Comment 39 Steffen Pingel CLA 2010-06-08 14:39:46 EDT
Created attachment 171447 [details]
mylyn/context/zip
Comment 40 Shawn Minto CLA 2010-06-08 16:21:35 EDT
Created attachment 171470 [details]
updated patch

Here is an updated patch that fixes the case of scheduled completed tasks with an incoming or outgoing. I will commit this change.
Comment 41 Shawn Minto CLA 2010-06-08 16:23:00 EDT
patch is now committed.  Marking as resolved.
Comment 42 Mik Kersten CLA 2010-06-08 16:40:22 EDT
Excellent.
Comment 43 Steffen Pingel CLA 2010-06-08 17:38:24 EDT
There are still problems with completed tasks which do not always show correctly. It's unclear whether these should show in the day bins or in Incoming/Outgoing. Here is a simple case: Create a local task, schedule for today, set due date in the past and complete. It won't show although I would expect it under Today since it was completed today.
Comment 44 Mik Kersten CLA 2010-06-08 18:32:16 EDT
Reopening per comment#43.  Here's how I think it should work.

Completed tasks cannot be scheduled, since they reside in the past, not in the future.  As such, a completed task should never show in a date bin.  If a completed task has an incoming, it should show in the Incoming bin.
Comment 45 Steffen Pingel CLA 2010-06-08 20:14:01 EDT
Created attachment 171483 [details]
patch for Unscheduled bin
Comment 46 Mik Kersten CLA 2010-06-08 20:17:01 EDT
Just found the following bug.  When focused task that's a subtask of something that's not scheduled, but has an outgoing, shows when schedueld for today, but not when scheduled for this week.
Comment 47 Steffen Pingel CLA 2010-06-08 22:35:28 EDT
Rob, the semantics are now as following:

* Outgoing shows tasks with outgoing and conflicting status:
  - completed tasks
  - tasks not shown in bins above
* Incoming shows all tasks with incoming status:
  - completed tasks
  - tasks not shown in bins above
* Unscheduled shows all synchronized tasks:
  - incomplete tasks not shown in bins above
* Completed shows all synchronized tasks:
  - completed tasks

The assumption is that day bins never show completed tasks, otherwise duplicates will occur. To my knowledge this is not always the case but if it can't be fixed for 3.4 an acceptable inconsistency.
Comment 48 Steffen Pingel CLA 2010-06-09 16:52:57 EDT
Marking resolved for 3.4 as the final build is tagged and uploaded. Thanks for getting this into the release and your patience consuming all the feedback, Rob! 

Remaining problems should be filed as new bugs so we can consider for 3.4.1. Rob, could you check if comment 46 is already tracked and file a new bug if not? I found a case where a duplicate is shown which I entered as bug 316373.
Comment 49 Mik Kersten CLA 2010-06-09 18:21:50 EDT
Awesome guys.  This took a lot of tricky work but it will really pay off when it gets into users' hands.