BPC Logic Filter – an add-in for Microsoft Project (desktop) – includes an advanced Logic Inspector feature to greatly simplify the examination and navigation of logic-driven schedule activities.
When building or managing a complex project schedule, it’s often necessary to examine the logical relationships between tasks for a variety of reasons. Particular questions for any given task include:
- What other tasks must finish (or start) before this task may start (or finish)? (i.e. what are its predecessors and how are they related?)
- Of all the task’s predecessors, which ones are actually controlling the scheduled dates for this task? – i.e. what are its driving predecessors?
- For the task’s non-driving predecessors, how much may each be allowed to slip before it becomes driving (for this task)? – i.e. what is the relative float?
- a)What other tasks must wait for this task to finish (or start) before they can proceed? – i.e. what are its successors? b)Which successors are driven? c)How much relative float exists?
For users of Microsoft Project (MSP), questions 1 and 4a are most easily answered using the “Predecessors and Successors” view of one of the Task Forms in the lower pane. For simple schedules, question 2 can be answered by the “Predecessors” list of the Task Inspector pane. For more complex schedules – and for all other questions – the user must visually cross-reference the scheduled dates of the various linked tasks from several views, estimating relative floats and identifying driving relationships. This can be time consuming and error prone. Beginning with the 2013 version, MSP provides “Task Path” bar styles, which visually identify driving and non-driving predecessor and successor paths (i.e. logically connected task chains) of any selected task on the bar chart. These can be difficult to read, however, when the project logic is complex.
BPC Logic Filter has always answered these questions on the way to visualizing logic flow through a schedule, and several of the tracer analyses can be easily customized to examine only a single task and its links. Since the tracers generally apply a custom filter to the schedule, however, the time to examine a single task could become unwieldy for a very large project.
The native MSP predecessor and successor tables provide only limited information: ID, Name, Type, and Lag – all sorted according to the order the links were initially created. Here they are shown as part of the Task Details Form. Further examination of any linked task can be achieved by double-clicking an entry in the Predecessor or Successor list to open the corresponding Task Information dialog.
In the LLI Edition of BPC Logic Filter, clicking the Logic Inspector button creates two new floating windows that summarize logic-related information about the selected task as well as its predecessor and successor tasks.
Logic-related properties for the selected task – remaining duration, total slack, constraints, deadlines, scheduled dates, resources, and calendar – are included for reference above each table. Colored highlighting and other indicators are used to emphasize properties with notable influence or relevance to the current schedule. E.g. summary or inactive status, effective constraints, violated constraints and deadlines, actualized dates, and leveled resources.
In contrast to the native forms, Logic Inspector provides a richer relationship table, including scheduled dates (with Actual indicators), % complete, total slack, and two user-selected fields for each predecessor and successor task. Inactive tasks (in MS Project Pro 2010+) are also highlighted gray. The scroll and fix buttons allow dynamic resizing and other controls of window appearance. In the LLI Edition, the predecessor and successor tasks are ordered the same as in the native lists, which generally reflect their sequence of input.
Most importantly, the JUMP button allows logic-based navigation forward and backward through the schedule network one task at a time. Jumping to another task using the button automatically updates the predecessor and successor forms. [See also Video – Inspect and Jump through Network Logic Links Using BPC Logic Filter – LLI Edition]
While the LLI (for Limited Logic Inspector) Edition of BPC Logic Filter is aimed at schedulers looking to quickly inspect and jump through relationships, the STD Edition adds robust analysis and reporting of driving logic in the schedule. Thus, the Logic Inspector of the STD Edition also analyzes and sorts relationships on the basis of driving logic flow.
As a result, driving logic relationships are highlighted yellow and shown at the top of each list. The first of these becomes the default target for the Jump button, allowing quick navigation through driving logic paths. The relationships that are furthest from driving are shown at the bottom. (As a corollary to this, Inactive tasks in MSP 2010 are relegated to the bottom of the list, while Inactive tasks in later versions may sometimes be shown as driving or near driving, depending on their dates.) The Std Edition also allows display of MSP’s internal “driving/driven” flag for each relationship: the basis of the corresponding Task Path bar styles as well as the Predecessors portion of the Task Inspector pane. These internal flags are sometimes incorrect, leading to a false “Driving Predecessors” Task Path. Finally, several types of hierarchical driving logic can be added to the Logic Inspector Windows.
The Std Edition also adds the ability to Jump to and/or through tasks that are hidden in the current view and to build a custom task filter using Jump.
The Pro version adds extensive capabilities for analysis of relationship and path relative float. Within the Logic Inspector, this means additional columns to display up to four different types of relative float for each relationship. More importantly, late-driving and bi-directional-driving relationships are highlighted by default. These are particularly useful for prioritizing multiple driven successors of a particular task. In the example, this option leads to a re-sorting of the successor tasks, with one of the two driven successors from the Std Edition now being flagged and prioritized. (This successor task, 1439, controls the late-dates of the selected task; the relationship is driving in both directions.)
Since implementation, I’ve found Logic Inspector to be an invaluable – and fast – complement to the rest of the features in BPC Logic Filter. The two new windows are passive readers of existing project data; they are not for adding, removing, or modifying relationships. MSP already provides a number of different approaches there.
Here’s another, older video showing an earlier, less-capable version of the feature in action.
Using Logic Inspector to examine resource drivers is addressed in another post.