+6
Done

ALAP (As Late As Possible): Allow Begin Date Stretch While Keeping End Date

Ray Hahn 1 year ago in Productivity Management updated by Rachel Phillips 6 months ago 6

We have the need for End Dates to stay constant in ALAP and allow the Begin Dates to stretch. This is especially important for resourced roles because their availability is scheduled on hitting specific due dates. Current functionality moves Begin and End Dates forward when in-process and makes users look late if staying true to original due dates.This enhancement would increase the accuracy of Resource Capacity for our Project Planners. 

Example of  Requested Functionality:

Task 1 Original Dates: 6/20 to 6/22

Task 2 Original Dates: 6/22 to 6/25

  - Task 2 finishes on 6/23

Task 3 Original Dates: 6/25 to 6/26

  - Task Begins on 6/23 and still holds the 6/26 End Date

Note: The estimated hours will now be spread across 3 days instead of 1.

This functionality is available in PM release 114. Workflow templates and projects have a new field called ALAP Flexible Duration. By default this is set to No. When set to No, behavior will not change from what it was. If this field is set to Yes the new ALAP functionality described below will be available. If changing this in workflow template, the workflow will need to be validated and promoted after the change.

To further expand on what Eric said below, I have a few examples of the new behavior:

Scenario 1 (assume all tasks are ALAP):

  • Task 1: Original dates: Dec. 1 - 5
    • Task finishes on Dec. 4
  • Task 2: Original dates: Dec. 6 - 7
    • Task starts on Dec. 4 and user has until Dec. 7. User finishes on Dec. 6.
  • Task 3: Original dates: Dec. 8 - 12
    • Task starts on Dec. 6 and has until the 12th to complete her task.

Scenario 2 (with auto close tasks with duration of 0):

  • Task 1: Original dates: Dec. 1 - 5
    • Task finishes on Dec. 4
  • Task 2: Original dates: Dec. 6 - 7
    • Task starts on Dec. 4 and user has until Dec. 7. User finishes on Dec. 6.
  • Task 3: auto-close with 0 duration
    • Processed when Task 2 closes
  • Task 4: auto-close with 0 duration
    • Processed when Task 2 closes
  • Task 5: Original dates: Dec. 8 - 12
    • Task starts on Dec. 6 and user has until Dec. 12.

Scenario 3 (with auto close tasks with duration - this example has one month):

    • Task 1: Original dates: Dec. 1 - 5
      • Task finishes on Dec. 4
    • Task 2: Original dates: Dec. 6 - 7
      • Task starts on Dec. 4 and user has until Dec. 7. User finishes on Dec. 6.
    • Task 3: auto-close with 1 month duration
      • Starts when Task 2 closes and finishes 1 month later
    • Task 4: Original dates: Jan. 8 - 12
      • This task would start Jan 6 and they would have until Jan 12

In Progress

This work is in development and targeted for release in Feb/March timeframe.

It will follow all the details outlines below except we ultimately decided that in the situation where the task is running LATE and not early if needed the system will reduce the duration of the next tasks all the way down to "0" if needed based on how late the previous tasks have become.  


The expectation is that if a project is truly that far behind the Project Manager should be going in and making adjustment to the overall schedule to get it back on track so we do not expect that this will occur often.  Given that we did not see a reason to keep any minimum duration level as previously discussed below.

Qualified

First, to make sure others following this correctly we are discussing how task due dates should be managed when you configure your workflow to run "As Late as Possible (ALAP)" instead of "As Soon as Possible (ASAP)".

Aprimo has discussed this with the customer and we understand their use case.  We are interested in hearing from MORE customers on this thread that either use ALAP today as well or would use ALAP in the future if these changes were made and please provide your thoughts on the options below.


I think the rules for how this behave make sense when tasks finish early as in the example above.  So instead of moving up the original due date the next user just gets extra time to get the next task done.

However, there are questions about how this should be applied in the opposite direction when the tasks ahead of you close late.  Do you keep the original due date and shrink the duration to match.  Currently the due date would be adjusted out and the duration would be preserved.  So if you have a 2 day task we keep the 2 day duration and push the due date based on when the task before it completes. 

Example of late Tasks (How it works today)

Task 2 Original Dates: 6/22 to 6/25

- Task 2 finishes on 6/27

Task 3 Original Dates: 6/25 to 6/28

- Task 3 Begins on 6/27 and based on its duration the End Date is set to be 6/29 so in this case the next users still has the original amount of time to complete their task.

Options for how it could work instead. 

  1. Nothing changes, we only adjust the duration when the tasks finish earlier
  2. We follow the same rules as above so we keep the due date and reduce the duration to instead
    1. However, we cannot push a duration of a task to be negative so this would have limits.  Our thought is you reduce the duration based on the end date but not less than 1 day so the End Date could still be moved out to a later date to preserve a 1 day duration.  So the shortest duration a task would be reduced to is a 1 day duration.

Example of late Tasks (Option 2)

Task 1 Original Dates: 6/20 to 6/22

- Task 1 finishes on 6/23

Task 2 Original Dates: 6/22 to 6/25

- Task 2 starts on 6/23 and based on the End Date of 6/25 we reduce the duration from 4 days to 3 days and keep the due date as 6/25.

- Task 2 finished even later on 6/28

Task 3 Original Dates: 6/25 to 6/27

- Task 3 Begins on 6/28.  It used to have a 2 day duration but due to other tasks being so late to preserve the schedule we SHOULD reduce Task 3 duration to be -1 days.  We cannot do this from a product structure.  So instead we reduce the duration as low as we can (1 day) which sets a new End Date of 6/29 so the schedule does shift because other tasks are getting so far behind but we preserve at least 1 day for each task in the schedule.

Technically we could push the duration even lower (like as low as 1 hour or 30 mins, etc) but personally do not feel that is a good user experience but would squeeze as much time as possible out of the schedule.


Aprimo's view on this for at least the MVP might be to only do Option 1.  Give more time when tasks complete early.  Do nothing different than today when tasks complete late.


Please let us know your thoughts. 


Eric,


One thing to add to your explanation above, there is actually no Minimum duration in the workflow designer. You can enter a 0 day duration in your design, and I believe that would be a better fit for the situation you are describing. The issue we are addressing is pushing out users due dates and giving them a false sense of time left to complete the task. In the situation you are describing, I think it would make more sense to zero out the duration on the next task, so the due date is now, which accurate to the situation that has been created. The user is behind schedule and they do not have time to complete the task. 

Ultimately this is where you want to see this happening, and then its the Project Manager's responsibility to adjust that duration by removing time from the other tasks. 

Hopefully this helps. 

-Brandon