Expert, flexible training in the use of the most powerful scheduling software program in the world: Primavera P6 by Oracle. Call today! (916) 779-4145
Primavera Scheduling

Blog

Owning an Activity in P6

Categories: P6 EPPM, P6 Professional
Comments Off on Owning an Activity in P6
Primavera Scheduling

I was watching a crime drama on BBC television the other night where a rising young detective was explaining to his superiors during dinner the need for “bold delivery of sanctions to the stakeholders”.

“Stakeholders?”, one of his superiors asked.

“Five years ago we just called them criminals”, the young detective replied.

Big laughs all around the table. And I suppose sometimes we feel that project stakeholders are somewhat criminal in what they expect from us. Limited resources paired with unrealistic expectations can be a little maddening for the scheduler who is supposed to create a miracle in the project schedule.

So today we are going to discuss what it means to own an activity. Specifically, we call this the “owner” in Primavera P6. The owner of a task does not have to be a resource, which means that any schedule can take advantage of this feature.

So who exactly can be the owner of an activity? The owner is a Primavera P6 user. If only one person is maintaining the project schedule it probably makes little since to assign owners to activities. In a more complex schedule, however, this feature is quite useful, especially in P6 EPPM.

Knowing how to assign an owner to an activity is the only real trick. You need to add a column to the Activity Table. Owner is found under the General category of columns, as seen below:

 

owner_add-column

How we use the owner depends on which version of P6 that we are using. In P6 Professional the owner is primarily a way to filter out activities in the Activity Table. We can then give each user an idea of which tasks they need to take ownership of in terms of monitoring or updating progress.

In P6 EPPM we can go quite a bit further. To begin with, users can see the activities they own in the Dashboard. As we drink our morning coffee (hot chocolate for me) we can quickly scan all the activities we are responsible for – without having to open up the project schedules. For someone assigned to activities across multiple projects this is a tremendous tool.

Because the Dashboard is typically filtered to show only a portfolio of projects, we must keep in mind that not all of our activities will appear unless they are part of the portfolio currently being viewed. The Dashboard can take a long time to load if you have a large portfolio of projects, so I advise having one portfolio of projects limited to ones with activities that you own.

In the screenshot below you can see the My Activities portlet in the EPPM Dashboard, which is where the activities that I have been identified as the owner reside:

 

Primavera Scheduling

Here are two other benefits of P6 EPPM. When I click on the project in the portlet it automatically opens the project and takes me to the Activities page. When I click on one of these activities I am taken to a screen that shows me details of that activity. I can also edit progress on this activity:

 

Primavera Scheduling

The user will need access to the Projects module in P6 EPPM and have permission to edit activities. P6 Progress Reporter (a separate module in P6 EPPM) also utilizes owner to assign users to activities. This module is a simplified interface that can be run on tablets and much cheaper than a full P6 EPPM license.

Even on a smaller schedule we might have one person responsible for updating progress on submittals while someone else handles field activities. Quite a few of my clients have no desire to set up resources so this is an easy compromise for assigning activities to different people. Moreover, it may be practical to have just a few people reporting progress on activities without expecting every resource to provide this information.

Bottom line: if you do not want to assign resources to activities you can still use the owner field to track progress on activities.

 

Primavera SchedulingDuring our training sessions in Kansas City this summer I was describing how Primavera users approach status updates differently than many Microsoft Project users. Primavera P6 users will change the Data Date when updating the project schedule to match the cutoff date of progress. So a Data Date of November 1, 2016 means that we have considered all progress up to November 1, 2016. (The default time for the Data Date in Primavera is 12:00 am so normally we do not include any progress on the Data Date; I will explain how to change the default time in another post).

In Microsoft Project there is the Status Date, which functions like our Data Date. But inexplicably, many Microsoft Project users never change the Status Date when updating the schedule. I realize I am using a bit of a broad brush here, but I have personally reviewed many Microsoft Project schedules where I was not able to determine the cutoff date of progress very easily because the Status Date was still set to the day the project started. I end up searching for the latest actual date in the update to approximate what must be the Status Date.

The end result of not moving the Status Date in Microsoft Project is that activities will have planned start and finish dates that are in the past. A nominal November 1, 2016 update will show activities starting and finishing before that date. That would be a mean feat unless one has a time machine! Now, I suspect that many Microsoft Project users are self-taught and the program is easier to learn than Primavera P6 or Primavera Contractor. So it is possible that many Microsoft Project users simply lack the formal training to apply the tool correctly.

One reason for the confusion might be Microsoft Project’s insistence on displaying the day you open the file as the Status Date. Granted, until progress is applied to the schedule nothing happens to the planned dates, but making the Status Date appear to be fluid is not a good idea. And I suspect many Microsoft Project users are not changing the Status Date because they think the date has already changed; it has, but until the schedule is calculated this date is meaningless. This is why the true Status Date is often the project start date.

If everything went according to plan, we could get away with not moving the Status Date. But that has not been my experience for the past 29 years that I have worked as a scheduler in the construction industry. Field Marshall Helmuth von Moltke famously said, “no plan survives contact with the enemy.” Battles and projects are both unique endeavors where anything can happen. Work often does not start according to the planned dates, takes longer to complete, or is performed out-of-sequence. Moving the Data Date is the only thing that keeps the schedule honest.

When I started my career as a professional scheduler I would often sit down with my clients and mark up the large (30″ x 42″) hand-drawn logic diagrams and tell them, “here are the activities on the critical path; it has been four weeks since I was last here, so you need to give me four weeks’ worth of progress along this path.” My clients would sometimes think I was being a bit harsh, but I knew what would happen when I changed the Data Date. The work not performed gets shoved to the right.

Temporary procrastination does not always cause an immediate impact to project completion, however. Activities that are ready to start but not currently on the critical path may still have enough Total Float to wait until the next schedule update. My favorite way to track these lagging, non-critical tasks is the Schedule Performance Index (SPI). The SPI compares planned progress in the baseline schedule to the actual progress in the current schedule, expressed as follows:

SPI = Performance Percent Complete ÷ Schedule Percent Complete

Performance Percent Complete sounds mysterious, but normally it is the same as Activity Percent Complete. You can check this setting under Admin > Admin Preferences > Earned Value. Schedule Percent Complete is merely the progress expected per the Project Baseline, whatever that might be. It is important to check which schedule is assigned as the Project Baseline since it may have been changed recently.

Because Performance Percent Complete is the numerator in the above equation an SPI of 1.00 or greater means that more work has been performed than expected. This is also quite hard to achieve, since SPI is based on the early dates in the schedule. So not starting a non-critical activity as early as possible hurts SPI just as much as starting a critical path activity late. For this reason I usually run SPIs filtered by: (1) all activities, (2) critical path, and (3) non-critical activities for comparison.

An SPI of 0.80 would tell us that we failed to complete 20% of the work scheduled for the current update period. Early in a project the SPI may not look so great, but the closer we get to the end of the project the SPI has to improve if we have any chance of finishing on schedule. The baseline can be the previous update and still be valid in some situations. We may have deviated so much from the original plan that running the SPI off the original plan is simply not relevant.

I do warn my students there is no clear threshold for SPI where being under a certain number means the project is clearly behind schedule. The most important thing is the trend. We cannot keep ignoring work that is otherwise ready to start if we want to avoid mass chaos during the waning moments of the project. Unless it will somehow cost us more money to start activities on time, what excuse have we got?

The only drawback to SPI is that the schedule must be resource-loaded, either costs or units. Without knowing the “weight” of each task Primavera cannot compare the progress of one task to another. The activity durations might be the same but the daily effort to perform the tasks can be quite different. In any case, we must still consider that not every activity may be resource-loaded (such as submittals) so SPI will not tell us anything about the progress on these tasks.

Getting back to the snowplow, the analogy that I always use is a broom sweeping the remaining work to the right. (Why we tend to see the future as being to the right and the past as being to the left is a bit curious, as if time travels west to east, but we seem to accept this as making sense). One of the participants in my Kansas City class mentioned how they think of the Data Date as a snowplow. I liked their analogy so much I warned them I would use it in my blog. And so I did!

 

Flag of the NetherlandsAnyone who upgrades Primavera P6 Professional to Version 16.1 will most likely encounter the following problem: Visualizer and Schedule Comparison (the new name for Claim Digger) will not run. The problem is an existing P6 bootstrap file that gets corrupted during the installation of Version 16.1 and therefore displays the settings for the Dutch language incorrectly. Dutch was only added as a language in Primavera P6 Professional recently, which explains why this problem did not occur sooner. If nothing else this might prompt you to consider whether Dutch is the primary language of Holland or The Netherlands. I guessed wrong, but then my ability to speak a second language comes down to saying everything in English very loudly.


This is a known bug addressed by Oracle in Doc ID 2074835.1


The easy workaround is to repair the bootstrap file. First, go to Control Panel in Windows and type “folder” in the search box. Then click on “Show hidden files and folders” and choose “Show hidden files, folders and drives”. From there you are looking for the following file path:

Computer > OS(C:) > Users > [username] > AppData > Local > Oracle > Primavera P6 > P6 Professional

This assumes the program has been installed on the “C” drive, which is a pretty typical standalone scenario. You will also need administrative privileges to access the program files.

Locate the PrmBootStrapV2 file and open it with a text editor like Notepad. Scroll down until you see the languages listed. In older versions of Primavera P6 the language name is listed first, followed by the language ID. But in Version 16.1 the language ID is now listed first. During the update process most of the languages are fixed, but not Dutch. In any case, it is important to check all of the languages to make sure the language ID appears first, as seen below:

  • <internationalizationSettings currentLanguage=”en-us”>
    <availableLanguages>
    <Language LanguageID=”en-us” LanguageName=”English”/>
    <Language LanguageID=”de-de” LanguageName=”German”/>
    <Language LanguageID=”fr-fr” LanguageName=”French”/>
    <Language LanguageID=”ja-jp” LanguageName=”Japanese”/>
    <Language LanguageID=”ru-ru” LanguageName=”Russian”/>
    <Language LanguageID=”zh-cn” LanguageName=”Chinese Simplified”/>
    <Language LanguageID=”zh-tw” LanguageName=”Chinese Traditional”/>
    <Language LanguageID=”es-es” LanguageName=”Spanish”/>
    <Language LanguageID=”pt-br” LanguageName=”Brazilian Portuguese”/>
    <Language LanguageID=”nl-nl” LanguageName=”Dutch”/>
    <Language LanguageID=”it-it” LanguageName=”Italian”/>
    <Language LanguageID=”ko-KR” LanguageName=”Korean”/>
    </availableLanguages>
    </internationalizationSettings>

Make any corrections as necessary, and then save the file. You should then be able to log into Visualizer and Schedule Comparison. And if you feel like it, brush up on your Dutch!

 

 

 

 

 

Claim Digger Limitations

Categories: Claim Digger, P6 Calendars, P6 EPPM, P6 Professional, P6 Tricks
Comments Off on Claim Digger Limitations

Primavera SchedulingClaim Digger is a convenient tool inside Primavera P6 for comparing schedule files to determine what changes have been made. But there are limitations to what Claim Digger can tell us about a revised file. Experienced Primavera users will recall that Claim Digger used to be a third-party program used to analyze Primavera P3 files. When Claim Digger was incorporated into Primavera P6 several years ago the functionality changed in ways that were both good and bad. Being able to export to HTML format is nice, but having the durations (including float and lags) displayed in hours is inconvenient on schedules with durations that are shown in days.

There are third-party software programs that can do much more than Claim Digger. Still, if you think that Primavera P6 costs as much as having a baby then anything that is “free” will be the most desirable option. So most of us will have to get by with Claim Digger until money starts growing on trees.


Note: in Version 16.1 of Primavera P6 Claim Digger is now called Schedule Comparison and is accessed from the Visualizer program. You will find Scheduler Comparison in the same location (Tools) as Claim Digger but clicking on this button will launch the Visualizer program.


The biggest limitation in Claim Digger has to do with calendars. Here are two scenarios where Claim Diggers will let you down:

  1. Changes made to a calendar, such as revisions to the number of hours per day, days per week, holidays, etc. are not picked up by Claim Digger
  2. Changing the calendar on an activity from Global to Project (or vice versa) is not picked up if both calendars have the same exact name

Indeed, Claim Digger will tell us nothing about calendars other than whether the name of the calendar is different. To demonstrate this for myself I created a Project calendar called “Standard” that is a copy of a Global calendar with the same name. I assigned the Global calendar to all of the activities in a sample project. After creating a baseline (copy) of this project I switched the calendar on the activities in the current project to the Project calendar. Claim Digger did not report any changes to calendars.

I then changed the name of my Project calendar in the current project to “Standard Days” and re-ran Claim Digger. As I expected, Claim Digger reported that I had changed the calendar. Yet other than the name, it was still the same Project calendar. I hadn’t changed anything else. In other words, a false positive.

Owners often run Claim Digger (or ask for the results) so anything that suggests a change when in fact no change was made creates unnecessary confusion. Conversely, a sneaky scheduler could block out additional days in the calendar to coincide with an owner-caused delay in order to exaggerate the impact. An experienced scheduler should be able to figure out if there are any shenanigans going on, but the reality is that P6 is chock-full of hidden traps for the uninitiated.

While we are on the subject, I often refer to myself as a “Primavera P6 Scheduler” because there are in fact specific techniques to scheduling projects with Primavera P6. Case in point: Microsoft Project does not allow two relationships between the same two activities, while in Primavera P6 this is perfectly acceptable. A good scheduler with poor Primavera P6 skills can still make a lot of mistakes because of their unfamiliarity with the program. For the same reason, I tend to be very cautious in Microsoft Project because it is not my bread and butter.

I started using Primavera software in 1987 so in my mind the rules that I observe have almost always been specific to one particular program. Prior to 1987 the software I used was proprietary and followed basic Critical Path Method rules. But CPM does not teach you about Activity Codes, Resource Leveling, and so many other things that are now possible because of software any more than an accountant would automatically know how to create a macro in Microsoft Excel.

“Old-school” schedulers who refuse to stay current on scheduling software get no sympathy from me. I started with proprietary scheduling software, learned Primavera P3, followed by Primavera SureTrak, Primavera Primavera P6, Primavera Contractor, and Primavera P6 EPPM. Not to mention all of the other programs like Microsoft Office that I have had to learn over the years. I had to learn WordPress just to type this silly blog!

 

My wife and I recently participated in a group hike to see the new land acquisition by our homeowners association. We own property in a 7,000 acre resort in the Sierras and the new parcel adds several hundred more acres of wilderness that will prevent development near our resort. The problem was, our group leader had told us in no uncertain terms that the last bus back to the resort would be leaving at 5:15 pm. Yet here we were at 4:00 pm still hiking in the wrong direction and realizing we had at least an hour of strenuous hiking uphill to the staging area. So we turned around and headed back. Our group leader was clearly cutting it a little too close.

I feel the same way about scheduling. Yes, there will always be critical activities, but they are of course only critical because other activities are, well, less critical. But if the longest path of activities are themselves quite aggressive then we are only setting ourselves up for failure. So my preference is to have a schedule that can be beat.

I am not talking about sequestering float. You may have heard about strategies to hide float in a schedule. This all started several years ago because nearly all construction contracts in the U.S. state that float belongs to the project and is therefore not for the beneficial use of just one party. The contractor or the owner can use the float, with dibs belonging to whoever grabs it first.

Contractors who felt more entitled to the float began devising ways to hide some of the float by tying activities to unrelated work that starts sooner than the more obvious successors. This removes float from the schedule and makes it more likely that an owner delay to a task will also delay the project. A non-critical activity can quickly become critical because it has very little float. For this reason, the sequestering of float is often prohibited in construction contracts.

In my case, however, I am only trying to avoid being too aggressive with activities that are on the critical path and for this reason I choose the least ambitious type of relationship for the majority of my activities: Finish to Start. My goal is to make roughly 80% of the relationships in my schedule Finish to Start. This percentage can be checked using the DCMA checklist available in P6 Web. DCMA stands for the Defense Contract Management Agency. This checklist – called Check Schedule in P6 Web – can be seen below:

Primavera Scheduling

 

 

 

 

 

 

 

 

 

You set up the parameters of the schedule in this menu. Once Check Schedule is run, the results appear in a separate window, seen below:

 

Primavera Scheduling

 

 

 

 

 

 

At a glance I know whether I achieved my goal of making 80% of the activity relationships Finish to Start. Other goals include managing durations and relationship lags. Anything in green is in compliance while red indicates not in compliance with the specified parameters.

My strategy of primarily using Finish-to-Start relationships is a direct result of the early years of CPM scheduling, when Activity-on-Arrow (AOA) was the dominant scheduling technique. In those days, the arrows represented tasks, whereas the nodes (circles in most cases) were the activity identifiers. Because of this technique, each task had two nodes referred to in this order: the I-Node and the J-Node. So you would see something like Activity ID 1000-1005. This technique was also referred to as the Arrow Diagramming Method (ADM).

The Activity-on-Node (AON) method became very popular in the early 1990s and was certainly spurred along by Primavera Systems’ decision to drop Activity-on-Arrow altogether when the first Windows-based version of Primavera Project Planner (P3) was released in 1994. Ignoring this brief history of scheduling software for a moment, consider that if the arrow represented the activity, then all relationships were Finish-to-Start. The J-Node of the predecessor was also the I-Node of the successor. Leads and lags were non-existent. The predecessor(s) always had to be complete before the successor could start. This can be seen in the following Activity-on-Arrow diagram:

Activity-on-Arrow

 

 

 

 

We used to split activities into percentages so that, say, the first 25% of drywall hanging could start as soon as 25% of the walls had been framed. This effectively became the lag that we use today with Start-to-Start and Finish-to-Finish relationships. Otherwise, it was fully expected that some work would start out-of-sequence, meaning the successor starts before the predecessor is finished.

By the same token, Finish-to-Start relationships are far more likely to generate out-of-sequence progress in today’s precedence schedules. And my response is “great!” You are beating my schedule! I have set you up for success, not failure. Now, I realize some people are bothered by out-of-sequence progress, but unless there is truly a “bust” in the logic or the result of unexpected delays I see this as a positive sign.

There is another benefit to the Finish-to-Start relationship. It is more likely our resources will not become over-allocated. Older schedulers like myself used logic to limit the number of resources required because the scheduling software was too primitive to do this. We called this type of logic “crew restraints” and I still use this technique today. The resource leveling feature in Primavera P6 is not always the best option for controlling the allocation of resources. And besides, if the schedule is not resource loaded then leveling is not an option.

My attitude often comes down to this: prove to me you can get ahead of my schedule and I will modify the logic accordingly. Until then, my logic assumes a more linear progression of the work and is therefore more forgiving. And everyone will feel better because the project end date does not keep slipping. What could be better than that?

Spring is in the air, which means another release of Primavera P6 Professional Project Management (PPM) and Primavera P6 Enterprise Project Portfolio Management (EPPM).

The list of changes to Primavera P6 Professional is short, but sweet. First, after years of begging, Oracle has finally introduced a feature that has long been part of Microsoft Project: the ability to show the relationship type and lag in the Activity Table. Yes! Previously, this information was only available in a tabular Report or by exporting to Microsoft Excel. Now we can finally show this level of detail in a graphical setting. These are new columns called Predecessor Details and Successor Details, as seen below:

Primavera Scheduling

Second, Claim Digger has been moved to Visualizer and is now called Schedule Comparison. I suspect this was done to avoid the problem of running Claim Digger with the SQLite database. This type of database does not support third-party applications like Claim Digger, which is an important tool for many Primavera users. Rather than wait for SQLite to change its spots, Oracle apparently decided to take a more proactive stance.

Quite a few enhancements have been added to Primavera P6 EPPM to improve performance and to bring it more into line with Primavera P6 Professional:

  • Advanced HTML5 Activity and EPS Views
  • Basic HTML5 Resource Assignment View
  • Additional copy project options
  • Daily Timescale in Team Usage View
  • Additional Global Search & Replace functionality
  • Streamlined installation and management of the P6 Pro application with the removal of JRE

One of the new copy project options is the ability to copy projects that are linked to other projects but not copy those (external) relationships. Previously, we could only choose to not copy external relationships when copying one or more activities. Now this option can be applied to the entire project.

HTML5 pages load faster than the Java-based applets that were originally used in Primavera P6 EPPM and do not require plugins. The HTML5-based pages are referred to as Basic View, but users have the option of viewing the Java-based pages in Classic View.

Relationship types and lags can also be shown in the Activity Table in Primavera P6 EPPM.

Additional information regarding these enhancements can be found here. In addition, Oracle has created a very nifty app called the Cumulative Feature Overview Tool. It is sort of like Claim Digger for analyzing different versions of Primavera P6. You input which version you are currently using and the tool will tell you what features have been added since then, and when the changes were introduced. Click here to access the Cumulative Feature Overview Tool.