Guild of Project Controls: Compendium | Roles | Assessment | Certifications | Membership

Tips on using this forum..

(1) Explain your problem, don't simply post "This isn't working". What were you doing when you faced the problem? What have you tried to resolve - did you look for a solution using "Search" ? Has it happened just once or several times?

(2) It's also good to get feedback when a solution is found, return to the original post to explain how it was resolved so that more people can also use the results.

Volume lags

29 replies [Last post]
Alex Lyaschenko
User offline. Last seen 17 weeks 5 days ago. Offline
Joined: 15 Aug 2011
Posts: 59
Groups: None

At times, there may be two project activities that have the potential to be carried out simultaneously, but the second activity can only begin after a certain delay following the initiation of the first activity. The minimum required delay is usually defined by the technological process.

Traditionally, such delays are represented in a schedule using Start-to-Start plus Duration Lag (SS + Lag) logic.

However, this approach has a significant #planning issue:

♨️ If the first activity has started but is not progressing as expected, the schedule incorrectly indicates that the second activity can start as planned, when in reality it cannot. The delay could be due to external factors or lower than expected progress.

Replies

Rafael Davila
User offline. Last seen 2 weeks 2 days ago. Offline
Joined: 1 Mar 2004
Posts: 5230

Thank you!

frog-gentleman

So easy!

Continuous-Feed-Model  Hoover and click thumbnail.

Update with actuals showing lower production rate came out as expected.

Continuous-Feed-Model-002

Best Regards, Rafael

Yes Rafael,

it can model continuous feed but special materials must be created for any two activities linked this way.

Rafael Davila
User offline. Last seen 2 weeks 2 days ago. Offline
Joined: 1 Mar 2004
Posts: 5230

Traditional links fail to model continuous feed - thinking out of the box - Can materials production and consumption be used to mimic continuous feed?

Best Regards, Rafael

Bogdan Leonte
User offline. Last seen 8 weeks 5 days ago. Offline
Joined: 18 Aug 2012
Posts: 285

Looking forward to the improvement. On another topic, I have posted a question in the Spider section, under the Common Risks thread, but it does not appear as a new message/post. Could you take a look and answer my question?

Best regards,
Bogdan

Flex does not show the size of activity duration adjustment.

In your current schedule automatic adjustment works but flex was not calculated.

We must expand this functionality to multiple dependencies case when activity finish is not constrained.

Bogdan Leonte
User offline. Last seen 8 weeks 5 days ago. Offline
Joined: 18 Aug 2012
Posts: 285

Vladimir,

In the model I uploaded (initially) I could not get Spider to Adjust Activity 2, the adjustment was done ”by hand” (by the user).

However I retract my previous post regarding a link between Flex and Ajustment, they seem not to be related. I have done some experimentation with a variation of the original model and this is what I got.

P2-P-Lag-1

P2P links seem to influence flex calculation but the flex calculation does not seem to influence the algorithm for adjusting activity duration. But in this case should't then be a parameter that will tell the user by how much the activity can be ajusted in order to obtain a shorter schedule? I initially thought that start flex would tell me how much I can increase activity duration in order to shorten the duration of the schedule.

File:

https://ufile.io/6wj7l7f6

Best regards,
Bogdan

Bogdan,

Spider can change resource workload on the whole activity, not making it different at different activity parts.

That is why activity 2 duration could be adjusted but only a little because all dependencies must be satisfied.

We will look for improvement of this functionality in Spider Project but variable workload is too complicated for practical use.

Bogdan Leonte
User offline. Last seen 8 weeks 5 days ago. Offline
Joined: 18 Aug 2012
Posts: 285
Vladimir, I agree that activity 2 has a shorter duration (faster execution), but double links reduces/eliminates start flex. Activity 2 should be able to prolong it's duration until the first double link (using the adjustable functionality). From what I am able to deduce is that the adjustable functionality lowers workload and increases activity duration based on start and finish flex, in order to obtain a shorter schedule. Am I wrong in my observations?

Bogdan,

if activity 2 in your example will start earlier its execution speed (or resource productivity, workload) must change during its execution. Spider Project does not model this case yet. It can change resource workload on the whole activity but not apply different productivity/workloads on different activity parts.

Bogdan Leonte
User offline. Last seen 8 weeks 5 days ago. Offline
Joined: 18 Aug 2012
Posts: 285
Indeed, however I belive the adjustable duration, if it will be able to be applied to activities with double links, it will be more than enough for 99.99% of real life situations.
Rafael Davila
User offline. Last seen 2 weeks 2 days ago. Offline
Joined: 1 Mar 2004
Posts: 5230

While current point-to-point or double lag links is not able to split successor current Spider Project functionality is far better than other models. Models without volume lag can yield wrong results and will not warn you about feeding delays/interruptions and nothing about broken links.

Bogdan Leonte
User offline. Last seen 8 weeks 5 days ago. Offline
Joined: 18 Aug 2012
Posts: 285

Rafael, in the below image if Activity 2 is 15 days instead of 10 the schedule is shorter, however, if the duration is 10, then activity 2 is pulled to the las link, which becomes Critical and Driving. Also Start Flex is equal to zero, I believe it should be 5. Automatic adjustment does not work in this case.

P2P-Lag

I tried to mimic the double lags with simple links, the model is clearly more complex. I belive the P2P modeling is very adequate in order to avoid a too complex schedule. But the problem with automatic adjustment is a bit troublesome.

I may have modelled something wrong with regard of automatic adjustment, I am not too familiar with the functionality; Vladimir could give us a better answer on this subject.

Link to file.

https://ufile.io/3p2u3ew4

Best regards,
Bogdan

Rafael Davila
User offline. Last seen 2 weeks 2 days ago. Offline
Joined: 1 Mar 2004
Posts: 5230

The subroutine shall keep activities calendars, but I guess a 24/7 lag will make it for the links calendars.  It would be a matter of the subroutine to create such 24/7 calendar for these links or this calendar could be a predefined calendar.

Bodgan said - "However double-lags (point to point lags) should also be able to split successor activities depending on different lags for each segment and not pull successor to the maximim lag and double lag, but this makes float calculation more complicated and complicates resource leveled float calculation."

  • It is a good point, I tried with a simple schedule where if what Bodgan says happens the schedule would be shorter, but it did not. I used a successor with SS link that extended project duration.
Alex Lyaschenko
User offline. Last seen 17 weeks 5 days ago. Offline
Joined: 15 Aug 2011
Posts: 59
Groups: None

Bogdan,

I like your idea to create point-to-point (P2P) dependencies via Reference books. These dependencies could be classified (Kind column) and (if required) deleted.

Rafael's idea to have automatic P2P is also very interesting! In theory, ONE dependency may have an additional characteristic "N of P2P dependencies". Then P2P dependencies could be automatically created/removed (based on settings, similar to resource dependencies). It could be based on Volume % (every 20%) or with defined period (daily). It would save time and minimise user errors. 

 

Regards,

Alex Lyaschenko

Alex Lyaschenko
User offline. Last seen 17 weeks 5 days ago. Offline
Joined: 15 Aug 2011
Posts: 59
Groups: None

David, 
Activity B not only has to start when the required volume is achieved, but also this Volume must be continuously (!) achieved ahead of activity B.

 

"Continuously" has two meanings in this context:
1) Be always ahead; 
In this case, the workaround to split activities into multiple segments to simulate volume dependencies may work.

2) Without a split
The workaround doesn't work – the schedule (with resource levelling calculation) maybe not be feasible. Rafael showed good to demonstrate it. 

Regards,
Alex Lyaschenko

Bogdan Leonte
User offline. Last seen 8 weeks 5 days ago. Offline
Joined: 18 Aug 2012
Posts: 285
Rafael, a subroutine at most will copy the same calendars or worse will make the user choose the calendars for each link and double link. Maybe a soubroutine in which the user defines the number of double-links, the increment in lag for the predecessor and the increment in lag of the successor would be more useful. However double-lags (point to point lags) should also be able to split successor activities depending on different lags for each segment and not pull successor to the maximim lag and double lag, but this makes float calculation more complicated and complicates resource leveled float calculation.
Rafael Davila
User offline. Last seen 2 weeks 2 days ago. Offline
Joined: 1 Mar 2004
Posts: 5230

Bodgan, this approach might have issues when transferring lag calendars. I am hoping if a sub-routine is created this issue would be addressed, easy and error free.

Bogdan Leonte
User offline. Last seen 8 weeks 5 days ago. Offline
Joined: 18 Aug 2012
Posts: 285

Rafael,

in order to create multiple double links between 2 or more activities you can use reference-books. Just create 1 double link, then create a reference book, copy paste the link and change the copies as you like then transfer it back in the project. For the next 2 activities just use Find and Replace for the successor, predecessor and transfer again. A little bit of a work-around but it does the trick.

Best regards,
Bogdan

david kelly
User offline. Last seen 3 weeks 11 hours ago. Offline
Joined: 12 Feb 2016
Posts: 34
Groups: None

 What about resource levelling?

 

Of course, in my Primavera world almost nobody resource levels because almost everybody thinks it doesn’t work properly.  With no control over splitting activities, this is largely true.  Checking back on my notes from my last 20ish clients, none level, even those with quite scary offshore bed restrictions. So, I think my model of more granularity to simulate a volume % complete relationship is good to go.

However, let’s pretend levelling does work properly. How can we assure that segment 2 of an activity starts immediately segment 1 finishes? Given that we would need to add the ‘mandatory lag’ facility to P6 for the multi-segment activity to simulate a volume-percent-complete lag, it would need to apply to levelling as well. This is not a huge extra change to make for the multi-segment activity model.

Those who have studied Oracle’s time as owners and developers of project management software know that nothing useful will actually be done. The sole purpose of development of the Primavera brand, is to force clients to migrate to Oracle’s cloud.

 

 


 

Rafael Davila
User offline. Last seen 2 weeks 2 days ago. Offline
Joined: 1 Mar 2004
Posts: 5230

Schedules are dynamic as well as shifts, to capture this volume of work and production rates of different shifts is necessary. 

Rafael Davila
User offline. Last seen 2 weeks 2 days ago. Offline
Joined: 1 Mar 2004
Posts: 5230

Be reminded that Skill replacement becomes harder when resources have different productivities, this is where automatic skill replacement considering productivities shines.

Rafael Davila
User offline. Last seen 2 weeks 2 days ago. Offline
Joined: 1 Mar 2004
Posts: 5230
Volume of work is essential to define productivity, effort without reference to volume of work will not give you the units so necessary for meaningful production rates.
Rafael Davila
User offline. Last seen 2 weeks 2 days ago. Offline
Joined: 1 Mar 2004
Posts: 5230
Dividing activities into multiple segments that must be performed without interruption is not a good idea as it can yield undesired results.

david kelly
User offline. Last seen 3 weeks 11 hours ago. Offline
Joined: 12 Feb 2016
Posts: 34
Groups: None

As a Primavera consultant/trainer since Windows 3.1, and familiar with lots of systems back to 1975, I certainly think the ‘normal’ (i.e. what P6 offers!!!) set of relationships is limiting. Two new styles discussed here, point-to-point and volume, might not be necessary if activities were more granular, and mandatory lag in relationships was available.

For example, if we can start a successor when 20% of the volume of the predecessor was complete, why is that 20% not a discrete activity, with a FS relationship with a mandatory lag of 0 to the rest of the work that traditionally would be part of the same activity? This will schedule the work in a contiguous manner, and does not change the amount of measuring required. This might make a lot of extra activities, my view is that there is no such thing as too much detail in a schedule, just insufficiently clever ways of summarising it.


 

Rafael Davila
User offline. Last seen 2 weeks 2 days ago. Offline
Joined: 1 Mar 2004
Posts: 5230

Vladimir,

Another option can be for the user to specify the predecessor and successor activities, the number of equal segments or segments lag, total duration/volume, lag & if duration/volume lag. Maybe a limit to the number of segments shall be established. Essentially a subroutine to create the links.

https://sciendo.com/article/10.1515/otmcj-2016-0013 

  • 2.3.5 Continuous precedence relations Hajdu (2015) has also shown that point-to-point relations suffer from the same drawback as end point relations, in that they control only the end points of the fragments ...

In any case multiple point-to-pont relationships can be a substantial improvement over traditional PDM links, and it is already available in Spider Project.

Best Regards,

Rafael

Patrick Weaver
User offline. Last seen 20 hours 48 min ago. Offline
Joined: 18 Jan 2001
Posts: 379
Groups: None

The lag types you are describing have a long history. The Precedence Diagramming Method (PDM) developed by Dr. John Fondahl was intended as a simple manual system to offset the need for the very expensive mainframe computers needed to run CPM and PERT in the early 1960s - it was almost immediately computerized by IBM and became the default standard in the USA and USA influenced countries.

In Europe, the Metra Potential Method (MPM) developed in 1958 by Mr B. Roy and several other scheduling models were developed with more sophisticated link types similar to those you are discussing. These fed into the USSR development called 'Setevoe planirovanie i upravlenie', which in turn fed into the development of SPIDER Project.

While superficially similar SPIDER has a very different development path to USA software such as Primavera. For more on this see 'A Brief History of Scheduling' at: https://mosaicprojects.com.au/PDF_Papers/P042_History_of_Scheduing.pdf

Rafael Davila
User offline. Last seen 2 weeks 2 days ago. Offline
Joined: 1 Mar 2004
Posts: 5230

Vladimir,

I wonder if it is possible to automatically create special double lag links, say 10 links each 10% of volume or 10% of predecessor activity duration. Perhaps good enough for better scheduling of overlapping activities. If something more complicated is needed then we could create them as required. If easy to implement more people will use it and start digging into more complex scenarios.

Other issue to think about might be lag float, interesting if volume lag.

Best Regards,

Rafael

In Spider Project double lag dependencies were used long before this paper was published.

I think that point-to-point sounds better than double lag.

Rafael Davila
User offline. Last seen 2 weeks 2 days ago. Offline
Joined: 1 Mar 2004
Posts: 5230

When using time lags if the first activity has started but is not progressing as expected, the schedule may incorrectly indicate that the second activity can progress as planned, when in reality it cannot. You can improve the model if using multiple point to point relationships.

2023-07-16-14-25-44

hoover and click thumbnail for a better view.

https://www.researchgate.net/figure/Point-to-point-relationship_fig1_284096483