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.

What do you expect?

50 replies [Last post]
Bernard Ertl
User offline. Last seen 6 years 51 weeks ago. Offline
Joined: 20 Nov 2002
Posts: 757
I’ve tested the following scenario on different scheduling platforms and seen several different answers. What would you expect?

Task 1  (10 hrs)  24hrs/day calendar
Task 2  (4 hrs)   8hrs/day calendar   Preds=1FF
Task 3  (1 hrs)   24hrs/day calendar  Preds=2

At what hour would you expect Task 2 to end? Task 3 to start?

Bernard Ertl
ATC Professional Shutdown / Turnaround Management System

Replies

Bernard Ertl
User offline. Last seen 6 years 51 weeks ago. Offline
Joined: 20 Nov 2002
Posts: 757
There is clearly something strange with the two that did "as expected" despite the flawed calendar. Strictly , theoretically, a milestone or activity with zero duration starts on the date/hour/time period immediately before it finishes. This has to be so to make succeeding activities commence simmultaineously with the milestones finish.I’m not sure what you mean by that. T2 is a regular task, not a milestone. IMO, the calendar of a zero duration task should not affect the scheduling of its successors. It should be a pass-through.The 1st one is technically correct and is what I would expect... !You would expect that strict finish-to-start relationships without leads or lags could cause a successor to start before a predecessor has finished?

Bernard Ertl
ATC Professional Shutdown / Turnaround Management System
Jonathan Kirby
User offline. Last seen 6 years 37 weeks ago. Offline
Joined: 16 Jan 2005
Posts: 41
Groups: None
Bernard,
This happens with earthmoving operations.
excavation [cut] in one area is matched to filling in another area. They are seperated phisically by location and different resources are deployed. Exc/cut has prime mover/excavator and trucks associated with it and fill area has compactors/rollers and dozers. Each operation will have different predecessors and successors also.
Earthworks operations are often more tricky, with say one cut and several fill areas or several cuts and one fill ... or a mixture .
You end up with two sequences of activities with a pair of activities in the middle of each sequence which are inter dependant.
WRT your new logic example it demonstrates the need for logic to be assembled sensibly. If activity 2 is intended to be a milestone to highlight the link from 1 to 3 I would expect it to have the same calendar as them.
There is clearly something strange with the two that did "as expected" despite the flawed calendar. Strictly , theoretically, a milestone or activity with zero duration starts on the date/hour/time period immediately before it finishes. This has to be so to make succeeding activities commence simmultaineously with the milestones finish. This is often masked by software only displaying one date for milestones. In p3 you can see the effect by having the same 0 dutation task three times between 2 other activities , make 1 a start milestone, 1 a finish milestone a 1 a task with 0 duration. In all 3 the identical calculation occours but p3 shows the start/finish/both dates according to the activity Type allocated to it. Its purely cosmetic.
I the 2nd pair of your examples T2 is being shown as done during its non working time which is strictly not correct. There is plainly something funny going on in these 2.
The 1st one is technically correct and is what I would expect... !
In your examples have a look at the start and finish times of the links themselves and the assumed calendars on the links it may shed some light on what the software is actually doing. They have produced what was intended more by good luck than by good scheduling/planning.
This highlights the difference between what should be expected and what a planner/scheduler intended.
Regards
Jonathan
Bernard,
if the connected tasks have different durations and use different resources or different resposible managers they shall not be merged in any case.
Vladimir
Bernard Ertl
User offline. Last seen 6 years 51 weeks ago. Offline
Joined: 20 Nov 2002
Posts: 757
Jonathan, if two tasks are SS+0 & FF+0 with a strict two-way relationship, why would they not be merged into one task?

Another quirk I found with one of the three systems used previously:

T1 (15 hrs) 24hr calendar
T2 (0 hrs) 10hr calendar
T3 (10 hrs) 24hr calendar

With T1 FS-> T2 FS-> T3, it scheduled as follows:

T1(ES-EF) = 0-15
T2(ES-EF) = 24-10
T3(ES-EF) = 10-20

The other two systems correctly (per my expectation at least!) calculated:

T1(ES-EF) = 0-15
T2(ES-EF) = 15-15
T3(ES-EF) = 15-25

Bernard Ertl
ATC Professional Shutdown / Turnaround Management System
Jaco Stadler
User offline. Last seen 15 years 7 weeks ago. Offline
Joined: 8 Sep 2004
Posts: 300
Groups: None
Thanx Bernard

I just need to say I am a planner not a programmer. I will try this in future.

Cheers
Jonathan Kirby
User offline. Last seen 6 years 37 weeks ago. Offline
Joined: 16 Jan 2005
Posts: 41
Groups: None
Vladimir
It is clear that Spider has got all sheduling problems occouring with other software covered.
Jonathan
Bernard Ertl
User offline. Last seen 6 years 51 weeks ago. Offline
Joined: 20 Nov 2002
Posts: 757
[duplicate post]
Bernard Ertl
User offline. Last seen 6 years 51 weeks ago. Offline
Joined: 20 Nov 2002
Posts: 757
Jaco, et. al.,

If you wish to make a diagram with text characters including spaces, you will need to use a little bit of HTML coding to make sure it renders correctly.

First, you need to use a non-proportional font. encapsulate the diagram with:

<*font face="Terminal"*> [diagram] <*/font*>

To make multiple spaces in a row, use the following code to replace the space character:

&*nbsp*;

It is easiest to make the diagram first using spaces and then highlight the spaces, counting them as you highlight, and paste the code once for each space to replace them.

In the samples above, you should remove the * characters for the actual codes. I had to include them so they would not be real HTML and you can see them.

Bernard Ertl
ATC Professional Shutdown / Turnaround Management System
Jonathan,
that is why we introduced strict links. Activities that are connected with the strict link are pasted and if the following is delayed the predecessor will be delayed too.
Jonathan Kirby
User offline. Last seen 6 years 37 weeks ago. Offline
Joined: 16 Jan 2005
Posts: 41
Groups: None
Vladimir and others
With operations like excavating Cut in one area , haul, and place Fill in another how do you deal with the logic.
it is catch 22 if you dont excavate you can’t fill, but if something stops or delays the filling operation then the excavation should also be delayed. i.e. the start and finish must be simmultaneous.
the usual logic is Exc to Fill SS 0 with a FF 0 , but with this logic if the successor Fill is delayed the predecessor Exc will be scheduled to continue and finish before the Fill. ?

The problem gets worse with multiple cuts and fills, eg 2 or more areas of excavation feeding one or more fill areas.
JK
Jaco,
You are right and I am right too. There is a need for two links SS and FF and both with the volume lags.
Loading can start only after the necessary volume was excavated and after excavating was finished at least certain amount shall be loaded.
Thank you for the idea. We will add the latter type of link into Spider Project next month. I mean the volume lag applied to succeeding activity.
In any case the initial link shall be FF with the lag, not just FF for your description of the dependency And this lag shall have succeeding activity’s calendar.
Jonathan Kirby
User offline. Last seen 6 years 37 weeks ago. Offline
Joined: 16 Jan 2005
Posts: 41
Groups: None
Not sure what you are demonstrating here jaco ...
try courrier font which spaces all characters evenly.
JK
Jaco Stadler
User offline. Last seen 15 years 7 weeks ago. Offline
Joined: 8 Sep 2004
Posts: 300
Groups: None
Well I have given up before I send the message it looks good as soon as I post it Well ??
Jaco Stadler
User offline. Last seen 15 years 7 weeks ago. Offline
Joined: 8 Sep 2004
Posts: 300
Groups: None
Sorry al the Spaces turn to Sinlge Paces so I will Try underscore.

Dwg 1 (As per Me)
T1 XXXXXXXXXX
T2       XX         XX
T3                    X
Dwg 2 (As per the Rest)
T1 XXXXXXXXXX
T2     XXXX
T3                  X

DWG 3 (Using SS logic)
T1 XXXXXXXXXX
T2       XX         XX
T3                    X
DWG 3.1 (SS Logic Calender Swap)
T1 XXXXXXXX         XX
T2       XXXX
T3                  X

I hope this is Better

[Moderator edit: I tried to fix the diagram. I hope I counted correctly on the spaces! ~ Bernard]
Jaco Stadler
User offline. Last seen 15 years 7 weeks ago. Offline
Joined: 8 Sep 2004
Posts: 300
Groups: None
Hi Vladimer you have lost me.

I always thought Time = Volume x "X" / "Y" x "P"

If you look at the logic as per the example I have put on the table the completion of the excavation must be completed before loading can be completed. This imply a FF relationship. (WOW if you use SS you can finish loading before you have finish excavation (Especialy if you have more than one calender) if this is possible Skyhooks ?? also) See Dwg 3

"Real time to perform necessary work may differ from the planned durartion."

I tend to agree with this 100 % but that is why it is called planned vs Actual.

Below "Drawn" Dwg 1 is my answer Dwg 2 is not Dwg 3 is SS. You see as we have discussed as per the rest T2 Finished before T1. (The Physical Work / Resource Profile)

Dwg 1
T1 XXXXXXXXXX
T2       XX        XX
T3                    X
Dwg 2
T1 XXXXXXXXXX
T2     XXXX
T3                 X

Dwg 3
Utilising a Start to Start Logic Gets the Same result but lest Swap the Calenders and Make T1 8 Hrs & T2 24 Hrs as per dwg 3.1

DWG 3
T1 XXXXXXXXXX
T2     XXXX
T3                 X
DWG 3.1 (SS Calender Swap)
T1 XXXXXXXX        XX
T2       XXXX
T3                 X

I hope the above is understandable in PP.

Cheers,

Jaco

[Moderator edit: I tried to fix the diagrams. I hope I counted the spaces correctly! ~Bernard]
Jonathan,
I don’t know other software except Spider Project that simulates shift work. I mean that the software shall choose which shift will do the work if it is not known initially. In particular if an activity with 8 hours duration starts in the middle of the day then its execution will be started by one shift and finished by another. And of course lag shall have its own calendar that covers both shifts (or 24 hours depending on the nature of the time lag). In the construction example that is included in Spider Project Demo you can find how Spider Project simulates shifts assigning independent teams of resources.

In Spider Project we use volume lags (for SS and SF links) instead of % lag. Percent is something abstract, volumes (in meters, tons, etc.) are real. And of course we do not encourage project planners to use SF links!
Jaco,
there are two types of lags - time and volume.
You wrote about volume lag. You mean that two hours are necessary for doing a certain amount of work (volume). We usually use this type of lag with start-start link.
It is not proper to convert volume lag into duration lag because the real time to perform necessary work may differ from the planned durartion.
Regards,
Vladimir
David Waring
User offline. Last seen 7 years 6 days ago. Offline
Joined: 19 Dec 2002
Posts: 7
Groups: None
The logic I have always used on this is that in a FF link the second activity completion is dependent on the first activity completion.
There is almost always a SS link implied - and if a planner is in a hurry, this can be omitted, since "it is obvious".
But because of the existence of multiple calendars, there may be a logical error caused.
The most extreme example I saw of this was on construction of a motorway bridge. The completion of the carriageway beneath the bridge followed removal of the falsework on a FF link.
Unfortunately, because concrete farmers are hardy souls, the bridge was on a 12 month calendar. Earthworks being more susceptible to weather, these only took place on a 9 month calendar.
This was all well and good, when the bridge was completed in the summer, and the road shortly thereafter. But there was hell to pay when the bridge slipped three months, and wasn’t open until Christmas - but there was no consequential delay to the motorway itself!
It took several hunts through the logic to identify the problem - and then this had to be explained to the other engineers concerned. Not easy to non-planners!
The moral is, always check that activities are sensibly linked - if you must use FF, use SS or FS to constrain the Start Date as well.
Jaco Stadler
User offline. Last seen 15 years 7 weeks ago. Offline
Joined: 8 Sep 2004
Posts: 300
Groups: None
What I would like to see.

T1 Finishing 18H00 (Day 1)
T2 Finishing 10h00 (Day 2)
T3 Finishing 11h00 (Day 2)

My Reason if you look at the logic t2 & t1 has a finished relation but because of the calender the last two hours of work on T2 can not happen till the next morning. I know this does not sound logical. So what.

In Practice lets assume that the work has to do withe excavation (As an example)

Lets assume you excavate & Load. (A Civil type of operation) (FF relationship)

If you excavate 24 hrs a day and is only loading for 8 you will still have 2 hours of loading remaining after excavation.

Does anybody else get the same answer ??


Jonathan Kirby
User offline. Last seen 6 years 37 weeks ago. Offline
Joined: 16 Jan 2005
Posts: 41
Groups: None
Vladimir.
As I recall form other discussions on PP you use Spider. I loaded a trial of it to see what it was about and clearly this link problem is not an issue with you because the makers of Spider had the forsight and wisdom to allow the user to specify the calendar of each link.
Sadly most UK and US and other software does not have this facility, [my view is that there is a certain arrogance in the software houses that dictate how it should work rather than providing what the customer wants] hence this thread comparing what various software does.
The software mostly assumes a calendar for links as follows.
SS link as predecessor calendar.
FS link as Predecessor calendar
FF link as Sucessor calendar
Generally this works ok but in certain situations it can cause problems.
Big exception is P3 which adopts the Predecessor calendar on a FF link.

Some software allows percentage links which require a % of the activity to be done before the start of the link or at the end of a link there is a % of the next activity left to do.
Another now allows the lag to be placed on the start or the end of the link this gives better control and allows a FS lag to have the calendar of the sucessor.
Spider is the only software i’ve met that allows you to place a calendar on the link thus giving the planner full control without unwanted erroneous effects.

Bernard,
ive been doing some more "What do you expect" tests with pertmaster, P3, powerprojects.
Imagine you have an operation or process running continuously in shifts with say 3 8 hour shifts.
Activities are Make X 8 hours and Assemble X 7 hours.
between make and assemble there is a 1 hour cooling time.
you have two activities:- 1) for 8 hours and 2) for 7 hours and they are linked by a FS link with a lag of 1 hour.
I expect the item to be made and assembled in 2 shifts exactly.
but what does the software do ?
by the way only one of the above mentioned products could get this correct.[also i expect Spider would get it correct although i didnt try it]

by the way I find the results you were getting earlier in the thread most bizare and nothing ive used has done that to my knowledge ... what is it ?
regards
JK
Bernard,
Lags shall have their own calendars, isn’t it?
It is interesting which software do you test?
Bernard Ertl
User offline. Last seen 6 years 51 weeks ago. Offline
Joined: 20 Nov 2002
Posts: 757
LOL. The plot thickens.

The SS+5 tie should not be a driver for the answer in your particular scenario, so I left that out of my tests. Testing with your FF+5 lag yielded the following results (using the same 3 systems from my original test):
  1. The lag appeared to be processed on the project’s default calendar irrespective of the calendars for T1 & T2. I saw very strange results ranging from the expected to the unexpected.
  2. The lag appeared to be processed on T2’s calendar and results were as expected: from 5 to 15 (ES to EF)
  3. The lag appeared to be processed on T1’s calendar and results were not as expected: from 15 to 25 (ES to EF)
I did not do extensive testing, so my observations above may be misinterpretations of what I was seeing (especially with #1).

Quite by accident, I noticed another anomoly with package #2 - with T1 on a restricted calendar, and it’s FS predecessor ending in a hole of its (T1’s) calendar, and a T2 with an unrestricted calendar with T1 as a SS predecessor, T2 was scheduled to start before T1 where T1’s FS predecessor ended!

Bernard Ertl
ATC Professional Shutdown / Turnaround Management System
Jonathan Kirby
User offline. Last seen 6 years 37 weeks ago. Offline
Joined: 16 Jan 2005
Posts: 41
Groups: None
Hi
Facinating , sometimes academic thread, a bit heavy going.

Ive allways used FF logic , usually with accompanying SS links and as bernard said in his last post the intent and expectations of the planner is getting to the crux of the problem.
many planners are blissfully unaware of what the software actually does with SS and particularly FF links when schedules change or are updated and have varying calendars.
After some bad experiances some 20 od years ago, when using new software for the 1st time i allways ran test scenarios to find out what happens in various situations. These days most software does what you expect and have facilities to model exactly what you intend. [except P3]

In Bernards example , by definition 2 must finish at the same time or after 1. and 3 can only start after both have finished. given that 2 will have some finite working time left then 3 will finish in the 2nd hour of 2’s second working period.
If the INTENT is that 1 and 2 must finish at the same time then both 1 and 2 should finish in the 1st hour of 2’s second working period . Some softwares allow for this intent on ff links and you can lock activities together. So if 2 moves later then 1 will keep in the same relationship .... if that is wahat you want or intend.

Its also a good example of the importance of thinking about the true intent and requirements of the logic of a programme or schedule when its assembled. Ive seen a lot of planners [am myself] get into a heck of a mess with activities going all over the place because ’the software’ is not doing as expected. Hence the test scenarios !
In a similar vein is behavior of logic with out of sequence progress, this used to be a real bag of worms, but again most softwares have it sorted.

Getting back to bernards example I agree with those who say that any software that allows 2 to finish before the finish of 1 has broken the fundamental understanding of what a FF link means [regardless of any fancy academic texts definition]
Another good [and realistic] test on FF links is as follows.
Two activities 10 days long linked SS lag 5 days and FF lag 5 days.
Activity A1 has a calendar [or resource] that prevents it working in day 11 to say 20
The second activity A2 has no working or resource restrictions.
When does A2 Start and finish.
It should start on day 6 and finish on day 15.
some softwares push its finish out to day 25.
I would be interedted on your results for this scenario in the tests you are running bernard.
Regards
JK
I agree with Frank.
The only reasonable solution for your case is the one I suggested and other model can be simulated with T1 FS T3, T2 FS T3 and attribute ALAP with T2.
Vladimir
Bernard Ertl
User offline. Last seen 6 years 51 weeks ago. Offline
Joined: 20 Nov 2002
Posts: 757
The construct you provided is similar, but not identical to answer #1. It only mimics the same result as long as T1 has zero free float.

However, I am skeptical that most planners are aware that the FF relationship may be an issue or have investigated the calculation method/results of every scheduling software that they use. If they are not aware of the issue, they will certainly not use different constructs to avoid a potential problem in the calculation.

Thus, as I mentioned in the first post, I am seeking feedback on what result people expect when using a FF tie with tasks/resources on different calendars. Perhaps I should first have asked if anyone ever uses a FF tie between tasks/resources on different calendars?

Bernard Ertl
ATC Professional Shutdown / Turnaround Management System
Frank Borcherdt
User offline. Last seen 4 years 51 weeks ago. Offline
Joined: 3 May 2001
Posts: 88
Groups: None
The three definitions ignore the impact of lag, however in practice, when we define the relationship it is one of the attributes we define (even if it defaults to zero).

I do not think you can ignore lag, as I believe that lag defines the relationship in your first example i.e. T2.EF = Fn(T1.EF) and is not catered for in the other definitions. Perhaps they also assume that we will use zero lag unless it is defined.

Forget the different calendars for a moment. If I define a FF with negative lag between activities on the same calendar, then I would expect to see T2.EF < T1.EF.

The first definition is the most technically correct however in all cases; with no lag mentioned, T2.EF cannot be less than T1.EF. In definition three the before means “prior to” and as the lag is zero the two activities finish in the same planning unit (minute/hour/day) and therefore the T1.EF can equal T2.EF if the two activities are on the same calendar.

I still do not understand why you are using the FF relationship in the first place, if it’s to delay T2 to finish as close as possible to the finish of T1 then the following achieves what you are looking for:-

T1 FS to T3
T2 FS to T3 and ZFF or “as late as possible” constraint on T2

hence my suggestion that you also ask how people would normally plan to cater for your still undefined set of circumstances.
Bernard Ertl
User offline. Last seen 6 years 51 weeks ago. Offline
Joined: 20 Nov 2002
Posts: 757
  1. the completion of the work of the successor depends upon the completion of the work of the predecessor
  2. the completion of the work of the successor cannot finish before completion of the work of the predecessor
  3. the "from" activity must finish before the "to" activity can finish
All three of those definitions are saying something different:
  1. T2.EF = Fn( T1.EF) (relationship undefined, but must be related)
  2. T2.EF >= T1.EF
  3. T2.EF > T1.EF
The problem may arise any time a schedule is built with FF relationships between tasks (or resources assigned to tasks) on different calendars - even if there is a substantial overlap between the calendars and the original baseline schedule had the tasks scheduled during the overlap (such that the situation described above was not apparent). A delay or gain on the schedule could cause this situation to appear.

Bernard Ertl
ATC Professional Shutdown / Turnaround Management System
Frank Borcherdt
User offline. Last seen 4 years 51 weeks ago. Offline
Joined: 3 May 2001
Posts: 88
Groups: None
All three definitions are saying the same thing (some are worded a little better) if you look at it from the situation where I believe a FF might be used i.e. there is “something” in the scope of T2 that depends on T1 being finished for you to finish T2.

A zero or positive lag tells us the duration of that “something”. Zero lag means they should be the same, calendars permitting. A negative lag tells us how much prior to the completion of T1 we are able to finish T2.

I also agree with Rick’s post, any answer that gives an EF earlier than that of T1 has not applied the FF with 0 lag correctly. If the EF of T1 falls in a non-work period for T2 we should delay the finish of T2 until the first available work period, just like when we schedule, apply constraints, etc. Some software also allows you to specific a calendar on the relationship that it applies to the lags but this should not alter the EF of T2 in this case (zero lag).

I understand that you are trying to see what people logically expect their software to do rather than what it currently does. I think you need to ask how they would normally plan for this situation in your context (you would need to describe this). You may find that they do not use a FF with zero lag and achieve the answer you want.
Bernard Ertl
User offline. Last seen 6 years 51 weeks ago. Offline
Joined: 20 Nov 2002
Posts: 757
finish-to-finish - the "from" activity must finish before the "to" activity can finishThat definition is not the same as the PMI Glossary definition. It is also complete rubbish IMO. For tasks with zero lead/lag and identical calendars, the finishes should be equivalent - one does not finish before the other.

I did some sampling of definitions on the web and saw answers ranging from PMI’s 6.2.2 definition to the last one you posted (quoted above).

As I mentioned earlier in the thread, I believe that written definitions are merely attempts to characterize the effect of the underlying calculation which is always described the same way - and without consideration to multiple calendars.

I have initiated a discourse with the PMI Practice Standard for Scheduling on the issue.

Bernard Ertl
ATC Professional Shutdown / Turnaround Management System
Frank Borcherdt
User offline. Last seen 4 years 51 weeks ago. Offline
Joined: 3 May 2001
Posts: 88
Groups: None
IMO the FF means there is something in T2 scope that depends on T1 being finished otherwise why the FF? As you correctly say “a simple FS relationship from T1 to T3 ensures that T3 would start when T1 finishes”. If this is what should happen then use that and keep it simple. The FS from T2 to T3 will push T3 if T2 slips.

Without a detailed understanding of what you are trying to model (i.e. if there is a dependency between T1 and T2), its difficult to comment further other than you can usual remove the ambiguity by breaking the T1 and/or T2 into two clearly defined activities that only require FS relationships.

A quick search on Google returned other FF definitions in PMO Glossaries with wording similar to:-

finish-to-finish - the "from" activity must finish before the "to" activity can finish
Bernard Ertl
User offline. Last seen 6 years 51 weeks ago. Offline
Joined: 20 Nov 2002
Posts: 757
I just checked my PMBOK Guide 2000 and it states under 6.2.2:Finish-to-finish -- the completion of the work of the successor depends upon the completion of the work of the predecessorThis is a bit vague - depending upon your interpretation of the phrase "depends upon" any of the three answers mentioned are valid as the EF of T2 is directly related to (or dependent upon) the EF of T1.

The definition in the glossary is as you wrote, however. I believe this issue was not fully considered. We shall see what PMI has to say.

Bernard Ertl
ATC Professional Shutdown / Turnaround Management System
Bernard Ertl
User offline. Last seen 6 years 51 weeks ago. Offline
Joined: 20 Nov 2002
Posts: 757
I agree the interruptible option in P3 will impact the ES of T2 but not the EF.Yes, this is a fact - but does not impact the issue at hand.

I appreciate your response. Looks like I will need to take this up with PMI’s PMBOK/Standards group.

For my part, answer #1 seems to offer a planner the most flexibility in defining a schedule as a simple FS relationship from T1 to T3 ensures that T3 would start when T1 finishes no matter what clock hour T1 finishes (ie. T2’s calendar will not skew expected results no matter if the schedule moves to a point where T1 ends in a hole in T2’s calendar).

Bernard Ertl
ATC Professional Shutdown / Turnaround Management System
Frank Borcherdt
User offline. Last seen 4 years 51 weeks ago. Offline
Joined: 3 May 2001
Posts: 88
Groups: None
Bernard, I agree the interruptible option in P3 will impact the ES of T2 but not the EF.

The glossary of the PMBOK Guide 2000 edition confirms my understanding that a FF relationship i.e. "the completion of the work of the successor cannot finish before completion of the work of the predecessor". I would therefore expect EF of T2 to be = or > EF of T1 depending on successors calendar. i.e. your answer 3.

I try to avoid SS and FF relationships (and have never used a SF) as they add a level of complexity to the schedule that few non planners understand once you start statusing the schedule and the work is executed out of sequence.

I worked on one site where FS with 0 lag was the ONLY permissible relationship.

Please send me your test results.

Frank Borcherdt
Bernard Ertl
User offline. Last seen 6 years 51 weeks ago. Offline
Joined: 20 Nov 2002
Posts: 757
Ron, whether using interruptable activities or not, the EF calculations should return the same result. The question still remains as far as what your expectation would be.

Bernard Ertl
ATC Professional Shutdown / Turnaround Management System
Ronald Winter
User offline. Last seen 38 weeks 5 days ago. Offline
Joined: 4 Jan 2003
Posts: 928
Groups: None
Let’s start with interruptible activities. When computing the CPM with a Finish-to-finish relationship with a non-interruptible activity, your statement of automatically computing the earliest early start of the successor holds,

ES (Successor) = EF (Predecessor) + lag – Duration (Successor) +1.
Then the early finish of the successor is computed as
EF (Successor) = ES (Successor) + Duration (Successor) -1

When computing the same thing with an interruptible activity, just the early finish of the successor is computed. The early start of the successor is not touched. In this case,

EF (Successor) = EF (Predecessor) + lag.

I still don’t understand how Primavera can calculate the CPM so quickly. When my programs do it, it seems to take forever to consider all of the rules.
Bernard Ertl
User offline. Last seen 6 years 51 weeks ago. Offline
Joined: 20 Nov 2002
Posts: 757
Ron, would you mind elaborating on your point? I don’t understand how P3’s handling of interruptable SS/FF relationships or out-of-sequence progress using Retained Logic makes any difference to the choice of which answer should be calculated for the given scenario.

AFAICT, P3’s handling of interruptable SS/FF relationships would have no bearing/impact on the decision as it merely creates a span for a successor task from the SS’s ES to the FF’s EF. The question of where the successor task’s EF should be calculated (and it’s impact on any successor task(s)) via the FF relationship still remains.

If an out-of-sequence progress using Retained Logic or Progress Override trumps the calculation of the scenario presented, then it really doesn’t affect how the instant relationship is calculated.

No matter what other external factors may or may not come into play, the ES & EF for the calendar phased FF relationship must be calculated to be considered along with all other relationships/constraints. The question remains and I would value your opinion of what result you would expect from the scenario as laid out.

Bernard Ertl
ATC Professional Shutdown / Turnaround Management System

P.S. You don’t have to be a college professor to have an opinion on the issue - it’s a matter of expectation/opinion in the absence of a standard.
Ronald Winter
User offline. Last seen 38 weeks 5 days ago. Offline
Joined: 4 Jan 2003
Posts: 928
Groups: None
Bernard,

Besides not being applicable for multiple calendars, your definition also ignores interruptible relationships and out-of-sequence progress using Retained Logic. CPM calculation has become a very complicated thing. Real-world calculation considerations have passed beyond the knowledge of even College Professors.
Bernard Ertl
User offline. Last seen 6 years 51 weeks ago. Offline
Joined: 20 Nov 2002
Posts: 757
Vladimir, I don’t understand your last post. Any of the three answers supplied above should work just fine with or without resource leveling as they all should be applied consistently to determine the ES/EF for a task based upon that relationship alone.

My interpretation does not exclude other relationships from driving (delaying) the ES/EF of T2. The question is with regards to what answer should be supplied solely with the FF relationship.

Just like any other relationship, the FF relationship ultimately is just establishing one possible ES for the successor activity - a point previous to which the activity may not start.

As for definitions, I’m sure there are many different ways the FF relationship may be described, but all of ones I can find ultimately define the calculations as outlined above (without consideration for multiple calendars).

Bernard Ertl
ATC Professional Shutdown / Turnaround Management System
Bernard,
with this interpretation of activity links you will not be able to level resources at all. Please check definitions - all of them are no earlier than. In Spider Project we permit to define strict (or hard) relationships, but only for few activities. And this type of relationships may be violated if it is impossible to follow them.
Vladimir
Bernard Ertl
User offline. Last seen 6 years 51 weeks ago. Offline
Joined: 20 Nov 2002
Posts: 757
finish to finish relationship (as all others) means that following activity can not finish before the finish of its predecessor.This is the crux of the question. IMO, FF relationship means that (barring overriding relationships), the two tasks must finish at the same time - not before or after. So the definition does not address the situation presented.

PDM definition (albiet defined without multiple calendars in mind), states that the ES for the successor task should be the EF of the predecessor minus the successor’s duration. Ie.:

ES(successor) = EF(predecessor) - Duration(successor)

Thus, the definition claims that the ES(successor) must be determined by calculating backwards from the finish hour of the predecessor. I interpret this to mean that the successor may not finish after the clock hour finish of the predecessor (based upon that relationship alone).Task 2 can not finish at 18:00 due to its calendar - so it will finish at the earliest calendar time following 18:00 - it is 8:00 next morning.Assuming for a moment that one accepts your premise, is it logical to show a schedule where 100% of the time/effort for a task (T2) is scheduled before a shift break and zero time/effort is reserved for after the break (the EF is scheduled at the beginning of the shift with zero time/effort scheduled for that shift)? Ie. the schedule as presented in #2 shows T3 waiting through T2’s shift break for no apparent reason.

Bernard Ertl
ATC Professional Shutdown / Turnaround Management System
Bernard,
finish to finish relationship (as all others) means that following activity can not finish before the finish of its predecessor. If it will finish later there is nothing wrong with this relationship.
Task 2 can not finish at 18:00 due to its calendar - so it will finish at the earliest calendar time following 18:00 - it is 8:00 next morning. And it is the earliest time for task 3 to start.
So T2 EF>= T1 EF, T3 ES >= T2 EF.
I don’t agree with any other interpretation at all. All other examples you suggested violated the logic links.
Regards,
Vladimir
Bernard Ertl
User offline. Last seen 6 years 51 weeks ago. Offline
Joined: 20 Nov 2002
Posts: 757
If the finish of T1 is a predecessor of the finish of T2 how does T2 finish before T1, as proposed by both answers 1 and 2? If T2 finish before T1 then the relationship you described was invalid.The same argument/logic could be applied to answer #3 - ie. that if T2 ends after T1, the relationship is invalid. Since T1 ends at an hour that is not part of T2’s calendar, it is not possible to have a strict finish to finish relationship. The question then becomes what assumption/expectation should be made with respect to interpreting/calculating such a scenario.I am curious why you would think answer 1 would be appropriate.Where a similar situation could be developed for a T1 beginning on an hour that is defined as non-working for the calendar of a successor task using a SS tie, I would expect the start of T2 to begin after T1. It is logical that the restraint means that T2 may not begin before the real hour corresponding to T1’s start. IMO, the FF tie in the example illustrated above could be interepreted similarly to mean that T2 should not finish after T1 (inverse/converse definition). As I said, it is a matter of expectation/interpretation. Thus, I seek more input from the community on what they would expect the relationship to mean in this case.

I do not wish to disclose which software I tested publicly. I would be happy to share that information via PM to anyone who wants it - providing they first offer their opinion/expectation for the issue.

Bernard Ertl
ATC Professional Shutdown / Turnaround Management System
Rick Moffat
User offline. Last seen 16 years 43 weeks ago. Offline
Joined: 7 Feb 2005
Posts: 4
Groups: None
Bernard;

Your question and its multiple answers demonstrates why we need people to schedule project, not software.

I am curious why you would think answer 1 would be appropriate. If the finish of T1 is a predecessor of the finish of T2 how does T2 finish before T1, as proposed by both answers 1 and 2? If T2 finish before T1 then the relationship you described was invalid.

The only possible answer is number 3. But I have a problem with that that one also. It assumes that, in the event that T1 and T2 cannot finish at the same time, T2 will have 1 time unit left to complete, which may or may not be the case. One would really have to understand the true relationship between the finish of T1 and the finish of T2 to be able to respond correctly.

I assume the main point you are demonstrating is the variations between software packages, in which case let us know which one produced which result and we can critique it from that perspective.

I also posted the same response at the PMI College of Scheduling forum.

Rick Moffat
Task 2 shall finish not earlier than 18:00 - the earliest later time in its calendar is 8:00 at the next day. Task 3 starts after finish of task 2 and lasts one hour.
Did I understand your task properly or there is something I did not notice?
Bernard Ertl
User offline. Last seen 6 years 51 weeks ago. Offline
Joined: 20 Nov 2002
Posts: 757
Vladimir, yes, it looks like you understood the question and I interpreted your answer correctly. Why do you expect T3 to wait on T2’s calendar for the next shift? If T2 ends at 18:00, why would you not expect T3 to start at 18:00?

Bernard Ertl
ATC Professional Shutdown / Turnaround Management System
Bernard Ertl
User offline. Last seen 6 years 51 weeks ago. Offline
Joined: 20 Nov 2002
Posts: 757
Vladimir, it is not so much a problem as a question of expectations. I have seen software offer the following answers to the question:
  1. T2 EF < T1 EF, T3 ES < T1 EF - T2 finishes before T1 finishes and T3 starts as soon as T2 finishes (2 hours before T1 finishes)
  2. T2 EF < T1 EF, T3 ES > T1 EF - T2 finishes before T1 finishes, but T3 starts at the beginning of T2’s next shift
  3. T2 EF > T1 EF - T2 finishes one hour into it’s next shift (roughly 15 hours after T1 finishes)
After re-reading your response, and assuming you took 8am as the initial schedule start, I take it you expect answer #2.

My expectation was for answer #1.

Bernard Ertl
ATC Professional Shutdown / Turnaround Management System
Bernard Ertl
User offline. Last seen 6 years 51 weeks ago. Offline
Joined: 20 Nov 2002
Posts: 757
Vladimir, your answer is as vague as my question I’m afraid. I can see that I need to be much more specific in the question!

         111         111         111
123456789012123456789012123456789012 <- Clock hour at end of hour
WWWWWWWWNNNNNNNNNNNNNNNNWWWWWWWWNNNN <- Task 2 Calendar
XXXXXXXXXX <- Task 1

When Task 1 runs from midnight to 10am, where do you expect task 2 to end and task 3 to start?

W = Working hour, N = Non-working hour

Bernard Ertl
ATC Professional Shutdown / Turnaround Management System
Finish - at 9:00 on the following day if I understood your task properly. Where is the problem?
Vladimir
Bernard Ertl
User offline. Last seen 6 years 51 weeks ago. Offline
Joined: 20 Nov 2002
Posts: 757
Ah sorry. Assume that Task 1 starts at the beginning of the 8hr block/shift for Task 2’s calendar - such that it ends 2 hours after the block/shift ends for that day.

Bernard Ertl
ATC Professional Shutdown / Turnaround Management System
Alex Wong
User offline. Last seen 8 years 37 weeks ago. Offline
Joined: 12 Feb 2003
Posts: 874
Groups: TILOS
Bernard

Interesting case,

I guess to analysis it you need to tell us when the 1st activity start
the exact 2nd 3rd activity start cal time like 8:00 am or 8:00 pm

Regards

Alex