Incomplete and Dangling Logic
A logic relationship dictates the effect of an on-time, delayed, or accelerated activity on subsequent activities. Any missing or incorrect logic relationship is potentially damaging to the entire network. Complete network logic between all activities is essential if the schedule is to correctly forecast the start and end dates of activities within the plan.
As a general rule, every activity within the schedule should have at least one predecessor and at least one successor. The two natural exceptions to this rule are the program start milestone, which has no predecessor, and the program finish milestone, which has no successor. Other activities or milestones within the schedule may have no predecessor or successor links when they represent schedule inputs or outputs. For example, a milestone may represent the handing off of some interim product to an external partner by the program office that therefore has no successor relationship within the schedule. However, any activity that is missing predecessor or successor logic must be clearly justified in the schedule documentation.
Even if an activity has predecessor and successor logic relationships, incorrect or incomplete logic can arise. Networks should be assessed for circular logic—that is, logic that forces two activities to be dependent on each other. Circular logic creates an endless loop of work: an activity cannot have its successor also be its predecessor. In addition, the network should be clear of redundant logic. Redundant logic represents unnecessary logic links between activities. For example, a sequence of activities A, B, and C with a series of finish-to-start logic has no need for an additional F-S logic link between A and C.
Activities with S-S or F-F relationships should be checked for two types of “dangling” or “hanging” logic. Dangling logic is scheduling logic with an improper tie to an activity’s start or end date. Each activity’s start date—other than the start milestone—should be driven by a predecessor activity, and each activity’s finish date—other than the finish milestone—must drive a successor activity’s start or finish. Dangling logic, a form of incomplete logic, can interfere with the valid forecasting of scheduled activities.
The first type of dangling logic occurs when an activity has a predecessor and a successor but its start date is not properly tied to logic. In other words, no preceding activity within the schedule is determining the start date of the activity, with either its start (S-S) or finish (F-S). Figure 12 shows a sequence of activities—rough grade property, form and pour driveway, finish grade property, and plant trees and shrubs and install final landscaping.
Figure 12: Start-Date Dangling Logic
“Form and pour driveway” has an F-S relationship to its predecessor activity, “rough grade property,” and an F-F relationship with its successor, “finish grade property.” “Finish grade property” in turn has an F-S relationship with the “plant trees and shrubs and install final landscaping” activity. Notice that the finish date of “finish grade property” is determined by the predecessor relationship to the finish of “form and pour driveway”—that is, final grading of the property cannot be finished until the driveway is formed and poured. The problem here is that the start date of “finish grade property” is not determined by any relationship; it is determined simply by the estimated time it will take to grade the property and its finish date. Moreover, if “form and pour driveway” finishes but “finish grade property” runs longer than planned, the only resolution—according to the original plan—is for “finish grade property” to start earlier.
This is a logical solution but practically impossible, because it may have already started before it is determined that it takes longer than planned. To correct the dangling logical error, “finish grade property” should have at least one F-S or S-S predecessor link alongside the F-F predecessor relationship to determine its start date. This requirement might make the scheduler find a different predecessor or break “form and pour driveway” into two activities. One solution is shown in figure 13. A link has been added from “rough grade property” to “finish grade property,” establishing the logic that landscapers cannot finish grade until the rough grading is complete. According to the new logic model, “finish grade property” cannot start sooner than Monday, December 1.
Figure 13: Start-Date Dangling Logic Corrected with Predecessor Logic
The second type of dangling logic is similar to the first but involves an activity’s finish date. Figure 14 shows a sequence of activities: finish drywall, apply drywall texture, apply wall finishes, and install trim. “Apply drywall texture” has an F-S predecessor link to “finish drywall” and an S-S successor relationship to “apply wall finishes.”
Figure 14: Finish-Date Dangling Logic
In this example, “apply drywall texture” starts once “finish drywall” completes. Once “apply drywall texture” starts, “apply wall finishes” can start. Note, however, that while “apply drywall texture” has a successor, its finish date is not related to any subsequent activity. In other words, “apply drywall texture” can continue indefinitely with no adverse effect on subsequent activities, until it affects the owner’s occupation date—to which it is implicitly linked by an F-S relationship by the scheduling software. To correct the dangling logical error, the “apply drywall texture” activity should have at least one F-S or F-F successor link alongside the S-S successor relationship for its finish date to affect downstream activities. Figure 15 shows one possible correction to the dangling logic. An F-S predecessor has been added from “apply drywall texture” to “install tile in bathroom and kitchen.” Now, according to the logic model, “apply drywall texture” cannot be delayed without also delaying “install tile in bathroom and kitchen.”
Figure 15: Finish-Date Dangling Logic Corrected with Successor Logic
Finally, note that dangling logic is far more dangerous for detail activities than milestones. Milestones have the same start and finish dates, so from a practical standpoint, delaying or accelerating a milestone within the schedule would still affect successor activities, even with start or finish date dangling logic. In fact, there is little reason to sequence milestones with any logic other than F-S, because milestones simply indicate a point in time. Regardless, all dangling logic should be corrected to ensure that the logic in the schedule is as straightforward and intuitive as possible.
To summarize dangling logic checks:
Any activity with an F-F predecessor link should also have at least one F-S or S-S predecessor link. If nothing is driving the start date of the activity, then why not start the activity earlier?
Any activity with an S-S successor link should also have at least one F-S or F-F successor link. If the finish date of the activity is not driving the start of another activity, then why finish the activity?
Complete schedule logic that addresses the logical relationships between predecessor and successor activities is important. The analyst needs to be confident that the schedule will automatically calculate the correct dates when the activity durations change.