How couplings and locks work
This example illustrates how task/subtask groups, one way couplings, two way couplings and locks affect the result when one task is moved.
Fred, a student, has created a project to control a history assignment. He has to submit the written essay by 28 January. He has to visit his tutor on 10 December to get his proposal approved. His tutor will review progress on 7 January, by which time he should have done a first draft. Since these three dates are set in stone, Fred has locked them so they will not move even if other tasks do. He has arranged interviews with experts as part of his research, and these dates are also locked.
He has grouped the tasks into a hierarchy and set up a number of one way and two way couplings reflecting the flow as he sees it. An important coupling is a one way coupling between '1st draft' and 'Interim tutor review'. This will help prevent him from delaying tasks too long, because although he has left himself some slack between completing the first draft and attending the tutor review, if he tries to delay the first draft by more than a day, the '1st draft' task will push against the 'Interim tutor review' task but will not be able to move it because it is locked.

Later, Fred finds he is falling behind schedule. Other vital events have come up and he wants to delay his literature search. So he will drag the 'Literature research' task to the right. Note that this has a two way coupling to 'Bibliography'. The 'Research' task has a one way coupling to the 'Body' task. It can be seen that the slack in this coupling is one day; the coupling icons would appear if Fred rolled the mouse over either task.

Fred has pushed 'Literature research' back four days to 12 December. The results are:
-
•'Bibliography' is pushed back by four days (from 25 December to 29 December) because the two way coupling forces it always to start exactly when 'Literature research' ends.
-
•'Body' is pushed back just one day (from 28 December to 29 December). Moving 'Literature research' back four days initially uses up the two days slack between its end and the end of 'Research', it then pushes back the end of 'Research', first using up the one day slack in the latter's one way coupling with 'Body' before finally pushing back 'Body' by one day.
-
•'1st draft' and '2nd draft' are moved back one day because they are subtasks of 'Body' and are not locked, so they move together with 'Body'.
More subtly, the other key result is that Fred cannot push 'Literature research' any later than this. This is because '1st draft' was delayed one day and, as we mentioned above, there is a one way coupling from '1st draft' to 'Interim tutor review' whose slack (initially one day) has now been used up. '1st draft' tries to push ''Interim tutor review' later but cannot because 'Interim tutor review' is locked at 7 January. The chain 'Literature research' : 'Research' : 'Body' : '1st draft' : 'Interim tutor review' therefore refuses to move any later. So, although Fred might have liked to delay 'Literature research' more than four days, Juggle has shown him that he can't. back