SS & FF Relatinship

Member for

11 years 4 months

Hi Steve,

(min)FS0 and maxFS0 from A to B means that B MUST start right after the finish of B. (This right after of means 8:00 on next day.)  So if Mike divide his tasks into  milions of segments but continious work is also important then this is the only correct solution. 

An early English language reference on maximal relationships can be found here:

Battersby, A., "Network Analysis for Planning and Scheduling" 3rd edition Macmillan and Co. Limited, London 1970.
I'm hundred percent sure that max relations were included in the first ed. as well, however I have read onlythe 3rd edition. He called as beckward acting relation. Why?  If B has an another predecessor which would push B far let's say one month away from A, than this maxFS0 acts backward, that is, it pulls A close to him.
 
I also have a book on this from 1997 or 1996. You will find a detailed explanation of the max relations as well an algorithm that has been developed for computers. 
 
I'm trying to attach an example. First a small network with minSS0 from top to down, then the same network with a new maxSS0 from top to down. You will se that max relation change the project duration and the critical path as well. (Critical path is denoted by red lines) (For the sake of simplicity only SS relations were used and I have performed only the forward calculations.)

[[wysiwyg_imageupload:2156:]]

 
 
 
Miklos
 
 

Member for

21 years 8 months

For time lag on a ss relationship as soon as the time elapses there is no longer remaining ss lag on remaining work.  For volume of work lag it is different; the volume lag does not ends and must be continuously kept, if the second activity is way ahead there is no impact on the projected progress of the first activity, if the second activity does not keeps the distance it will have an impact on the first.

Although the software does not explicitly tells you about remaining lag it is computed for time lag as well as for volume lag within Spider Project.  For this to be simulated you need to model volume of work and report on your updates actual volume of work so the software knows if the distance, not elapsed time, is being kept.  

From:  http://www.ronwinterconsulting.com/Making_CPM_Transparent.pdf

  • In-Progress Lag Report and Value. Remaining Lag should be displayed just as remaining duration is shown and editable. The CPM feature of Remaining Duration was added so that Schedulers could monitor and change this calculated duration result. Lags are to relationships what durations are to activities. Why should Remaining Lag calculations be discarded by the software instead of saved and displayed? Why should we be unable to indicate that actual remaining lag is only 2 days instead of the calculated 4 days? Part of the reason CPM Schedules are so hard to understand is that fact that not all of the data used is displayed. 

Maximal and minimal are a different issue, in such case you might say there is a minimum time/volume lag and a maximum time/volume lag. I can see this happening on the pipe laying example, you do not want to keep too much of an open excavation. The modeling of min/max relationships is somehat complex, it has not gained general acceptance, maybe in a future, I advocate to continue looking for practical solutions.

If you can model max-volume-lag = min-volume-lag I would dare to say you are modeling true continuous feed process.

Member for

24 years 9 months

Mike, I don't understand your post on 5km lag.

I wrote about 500 meters lag that shall be kept as the distance between trades.

Your proposal to divide the pipeline into 500 meters parts and link them with FS links is not acceptable. One obvious reason: if succeeding activity will be slow the distance may easily become much less than 500 meters. Logical way - to divide into parts of 11 or 22 meters (by joints) but in this case the project model becomes huge and hard to manage.

Let me know if my explanation is clear.

Regards,

Vladimir

Member for

20 years 7 months

Hi, Miklos! Welcome back!

"e.g. FS0 between A and B means that B CAN start right after the finish of B or LATER.

maxFS0 means that B CAN start right after the finish of B or EARLIER.

If you apply this two together than the only possible start for B is exactly the finish of A."

Interesting. If A (5d) and B (8D) are both FS0 AND maxFS0 predecessors of C, how would that be resolved? Error message? Negative float of 3D on B?

"Maximal relations are not new, (invented in ´59 by a Frenchmen called Roy) even if those collegues who were socialized in English literature and and using American software (MS Project, Primavera) maybe never heard of them."

I go back to PSDI's PROJECT/2 which was developed in the late '60s and ran on an IBM mainframe -- but I'd never heard of Roy or this.  Thanks, Miklos.

I am familiar with "reverse logic" functionality such as Raf Dua's Microplanner features, which starts a successor on the basis of the EARLIEST predecessor to finish. That way in the example above, C would be scheduled to start at the begiining of Day 6.

Fraternally in project management,

Steve the Bajan

Member for

19 years 10 months

Hi Vladimir

I am confused - your example talked of 1000km pipeline at .5km lag.

.5km is 500m.

I agree that a 5km lag would be more practical but that is not what you asked.

Best regards

Mike Testro

Member for

11 years 4 months

Vladimir,

 

We are talking about the same issue. 

I think what you called retained logic I call maximal relations.

e.g. FS0 between A and B means that B CAN start right after the finish of B or LATER.

maxFS0 means that B CAN start right after the finish of B or EARLIER.

If you apply this two together than the only possible start for B is exactly the finish of A.

 

Maximal relations are not new, (invented in ´59 by a Frenchmen called Roy) even if those collegues who were socialized in English literature and and using American software (MS Project, Primavera) maybe never heard of them.  They would be extramely important especially for Mike who wants to describe overlapping with the use of segmentation if  it is also inportant that some of the activities must be carried out without interruption. In this case both F0 and maxFS0 must be applied within the segments.

Without maximal relations you cannot model these situations therefore you are not able to make good plans.

Miklos

Member for

11 years 4 months

Vladimir,

 

We are talking about the same issue. 

I think what you called retained logic I call maximal relations.

e.g. FS0 between A and B means that B CAN start right after the finish of B or LATER.

maxFS0 means that B CAN start right after the finish of B or EARLIER.

If you apply this two together than the only possible start for B is exactly the finish of A.

 

Maximal relations are not new, (invented in ´59 by a Frenchmen called Roy) even if those collegues who were socialized in English literature and and using American software (MS Project, Primavera) maybe never heard of them.  They would be extramely important especially for Mike who wants to describe overlapping with the use of segmentation if  it is also inportant that some of the activities must be carried out without interruption. In this case both F0 and maxFS0 must be applied within the segments.

Without maximal relations you cannot model these situations therefore you are not able to make good plans.

Miklos

Member for

24 years 9 months

Raymund, the same materials and resources are used at many tasks. Though the number of activities and dependencies may be huge, the number of different resource types is relatively low (sveral thousands but not millions).

Member for

24 years 9 months

Mike, 500 meters parts do not work. They do not help to keep 500 meters lag. Just imagine that preceeding 500 meters are close to finish but next trade 500 meters for some reason did not start. Keeping 500 meters distance it is necessary to create separate activities for each 11 (or 22) meters. Let's suppose 22. In this case it is 7000/0.022 - more than 318k activities. Add various crossings - roads, rivers, pipelines, valves, etc. Huge project, isn't it?

We apply resource modelling to all tasks.

Member for

15 years 11 months

 

Every Activity must be assigned with Materials, Labor and Equipment as the Resources. 1 : 3. Sometimes 1, 2 or 4 Labor resources are assigned to a task such as skilled, semi skilled, machine operator, labor.

I experienced having a 70k Activities and my P6 moves sooooooooooooooooo slowly.

 

Member for

19 years 10 months

Hi Raymund

Even in P6 large projects are broken down into sections - best represented by trade packages.

I use only one resource called "Hours" applied for resource modelling on all tasks.

Trade histograms are generated by filtering on package codes.

A simple common sense approach using FS links on the largest of projects works well using the appropriate software.

I have never yet taken Asta powerproject beyond any limit - I don't think it has one.

Exceeding A P6 database limit happens often.

Best regards

Mike Testro

Member for

19 years 10 months

Hi Vladimr

1000k / .5k = 2000 x 7 tasks = 14,000.

Welding is the driving activity on a steel pipeline.

You have to apply resource modelling to the welding task.

How can you do that if it is all wrapped up inside a level 3 multi trade task?

Best regards

Mike Testro

Member for

24 years 9 months

Raymund, I don't agree with 1M resources.

Scheduling software will function (though not P6) but everything (scheduling, updating, entering actual data, etc.) will take much more time and effort than necessary.

Member for

15 years 11 months

If FS link is the only allowed Activity relationship then the number of activities in a Billions Dollars Infra and Vertical Project would be as much as 300K+ Activities, 500k+ relationship and 1M resources, with which the scheduling software might not be able to function anymore.

Member for

24 years 9 months

Mike,

I still get no answer to my question on the number of project activities if to use FS links only. Why 14000? How did yu get this estimate?

And I did not understand your statement about the problem with resource modelling.

Regards,

Vladimir

Member for

19 years 10 months

Hi Vladimir

In Asta PowerProject the line of balance view is generated from the Task per Line mode in a combination of Bar and Task codes.

The other facility in Asta is the Task per Line link facility that links tasks vertically in one click across selected bars - I use this often even when not displaying task per line.

Asta has a work volume lag if you want to use that.

The big disadvantage using level 3 combination bars with work volume lags is that you cannot use resource modelling on the driving task - welding.

Best regards

Mike T.

Member for

21 years 8 months

  • From: http://www.mosaicprojects.com.au/PDF/Links_Lags_Ladders.pdf
  • Managing the Overlap
    • However, if there is a need for Task A to continue to feed work to Task B our strong recommendation is to either:
      • • Set the link type to ‘progressive feed’; a number of tools have this feature. Progressive feed only allows B to progress proportionally to A. 
      • • Use both a SS and a FF link to at least constrain the start and finish of B in relation to A. 
  • If your current tool is incapable of either and you want to develop useful schedules that produce predictable results during the progress of the works either, stick exclusively to Finish-to-Start links, buy a software tool that works or add some additional logic to simulate the effect. 
  • Do the right math and do not perform workarounds such as ss-ff or arbitrarily splitting into multiple activities to create only fs relationships that will fall short of modeling true continuous feed in addition to other undesired results.
  • Get rid of incapable old fashioned software. Consider Spider Project that can perfectly model continuous feed using volume lag, software that only provide you with time lag is not good enough. 
  • Rafael

Member for

24 years 9 months

Hi Miklos,

if both SS and FF dependencies are applied it is necessary to apply retained logic option when scheduling to respond to potential interruptions.

Regards,

Vladimir

Member for

24 years 9 months

Mike, I skipped any crossings, etc. just to simplify the calculation of the number of required activities. I am curious about your answer. Let us know how 14000 activities with FS dependencies only can describe the construction of linear part of 1000km pipeline.

I want to remind that joints are made each 11 meters and the distance between crews shall exceed 500 meters.

Please explain.

For the reference: the model with SS and FF dependencies for 740km pipeline included approximately 8000 activities.

And line of balance (time-location chart) for such project is much more useful than Task per Line mode.

Regards,

Vladimir

Member for

15 years 11 months

This may apply to Column and Suspended Slab with Activities description as Columns & Suspended Slab.

Say Suspended Slab @ EL=+4.00 was casted yesterday, the columns @ EL=+4.00 and suspended slab @ EL=8.00 activities can now be started. The Activities for Forwmworks for Suspended Slab @ EL=8.00 may wait for some Columns to be started in order to commence but the Suspended Slab @ EL=8.00 can never be completed unless all Columns are completed.

Susp Slab SS+3d with columns

Slab FF+6d with columns

Although in some cases Suspended Slab may not need to wait for some columns to be started becasue Scaffoldings used for the safety purposes in casting of columns will be retained to be used for the slab formworks. Therefore Suspended Slab activities can start once predecessor slab already casted.

 

For Activites with a deeper details such as Formworks for Columns @ Grid 1 & 2, Grid A-M, Rebars for Columns @ Grid 1 & 2, Grid A-M, Laying of Scaffolding along Grid 1 & 2, Grid A-M, Casting of Concrete for Columns @ Grid 1 and so on.... the required Link is only FS.

Member for

11 years 4 months

Hi Alaa, and my "old" friends,

 

It`s been a long time since i`ve been here. I use a funny keybord so sorry for the typos.

Some comments:

Generally I wouldn´t say that FS must be used. I would say that those relations MUST be used that describes the REAL logic between the activities BEST. I think that this is acceptable for all of you. 

Unfortunately Precedence Diagramming is a mathematical model with some very serious hypothesises in it. 

Here is the first: Activities have to be carried out with the same intensity without interruptions. Well... has anybody of you seen a construction activity like that? But this is necessary if you want the SS, FF relations to be work. (In case of FS we do not need this hypothesis, that!s way some of you like it above all  :)

But sometimes we have to assume this interuption-not-allowed situation. Imagine the problem described by Vladimir with the following constraint : one of the activities is carried out by a very expensive machine and we pay this machine on time basis.

If you use FS relations between different type of activitzies because of the segmantation, how will you ensure that segments within an activity will start RIGHT after each other? FS0 between the consequtive  segments of the same activity is definitely not enough. (Well you can use maxFS0 relation paralell with FS0 but in most of teh software do not allow this) 

Another example: Dewatering starts at the start of excavation and finishes at the end of refill. (Dewatering is a hammock)

This forever returning problem shed light on the shortcomings of PDM technique. Instead of relations that describe dependencies between the ENDpoints (Start, Finish) of activities we should use relations that DESCRIBE relation BETWEEN activities. In this case we could relax this same intensity and no interruption issue.

Hope i was clear...

Miklos

 

 

Member for

11 years 4 months

Hi Alaa, and my "old" friends,

 

It`s been a long time since i`ve been here. I use a funny keybord so sorry for the typos.

Some comments:

Generally I wouldn´t say that FS must be used. I would say that those relations MUST be used that describes the REAL logic between the activities BEST. I think that this is acceptable for all of you. 

Unfortunately Precedence Diagramming is a mathematical model with some very serious hypothesises in it. 

Here is the first: Activities have to be carried out with the same intensity without interruptions. Well... has anybody of you seen a construction activity like that? But this is necessary if you want the SS, FF relations to be work. (In case of FS we do not need this hypothesis, that!s way some of you like it above all  :)

But sometimes we have to assume this interuption-not-allowed situation. Imagine the problem described by Vladimir with the following constraint : one of the activities is carried out by a very expensive machine and we pay this machine on time basis.

If you use FS relations between different type of activitzies because of the segmantation, how will you ensure that segments within an activity will start RIGHT after each other? FS0 between the consequtive  segments of the same activity is definitely not enough. (Well you can use maxFS0 relation paralell with FS0 but in most of teh software do not allow this) 

Another example: Dewatering starts at the start of excavation and finishes at the end of refill. (Dewatering is a hammock)

This forever returning problem shed light on the shortcomings of PDM technique. Instead of relations that describe dependencies between the ENDpoints (Start, Finish) of activities we should use relations that DESCRIBE relation BETWEEN activities. In this case we could relax this same intensity and no interruption issue.

Hope i was clear...

Miklos

 

 

 

Member for

19 years 10 months

Hi Vladimir

14,000.

But using Asta Power Project Task per Line mode this is represented as 2000 task lines and converts instantly to a line of ballance display.

It also allows you to place road crossings - pump stations - streams and culverts precisely in the network.

It can also be broken up into 50 - 100 km stretches to allow for parallel teams.

Duration is modelled precisely on the welding task depending on:

Length and type of pipe

Diameter

Type of welding - Automatic - Semi Automatic - Manual or any combination of different factors on different sections.

The biggest pipeline I was involved in was 500k in India and the latest was 161k in Abu Dhabi.

In India we had a combination of all welding types plus one river crossing and two moutains.

Ideally the software should be a dedicated time chain product such as Tilos.

Best regards

Mike Testro

Member for

18 years 9 months

Hi Alaa

Of course it is right that only FS relationships must be used - in general.

To give an example out of real life: With your car you must use the street, not the pedestriens way if there is any. But if the street is destroyed by a big hole? ... Where will you go?

In the first phase of planning you'll start with overhead activities and many SS and FF links. When you'll replace them by more detailed activities you'll assign FS links.

But there are some situations, e.g. pipepline and railway projects, level of effort activities where SS and FF are appropriate as Vladimir already stated.

As you write down all assumptions for planning you must write down within your planning procedure the reasons why you used SS and FF under some special conditions. This must be approved by PM and, if applicable, by the Head of Planning as well.

Regards

Dieter

Member for

15 years 11 months

The use of SS & FF will depend on the Level of Details of Activities.

Member for

24 years 9 months

I will suggest pipeline construction example:

The distance between ditching, welding, joint control, coating, coating control, lowering, backfilling shall be kept no less than 500 meters. Different crews are working at these activities in parallel.

Pipeline length is 1000km.

Joints have approximately 11 or 22 meters distance between each other.

What is the number of pipeline construction project activities if to use only FS links?

Member for

20 years 7 months

Hi, Alaa.

As you may have noticed, your question evokes controversy even among some of the most knowledgeable and experienced PM people you are ever likely to meet. One thing is clear: if you are going to use complex dependencies and lags/leads, you need to fully understand them AND how your particular software brand dealswith them. The Mosaic.com link that Patrick posted represents 15 excellent pages of material that you should definitely read and master.

Some additional comments:

Pretty much anything you can do with SS, FF, SF, and lags you can do with just FS by:

  • Decomposing predecessor activities in SS and SF relationships at the duration of the lag(s) amount(s);
  • Replacing lags at the finish of all FF and FS predecessors with activities equal in duration to the lag amounts;
  • Creating milestones for the finishes of successor activities in FF and SF relationships (and make sure to progress the milestone as soon as it is achieved!).

If done properly, these will allow you to schedule perfectly well without the complex dependencies AND will avoid the reverse critical path trap described on pp. 9-10 of Patrick's Mosaic document. (If you still want to use complex dependencies, MAKE SURE you understand those two pages and how to avoid the trap!) 

However, the downside:

  1. The additional decomposition can greatly increase the number of activities you will then have to manage and progress: 5,000 activites can easily become 8,000;
  2. Most people find it much easier to say: "A has a duration of 15D and is an SS+3 predecessor of B, an SS+7 predecessor of C and an SS+9 predecessor of D" than to decompose A into Aa with a duration of 3D and Ab as a separate 4D activity and Ac as a separate 2D activity and the terminal Ad as a separate 6D activity and then input all the FS links correctly. And if you (or a subcontractor) don't do that, you risk making your project longer than it needsto beand time is money.

Finally, a big advantage of using all FS relationships is that it makes computing the crucial CPM metric critical path drag relatively easy. Yes, it can be computed manually even with complex dependencies and lags, but it takes a LOT of practice! If you don't own Spider Project or one of the very few packages that compute drag for you, this is really a big advantage to all-FS relationships. (Simply not computing critical path drag is NOT an option, IMHO.)

Fraternally in project management,

Steve the Bajan

Member for

19 years 10 months

Hi Alaa

Your consultant is correct - there is no place in a construction programme for any FF SS logic links.

Best regards

Mike Testro

Member for

24 years 9 months

Alaa,

it is not practical at all.

Activity dependencies shall reflect the real life - constraints that actually exist. But in most cases SS dependency and FF dependency shall be applied together.