Microsoft Project Add-In Utility
The Microsoft Project Add-In, named IPM Utilities, is a set of tools created to streamline interactions between certain IPM procedures and your Microsoft Project schedule. Other useful features are included as well, and grouped separately in the 'Other Utilities' section; these are not directly involved with IPM.
1. Installation and Compatibility
The IPM Utilities are installed for all users on a computer, and the installation will require administrative privileges. The download information for the most recent version can be found below.
Version 20.2.0; Released January 8, 2020
-
-
Use Serial Number 33d5-a6ed to activate the software after launching it for the first time
The 32- and 64-bit versions of Microsoft Project are supported. The ribbon menu does not exist in Project versions before Project 2010, so the interface will appear differently.
Activation
The IPM Utilities are free, but they must be activated after a thirty-day trial period. This means you need to register the software with the free serial number 33d5-a6ed. The software registers automatically if you use the top button on the activation screen: “Active Now using your issued serial number”.
Online Activation - Activate Now
This option requires you to enter your name, company, email address, and serial number. Use the serial number 33d5-a6ed for the serial number field to activate your software.
Offline Activation - Step 1
Offline Activation - Step 2
Activate Later
1. IPM Settings
This form is responsible for storing your field settings for the IPM Utilities. The Settings Profile Tag text box at the top of the form is used to maintain your settings between multiple Project files. Entering in a unique, identifying tag for the settings you have entered will tag that Project file with your profile, and in the future will load the corresponding settings. This makes transitioning between multiple Project files seamless once they have been tagged with different settings profiles. The text you enter must be 10 characters or less.
The Settings form requires the user to select several fields from their Project file through the drop-down boxes provided in the Field Settings section. Each field select should correlate with its description. These options should correspond to what has already been assigned in IPM, allowing the automated processes to interact with the schedule appropriately.
If these settings are not updated or not correct then you may experience errors while operating the utilities.
2. Import Status
This process uses a Microsoft Excel file exported from IPM to update the status of designated tasks in your Microsoft Project schedule. To accomplish this, follow these steps:

Open the MS Project file that was posted to IPM for statusing.
Select the “Import Status” button from the OPDEC tab
Check the 'Set Phys % Complete = CAM % Complete' option if desired. This option also applies your custom CAM completion percentage as the physical completion percentage. Doing so allows Microsoft Project to display task completion progress in the Gantt Chart view.
Press the “Import Status” button
You will be asked to locate the Excel file that was exported from IPM.
At the end of the process you will be presented with a report showing the status dates that were requested and the result of the status being imported. Cells highlighted in red indicate a difference between the value listed for a field in the Excel file and the value reflected in the corresponding field of your Project file. The “Concern” column will list the Task ID of any Out of Sequence predecessors that the current task has a relationship to. A task's predecessor is considered out of sequence by comparing the Actual Start and Actual Finish of the predecessor and current task based upon the relationship type (i.e. FS, FF, etc.). This does not necessarily indicate a problem, but these issues should be reviewed and understood before continuing.
3. Export Status
This utility exports the current status of your Microsoft Project file to a predetermined format that can then be imported into the cost system. The typical process is dictated below:

Ensure you have the correct Settings applied and then select the “Export Status” button from the OPDEC tab
Choose from the Export Format drop-down depending on which Cost System is being utilized by the program: Deltek's MPM or IPM's Internal Cost Module.
Press the Export Status button
The tool will update you on the export process using the status bar on the dialog
When the process completes, the resulting “.csv” file(s) will be in the same folder as the MS Project file provided. These files must then be handed off to finance for import into the cost system.
Please note that tasks meeting criteria will be ignored by the export process:
Tasks without a Package ID
Tasks without both an Earned Value Technique and Milestone ID
Tasks with an Earned Value Technique of 'AE' or 'BE'
Tasks designated as Inactive within Project
3.1. Errors
The export process first validates your schedule data to ensure it can be transferred to the destination cost system without issues. Below is a listing and explanation of these errors.
MPM Format
“Work Package ”@@“ on Task ID [###] is missing a hyphen to delineate the Milestone ID.” - IPM updates non-weighted EVTs within MPM using its milestones. The Milestone ID that it updates is the portion of the Work Package text after the hyphen (“-”).
“Task ID [###] has an empty cost contract code field.” - Check the field you've identified as your Cost Contract Code field in your IPM Settings. This field must have a value or needs to be set to 'Not Applicable' in the settings.
“Task ID [###] has an CAM %C > 0 but no Actual Start date.” - The task must actually start before it earns any CAM Percent Complete.
“Task ID [###] has an Actual Finish yet CAM %C is not 100.” - The task must have a CAM Percent Complete value of 100 if it has an Actual Finish date.
“Task ID [###] has an CAM %C of 100 but no Actual Finish date.”
“The task has a forecast Start date prior to the Status Date.”
“The task has a forecast Finish date prior to the Status Date.”
“The task has an Actual Start date beyond the Status Date.”
“The task has an Actual Finish date beyond the Status Date.”
4. Export BCR
This utility is responsible for carrying BCR changes from Microsoft Project over to IPM. It accomplishes this by exporting all of the necessary information from each activity that is marked with a BCR number in the Change Control field identified in your settings. The export is created in a comma-separated values text file (.csv) in the same folder location as the Project file. This file can then be uploaded into IPM.
Before the utility will allow the creation of the export file for IPM, it will first verify the integrity of the changes being made. The validation process will check for several things, but some checks are given a lower priority than others. These low priority checks will be listed as Warnings, while the urgent checks will be listed as Errors. Please see below to determine the criteria for any errors or warnings you may receive. Note that inactive tasks are not subjected to these logic tests, but they may still be exported if the BCR field values correspond.
4.1. Errors
Invalid Baseline Start
Invalid Baseline Finish
Baseline Start must be prior to Baseline Finish
Invalid Baseline Duration
Activity with an unknown, invalid EVT
An EVT was encountered that does not match those that are accepted by IPM. Any value in the EVT field must conform to one of the following eleven values: 0/100, 25/75, 40/60, 50/50, PP, PC, LOE, MW, MWPC, BE, or AE.
Package does not have an EVT assigned
Package has multiple EVTs assigned
Task has a duration without a Package or Exemption defined
Closed Task with no Actual Start, Actual Finish, or CAM %C < 100
Task needs a Milestone Weight to accompany a Milestone ID
Task needs a Milestone ID to accompany a Milestone Weight
Milestone Weight value cannot exceed 16 digits and 4 decimal places
Activity must have an EVT of 'AE' if Base WBS provided
Activity with 'AE' EVT must have a value in the Base WBS field
Activity with 'AE' EVT must have a Base WBS field assigned in the settings
Base WBS on 'AE' EVTs cannot be itself
Task cannot have both an EVT and Milestone ID/Weight
Summary has EVT but no Package defined
Summary has EVT but no Control Account defined
Detail Package ID must match its summary Package ID
Detail Control Account must match its summary Control Account
The activity is part of the detail for a summary task tagged with the BCR number, the summary has an EVT, and the detail activity has either no Control Account or a Control Account that does not match its summary's.
Detail BCR # must match its summary BCR #
Detail activities of a milestone summary cannot be milestones
The activity is a detail activity of a summary within a summary. The first summary level has an EVT of 'MW' or 'MWPC'. The summary within that summary is listed as a milestone. This activity is part of the detail for the second level summary, and it is also defined as a milestone with an ID and Weight provided.
Weighted EVT Package has no milestones defined
MW and MWPC EVTs must be summaries
4.2. Warnings
Activity name is duplicated within this BCR #
Milestone ID does not equal activity UID
Package ID not in [Control Account]-[UID] format
5. Export IPMDAR
This utility provides a system to export your schedule's data into a valid IPMDAR deliverable known as the IPMDAR Schedule Performance Dataset. This is accomplished by inputting your Contractor Information, and using custom fields within your Project to provide the information required by the dataset. The combination of inputs and Project field mappings is called a Settings Profile in the tool. Once your first profile is established, the tool can automatically export your schedule data into the strictly formatted JSON text files, which are then zipped into a final deliverable file.
5.1. Getting Started
Before beginning, you should gather the required data, and ensure your schedule is updated to provide all the applicable information that's requested by the IPMDAR.
5.1.1. Prerequisite Data
Contract/Contractor Information. This includes identifying information about the contract, the contract's security level, program, and point of contact for this report. See the 'Contractor Info' tab of the Settings form for a complete list.
Associated Task Data. Your schedule will need to use custom task fields to identify the Task Subtype, Planning Level, and other data such as the corresponding Control Account, Earned Value Technique, Work Package ID, etc. See the 'Core Field Mappings' tab of the Settings form for a complete list.
Any other custom Project/Task information that could be useful. Additional information, not specifically requested by the IPMDAR, may be provided through the Custom Project Fields and Custom Task Fields tabs of the Settings form. This is up to the user's discretion to decide what other data in your schedule could supplement the submission.
5.1.2. Settings
To get started, launch the tool from the ribbon button. Next, click on Tools → Settings to open the IPMDAR Settings window.
Contractor Info: Fill out all applicable fields with the appropriate Contract, Program, Disclosure, Contractor, Point of Contact, and EVMS information. Please note the following while doing so:
A Security Marking designation must be provided in the Disclosure section.
If a Contractor ID Code Type is provided, a corresponding ID Code must also be provided.
If EVMS is accepted on your program, the date of EVMS acceptance must also be provided.
Custom Project Fields: This entire tab is optional. If you have custom information about your schedule that should be provided, you may enter that data here. There are up to ten fields available for you to provide. The field name should identify what data you're providing, the field value should be the actual data, and the field comments can elaborate on what information is being provided and why. Please note that if you provide a custom project field name then you must also provide a corresponding value and vice versa.
Custom Task Fields: This entire tab is optional. If you have custom information associated with each task in your schedule and you wish to provide it in the IPMDAR export, you may identify that data here. There are up to ten field inputs available. The field you identify will have its values exported to the IPMDAR for each task in the schedule. The values of the following MS Project Please note that if you provide a task field value, you must also populate the corresponding Custom Task Field Name. If the selected Project field is a Lookup field, the “Use Lookup Desc” checkbox will become enabled. Use this option to use the Lookup field's description as its value instead of the field's item.
Core Field Mappings: Map each dropdown box to its applicable Project field. The Task Subtype and Task Planning Level settings are the only settings required to run the tool, although others should be given if available/applicable. The dropdowns will allow inputs from custom Text, Number, and Outline Code fields. If the selected Project field is a Lookup field, the “Use Lookup Desc” checkbox will become enabled. Checking this box will use the Lookup field's description as its export value instead of the field's item.
Note that there is an additional field, Task Type, exported as well. The tool determines the task's Type for you. See the possible task types and their corresponding criteria below.
Task Types
SUMMARY
MILESTONE
HAMMOCK
ACTIVITY
Note that the Earned Value Technique is translated from IPM's required value into the IPMDAR's required value. See how each IPM EVT value maps to the corresponding IPMDAR EVT value below ([IPM EVT] = [IPMDAR EVT]).
PP = OTHER_DISCRETE
BE = OTHER_DISCRETE
25/75 = FIXED_X_Y
40/60 = FIXED_X_Y
50/50 = FIXED_X_Y
0/100 = FIXED_0_100
PC = PERCENT_COMPLETE
LOE = LEVEL_OF_EFFORT
MW = MILESTONE
AE = APPORTIONED_EFFORT
MWPC = MILESTONE
Once a Settings Profile has been created, you are ready to run the export. Simply input a valid Reporting Period End date, and click “Run Export”. The tool will gather your schedule data, export it to the corresponding JSON files, and then zip (compress) those files into a deliverable result. The exported files will always be saved in the same location as the schedule you are exporting.
5.3. Solving Issues
If data omissions or logical errors are found, they will be presented in a display grid after the tool is finished analyzing your schedule. Four columns of information about the issues are provided: Count, Issue Severity, Export File, and Issue Description. Note that the “Copy to Clipboard” button will copy the issue grid to your PC's clipboard, allowing you to paste the data into other applications such as Excel.
Count - Provides a row number for each issue.
Issue Severity - Tells the user if an issue is an error (export will not occur) or a warning (export will occur).
Export File - Tells the user which associated IPMDAR export file is affected by the issue.
Issue Description - Briefly describes the reason for the issue.
The errors must be resolved in order for the tool to export a result successfully. Please see below for a list of the possible errors and their resolutions.
5.3.1. Errors
“Invalid Task Subtype - Value must match predetermined list” - The Task Subtype field values must exactly match one of the following. Any other values will be flagged with this error message.
RISK_MITIGATION_TASK
SCHEDULE_VISIBILITY_TASK
SCHEDULE_MARGIN
CONTRACTUAL_MILESTONE
“Invalid Task Planning Level - Tasks with type 'ACTIVITY' must have a Planning Level value.” - The Task Planning Level field must be populated for all tasks categorized as activities in your schedule. This includes all tasks that are not summaries, milestones, or hammock tasks.
“Invalid Task Planning Level - Value must match predetermined list.” - The Task Planning Level must also match one of the following predefined values accepted by the IPMDAR:
“The required fields (see documentation) must all be provided.” - Each task must have values for the following Project fields. Those missing one of these will be flagged with this error.
Start
Finish
Early Start
Early Finish
Late Start
Late Finish
“The conditional fields (see documentation) must all be provided or excluded” - Each task must either have values for all of the following fields or not have values for any of the following fields:
Baseline Duration
Start Variance
Finish Variance
Baseline Start
Baseline Finish
“Each Calendar must have at least one associated workshift” - This error indicates that one of the schedule's calendars had no work shifts defined. This means that it had no default working times established for working days. To resolve, you will need to use the “Change Working Time” button in your schedule and set work shifts for each calendar.
5.3.2. Warnings
6. MilestonesPro to PNG
This utility provides the capability to convert images created in the software Milestones Professional from their default file format to the .png image format. This allows the files to be uploaded into IPM while retaining their high quality image resolution.
Begin by using the Browse button at the top of the form to select the folder containing the Milestones Professional files you would like to export. Use the Search button at the bottom of this section to find all of the Milestones Pro files available. If you enable the “Search SubDirectories” check box, the process will look not only in the folder you selected, but also all folders contained within the initial folder. If the search process either takes too long, or you see all of the files you need already, you can use the “Stop” button to cease the search process.
Once you can see your Milestones Professional files in the list, select which ones you would like to export using the “Select” column. The “Select All” check box will deselect/select all files in the list.
Now, use the Browse button at the bottom of the form to select your export location. This is the folder where the resulting .PNG image files will appear. With the appropriate files still selected, use the Export Selected File(s) button to begin the export process. Once completed, you may access the newly created PNG files in the folder specified.
7. Import Baseline EV Data
This process uses a Microsoft Excel file exported from IPM to update your Microsoft Project file with earned value data.
The information being imported to your Project file represents all the EV data that was identified during the IPM baseline process. Work Package ID, Milestone ID, Milestone Weight, EVT, and schedule Exemption information is updated to the schedule to ensure a solid linking connection to the cost data.
NOTE: It is very important that this process is executed if schedule changes are to be uploaded to IPM, overwriting the schedule that is already there. Avoiding this step can cause EV information identified in IPM to be lost.
8. Export Calendars
Clicking on this utility exports your Microsoft Project file's calendar to a “*.CSV” text file that is saved in the same location as the Project file. This text file is then uploaded into IPM to determine the non-working days for the schedule.
9. Other Utility Settings
This form is responsible for storing the settings for all of the Other Utilities. These are the general-purpose tools not directly related to IPM.
You may manage different settings profiles by using the File options: Create, Save, Rename, and Delete. These profiles are stored on your machine; they are independent from the Microsoft Project file you are using.
The drop-down options should have Project custom fields that correspond to each description. These custom fields are used during the Inspect Schedule Status checks.
CAM % Complete: The percent complete as entered by the CAM (Control Account Manager) or activity owner
Empty Text Field: An unused text field is required for the process to flag which tasks triggered which Inspect Schedule checks.
Empty Date Field: An unused date field is required to perform calculations during the Invalid Baseline Data and Baseline Summary Alignment checks on the Inspect Schedule.
Major Events: Enter the field that uniquely identifies the major events in your schedule (i.e. PDR, CDR, etc.)
Earned Value Technique: The text field identifying the EVT of each task.
Exemptions (DCMA/DECM): The text field identifying any exemption values for the DCMA and DECM checks in the Inspect Schedule tool. The exempt value required is specific to the check you would like to exempt the task from, and it will be either the DCMA 14-point number enclosed with braces or the DECM code enclosed in braces. For instance, to exempt a task from the fifth DCMA check (Hard Constraints), you would place a value of ”{5}” into the exemptions field. To exempt the DECM version of the Hard Constraints check, you would insert a value of “{06A209a}”.
The last option, “Restore user filter after Inspect Schedule runs/closes”, indicates whether the Inspect Schedule tool will reapply whatever filter you had on your project before running it.
10. Inspect Schedule
This utility contains a series of schedule health checks broken into three categories: DCMA 14-point, DECM, and IPM. The IPM checks are designed to OPDEC's IPM software and its custom requirements, while the 14-point and DECM checks conform to DCMA's requirements.
Status Date - IPM recommends setting the time of day in your status date to the project's default end time. If it is not, the utility will display a warning sign next to the status date in the upper right corner.
Use Exemptions - If this setting is checked, exemption field values will be taken into consideration (see Exemption Field in Other Utility Settings). These exemptions will only apply to the DCMA and DECM checks, and the exempted issue count will be displayed in the “Exempt” column of the tool.
10.1. DCMA 14-Point Checks
For convenience, we will refer to two task groups in the documentation. These are Incomplete Tasks and Total Tasks. Some checks deviate from these conventions, and these exceptions will be noted.
Incomplete Tasks: All tasks except those with the attributes below.
Summaries - The Summary field equals Yes.
LOE - The earned value technique field (provided by the user in the settings) equals “LOE”. Also, if a summary task is assigned an “LOE” EVT, its detail tasks are considered LOE as well.
Milestones - The Baseline Duration field equals 0.
Inactive - The Active field equals No.
Completed - The Actual Finish field does not equal NA.
Total Tasks: All tasks except those with the attributes below.
Summaries - The Summary field equals Yes.
LOE - The earned value technique field (provided by the user in the settings) equals “LOE”. Also, if a summary task is assigned an “LOE” EVT, its detail tasks are considered LOE as well.
Milestones - The Baseline Duration field equals 0.
Inactive - The Active field equals No.
Also, note that a result of “NaN” indicates that the denominator of the percentage is equal to 0, and therefore no tasks in the schedule met the criteria defined by one of the two groups above.
Check Details
Missing Logic
Description: Identifies incomplete tasks with either no predecessors or no successors.
Percentage: Missing logic incomplete tasks divided by total incomplete tasks.
Goal: Less than or equal to 5%.
Leads
Description: Identifies task logic links with leads (negative lag) on incomplete tasks. Negative time is not demonstrable and should not be encouraged.
Percentage: Lead links divided by total number of links within incomplete tasks.
Goal: Zero.
Lags
Description: Identifies task logic links with lags on incomplete tasks.
Percentage: Lag links divided by total number of links within incomplete tasks.
Goal: Less than or equal to 5%.
FS Relationship Types
Description: Identifies the number of links using the Finish-To-Start relationship on incomplete tasks. These should make up the vast majority of links in the schedule.
Percentage: FS links divided by the total number of links found within incomplete tasks.
Goal: Greater than or equal to 90% of links.
Hard Constraints
Description: Identifies incomplete tasks with hard constraint types: Must Finish On, Must Start On, Start No Later Than, or Finish No Later Than.
Percentage: Incomplete tasks with hard constraints divided by total incomplete tasks.
Goal: Less than or equal to 5%.
High Float
Description: Identifies incomplete tasks with a Total Slack value greater than 44 days.
Percentage: Incomplete tasks with high float divided by incomplete tasks.
Goal: Less than or equal to 5% of incomplete tasks.
Negative Float
High Duration
Description: Identifies incomplete tasks within the planning period that have a Baseline Duration > 44 days. The planning period is defined as 60 working days after the schedule's status date; only tasks with a Baseline Start within this period are considered. This check will ignore planning packages (both summaries and their detail tasks).
Percentage: High duration, incomplete, not planning package tasks divided by incomplete, not planning package tasks within the planning period.
Goal: Less than or equal to 5%.
Invalid Dates
Description: Identifies tasks with a Forecast Start/Finish prior to the Status Date, and tasks with an Actual Start/Finish after the Status Date.
Percentage: Invalid date tasks divided by total tasks.
Goal: Zero.
Missing Resources
Missed Tasks
Description: Identifies tasks that were supposed to finish according to their baseline, but have not. These tasks have a Baseline Finish less than the Status Date as well as either a Finish greater than the Baseline Finish or the Actual Finish equals 'NA'.
Percentage: Missed tasks divided by total tasks with a Baseline Finish date less than or equal to the Status Date.
Goal: Less than or equal to 5%.
Critical Path Test
Description: The goal is to test the integrity of the schedule's network logic, and particularly its critical path. If any negative slack is found in the schedule, the test immediately fails with a notification. Otherwise, the steps below are performed.
The major events are released. This means removing any constraints or deadlines on all tasks identified as a major event in your settings.
Gather the current Project Finish date
Calculate what adding 600 days to the Project Finish date will be (according to the default schedule calendar)
Filter the schedule for tasks with Total Slack equal to 0, an Actual Finish equal to NA, and a Summary field value of No.
Find the task within the filter criteria that has the earliest Start date.
Increase this task's duration by 600 days.
Check to see if the Project Finish date is equal to what we gathered in Step #2.
The process restores all major event constraints/deadlines and resets the duration of our targeted task to its initial value.
Percentage: The utility will display a Pass or Fail result.
Goal: NA
Critical Path Length Index
Description: The CPLI is a measure of the efficiency required to complete a milestone on time. The completion task is targeted automatically by the utility. The calculation steps are listed below.
Filter the schedule for all major events (identified in your settings) that meet the following criteria: EVT is not equal to 'LOE', Actual Finish is equal to NA, and Baseline Finish is greater than the Status Date.
Find the major event among the filtered list with the earliest Forecast Finish. This is our completion task.
Release the major events. This removes any constraints or deadlines associated with major event tasks.
Find the Critical Path Length (CPL). This is the number of working days between the Status Date and the unconstrained completion task's Finish date.
Constrain the completion task to its Baseline Finish date with a Finish No Later Than type.
Find the completion task's Total Float (TF).
Restore the major events' constraints and deadlines.
Percentage: (CPL + TF) / CPL. This metric is left as a ratio instead of a true percentage.
Goal: Greater than or equal to 0.95
Baseline Execution Index
The BEI is always shown along with the Hit Task Percentage (HTP). The HTP is displayed in the Exempt column of the utility for this check. The calculation steps for the HTP are listed below.
Filter out inactive tasks, summaries, LOE tasks, and milestones.
Filter for tasks within this subset having a Baseline Finish less than or equal to the last day of the Status Date's month.
Count and label these as the Baseline Count
Add an extra criteria to the existing filter, and filter for tasks having an Actual Finish less than or equal to their Baseline Finish.
Count and label these as the Actual Count
The HTP is the Actual Count divided by the Baseline Count.
10.2. DECM Checks
The DECM (DCMA EVMS Compliance Metrics) include most of the Artifact 11 checks (categorized as requiring only the IMS) items with a few exceptions. Excluded checks are the ones requiring unavailable EV Percent Complete or BCWP values (“06A505a”, “06A505b”, and “10A302b”), “06A211a” which requires external contractor information, and “06A301a” which requires exteranl supplemental schedules and MRP/ERP system data.
For convenience, when referencing “incomplete tasks” in the descriptions below, we are referring to tasks that meet the following criteria:
Summary - Summary field equals No.
Active - Active field equals Yes.
Incomplete - Actual Finish equals NA.
Also, note that a result of “NaN” indicates that the denominator of the percentage is equal to 0, and therefore no tasks in the schedule met the overarching criteria of the check.
(06A204b) Dangling Starts or Finishes
Description: Identifies either non-LOE predecessor tasks without any FS or SS relationships (Open Start) or non-LOE successor tasks without any FS or FF relationships (Open Finish). The contract beginning/ending tasks are ignored. These are the two tasks with the earliest Baseline Start date and the latest Baseline Finish date. Tasks without Baseline Start/Finish dates are ignored. The EVT field (used for detecting LOE tasks) is identified in the Other Utility Settings. See the EVT entry in the Glossary section of this documentation for a list of acceptable values.
Percentage: Dangling tasks divided by incomplete, non-LOE tasks
Goal: Zero.
(06A205a) Use of Lags
Description: Identifies tasks with logic links that include lag.
Percentage: Lag tasks divided by incomplete tasks.
Goal: Less than or equal to 10%.
(06A208a) Summary with Logic
(06A209a) Use of Hard Constraints
Description: Identifies incomplete tasks that utilize one of the following constraint types: Start No Later Than, Finish No Later Than, Must Start On, or Must Finish On.
Percentage: Incomplete tasks with hard constraints divided by incomplete tasks.
Goal: Zero.
(06A210a) LOE Tasks with Non-LOE Successor
Description: Identifies any LOE tasks (including summaries) with a non-LOE successor. We define non-LOE as any task without a value of 'LOE' in the EVT field (including blanks). The EVT field is identified in the Other Utility Settings. See the EVT entry in the Glossary section of this documentation for a list of acceptable values.
Percentage: LOE tasks with non-LOE successors divided by total number of LOE tasks.
Goal: Zero.
Note: While LOE activities that have an end-of-project milestone as a successor are acceptable, the process does not automatically assume what the end-of-project milestone(s) are. For this reason, it may be necessary to validate/confirm issues reported as false-positives.
(06A212a) Out of Sequence
(06A401a) Critical Path
(06A501a) Missing Baseline Start or Finish Dates
Description: Identifies tasks that do not have a Baseline Start or a Baseline Finish.
Percentage: Missing baseline date tasks divided by total tasks.
Goal: Less than or equal to 5%.
(06A504a) Prior Month Actual Start Change
Description: Identifies tasks whose Actual Start date has changed from the previous month's IMS to the current month's IMS. The user must provide the file location of the previous IMS they would like to check their current file against. Ignores only summary tasks and inactive tasks.
Percentage: Tasks with an Actual Start date change divided by the total number of tasks in the previous IMS with an Actual Start date.
Goal: Less than or equal to 10%.
(06A504b) Prior Month Actual Finish Change
Description: Identifies tasks whose Actual Finish date has changed from the previous month's IMS to the current month's IMS. The user must provide the file location of the previous IMS they would like to check their current file against. Ignores only summary tasks and inactive tasks.
Percentage: Tasks with an Actual Finish date change divided by the total number of tasks in the previous IMS with an Actual Finish date.
Goal: Less than or equal to 10%.
(06A506a) Invalid Actual Start and Finish
Description: Identifies tasks with an Actual Start or Actual Finish greater than the status date.
Percentage: Number of invalid AS/AF tasks divided by total tasks with an Actual Start date.
Goal: Less than or equal to 5%.
(06A506b) Invalid Forecast Start and Finish
Description: Identifies tasks with a Forecast Start date less than the Status Date without an Actual Start, and tasks with a Forecast Finish date less than the Status Date without an Actual Finish.
Percentage: Invalid Start/Finish tasks divided by incomplete tasks.
Goal: Zero.
(06A506c) Forecast Dates Riding the Status Date
Check for any matching tasks between these two sets. For those that do, if their Remaining Duration is +/- 2 working days then these are flagged and counted as well.
The issue count will be a unique combination of both sets of identified tasks.
(10A303a) Zero Duration Planning Package
Description: Identifies planning package tasks with a Baseline Duration value of less than one day. Planning packages are required to have a value of 'PP' in their EVT field (defined in your settings).
Percentage: PP tasks with a baseline duration of less than one day divided by total PP tasks.
Goal: Less than or equal to 10%.
10.3. IPM Checks
Out of Sequence Tasks
Tasks Needing Status
This check will identify tasks that require an updated status.
Other Criteria: The task is not a summary, has a Start/Finish prior to the status date, and does not have valid actual start/finish.
Invalid Performance
Invalid Baseline Data
This checks for problematic data with Baseline fields: Baseline Start, Baseline Finish, and Baseline Duration. Since MS Project will accept ANY values as baseline start/finish/duration, this check not only ensures the finish date is after the start but also confirms that only date/number values are given (no symbols, question marks, blanks, etc.).
Baseline Summary Alignment
Split Tasks
Effort Driven
Unknown EVT
This check identifies any values in the EVT field that are not accepted by IPM. Any value in the EVT field must conform to one of the following eleven values: 0/100, 25/75, 40/60, 50/50, PP, PC, LOE, MW, MWPC, BE, or AE.
Constraint on Completed Tasks
This check will identify any completed tasks that have a constraint applied.
Other Criteria: The task is not complete, has a constraint date, and is not a summary.
Constraint on Summary Tasks
Consecutive Constraints
SNET within 1WK of Pred Finish
SNET Not Pushing
? Durations
Non-Fixed Duration Types
Elapsed Durations
Non-Day Duration Types
This check will identify any tasks that have a duration specified in a different unit of measure other than days.
Other Criteria: The task is not a summary, does not use days as a unit of measure, and is not finished.
Fractional Durations
This check identifies any tasks with a duration that is not a whole number.
Other Criteria: The task is not a summary, has not finished, and has a duration that is not a whole number.
Resources Assigned in Project
Inactive Tasks
Manually Scheduled Tasks
Multiple Calendars
11. Navigate Tasks
This utility provides the capability to step through each task of predecessor to successor relationship, viewing detailed information about each task along the way.
Upon opening the utility, the task you currently have selected will be displayed in the middle section of the screen. Its predecessors are shown above, and its successors are shown below. Navigate through a relationship by selecting the Predecessor/Successor Task Name link or double clicking anywhere in the row to load the selected task as the current task. You may also select a task in the Project window in order to load it as the current task. Selecting the left arrow will navigate back to the previously selected task, while the right arrow will move the selection to back to your most recent position. You may also enter in the task ID or UID in the boxes at the top of the form and press the ENTER key to navigate to the specified task.
All duration fields displayed are converted to day measurement units (as defined by your Hours Per Day setting in Project). Most fields shown in the Navigate Tasks window are self-explanatory; however, there are two that may require further elaboration: Gap and OoS.
The Gap field displays the duration between the relationship end of a predecessor and relationship start of its successor. The Out of Sequence (OoS) field will be filled with a red flag icon if the task's status is illogical. The criteria of the Out of Sequence check can be changed on the Settings form. The “Compare Actual dates on Out of Sequence checks” option toggles whether the OoS and Gap columns will make date comparisons between the Actual Starts/Finishes provided to ensure they are in sequence, or just accept any Actual Start/Finish provided to a predecessor/successor. When the option is checked, you have the more precise result.
12. Milestone Set/Release
This utility consists of two tabs: Set Milestones and Release Milestones.
The Milestone Field setting indicates which field you have allocated to identify the milestone tasks. This should be an empty text field that only has values (the value itself can be anything) entered for milestone tasks. This process does not use any settings from the Settings form.
Set Milestones
After selecting a constraint date and constraint type, click the Set Milestones button to apply those constraints to all milestone tasks.
Release Milestones
Simply click the Release Milestones button on this tab to set the constraint type of the identified milestone tasks back to 'As Soon As Possible'.
13. Find UID
Clicking the Find UID button or using the keyboard shortcut (Ctrl+Shift+F) will launch the Find UID utility. This utility will select the task UID provided, and scroll the focus of Project to the task.
14. Initialize Project
Clicking this utility simply applies the All Tasks filter to your Project file, opens all outline levels, and scrolls the file's focus to the first task.
15. Help
The Help button will launch this website in your default web browser. For any additional help, please email support@opdec.com
16. About
The About button will display basic information about your version of the installation as well as contact information if you have any questions about the utilities.
17. Check for Update
The Download Update button will display a form that compares your installed version of the IPM Utilities to the version that is currently available for download. If there is a more recent version of the IPM Utilities available, the form will enable the option to download it. If not, the download button will be disabled.
Additionally, you may enable/disable automatic reminders about new available updates through this form by toggling the check box on or off. If kept enabled, the utilities will remind you of any available updates when you try to use a utility.
18. Version History
-
Export IPMDAR
Added an entire new utility to the ribbon to facilitate exporting schedule data for the IPMDAR submission. See the
Export IPMDAR section for details on the new feature.
Inspect Schedule
Updated the DECM logic to adhere to the specifications mandated in DECM version 3.6.1
-
Export Status
Updated documentation to explain which tasks will be ignored by the export process for not meeting certain criteria
Inspect Schedule
Updated the 'Invalid Baseline Data' check to ignore tasks with decimals in their duration. This check would previously flag these for not being alphanumeric.
-
Export BCR
Fixed minor bug causing the unique id to increment automatically.
Fixed backwards compatibility issue with other OPDEC MSP Add-In tools.
-
All Utilities
Improved user messaging implemented to resolve focus issues found in new versions of Project (2019/365). Any popup announcements or input requests will now be focused upon display.
Export BCR
Improved error messaging if the exported BCR file already exists and is open by the user. The file must be closed before creating another with the same name, and the new message will indicate this.
Any blank task rows inserted into the schedule will be ignored.
Inspect Schedule
Minimizing the schedule while the process is running will no longer cause issues.
MilestonesPro to PNG
Will no longer fail to detect the Milestones Professional installation.
Images will be converted to a PNG format in a safer way.
-
Inspect Schedule
DECM Check Changes
Updated to be in accordance with DECM version 3.4
(06A203a) SF Relationships - This check was removed from the schedule metrics.
(06A206a) Use of Leads - This check was removed from the schedule metrics.
(06A204b) Dangling Starts/Finishes - This check is updated to specify “non-LOE” tasks instead of “discrete” tasks. It also defined the contract start/completion tasks are any tasks with the earliest Baseline Start date in the schedule or the latest Baseline Finish date; these tasks will now be ignored.'
(06A210a) Loe Tasks with Non-LOE Successor - This check is updated to change “discrete” into “non-LOE”. This check will now flag any LOE successors who do not have an “LOE” EVT assigned, even if its EVT field is blank.
(06A212a) Out of Sequence - This check will now incorporate lead/lags into its calculations due specifically to the DECM documentation update mentioning these as notable contributions towards out of sequence tasks. The check will now identify out of sequence tasks with a Start-to-Finish relationship. The check's percentage threshold changed from less than 1% to 0%.
(06A506a) Invalid Actual Start/Finish Dates - This check now only examines tasks for invalid actual dates if they have an Actual Start date assigned.
Project 64-bit Compatibility
The software will now require 64-bit Project users to activate the software with the universal serial number.
2018.15.4 (7/16/2019)
Inspect Schedule
DECM Check Changes
(06A212a) Out of Sequence - No longer takes leads/lags into consideration when calculating out of sequence tasks. The IPM version of this check will continue to perform the calculation with those taken into consideration.
(06A501a) Missing Baseline Start or Finish Dates - No longer excluding finished tasks from the criteria. This incomplete tasks only criteria was removed from the check documentation in the update to version 3.1 of the DECMs.
(06A204b) Dangling Starts or Finishes - This check uses a custom denominator instead of one of the standard denominators (incomplete or total tasks). The check was using the incomplete tasks denominator inappropriately.
(06A203a) SF Relationships - This check was not performing accurate calculations when run from the “DECM” only configuration of the form. This bug is fixed.
(06A301a) Invalid Summary Baseline Dates - This check is removed from the DECM configuration. The logic we utilized never matched the official documentation, since it calls for providing additional external files not available to the utilities. Instead, this check (which looks at summary tasks and their associated detail tasks) became an IPM check called 'Baseline Summary Alignment'.
(06A504a)/(06A504b)/(06A506c) - These checks were updated for accuracy. A bug prevented the tool from properly determining which tasks' unique IDs matched between the prior and current schedules provided.
Other Changes
The 'Goal' column will no longer be color coded to indicate whether the given check passed
The DECM checks requiring a prior schedule file will be automatically unchecked if no prior file is provided by the user
Navigate Tasks
A bug causing the form to repeatedly adjust its width to accommodate scroll bars is fixed. The form will no longer grow in size on its own while navigating the schedule.
A bug causing the Navigate Tasks to gain focus while the user is editing the schedule is fixed.
Import Status
Will no longer change the percent complete field into a formula before importing
2018.15.3 (5/28/2019)
Inspect Schedule
Fix for problem where 'More than 90%…' warning message would show inappropriately
Updated wording for different scenarios in 'More than 90%…' warning message
Fix for problem running all checks in 'ALL' configuration
Changed name of 'Unnecessary Constraints' check to 'SNET within 1WK of Pred Finish' to be more descriptive
2018.15.1 (5/10/2019)
Export BCR
Stopped inserting a value of 'NA' if the Base WBS setting is set to 'Not Applicable'. Now inserts a blank.
Updated the check logic surrounding Apportioned Effort tasks and Base WBS field values.
Inspect Schedule
Added new logic check for the DCMA 14-point checks. The tool will now alert the user if >= 90% of the tasks in the schedule are flagged as being excluded from the process.
Fixed a bug with the color coding that would prevent the Baseline Execution Index check from being highlighted green
Cosmetic update to remove flickering of graphical items on the form while running checks
Improved status updates as the checks are running
Changed all references to “EVAS” checks to “DECM”. The Earned Value Analysis System (EVAS) is no longer a valid reference to these metrics. Instead, they are referred to as the DCMA EVMS Compliance Metrics (DECM).
Updated the DECM checks to be in alignment with the logic updates in version 3.2. Three checks were affected. “06A210a (LOE Tasks with Discrete Successor)” will now only check for incomplete tasks, and “06A212a (Out of Sequence” will now check both complete and incomplete tasks, and “06A204b (Dangling Starts/Finishes)” will now only consider incomplete, discrete tasks.
Removed two DECM metrics from the DECM configuration to conform to v3.2: 06A204a and 06A213a
Updated the DCMA 14-Point check for High Duration to no longer exclude planning packages from its evaluation.
Updated the Split Tasks check to look at completed tasks as well as incomplete.
Added new check: Unnecessary Constraints. This check will identify tasks with a Start No Earlier Than constraint date that is within 5 working days of its predecessor's forecast finish date.
2018.14.7 (1/31/2019)
Inspect Schedule
Improved the Split Tasks check to look for tasks with only a leading/trailing split.
2018.14.5 (1/21/2019)
Inspect Schedule
Changed the logic that defines a discrete task. Now, the criteria is that the task has a recognized EVT that is not 'LOE' or 'AE'. This change affected two EVAS checks: “(06A210a) LOE Tasks With Discrete Successor” and “(06A212a) Out of Sequence”
Fixed bug with the IPM version of the Out of Sequence check that would cause an error when checking Start-to-Finish relationship types.
Fixed a bug with all versions of the Out of Sequence check that would cause errors if the schedule was opened as Read Only.
Fixed a bug causing Project's calculation setting to not be restored to the user's preference.
Other Utility Settings and IPM Settings
Removed the text fields as options for Milestone ID, Milestone Weight, and CAM Percent Complete settings
Export Status (IPM)
Updated the error messaging to more clearly identify issues with MWPC summaries and their detail task requirements.
2018.14.3 (11/14/2018)
Inspect Schedule
Fixed an issue where Standard editions of Project caused an error in the EVAS checks.
2018.14.1 (11/5/2018)
Inspect Schedule
The Critical Path Length Index check in the Inspect Schedule utility will now calculate the project after restoring milestone deadlines/constraints. This prevents any additional checks from basing their logic off an altered schedule state.
The default date format of the schedule will now no longer have the ability to affect the results of any checks.
The Other Utility Settings form will now respond appropriately to invalid user actions such as saving a blank profile or trying to rename a blank profile.
2018.14.0 (10/16/2018)
Installation
The IPM Utilities installation is now compatible with both 32- and 64-bit versions of Microsoft Project.
IPM Settings
Added custom text fields 1 - 30 as options for the Exemptions field.
Inspect Schedule
Added DCMA 14-Point and twenty EVAS schedule health checks. Removed some redundant IPM specific checks.
Resolved an error caused by saving the schedule with a new name while the Inspect Schedule form was open.
The Invalid Performance check will now consider CAM Percent Complete values greater than 100 invalid.
The IPM checks will no longer flag inactive tasks.
Added three new IPM checks: Consecutive Constraints, SNET Not Pushing, and Split Tasks.
Added a warning icon that will appear next to the Status Date on the form if the Status Date's time does not match the schedule's “Default end time” of the day.
Other Utility Settings
Removed “Compare OoS Dates” checkbox. The out of sequence checks throughout the utilities will now always accommodate for both the date and time.
Added an option for an “Exemptions (DCMA/EVAS)” field (used in DCMA 14-Point and EVAS checks of Inspect Schedule).
Milestones to PNG
Will now correctly identify a 32-bit Milestones Professional installation on a 64-bit Windows operating system.
Export Status
Both MPM and IPM formats will check for CAM Percent Complete greater than or equal to 100 (previously not checking for invalid values > 100).
Both MPM and IPM formats will now ignore any inactive tasks in the schedule (only in versions of Project 2010 or greater, and only in Project Professional).
Both MPM and IPM formats will check for tasks needing status. These are new errors that may appear upon attempting the export. Forecast dates (Start/Finish) cannot be prior to the Status Date, and Actual dates cannot be beyond the Status Date.
Updated to accommodate text Exemptions values (previously only allowed numeric).
Export BCR
Will no longer validate or export inactive tasks (Project 2010+, Project Professional)
Updated to accommodate text Exemptions values (previously only allowed numeric).
2015.7.2 (12/7/2017)
Inspect Schedule
Corrected issue allowing errors if the user ran the Inspect Schedule without filling in settings first; the problem was only applicable to checks utilizing brand new setting options from the Other Utility Settings form.
Corrected issues involving the restoration of the user's default view after the utility had finished processing.
2015.7.0
Inspect Schedule
Added new Baseline Summary Alignment check which ensures that a summary task's Actual Start and Actual Finish values align with the earliest start and latest finish of all its children
Added new Invalid Baseline Data check which looks for problematic data with Baseline fields: Baseline Start, Baseline Finish, and Baseline Duration
Added new Unknown EVT check that identifies any values in the EVT field that are not accepted by IPM
Added two new setting fields to the “Other Utility Settings” form to support these new Inspect Schedule checks: Empty Date Field and EVT Field. These will need to be updated prior to running the Inspect Schedule.
A new feature added to the Navigate Tasks now allows the user to resize the predecessor/successor regions individually. This gives more visibility to tasks with many predecessors and few successors or vice versa.
Added warning during status import/export process if the schedule's status date is missing.
Corrected scenario where the Export Calendars process could fail due to calendar names that contain an apostrophe.
2015.4.0
Moved Inspect Schedule and Navigate Tasks to Other Utilities section
Created Other Utilities Settings form to allow custom settings that apply only to other utilities. This allows settings profiles to be maintained independently from individual Project files.
The date and number columns on the Navigate Tasks utility can now be sorted properly
Inspect Schedule must select an Other Utilities' settings profile through a menu at the top
Corrected error in Invalid Performance check logic on Inspect Schedule
2015.2.9
Updated Set/Release Milestones to check for an empty Major Events field
2015.2.8
Added two checks to the Inspect Schedule: Missing Predecessors and Missing Successors.
Updated DCMA Critical Path Test logic
2015.2.6
Added option to the Settings form: “Compare Actual dates for OoS checks”. This allows for more flexibility when checking for out of sequence tasks.
Added option to Export Status utility to allow for schedule status to be formatted in accordance with IPM's cost module
Fixed minor cosmetic issues on Export BCR, Export Status, and Navigate Tasks
2015.2.4
Corrected bug in Validate BCR process that could result in in the utility going into a non-responsive state
Modified the DCMA Critical Path Test to restore “As Late as Possible” contraint types correctly
2015.2.2
Updated the Inactive Tasks check on the Inspect Schedule to not be performed in versions earlier than Project 2010
Updated the way a 'Not Applicable' Base WBS was being handled in the Export BCR utility
2015.2.0
Released new utility: Milestones to PNG. Converts Milestone Professional files to a high quality .png image file format.