{"id":1878,"date":"2022-09-12T19:48:03","date_gmt":"2022-09-12T23:48:03","guid":{"rendered":"https:\/\/www.foxquestsystems.net\/foxblog\/?p=1878"},"modified":"2022-09-12T19:50:09","modified_gmt":"2022-09-12T23:50:09","slug":"the-finish-to-finish-relationship-trap","status":"publish","type":"post","link":"https:\/\/www.foxquestsystems.net\/foxblog\/2022\/09\/12\/the-finish-to-finish-relationship-trap\/","title":{"rendered":"The Finish-to-Finish Relationship Trap"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">By definition, a Finish to finish (FF) relationship is:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"> <em>A relationship in which the finish of a successor activity depends on the finish of its predecessor activity.<\/em><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Unfortunately, as will be explained in the article, FF relationships can cause illogical and erroneous results in your CPM network without any warnings or error message. Too often FF relationships, especially when no lag is used between tasks, as shown in Figure 1, are used without consideration of the negative effects this may impose on a CPM network. Even seasoned Schedulers with decades of scheduling experience can easily fall into this trap considering this relationship as acceptable and reasonable and will fervently defend its use with a multitude of \u201creal-world\u201d examples.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">To understand the issue, we must first remove any \u201creal-world\u201d justification from the argument by realizing that <span style=\"text-decoration: underline;\">P6 does not care about your Activity Name<\/span>. The forward &amp; backward pass algorithm works exactly the same regardless of what Activity Name is typed in. Therefore, we must approach this issue from an abstract perspective. Any use of a \u201creal-world\u201d example will almost always cause anyone to justify its use and therefore perpetuate its mis-use.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>The FF Trap \u2013 Issue 1 \u2013 What is the true successor?<\/strong><\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img data-recalc-dims=\"1\" decoding=\"async\" width=\"298\" height=\"229\" loading=\"lazy\" src=\"https:\/\/i0.wp.com\/www.foxquestsystems.net\/foxblog\/wp-content\/uploads\/2022\/09\/FF-Figure-01.jpg?resize=298%2C229&#038;ssl=1\" alt=\"\" class=\"wp-image-1880\"\/><figcaption>Figure 1 &#8211; FF relationship between tasks.<\/figcaption><\/figure>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">In the Figure 1 above, the successor to Activity A is Activity B. P6 allows this relationships and this counts as a non-opened end. However, upon further inspection, assigning the finish of Activity B as a successor leaves much to be desired. What\u2019s missing is understanding how the CPM network progresses. One should ask \u201cWhat task continues along this path?\u201d Assuming Activity B is the only successor to Activity A, then Activity A is missing a successor that is tied to its start. This falls in the \u201cNo Finish Side Successor\u201d logic error category.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Z\u00fcmmer Analysis Report # [14] \u2013 \u201cActivities with No Finish Side Successor\u201d (shown below in Figure 2) identifies each Activity that violates this anomaly.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img data-recalc-dims=\"1\" decoding=\"async\" width=\"840\" height=\"195\" loading=\"lazy\" src=\"https:\/\/i0.wp.com\/www.foxquestsystems.net\/foxblog\/wp-content\/uploads\/2022\/09\/FF-Figure-02.jpg?resize=840%2C195&#038;ssl=1\" alt=\"\" class=\"wp-image-1881\" srcset=\"https:\/\/i0.wp.com\/www.foxquestsystems.net\/foxblog\/wp-content\/uploads\/2022\/09\/FF-Figure-02.jpg?w=871&amp;ssl=1 871w, https:\/\/i0.wp.com\/www.foxquestsystems.net\/foxblog\/wp-content\/uploads\/2022\/09\/FF-Figure-02.jpg?resize=300%2C70&amp;ssl=1 300w, https:\/\/i0.wp.com\/www.foxquestsystems.net\/foxblog\/wp-content\/uploads\/2022\/09\/FF-Figure-02.jpg?resize=768%2C178&amp;ssl=1 768w\" sizes=\"auto, (max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 1362px) 62vw, 840px\" \/><figcaption>Figure 2 &#8211; Z\u00fcmmer Analysis Report [14]<\/figcaption><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>The FF Trap \u2013 Issue 2 \u2013 What is the true predecessor?<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">In the Figure 1 above, the predecessor to Activity B is Activity A. P6 allows this relationships and this counts as a non-opened end. However, upon further inspection, assigning the finish of Activity B as a predecessor leaves much to be desired. What\u2019s missing is understanding how Activity B is progressed by the CPM. One should ask \u201cWhat task allows Activity B to start?\u201d Assuming Activity A is the only predecessor to Activity B, then Activity B is missing a predecessor that is tied to the start of the Activity B. This falls in the &#8220;No Start Side Predecessor&#8221; logic error category.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Z\u00fcmmer Analysis Report # [15] \u2013 \u201cActivities with No Start Side Predecessor\u201d (shown below in Figure 3) identifies each Activity that violates this anomaly.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img data-recalc-dims=\"1\" decoding=\"async\" width=\"840\" height=\"211\" loading=\"lazy\" src=\"https:\/\/i0.wp.com\/www.foxquestsystems.net\/foxblog\/wp-content\/uploads\/2022\/09\/FF-Figure-03.jpg?resize=840%2C211&#038;ssl=1\" alt=\"\" class=\"wp-image-1882\" srcset=\"https:\/\/i0.wp.com\/www.foxquestsystems.net\/foxblog\/wp-content\/uploads\/2022\/09\/FF-Figure-03.jpg?w=874&amp;ssl=1 874w, https:\/\/i0.wp.com\/www.foxquestsystems.net\/foxblog\/wp-content\/uploads\/2022\/09\/FF-Figure-03.jpg?resize=300%2C76&amp;ssl=1 300w, https:\/\/i0.wp.com\/www.foxquestsystems.net\/foxblog\/wp-content\/uploads\/2022\/09\/FF-Figure-03.jpg?resize=768%2C193&amp;ssl=1 768w\" sizes=\"auto, (max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 1362px) 62vw, 840px\" \/><figcaption>Figure 3 &#8211; Z\u00fcmmer Analysis Report [15]<\/figcaption><\/figure>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\"><strong>The FF Trap \u2013 Issue 3 \u2013 Which activity has priority over controlling the start of the Activity 2?<\/strong><\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img data-recalc-dims=\"1\" decoding=\"async\" width=\"397\" height=\"190\" loading=\"lazy\" src=\"https:\/\/i0.wp.com\/www.foxquestsystems.net\/foxblog\/wp-content\/uploads\/2022\/09\/FF-Figure-04.jpg?resize=397%2C190&#038;ssl=1\" alt=\"\" class=\"wp-image-1883\" srcset=\"https:\/\/i0.wp.com\/www.foxquestsystems.net\/foxblog\/wp-content\/uploads\/2022\/09\/FF-Figure-04.jpg?w=397&amp;ssl=1 397w, https:\/\/i0.wp.com\/www.foxquestsystems.net\/foxblog\/wp-content\/uploads\/2022\/09\/FF-Figure-04.jpg?resize=300%2C144&amp;ssl=1 300w\" sizes=\"auto, (max-width: 397px) 85vw, 397px\" \/><figcaption>Figure 4 &#8211; Which Activity controls the start of Activity 2?<\/figcaption><\/figure>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">In Figure 4 above, the predecessor to Activity 2 is Activity B with a Finish-to-Start (FS) relationship and the predecessor to Activity B is Activity A with a FF relationship. However, upon further consideration, you may ask if there is no lag between Activity A and Activity B, then which activity actually controls the start date of Activity 2? Without a lag between Activity A and Activity B, then both Activity A and Activity B equally control the start of Activity 2. In conclusion, in this case, the predecessors to Activity 2 is both Activity A and Activity B with a FS relationship. Therefore, the correct network logic to use is shown in Figure 5 below.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img data-recalc-dims=\"1\" decoding=\"async\" width=\"403\" height=\"196\" loading=\"lazy\" src=\"https:\/\/i0.wp.com\/www.foxquestsystems.net\/foxblog\/wp-content\/uploads\/2022\/09\/FF-Figure-05.jpg?resize=403%2C196&#038;ssl=1\" alt=\"\" class=\"wp-image-1884\" srcset=\"https:\/\/i0.wp.com\/www.foxquestsystems.net\/foxblog\/wp-content\/uploads\/2022\/09\/FF-Figure-05.jpg?w=403&amp;ssl=1 403w, https:\/\/i0.wp.com\/www.foxquestsystems.net\/foxblog\/wp-content\/uploads\/2022\/09\/FF-Figure-05.jpg?resize=300%2C146&amp;ssl=1 300w\" sizes=\"auto, (max-width: 403px) 85vw, 403px\" \/><figcaption>Figure 5 &#8211; Correcting the FF between task anomaly.<\/figcaption><\/figure>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">Z\u00fcmmer Analysis Report # [35] \u2013 \u201cTasks with Finish-to-Finish Relationships and No Lag\u201d (shown below in Figure 6) identifies each Activity that violates this anomaly.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img data-recalc-dims=\"1\" decoding=\"async\" width=\"763\" height=\"256\" loading=\"lazy\" src=\"https:\/\/i0.wp.com\/www.foxquestsystems.net\/foxblog\/wp-content\/uploads\/2022\/09\/FF-Figure-06.jpg?resize=763%2C256&#038;ssl=1\" alt=\"\" class=\"wp-image-1885\" srcset=\"https:\/\/i0.wp.com\/www.foxquestsystems.net\/foxblog\/wp-content\/uploads\/2022\/09\/FF-Figure-06.jpg?w=763&amp;ssl=1 763w, https:\/\/i0.wp.com\/www.foxquestsystems.net\/foxblog\/wp-content\/uploads\/2022\/09\/FF-Figure-06.jpg?resize=300%2C101&amp;ssl=1 300w\" sizes=\"auto, (max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 984px) 61vw, (max-width: 1362px) 45vw, 600px\" \/><figcaption>Figure 6 &#8211; Z\u00fcmmer Analysis Report [35]<\/figcaption><\/figure>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\"><strong>The FF Trap \u2013 Issue 4 \u2013 Potential erroneous Early Start\/Early Finish dates for Activity B.<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">In Figure 1 above, the FF usage may appear reasonable when considering Activity A and Activity B alone. However, considering other activities in the CPM network, the calculated Early Start, Early Finish date and consequently the Total Float values may be incorrect for Activity B. Even worse, P6 does not provide any warning messages, notice or explanation of this potential error.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img data-recalc-dims=\"1\" decoding=\"async\" width=\"400\" height=\"199\" loading=\"lazy\" src=\"https:\/\/i0.wp.com\/www.foxquestsystems.net\/foxblog\/wp-content\/uploads\/2022\/09\/FF-Figure-07.jpg?resize=400%2C199&#038;ssl=1\" alt=\"\" class=\"wp-image-1886\" srcset=\"https:\/\/i0.wp.com\/www.foxquestsystems.net\/foxblog\/wp-content\/uploads\/2022\/09\/FF-Figure-07.jpg?w=400&amp;ssl=1 400w, https:\/\/i0.wp.com\/www.foxquestsystems.net\/foxblog\/wp-content\/uploads\/2022\/09\/FF-Figure-07.jpg?resize=300%2C149&amp;ssl=1 300w\" sizes=\"auto, (max-width: 400px) 85vw, 400px\" \/><figcaption>Figure 7 &#8211; Incorrect Early Start for Activity B<\/figcaption><\/figure>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">In the Figure 7 above, note that the Original Duration for Activity A is greater than Activity B. In the case, when the CPM network is calculated, the Early Start for Activity B is no longer controlled by the Early Finish of Activity 1. The FF relationship shown is essentially pulls the start of Activity B away from its normal driving predecessor and behaves as if Activity B was assigned an \u201cAs Late As Possible\u201d constraint. In other words, the driving predecessor to Activity B is defined by the finish of Activity A and the Early Start is defined the Early Finish of Activity B minus the Original Duration for Activity B.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img data-recalc-dims=\"1\" decoding=\"async\" width=\"418\" height=\"262\" loading=\"lazy\" src=\"https:\/\/i0.wp.com\/www.foxquestsystems.net\/foxblog\/wp-content\/uploads\/2022\/09\/FF-Figure-08.jpg?resize=418%2C262&#038;ssl=1\" alt=\"\" class=\"wp-image-1887\" srcset=\"https:\/\/i0.wp.com\/www.foxquestsystems.net\/foxblog\/wp-content\/uploads\/2022\/09\/FF-Figure-08.jpg?w=418&amp;ssl=1 418w, https:\/\/i0.wp.com\/www.foxquestsystems.net\/foxblog\/wp-content\/uploads\/2022\/09\/FF-Figure-08.jpg?resize=300%2C188&amp;ssl=1 300w\" sizes=\"auto, (max-width: 418px) 85vw, 418px\" \/><figcaption>Figure 8 &#8211; Incorrect Early Start for Activity B when Activity A OD is &lt; Activity B OD.<\/figcaption><\/figure>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">In Figure 8 above, the same situation occurs when total when Activity B is less that Activity A, but the Original Durations between Activity 1 and Activity 3 is greater than Activity B. Again, P6 provides no error message or notice for this issue.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img data-recalc-dims=\"1\" decoding=\"async\" width=\"496\" height=\"247\" loading=\"lazy\" src=\"https:\/\/i0.wp.com\/www.foxquestsystems.net\/foxblog\/wp-content\/uploads\/2022\/09\/FF-Figure-09.jpg?resize=496%2C247&#038;ssl=1\" alt=\"\" class=\"wp-image-1888\" srcset=\"https:\/\/i0.wp.com\/www.foxquestsystems.net\/foxblog\/wp-content\/uploads\/2022\/09\/FF-Figure-09.jpg?w=496&amp;ssl=1 496w, https:\/\/i0.wp.com\/www.foxquestsystems.net\/foxblog\/wp-content\/uploads\/2022\/09\/FF-Figure-09.jpg?resize=300%2C149&amp;ssl=1 300w\" sizes=\"auto, (max-width: 496px) 85vw, 496px\" \/><figcaption>Figure 9 &#8211; A possible solution to resolve FF between Activities A and B.<\/figcaption><\/figure>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">The immediate solution to this issue may be to revise the logic (as shown in Figure 9 above) so that Activity B starts after Activity 1. However, this might not be the intent of the Scheduler to accurately model the start date for Activity B. For example, if the Original Duration for Activity A is much greater than Activity B, then the CPM network model in Figure 9 may not correctly convey the Schedule\u2019s intent.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img data-recalc-dims=\"1\" decoding=\"async\" width=\"478\" height=\"304\" loading=\"lazy\" src=\"https:\/\/i0.wp.com\/www.foxquestsystems.net\/foxblog\/wp-content\/uploads\/2022\/09\/FF-Figure-10.jpg?resize=478%2C304&#038;ssl=1\" alt=\"\" class=\"wp-image-1889\" srcset=\"https:\/\/i0.wp.com\/www.foxquestsystems.net\/foxblog\/wp-content\/uploads\/2022\/09\/FF-Figure-10.jpg?w=478&amp;ssl=1 478w, https:\/\/i0.wp.com\/www.foxquestsystems.net\/foxblog\/wp-content\/uploads\/2022\/09\/FF-Figure-10.jpg?resize=300%2C191&amp;ssl=1 300w\" sizes=\"auto, (max-width: 478px) 85vw, 478px\" \/><figcaption>Figure 10 &#8211; Alternative Solution to Resolve FF between Activities A and B.<\/figcaption><\/figure>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">When the Original Duration for Activity A is much larger than Activity B an alternative solution is to break Activity A into 2 activities. In Figure 10 above, Activity A2 is added to the CPM network with an Original Duration with about the same Orginal Duration as Activity A1. The sum of the Original Durations of new Activities A1 and A2 is the same as the Original Duration of Activity A in Figure 9.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>The FF Trap \u2013 Issue 5 \u2013 What about lags?<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img data-recalc-dims=\"1\" decoding=\"async\" width=\"487\" height=\"286\" loading=\"lazy\" src=\"https:\/\/i0.wp.com\/www.foxquestsystems.net\/foxblog\/wp-content\/uploads\/2022\/09\/FF-Figure-11.jpg?resize=487%2C286&#038;ssl=1\" alt=\"\" class=\"wp-image-1890\" srcset=\"https:\/\/i0.wp.com\/www.foxquestsystems.net\/foxblog\/wp-content\/uploads\/2022\/09\/FF-Figure-11.jpg?w=487&amp;ssl=1 487w, https:\/\/i0.wp.com\/www.foxquestsystems.net\/foxblog\/wp-content\/uploads\/2022\/09\/FF-Figure-11.jpg?resize=300%2C176&amp;ssl=1 300w\" sizes=\"auto, (max-width: 487px) 85vw, 487px\" \/><figcaption>Figure 11 &#8211; FF with a lag between tasks.<\/figcaption><\/figure>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">The use of a lags in a CPM network is probably a discussion all to its own. However, with regard to FF relationships with a lag, special care should be considered prior to its usage. When a FF lag is inserted, as shown in Figure 11 above, the CPM network, at least declares that Activity B has priority over the start date of Activity 2. This solves the problem discussed in<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Issue 3 above. However, even though a lag is inserted between Activity A and Activity B, this does not necessarily resolve the problems associated with Issue 4 above.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>The FF Trap \u2013 Issue 6 \u2013 FF lag greater than Successor\u2019s Original Duration<\/strong><\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img data-recalc-dims=\"1\" decoding=\"async\" width=\"475\" height=\"223\" loading=\"lazy\" src=\"https:\/\/i0.wp.com\/www.foxquestsystems.net\/foxblog\/wp-content\/uploads\/2022\/09\/FF-Figure-12.jpg?resize=475%2C223&#038;ssl=1\" alt=\"\" class=\"wp-image-1891\" srcset=\"https:\/\/i0.wp.com\/www.foxquestsystems.net\/foxblog\/wp-content\/uploads\/2022\/09\/FF-Figure-12.jpg?w=475&amp;ssl=1 475w, https:\/\/i0.wp.com\/www.foxquestsystems.net\/foxblog\/wp-content\/uploads\/2022\/09\/FF-Figure-12.jpg?resize=300%2C141&amp;ssl=1 300w\" sizes=\"auto, (max-width: 475px) 85vw, 475px\" \/><figcaption>Figure 12 &#8211; FF lag greater than Successor&#8217;s OD.<\/figcaption><\/figure>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">In Figure 12 above, a FF lag is inserted between Activity A and Activity B. Unfortunately, the FF value is greater than the Original Duration (the successor) for Activity B. This usage causes an \u201cnon-overlapping\u201d relationship condition. Issue 6, is one of four possible non-overlapping conditions.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Sadly, this relationship error is very easy to commit. For example, suppose Activity A and Activity B was originally added to the CPM network with Original Duration of 10 and the FF lag is set to 5. Here, the lag value of 5 is small enough so that both Activity A and Activity B overlap. This is an acceptable condition. However, suppose now that the Original Duration for Activity B is reduced to 4 Days. More often than not, these type of schedule changes are made without consideration of a lag value that was previously inserted. Now, with an Original Duration of 4 Days for Activity B, the FF lag of 5 Days results in a non-overlapping condition of 1 day.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Z\u00fcmmer Analysis Report # [35] \u2013 \u201cFinish-to-Finish Relationships &amp; Lag Greater Than Successor\u2019s Original Duration\u201d (shown below in Figure 13) identifies each Activity that violates this anomaly.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img data-recalc-dims=\"1\" decoding=\"async\" width=\"840\" height=\"287\" loading=\"lazy\" src=\"https:\/\/i0.wp.com\/www.foxquestsystems.net\/foxblog\/wp-content\/uploads\/2022\/09\/FF-Figure-13.jpg?resize=840%2C287&#038;ssl=1\" alt=\"\" class=\"wp-image-1892\" srcset=\"https:\/\/i0.wp.com\/www.foxquestsystems.net\/foxblog\/wp-content\/uploads\/2022\/09\/FF-Figure-13.jpg?w=871&amp;ssl=1 871w, https:\/\/i0.wp.com\/www.foxquestsystems.net\/foxblog\/wp-content\/uploads\/2022\/09\/FF-Figure-13.jpg?resize=300%2C103&amp;ssl=1 300w, https:\/\/i0.wp.com\/www.foxquestsystems.net\/foxblog\/wp-content\/uploads\/2022\/09\/FF-Figure-13.jpg?resize=768%2C263&amp;ssl=1 768w\" sizes=\"auto, (max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 1362px) 62vw, 840px\" \/><figcaption>Figure 13 &#8211; Z\u00fcmmer Analysis Report [34].<\/figcaption><\/figure>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\"><strong>The FF Trap \u2013 Issue 7 \u2013 When is it appropriate or best to use a FF relationship?<\/strong><\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img data-recalc-dims=\"1\" decoding=\"async\" width=\"433\" height=\"223\" loading=\"lazy\" src=\"https:\/\/i0.wp.com\/www.foxquestsystems.net\/foxblog\/wp-content\/uploads\/2022\/09\/FF-Figure-14.jpg?resize=433%2C223&#038;ssl=1\" alt=\"\" class=\"wp-image-1893\" srcset=\"https:\/\/i0.wp.com\/www.foxquestsystems.net\/foxblog\/wp-content\/uploads\/2022\/09\/FF-Figure-14.jpg?w=433&amp;ssl=1 433w, https:\/\/i0.wp.com\/www.foxquestsystems.net\/foxblog\/wp-content\/uploads\/2022\/09\/FF-Figure-14.jpg?resize=300%2C155&amp;ssl=1 300w\" sizes=\"auto, (max-width: 433px) 85vw, 433px\" \/><figcaption>Figure 14 &#8211; Predecessor task -&gt; Successor Finish Milestone.<\/figcaption><\/figure>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">After reading through the perils of FF usage, you may ask when is it appropriate or best to use FF in a CPM network? Fortunately, an excellent way to use FF relationships is when the successor activity type is a Finish Milestone (as shown in Figure 14 above). Since a Finish Milestone does not have a start component, using FF relationships here is an excellent choice. Although P6 does allow the use of FS between the finish of a task and a Finish Milestones, using a FF relationship keeps your relationship lines neat and tidy. Figure 15 below, the left panel shows the effects of using mixed relationship type when the successor is a Finish Milestones. In this case, it is much preferred is to consistently use a FF relationship. The right panel in Figure 15 below, illustrates the neat and tidy results when FF is used.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img data-recalc-dims=\"1\" decoding=\"async\" width=\"523\" height=\"214\" loading=\"lazy\" src=\"https:\/\/i0.wp.com\/www.foxquestsystems.net\/foxblog\/wp-content\/uploads\/2022\/09\/FF-Figure-15.jpg?resize=523%2C214&#038;ssl=1\" alt=\"\" class=\"wp-image-1894\" srcset=\"https:\/\/i0.wp.com\/www.foxquestsystems.net\/foxblog\/wp-content\/uploads\/2022\/09\/FF-Figure-15.jpg?w=523&amp;ssl=1 523w, https:\/\/i0.wp.com\/www.foxquestsystems.net\/foxblog\/wp-content\/uploads\/2022\/09\/FF-Figure-15.jpg?resize=300%2C123&amp;ssl=1 300w\" sizes=\"auto, (max-width: 523px) 85vw, 523px\" \/><figcaption>Figure 15 &#8211; Keeping relationship lines neat &amp; tidy.<\/figcaption><\/figure>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\"><strong>The FF Trap \u2013 Summary<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">P6 is a versatile and powerful CPM networking tool, allowing 4 different relationship types (FS, FF, Start-to-Start (SS) and Start-to-Finish(SF)) with the ability to assign a lag value (including negative lag values). However, much care and consideration should be used when using any one of these relationship types, especially anything other than the typical Finish-to-Start relationship is used. The bottom line, here is to build a CPM network with very limited use anything other than the tried-and-true FS relationship. All other relationship types, should be used only in deliberate and clearly justifiable situations.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Finally, the converse to the FF Trap is the equally perilous <strong>SS Trap<\/strong> which is discussed in detail in \u201c<strong>The Start-to-Start relationship Trap\u201d <\/strong>article.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u00a9 2012-2022 FoxQuest Systems, Inc. All Rights Reserved<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Think twice before using Finish-to-Finish relationships between tasks.<\/p>\n","protected":false},"author":2,"featured_media":1896,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"nf_dc_page":"","om_disable_all_campaigns":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_feature_clip_id":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_post_was_ever_published":false},"categories":[12],"tags":[],"class_list":["post-1878","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-tips"],"jetpack_sharing_enabled":true,"jetpack_featured_media_url":"https:\/\/i0.wp.com\/www.foxquestsystems.net\/foxblog\/wp-content\/uploads\/2022\/09\/FF-Trap-Feature-Big.jpg?fit=724%2C556&ssl=1","_links":{"self":[{"href":"https:\/\/www.foxquestsystems.net\/foxblog\/wp-json\/wp\/v2\/posts\/1878","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.foxquestsystems.net\/foxblog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.foxquestsystems.net\/foxblog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.foxquestsystems.net\/foxblog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.foxquestsystems.net\/foxblog\/wp-json\/wp\/v2\/comments?post=1878"}],"version-history":[{"count":4,"href":"https:\/\/www.foxquestsystems.net\/foxblog\/wp-json\/wp\/v2\/posts\/1878\/revisions"}],"predecessor-version":[{"id":1900,"href":"https:\/\/www.foxquestsystems.net\/foxblog\/wp-json\/wp\/v2\/posts\/1878\/revisions\/1900"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.foxquestsystems.net\/foxblog\/wp-json\/wp\/v2\/media\/1896"}],"wp:attachment":[{"href":"https:\/\/www.foxquestsystems.net\/foxblog\/wp-json\/wp\/v2\/media?parent=1878"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.foxquestsystems.net\/foxblog\/wp-json\/wp\/v2\/categories?post=1878"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.foxquestsystems.net\/foxblog\/wp-json\/wp\/v2\/tags?post=1878"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}