Aurora-CCPM Execution Simulation Timestamps

00:00:02:20 – 00:00:30:33

Hello. Today I want to go through the process of doing a test execution of a CCP model. So the data I’m working with is real to some extent. It is probably nothing to do with the project you’re working on. But the key point is that it is reasonably complex. It has safe and aggressive durations. And the current state of the model is that I am fully buffered.

00:00:31:00 – 00:01:02:05

So I have a project buffer added. I have feeder buffers, so I am ready for execution to start. Now if I go ahead and try to make a fever chart, I’m going to get this warning. And basically what I need to do is the thing that computes the fever chart updates and also computes the task priorities, which you can see are all set to zero right now is to run analyze progress.

00:01:02:08 – 00:01:34:31

Now analyze progress does a real level of the schedule with respect to anything that has happened to date. It takes time. Now information into account. So it basically, reads triggers everything that has not occurred yet based on progress to date. And then it additionally analyzes the priorities and buffer incursions and so on. So most of the time when you’re in execution mode, you will do analyze progress.

00:01:35:00 – 00:02:10:30

There are exceptions, which I will get into in a minute. So I’m going to go ahead and analyze progress and what that is going to do is set my initial point so that I can actually pull up a fever chart, and I will have some task priorities to work with. So now if I go to fever chart, you can see that I have a point at zero zero, which if everything is happy and my project buffer is not unduly, frisky, it should be at zero zero.

00:02:10:31 – 00:02:34:22

In rare cases, it might be at zero. And then up here a little ways on the project buffer consumed, depending on the way. I have my project set up, but that is suboptimal. This is the way you usually want it to look. Now for my walk through. This is going to be my preferred default view. And there are a few reasons for that.

00:02:34:24 – 00:03:16:20

There are different ways you can do the walk through, but all of them require having access to the current schedule, access to the task priorities. I can also pull up the, task priority report. But honestly, for this type of execution simulation, I tend to prefer to just use the task priority in the tabular editor. This report is more intended to give you insight into why things are the way they are, and maybe some additional information about required resources.

00:03:16:23 – 00:03:42:33

So basically, to give you the full rundown of what I have, so I have my duration information and that is mostly for reference, especially if I’m going to do any remaining durations, the start date and the end date. Give me an easy way of making sure that I’m going through in temporal order. The main reason that matters is work ability.

00:03:43:02 – 00:04:14:13

Everything in my model is currently forward scheduled, which means it is as early as possible, and it is in fact workable if I work the schedule the way it is currently scheduled. Keeping in mind that these durations are aggressive. So a lot of the time they are going to overshoot. So I’m going to show you a couple different strategies for kind of working on your schedule.

00:04:14:16 – 00:04:41:26

So option one, let’s say you have very old data. So that is kind of outside of this demo. This demo is more focused on the case where you’re doing a trial run of your execution schedule. If you have real data, just transfer it across and you will use reference copy paste for that. If you have it in another system, you just need one property, such as IP number or name.

00:04:41:26 – 00:05:09:02

That is unique, that matches the other system in a little bit. I will kind of incidentally show you how to do that, but in my case, I’m going to be kind of going from one Aurora session to another Aurora session, kind of with an eye towards. I have made, a point to kind of put together good data, and now I’m trying to transfer it to.

00:05:09:04 – 00:05:38:15

Okay, so, what I am going to do initially is show you the simplest option. So. Okay, I could just track finger or copy and paste so I could copy start date and end date over to actual start and actual end. And I could mark this as complete. That is completely valid. However, if that’s all you’re wanting to do, we do have a convenience thing.

00:05:38:18 – 00:06:15:06

And that is set actually as scheduled. And that does exactly what I just did. So it copies the start date and end date to the actual start and actual end. It marks the job is complete for milestones. That’s a very easy and safe thing to do. Now for this next one. Obviously it is not a milestone. And so I can see that there is, you know, a 120 minute gap between the aggressive duration and the safe duration.

00:06:15:09 – 00:06:47:07

So probably it’s going to take longer. So I might, you know, just as an example, I will start off with fluttered originally says, and then I’m going to bump it out a little bit. So at this point I’m going to analyze progress. I’m going to get you to note the fact that my most recent actual in the system is 1030, and you can see that the little bar is here, but the schedule as a whole has not updated.

00:06:47:09 – 00:07:11:02

Now, if I want to kind of do a little update without updating task priority, I can do real level control. Again, that is a little unusual. I’ll get into why I might like to do that in a bit, but most of the time in a case like this, I would just to analyze progress. Easy peasy.

00:07:11:05 – 00:07:51:06

Okay. And so it has now updated my schedule. So you can see that the bar that had been at 1030, that’s still there. But now the underlying job has extended to cover the same time period. And more importantly, you can see that the subsequent work has actually bumped over, so the this is basically reflecting the philosophy of execution mode that if we have not heard about job progress, we assume there is no job progress.

00:07:51:09 – 00:08:21:24

And we assume that since we haven’t heard about it, it will start at time, now or later. Now, I have not deliberately set a time now up to this point. If I enter actuals and I analyze progress or I re level schedule, it will assume that the most recent actual is my default time now. So right now it is treating my current time now as February 2nd, 2026 at 1030.

00:08:21:27 – 00:08:50:10

I can explicitly set a time now, and I do that from the execution menu set time now it shows what it currently is. So this can also be good if you want a sanity check. And let’s say that I want time now to be a couple hours later and I’m again going to analyze progress. This is going to update the incursions and task priority and all of that good stuff.

00:08:50:13 – 00:09:25:07

And now I have a gap. And the reason I have a gap is, again, it is assuming that I can’t start anything in the past. Now let’s say that this was a mistake. What? Let’s say that maybe I did an update and then after the fact, I get some additional information, about stuff that already happened. So first you actually can see that I haven’t, made progress on my, original critical chain.

00:09:25:07 – 00:09:55:14

Not significant visible progress. Anyway, this is kind of a long schedule, so that isn’t too surprising. So it’s it’s scooch over just a tiny bit. But I don’t have any buffer incursion yet, so right now, my favorites are this very boring. In any case, let’s say that I had kind of missed an update, and so this most recent update maybe bumped up here or did something crazy.

00:09:55:17 – 00:10:24:15

You can right click on the wonky point and say remove update point, and that will strip it out and basically act as if that update never happened. So that’s good. If so sometimes when you’re doing manual execution, you’ll kind of try stuff out and see how it goes. And sometimes it doesn’t go so well. And so it’s good to have a way of removing that.

00:10:24:22 – 00:10:56:14

So that’s what you can do there. But back to my original slot. I can put this in the past. So let’s say that this actually did happen at 1130. So I’m going to now say this did happen at 1130. It’s done. This next one is actually a milestone. But just for kicks, I’m going to say maybe it wasn’t a real milestone.

00:10:56:17 – 00:11:38:11

Maybe this is in work and maybe it has a duration, remaining duration of five minutes. And you can see when I did that, the active duration actually changes, because whatever the remaining duration is, that trumps the originating duration. So now if I. Whoops. So this is actually a good if you accidentally go to schedule, you will get this notification because basically scheduling does not have time now enforcement it will collapse things back to the left.

00:11:38:14 – 00:11:53:23

So I do not want to continue with the scheduled command. I want to continue with analyze progress.

00:11:53:26 – 00:12:20:24

Okay. And so now you can see my in work job. It’s remaining five minutes is starting at time. Now. Now in some cases the remaining chunk may schedule out to the right a little bit. Let me know if you want more information on that. Or you can just mess around with Pin and work jobs versus allowing work jobs to float.

00:12:20:26 – 00:12:44:12

The short version is if you pin in work jobs, they will pin back here and continue work. The assumption being you have been working on them. You will continue to work on them until they are done. The allow in work jobs to float allows for the possibility that you are pausing the job, and you will come back and finish it later.

00:12:44:12 – 00:13:20:10

So in that case, especially if it’s a high slack job, it may scoot, depending on what’s going on with the rest of the schedule. So as you can see, it’s pretty slow and labor intensive to kind of manually work the schedule. When you are manually working the schedule, my recommendation most of the time is if if you want to be very precise about it, do a relatively small number of jobs at a time.

00:13:20:13 – 00:13:51:29

The one thing to be careful of is if you have a lot of overlapping jobs like this. Especially longer jobs, you’re gonna run into the thing where, let’s say you mark this as having started and you don’t put anything on the others. They’re all going to move over to be this late or late or, and so it’s good to just be conscious of that and maybe use the remaining duration a little bit more liberally than you would otherwise.

00:13:51:32 – 00:14:26:21

So all of that is the way you kind of work it manually. You would keep an eye on the task priority because of course, basically the whole idea is you’re wanting to simulate, sorry, I’m just going to. There we go. That’s better. You’re you’re simulating the way the schedule would be worked. So really, what you want to do if you’re doing it really, really manually is you would go through in priority order.

00:14:26:24 – 00:15:06:12

But you do have to keep a little bit of an eye on workability, especially if you’re messing around with your durations. The thing that I often like to do, if I’m trying to basically simulate a real schedule, is I cheat kind of. And here’s what that cheating looks like. It is a little involved, but in terms of actually getting a somewhat realistic outcome, I have found that much more satisfactory than stepping through one job at a time.

00:15:06:15 – 00:15:44:28

So here’s the feeder method. The cheater method takes advantage of the fact that the real work time for most jobs is much more likely to be the safe duration than the aggressive duration. So we’re working to the aggressive duration schedule, but the likely actual duration is likely to be more like the safe duration. I will note that with the cheater method, and I shouldn’t call it the cheater method because it is very plausible, as you’ll see in a minute.

00:15:44:31 – 00:16:13:07

You may want to come up with a duration in between. So maybe the safe duration minus a little bit. You could even do some fun stuff in Excel to kind of compute, the safe duration with a random modifier or something like that. Sky’s the limit. But the basic idea here is I am going to set the active duration in my case to safe.

00:16:13:10 – 00:16:50:02

If you want to get fancier with your durations, you absolutely can. And what I am going to do is three levels. So this is a case where I am re leveling instead of analyzing progress, because I don’t want my favorite chart to update, I would just have to remove that update. So I now have the safe duration schedule, which is not what I am using for my CCP management, but is likely to be much more similar to what actually happens.

00:16:50:05 – 00:17:16:04

So what I am then going to do is kind of pick what I would consider a reasonable cut off. I’m going to kind of come down. And this is where the fact that the selection is synchronized is kind of handy, because a lot of the time it’s easiest to look down through the gear chart to see the last spot before, you know, you get a big parallel section.

00:17:16:06 – 00:17:49:05

So I’m basically going to say all of this work here has been worked based on the safe duration schedule or whatever other duration you wish to use, but basically, it took I’m using the safe duration schedule to model how long it actually took. And then at that point, I am going to switch back to aggressive and I am going to analyze progress.

00:17:49:08 – 00:18:30:21

So this is now going to process my updates, and get me my updated fever chart and updated priorities and all of that good stuff. So now you can see that, I have made some genuine progress on my critical chain. I’m still not registering anything on my project buffer. We can look at my split display and maybe see how far off I am, just for curiosity’s sake.

00:18:30:24 – 00:18:59:10

So it looks like in this particular model, I have a pretty fair gap. It is worth noting that depending on your settings, if you do have a gap, it is completely fine to either move your project buffer or make your project buffer longer because overall, it is more helpful to have stuff showing on your project buffer consumed sooner rather than later.

00:18:59:13 – 00:19:28:00

So that is a little wonky. I’m sorry I didn’t get that straightened out before I started the walkthrough. For now, what I might do in the interests of making things more interesting is just move that back a bit. So this might take me a couple tries. I will pause the video if it takes me more than one try.

00:19:28:03 – 00:19:56:17

Okay, so I have pulled the project buffering quite a bit. So on my next update round, I should get some buffer incursion. Okay, so what I’m going to do is another round. Updates.

00:19:56:20 – 00:20:34:09

Okay, so I am going to again change to safe duration. I’m going to re level. The reason I’m re leveling rather than scheduling is I don’t want things collapsing back to the left. I do want to kind of reflect the stuff out in time. And basically what I am doing with all of this is I am simulating roughly what I could work at a given time, because even though the task priorities are sometimes quite high.

00:20:34:09 – 00:21:19:03

So this is two, but this is 155. I can work all of these at the same time and be okay. And one of the key things is I do need to be ready to work some lower priority things, because otherwise I will just wait for them to become higher priority. And that is not actually, desirable. So I am going to go ahead and and it’s worth noting, so the the order on the Gantt chart is not guaranteed to be quite the same as the order in the tabular editor.

00:21:19:05 – 00:21:42:31

Because although it’s sorted by start date, the end date sort is not the same. It is completely okay if they’re not in an order quite to suit you, to kind of do a chunk and then do another chunk. And, that may or may not help make it easier to control, but that is completely fine to do.

00:21:42:31 – 00:22:14:19

You can do it in multiple chunks, kind of until it suits you. So this is a case where I kind of have to decide where to cut stuff off. So I’m going to do and if you’re using the Gantt chart to control, you can hold down the control key to allow multi-select. So I’m going to do all of these guys.

00:22:14:22 – 00:22:52:20

And then with this one I am going to do set actuals as scheduled. But having done that I am actually going to go back and change it to in work. I’m going to remove its actual and and I’m going to set the remaining duration to quite a bit. I now have, mathematical Oddity. I am now going to change my durations back to aggressive and analyze progress again.

00:22:52:23 – 00:23:26:09

Okay, so having made the update to the project buffer and, analyzed with the aggressive duration schedule, you can see that my fever chart is looking kind of more normal. Now, this looks kind of wonky, but part of that was that the buffer was in the wrong spot. So when this is one time, you can use remove update point so that looks more like it should have in the first place.

00:23:26:12 – 00:23:58:11

So at this point I can see that if I can kind of level out my progress, I’ll actually be okay. But if this were a real project, I would know that I needed to be pretty on the ball. Now, to, to kind of put the brakes on. So I hope that the you can see the potential in actually manipulating the durations and really leveling to get your actuals.

00:23:58:11 – 00:24:34:02

The one thing is if if you use the safe durations to do that, it is important to remember to toggle the durations back, because otherwise, because the buffers actually are duration zero in safe mode, it’s going to be kind of wonky if you analyze progress when that’s the case. Now, if you’re using another source like Excel, and just manipulating the active duration directly, you don’t have to worry about that.

00:24:34:05 – 00:25:21:22

And you can just transfer and, potentially, but you still want to read level when you’re at the periods that you have transferred the different durations, and you will still want to switch back to aggressive duration to reset, for the execution phase, because otherwise you’re going to again blow out your project buffer. If you’re kind of doing that method, don’t be shy about kind of a composite where you’re maybe using 90%, just kind of following the schedule with manipulated durations.

00:25:21:25 – 00:25:54:15

But then as you saw me do with the in work tab, you can change things. You can actually manipulate the actuals after transferring it. And that’s especially good for stress testing things. You know, maybe you want to see what would happen if a critical chain job actually did poorly, but everything else is working really fast. Any of that sort of thing you can do by just manipulating the, the actual ends.

00:25:54:15 – 00:26:49:11

It’s worth noting that the actual starts only really matter for display purposes, or if something is started but not completed, but it is the actual end that really drives things. The other thing I wanted to let you know about is, obviously this is a lot of work to do. Well, and one thing that I do sometimes do is especially if I have kind of worked up a series of updates, it took me several tries to kind of get the plot looking right and I want to be able to reference those updates later, whether it’s for a demonstration or whether it’s because I kind of want to retry a variation of the scenario,

00:26:49:14 – 00:27:15:28

one thing you can do is take a chunk of updates and you can ether, so you can reference copy, and I’m going to use IP number. That’s kind of the most common unique ID. And I can either go straight to another aurora session. But most of the time the whole point of doing this is you have it for later reference.

00:27:15:30 – 00:27:47:07

So I for example, could call this update one and I’m going to paste it in. And the one thing to be slightly careful of is to to make sure that depending on your IP numbers and so on, make sure that Excel hasn’t helped you out. And actually changed anything on you. In this particular case, it all looks good, but it depends on your data.

00:27:47:10 – 00:29:08:25

If you’re at all worried about that, what you can do is make sure to go ahead and do it at the column level so it gets everything, and change your format cells to text. Now that obviously changed things, but then you’re going to re paste. And the purpose of this is to make sure that Excel is not crunching the data, because the whole point behind this is to allow us to go or turn around and transfer this to another Aurora session.

00:29:08:28 – 00:29:40:10

So now I can go to another Aurora session, to any tabular editor that has the corresponding columns. If you have any trouble with this, please review the video on referenced copy paste. But the short version is that the header names have to match. Exactly. And the, columns that you’re referencing actually have to be included in this view.

00:29:40:13 – 00:30:11:10

And then lastly, it is going to be going off of whatever unique ID you pick. In this case, I p number so I can come in here and come to my session. That does not have any updates yet. I’m just going to make sure that I have my baseline set, because I’m not sure that I did in this copy of the model.

00:30:11:13 – 00:30:40:16

Okay. So I’m gonna open my favorite chart. Okay. There’s my point in the lower left. So, you just go to Excel, you copy your data is referenced, paste is grayed out, recheck your column names and everything. Again, they have to do the columns you see here have to include all of the columns from Excel. It’s okay if it includes other stuff too.

00:30:40:18 – 00:31:12:13

And I’m going to do reference paste using a pin number and boom it transfers everything. And then I can do analyze progress. So the main benefits of this one, it shows how you can transfer data if maybe you already have execution data from a real run from another system or what have you. Note that in this model I had not moved the project buffer.

00:31:12:13 – 00:31:42:13

So it’s showing the issue. I showed you a few minutes ago. But anyway, whatever the data source, this gives me a way of easily transferring a series of updates. And maybe they’re in different spreadsheets. Or maybe I just have a whole bunch in the same file. You would transfer each chunk, and then you would analyze progress in between.

00:31:42:13 – 00:32:01:02

And that allows you to basically re step through the same thing again for whatever reason, whether the data is kind of real data, and you want to see what the CCP logic is going to tell you to do at different points.