You are requesting your software scheduling tool to be pretty intelligent and it may not be possible to directly do what you want. Certainly using As Late As Possible scheduling starting from a specified finish date is well within the bandwidth of many tools such as Microsoft Project, Deltek Open Plan Professional, and Oracle’s Primara Program Manager.
Now, consider a series of linear tasks A,B,C,D,E,F where “F” must complete at 12:01 AM on Christmas Day. That is, Santa must make sure the Elves make the correct toys, the sleigh must be loaded (in a certain order no doubt) and all the deliveries made to the correct houses by Christmas morning. To complicate matters, Christmas starts first in New Zealand and wraps around the world and we in the United States are actually getting towards the end of Santa’s route.
What you are asking the software to do is understand which tasks can be compressed in duration (or if all tasks can be equally compressed a proportionate share). Well, I can man load tasks for time compression…. the classic case being nine women cannot have a baby in one month. Similarly, although I can chemically modify concrete to dry faster …. in general it takes a fixed amount of time for concrete to dry.
Remember, to the software, tasks are nothing more than a text string. Software doesn’t know if you are growing organic cultures, sewing curtains, drying concrete, or developing software. Additionally, the software is clueless as to skill compression. I may be able to substitute a ridging lawn mower instead of a push lawn mower to get the grass mowed much faster… but how is the software to know “riding mower” is 4 times faster than “push mower” when both those resources are really just text strings to the software.
A short answer is… sure, we can write you some software that will always give you the correct answer by reducing task durations. But just because the software can be made to do something, doesn’t make it prudent.
The real answer to your question involves understanding the tasks, their relationships, and work rates of the individuals involved. For example, can certain tasks be worked in parallel? Can time compression be applied by man-loading a task or substituting a more capable resource? Only an experienced human can make these judgments apply them to the schedule model.
In closing, these are the types of issues we look at all the time. If we can be of further assistance,, please post back or contact us off-line.
Jim Aksel, PMP, PMI-SP
Principal Consultant at goAzTech.com