In an integrated cost/schedule environment, activities in a schedule are identified with their control account points (that is, control accounts or work packages) in an earned value management system. This integration allows budgets and forecasts to accurately reflect the most current actual and estimated scheduling information.
by Alan Kristynik, PMP
You can create an integrated cost/schedule system between Deltek Cobra (Cobra) for multi-program cost engine for Earned Value Management (EVM) and Deltek Open Plan (Open Plan).
By linking a Cobra project with a scheduling tool, you can have a system that provides for single data entry. This avoids both the extra effort and the increased risk of error associated with having to enter the data in both the schedule and Cobra. The detailed resource-loaded schedule provides the time-phasing of the budget in Cobra while status data from the schedule generates earned value in Cobra.
The Cobra Integration Wizard also allows you to load code files from your schedule. You may save only the settings you have made for your configuration, or you may synchronize Cobra with your schedule as well.
Share Cost and Schedule Information
When planning to integrate your Cobra project with a resource-loaded schedule, consider the best practice tips below.
- An activity in the schedule should correlate to a work package in Cobra.
- Activity durations should be from six to eight weeks in order to calculate accurate earned value (by collecting actual costs at the cost account level, you can reduce the number of charge numbers). Note: Activities with longer durations can be used if the progress technique of their work packages is Percent Complete. In this case, the Physical Percent Complete entry in the schedule should be based on something that can be measured objectively, such as the number of completed drawings.
- Budget revisions should begin in the schedule as additions or revisions and be updated in Cobra.
Because Cobra supports the milestones progress technique, it is also possible to set up a system where several activities in the schedule generate a single work package with milestone steps in Cobra. In this scenario, the baseline finish dates of the activities in the schedule can be correlated to the milestone steps in the work package. Note, however, that the earned value is calculated as a weighted percentage for all budget elements of the work package.
While Cobra does have the ability to build the schedule and load the budget manually, this process does not promote integration between cost and schedule. The best usage of this feature would be to add the following items into the Cobra project:
- Level of effort and apportioned work packages
- Planning packages maintained in Cobra
- Budget revisions made in Cobra
- Adjusted resource hours updated in the scheduling software
You can then use powerful features in Cobra such as top-down planning to convert these resource loadings into a fully costed budget baseline, and you can update the schedule with data from Cobra.
The Integration wizard is a user-friendly feature that allows you to define how your Cobra project should be created or updated from your schedule. The Integration Wizard also allows you to load code files from your schedule. You may save only the settings you have made for your configuration, or you may synchronize Cobra with your schedule as well.
The following is a list of items that can be loaded from a schedule:
- Code files
- Resource definitions and rates
- Code assignments
Prepare Cobra for Schedule Integration
It is possible to load information such as rates from your schedule using the Integration wizard.
If the information in the schedule is not accurate, you can create these files manually before using the Integration wizard and refer to them during the integration process. You may need to create the following files before the integration process:
- Code Files
- Resource Files
- Template Resource Files
You can create an empty project in Cobra into which to load the schedule data. For example, if your schedule contains cost classes other than current budget (CB), you should create a blank project with all valid cost classes defined before loading the budget.
Note: When loading data into an existing project, delete items from Cobra that are not in the schedule option located on the Action Selection page of the Integration wizard.
If the work package record does not exist, Cobra creates the appropriate progress technique and sets the work package start and finish dates exactly equal to the activity dates. If the work package record exists at the time you load the schedule, Cobra adjusts only the required data. For example, if the activity has slipped and the finish date is greater than the work package finish date, Cobra adjusts the work package finish date, not the work package start date.
There are three ways to create code files and breakdown structures:
- You can have the Integration wizard automatically create these files, in which case Cobra determines the structure type from the data in the schedule.
- You can create the empty code files manually before running the Integration wizard. This enables you to specify the structure of your choice. The Integration Wizard then populates the code file with the values found in the schedule.
- You can create and populate the code file before loading the schedule. This enables you to validate the entries in the schedule against the code file.
Note: If you want to use a non-significant breakdown structure in Cobra that is punctuated in the schedule, you must create the non-significant breakdown structure before the integration process. You can then load the codes from the schedule into the code file.
You can roll up resource information by defining the budget element calculations for a higher-level resource. It is possible to roll up resource information by defining the budget calculations for higher-level resource but not for lower-level resource. The lower-level resource requirements can be combined and rolled up to a higher level for costing purposes.
Cobra loads the unit rate from the resource file only if the value for the rate is any value other than 0 or 1. If the rate for the resource is not equal to 0 or 1 and a calculation template is not used, Cobra creates resource assignments with the result of HOURS and DIRECT, where the direct rate comes from the rate defined in the schedule. If the rate for the resource is equal to 0 or 1, Cobra creates the resource assignment with a single result of DIRECT.
You can load direct rates from the schedule using the Integration Wizard. If you have results other than direct, enter these rates into the rate file before loading budgets or forecasts. For example, if you plan to use a template resource file, you will need to create OVERHEAD and G&A rates.
Template Resource Files
You can define complex burden structures to be used during the load resource definition process in the Integration wizard by creating a template resource file.
You can create a calendar in two ways:
- You can have the Integration wizard automatically create the calendar file.
- You can create the calendar file manually before running the Integration wizard. This enables you to adjust period cut-off dates and working hours before the baseline is loaded.
Note: Cobra determines baseline spread by fiscal cut-off dates and working hours.
Data Import from Open Plan
Use the Integration wizard to import data from Open Plan into Cobra.
Demonstration data is provided in both the Cobra and Open Plan applications. You can use this data to help you learn about the Cobra/Open Plan linking function. The Open Plan installation includes a demonstration project named Ship that when restored can be linked to Cobra.
Prepare the Open Plan Schedule
Preparing the Open Plan schedule involves all or some of the following elements: file format, identifying the link, resources and structures.
Identifying the Link
Before importing data into Cobra, you must define how you want to link activities to control accounts and work packages in Cobra. You use code fields or user character fields in the schedule to identify the WBS, OBS, and the work package ID. If you want to link many activities to a single work package, you can identify the milestone ID. The activity ID is also a selection for linking.
The Integration wizard in Cobra prompts you to select how the schedule links to the following elements in Cobra:
- Control account codes
- Work package codes
- Code assignments on the control account
- Code assignments on the work package
- Progress techniques
- Units to do and units complete (user number fields)
- Milestones ID
- Milestone weights (BAC cost and BAC quantity are also in the pick list)
- Filter data being imported
Note: If you use the Activity ID and you insert an activity, Open Plan renumbers the remaining activities. Codes and user character fields do not automatically change and thus are the preferred fields for integration
Load from Schedule or Baseline
Cobra imports the following fields from Open Plan:
- Schedule Dates: Selecting schedule dates retrieves the SSDATE and SFDATE values from the activity (ACT) table and the resource information from the USE table. This should be used when there is no baseline in the Open Plan schedule and the baseline is to be imported based on resource scheduling calculations.
- Baseline Dates: Selecting baseline dates retrieves the BSTART and BFINISH fields from the selected baseline (BSA) table and the resource information from the baseline resource (BSU) table.
The Date Selection page of the Integration wizard indicates if the data is from the current schedule or from a saved baseline. The benefit of retrieving data from a baseline is that the time phased resource assignment data is more accurate. You can create a reporting calendar in Open Plan to match the calendar in Cobra. You can also use the Export Calendar to Open Plan feature (click Open Plan Calendar in the Export group on the Integration tab) to create a reporting calendar that matches the Cobra calendar in Open Plan.
After you create the reporting calendar in Open Plan, open the Project Properties dialog box and click the Cost tab. Select the reporting calendar that matches the Cobra fiscal calendar:
After saving, Open Plan creates a baseline that breaks the time phased assignment data into periods that match Cobra’s periods. Using this process, the time phased assignment data in Open Plan exactly matches the Cobra time phased data.
- After you select to import from a baseline, all data comes from the baseline including the linking codes, milestone weights, and so on.
Note: You can use Open Plan to view the baseline data and confirm that the values in the baseline are updated.
- If you are importing from schedule dates, Cobra looks at the results of resource leveling and spreads the information over the calendar periods.
- To load from early or late dates in Open Plan, select the date set when creating the Open Plan baseline.
Checking Open Plan Baseline Usage Records
Cobra places resources into the time-phased periods based on the data it receives. If you are loading baseline, the data that Cobra loads is stored in the Baseline Usage (BSU) table. Refer to Check Open Plan Baseline Resource Records for steps on how to view data in the BSU table.
Load Resource Codes as Non-Significant
The resources in Open Plan have a punctuated significant structure; thus, the resource codes look like SHIP.LABOR.83.8301. In Cobra, you can trim the parent information and use a non-significant structure. This is useful because when importing actual costs, the resource codes must match those in the accounting system. Most accounting systems do not contain the parent data and use codes such as 8301. Select this check box to trim the parent.
Use Template for Resource Calculations
If you want to create a new resource file or rate when importing from the schedule, you can use a template for resource calculations. This option is located on the Resource and Rates page of the Integration wizard. If you select this option, you can select a resource file in Cobra that is used to define how resources being imported from the schedule are burdened or have multiple results in the calculation.
If a resource in the template resource file matches a resource name in the schedule, that resource is copied from the template file to the new resource file being created; otherwise, the unit for the resource in the schedule is used to match the resource name in Cobra. If a resource in Cobra is found with the same name as the resource units in the schedule, Cobra uses the calculation for the creation of the new resource.
For example, a resource in the template resource file with the name of Hours is used for creating the calculation of the labor resources.
Roll up Resources Structures
The schedule usually goes to a detailed level of the individual name. This type of detail is usually not used for budgeting purposes and prevents you from explaining a variance caused by the replacement of one resource with another.
You have the option to automatically roll up the resource structure during budgeting. To roll up the resource structure, create resources in the Cobra resource file down to the level found in the schedule, but define calculations only at the level you want to import them into Cobra.
For example, to import a resource with an ID of LABOR.ENG.ENG01 from Open Plan into Cobra as LABOR.ENG, perform the following:
- Create the resource file in Cobra down to the level used in Open Plan.
- Do not define calculations at the lowest level.
- Define the calculation at the node LABOR.ENG.
Note: When importing data, Cobra automatically summarizes the child codes and imports the budget into LABOR.ENG.
You can also use the option in Open Plan. In Open Plan, select the Roll up for Scheduling option on the General tab of the Resource Details dialog box to indicate the level you want for the baseline data. Save the baseline based on scheduled dates.
Cobra uses the value in the Resource Assignment Level field from the schedule as the value for the base or first result when linking with a resource-loaded schedule.
If a curve is not used on the assignment, the level is multiplied by the duration. If you plan to later update the Open Plan project with information from Cobra, use spread curves rather than offsets and periods as this information does not transfer back.
When you load budget from Open Plan, you can load from a baseline or the schedule. Cobra reads the time-phased spread information from the usage file. If you are loading from a baseline and you want the spread in Cobra to match, you must use a reporting calendar and perform resource scheduling before the baseline is created. Cobra does not support loading from early or late dates in Open Plan.
If you want to load from early or late dates, you must create a baseline in Open Plan based on these dates and then load from that baseline into Cobra. If you select the Update early and late dates option on the Status page of the Integration wizard when integrating with Open Plan, Cobra informs you that it is not supported.
Depending on the detail at which you resource load your schedule, you might want to take advantage of one of the following options:
- If you resource load at the name level, you should set a baseline at the pool level. If necessary, you can schedule the individual resources in six-month blocks of time. This prevents you from having to explain a variance caused by the replacement of one resource with another
- Roll up resource information by defining the resource assignment calculations for a higher-level resource. Do not use the roll-up feature if you intend to update Open Plan resources from Cobra
- In Open Plan, select the Roll up for Scheduling option on the General tab of the Resource Details dialog box
Load Resource Files from Open Plan
A resource code file originating from Open Plan can be brought into Cobra. You can use a punctuated significant breakdown structure for resource codes in Open Plan and a non-significant breakdown structure for resource assignments in Cobra.
When loading code files from the schedule, Cobra compares the resource code with the format of the breakdown structure validating the resource assignments in Cobra. If a punctuated-significant format was used in the Open Plan resource code and a non-significant format is used in Cobra, Cobra removes the parent information from the resource code. Thus, a resource with an ID of LABOR.ENG.ENG01 would appear in Cobra as the resource assignment ENG01.
A best practice to consider and embrace within an organization deploying Deltek Open Plan and Cobra is to document desktop instructions for the EVM user community to access as needed. Promote and keep “ever-green” as programs and organizations mature in EVM Capability.
This topic is the third of four in my Deltek Cobra cost/schedule data sharing series:
If you’re building a team and you have positions you can’t fill, you need to use SMA Talent on Demand (TOD®)! With TOD®, you can find experienced talent, such as Alan, matched to your exact needs: