Objective: Automate the time when an issue changes state or assignees by providing a form where a user can set a date/time when the assignee or state changes.
- Provides a standard way to schedule when time sensitive work should be done
- Protects the current utility of priority values (i.e. An issue that can't be worked on till June 1 will not be a show-stopper in an assignee's queue till that date, or perhaps a day or 2 before)
- Prevents issue titles from being cluttered with date data and other non-standard creative ways to achieve this
- Removes a certain amount of interpretation from the assignee, each time they look at their queue
- Removes overhead on the project management side for a number of reasons including: Apprehension to assign an issue until it's actionable and then forgetting, or when the company prefers to keep developer focused only on a reasonable amount of currently actionable issues.
Example of how this may work:
- Create an issue
- Set status to 'Pending' (or any meaningful status that keeps it off an assignee's unresolved queue)
- Click a 'Schedule' button that opens modal
- The modal contains a date/time picker, state selector, and an assignee selector
- Choose the values and save
- On the selected date, the issue assignee and state are automatically set
Use case 1:
- The issue requires task x be done on June 1
- The assignee does all they can in preparation, but it's only May 5
The assignee moves it to a pending state and schedules the task to be re-opened on May 31 so they do not have to interpret that there is nothing to do on this task each time they look at their queue.
Use case 2:
- A security patch on a framework is being released on June 1
- It is only May 5th, but the PM wants to get it on the schedule with a 'Show-stopper' priority
- The company prefers to keep only items that are actionable in front of the assignee
The PM could schedule the task to be opened on May 31 so they don't have to worry about forgetting to create or assign the ticket at a later date.