Skip to main content

What Is a Baseline?

A baseline is a snapshot of task dates at a specific point in time. When you compare the current schedule against a baseline, each task shows two bars: the current (actual) bar representing today’s plan, and a secondary baseline bar showing where the task was scheduled at the comparison point. diagram If the current bar extends to the right of the baseline bar, the task has slipped. If the current bar is shorter or shifted earlier, the task is ahead of the original plan. This visual comparison makes schedule drift immediately obvious without needing to compare spreadsheets or read through change logs.

Three Comparison Modes

The Gantt provides three ways to select a historical comparison point, each suited to different scenarios:
ModeSourceBest for
DateA specific calendar date (e.g., 2025-01-15)Comparing against a known milestone date
Named baselineA Polarion baseline (named snapshot)Comparing against an official project checkpoint
RevisionA Polarion SVN revision numberComparing against a precise configuration state

Comparison by Date

You select a date, and the Gantt retrieves each task’s start date and duration as they were on that date. This is the simplest mode — useful for ad-hoc comparisons like “How did the plan look at the start of this quarter?” The Gantt passes a _baselineDate parameter to the server, which looks up the historical values and returns them alongside the current data as planned_start_date and planned_duration fields.

Comparison by Named Baseline

Polarion supports creating named baselines — formal snapshots of a project’s state at a specific point. The Gantt retrieves available baselines from the server and presents them in a dropdown. When you select a baseline, the Gantt loads task data as it existed at that baseline’s revision. Named baselines are particularly useful for contractual or regulatory scenarios where you need to demonstrate how the plan has evolved relative to an approved checkpoint.

Comparison by Revision

For the most precise comparison, you can enter a specific SVN revision number. This is useful when you know the exact configuration state you want to compare against — for example, the revision that was used for a particular delivery or review. If the specified revision does not exist in the task data, the Gantt displays an error.
When comparing against a historical point, tasks that were created after the comparison date are marked with a “NEW” badge. This helps you quickly identify work items that have been added to the scope since the baseline was established — a key indicator of scope creep.

Persistent vs. One-Time Comparison

The Gantt supports two baseline display modes: Persistent baselines are configured through the Show Baselines parameter. When enabled, the Gantt automatically loads baseline data every time it opens. You configure a default comparison point — either a relative date (e.g., “T-minus 30 days”), a specific date, or a date supplied via a page parameter. This mode is ideal for dashboard pages where you always want to see schedule drift. The Compare to date sub-parameter only appears when Show Baselines is enabled, following the Gantt’s progressive parameter disclosure pattern. One-time comparison is triggered from the toolbar using the Compare with History button. This opens a dialog where you select one of the three comparison modes (date, named baseline, or revision) and click Compare. The baseline overlay appears for the current session only and is not persisted when the page is reloaded.
The Compare with History dialog cannot be opened when the Gantt has unsaved changes. Save or discard your edits before initiating a comparison. This prevents confusion between unsaved modifications and historical differences.

Interaction Between Modes

When Show Baselines is configured for persistent display and a user triggers a one-time comparison with a different date, the one-time comparison takes precedence. The baseline display refreshes to show the user-selected comparison point instead of the preconfigured one. This allows users to temporarily explore different historical points without changing the widget configuration.

Baseline Data Fields

When baseline comparison is active, the server includes two additional fields in each task’s data response:
FieldContent
planned_start_dateThe task’s start date as of the comparison point
planned_durationThe task’s duration (in working days) as of the comparison point
These fields drive the rendering of the secondary baseline bar behind the current task bar. If a task did not exist at the comparison point, these fields are absent and no baseline bar is rendered for that task.

The API Approach

For advanced baseline scenarios, you can use the Item Script API to populate baseline fields from custom sources. Instead of relying on the built-in date/baseline/revision comparison, you can write a script that loads baseline values from dedicated custom fields on each work item. This approach is useful when baselines are captured through workflow transitions rather than Polarion’s baseline mechanism. For example, a workflow action “Approve Schedule” could copy the current start and duration values into initial_start and initial_duration fields. The Item Script then loads these item-specific baseline values, providing a per-task comparison rather than a single point-in-time snapshot.

Visual Representation

The baseline bar appears as a secondary, typically lighter-colored bar rendered behind the main task bar. The visual difference between the two bars communicates:
  • Baseline bar extends further right than the current bar — the task was originally planned to take longer (or end later) than it currently does
  • Current bar extends further right than the baseline bar — the task has slipped past its original end date
  • Bars are identical — the task is on track with no schedule change
  • Only a current bar exists (no baseline) — the task was added after the comparison point (shown with a “NEW” badge)

Interaction with Other Features

Baseline comparison interacts with several Gantt capabilities:
  • Critical path — You can compare the current critical path against a baseline to see how the critical path has shifted over time
  • Working calendars — Baseline duration values use the same working calendar rules as current durations, ensuring the comparison accounts for non-working days
  • Date range conflictsDate range conflict detection operates on current task dates only; baseline dates do not trigger conflict warnings
KB ArticlesSupport TicketsSource Code
  • prod-gantt-src/com.nextedy.polarion.gantt/src/com/nextedy/polarion/gantt/model/Task.java
  • prod-gantt-src/com.nextedy.polarion.gantt/src/com/nextedy/polarion/gantt/widget/WorkItemsGanttWidget.java
  • prod-gantt-src/com.nextedy.polarion.gantt.client/src/js/main.js
  • prod-gantt-src/com.nextedy.polarion.gantt.client/cypress/e2e/gantt-Baseline.cy.ts
  • prod-gantt-src/com.nextedy.polarion.gantt.client/src/js/baseline.js