How the dates are checked
- Hand-worked cases: a small programme for every link type (FS, SS, FF, SF), lags and leads, each constraint type, calendar edges such as shutdowns, bank holidays and part days, and both ways of handling out-of-sequence progress, with the dates and float worked out by hand.
- Against P6 and MS Project: programmes saved by Primavera P6 and Microsoft Project carry the dates those programs calculated. Programme Studio reschedules each one from its own logic and calendars and compares every activity's dates and float, to the working day.
- Round trips: XER to Programme Studio to XER, and the same for P6 XML, MS Project XML, MPX, Excel, CSV and IFC, keep the dates and every field read. In an XER, the tables Programme Studio doesn't edit are written back byte for byte.
- In the browser: Playwright drives the app itself - typing, linking, dragging bars, filters, undo, printing, the free limit, the start screen and a 5,000-activity scrolling budget - and fails on any page error.
Results against P6 and MS Project
| Reference file | Saved by | Activities | Checked | Result |
|---|---|---|---|---|
| Percent complete (P6 XML) | Primavera P6 8.4 | 12 | Early start and finish of every activity, with in-progress work on duration, physical and units percent complete | 12 of 12 match |
| Task links (MPX) | MS Project 98 | 16 | Early and late dates with every link type and lags in days and weeks | 16 of 16 match |
| Task durations (MPX) | MS Project 98 | 90 | Early and late dates for durations in minutes to months | 90 of 90 match |
| Durations (MS Project XML) | MS Project | 10 | Finish dates, including elapsed durations that run round the clock | 10 of 10 match |
| Riverside Health Centre (XER and MS Project XML) | Metre2 Gantt Viewer tests | 34 | Early start and finish, late start and finish and total float against the dates saved in the file, with progress at a data date | All match: 34/34 early dates, 26/26 late starts, 27/27 late finishes, 27/27 total float |
Where a P6 file's own dates are not P6's answer (for example a programme saved without being rescheduled), it is not used as a reference. Late dates of work already complete are a display convention in P6 and are not compared.
The automated checks
| Area | Checks |
|---|---|
| Scheduling engine: link types, lags and leads, constraints, calendars, part days, progress modes, float | 45 |
| File import and export: XER, P6 XML, MS Project XML, MPX, IFC, GanttProject, round trips | 56 |
| Excel and CSV import and export | 21 |
| Exchange between formats | 16 |
| Logic checks | 26 |
| Progress, baselines and revisions | 26 |
| Activity codes and user fields | 32 |
| Delay analysis: time impact, windows, what-if, the 14-point check, NEC4 | 38 |
| Resources, levelling, cost and earned value | 34 |
| Last Planner and takt | 23 |
| Printing | 23 |
| Total | 340 |
Plus 157 checks in a real browser: 102 for the workspace, 47 for the free version and 8 for the .mpp conversion. All of them run before every release.
What has not been checked yet
The reference programmes are test files, from Metre2's own tests and the open-source MPXJ project's test data, not large live construction programmes. Programme Studio follows P6's documented scheduling options, but P6 has settings and edge cases (resource-dependent activities, some level-of-effort behaviour, multiple float paths) that the reference set does not yet cover.
If you have an XER or MS Project file you are happy to share, scheduled in P6 or MS Project, it can go straight into the comparison: email support@metre2.co.uk. It is used for testing only and never published.