Parallax Release 2 - Scope & Schedule¶
Client copy. Prepared for stakeholder review.
Executive summary¶
Release 2 is delivered in four sprints (2A-2D). Each sprint focuses on a core capability. Sprint durations range from about 2 to 5.5 weeks. The programme runs from 08 June 2026, with each sprint followed by a client testing (UAT) window and a scheduled release; the final release is 23 September 2026.
Sprints¶
| Sprint | Core capability | Description |
|---|---|---|
| 2A | Import / Export Strategies | Capability to export, amend offline and re-import pricing strategies, including validation and success/exception reporting. |
| 2B | Templates by Source | Organise templates by data source and reuse a single master template across hotels, with hands-off bulk file pickup from each hotel's shared drive. |
| 2C | Interactive Strategy Report (ISR) | A live calendar-and-grid report to adjust seasons, events, price overrides and the rate-to-publish strategy per day, with Excel round-trip editing and a full audit trail. |
| 2D | Summary Report Redesign | A redesigned Summary report, presented automatically as the home page after login. |
Delivery plan (plan on a page)¶
gantt
title Parallax Release 2 - Delivery Plan (development, client UAT, release)
dateFormat YYYY-MM-DD
axisFormat %b %d
excludes weekends
section 2A Import/Export Strategies
Development 2A :a1, 2026-06-08, 10d
Client UAT 2A :active, a2, 2026-06-22, 2d
Release 2A :crit, milestone, 2026-06-24, 0d
section 2B Templates by Source
Development 2B :b1, 2026-06-22, 24d
Client UAT 2B :active, b2, 2026-07-24, 5d
Release 2B :crit, milestone, 2026-08-05, 0d
section 2C Interactive Strategy Report
Development 2C :c1, 2026-07-24, 28d
Client UAT 2C :active, c2, 2026-09-02, 6d
Release 2C :crit, milestone, 2026-09-16, 0d
section 2D Summary Report
Development 2D :d1, 2026-09-02, 12d
Client UAT 2D :active, d2, 2026-09-18, 2d
Release 2D :crit, milestone, 2026-09-23, 0d
Development runs back to back from 08 June 2026 (weekends excluded). Client UAT windows (shown in a separate colour) run in parallel with the next sprint's build. Releases (go-live) are the red diamonds, each on the Wednesday after its UAT window.
Delivery schedule¶
| Sprint | Capability | Development | Client test (UAT) | Release |
|---|---|---|---|---|
| 2A | Import / Export Strategies | 08 - 19 Jun 2026 | 22 - 23 Jun 2026 | 24 Jun 2026 |
| 2B | Templates by Source | 22 Jun - 23 Jul 2026 | 24 - 30 Jul 2026 | 05 Aug 2026 |
| 2C | Interactive Strategy Report | 24 Jul - 01 Sep 2026 | 02 - 09 Sep 2026 | 16 Sep 2026 |
| 2D | Summary Report Redesign | 02 - 17 Sep 2026 | 18 - 21 Sep 2026 | 23 Sep 2026 |
Please reserve roughly 20% of each sprint's duration for client UAT (2A ~2 days, 2B ~5 days, 2C ~6 days, 2D ~2 days). UAT is client-side and is not part of the development effort.
Sprint detail¶
Sprint 2A - Import / Export Strategies¶
Business problem. Moving pricing strategies between hotels or environments is manual and error-prone; copying a strategy can crash when a duplicate name is used; and long attribute names are awkward to work with day to day.
User story / requirement.
- As a strategy manager, I want to import and export strategies in bulk with a validation report, so that I can move them safely and see problems up front.
- As a user, I want to copy a complete strategy in one click.
- As a strategy author, I want duplicate names (a copied strategy or a condition) handled gracefully and my edits to appear immediately.
- As a strategy author, I want shorter attribute names (full name on hover) and a template-based import/export of attributes.
Solution approach. A single, reusable import/export pipeline that reuses the existing, production-proven strategy-copy logic and formula validation. Export produces a portable file; import validates each strategy (duplicate detection, error reporting) before saving and returns a clear pass/fail report. The copy and duplicate-name handling are hardened first so they are solid foundations for bulk operations.
Unit tests to be covered.
- An import with deliberate errors produces a clear validation report
- A valid batch imports correctly
- Export then re-import round-trips
- A copied strategy matches the original
- A duplicate strategy name on copy is handled gracefully (no crash)
- A duplicate condition name is caught; an edit shows immediately without a refresh
- Hovering an attribute reveals its full name; an attribute export/import is lossless
Acceptance criteria.
- A batch of strategies imports correctly, with duplicates and errors listed in a report
- Strategy export then re-import round-trips
- A strategy can be fully copied in one click
- Duplicate strategy or condition names never crash and always explain the problem
- Edits to a strategy show without a manual refresh
- Shortened attribute names display (full name on hover); attribute import/export is lossless
Sprint 2B - Templates by Source¶
Business problem. Templates are managed per hotel, so similar ones pile up and there is no way to see all templates for a given source; one change must be repeated across many near-identical hotel templates; and files have to be uploaded manually for each hotel.
User story / requirement.
- As an admin, I want templates labelled by data source (Lighthouse/Duetto/PMS/Other), so that I can filter and manage them by source.
- As a hotel operations user, I want one master template that each hotel tweaks only where it differs, so that I maintain one master, not dozens of copies.
- As an admin, I want to delete, duplicate and flag common templates without back-office help.
- As an operations user, I want files placed on a hotel's shared drive to load automatically, with an email on success or failure.
Solution approach. Templates gain a source label and can be filtered by it. On top of that, inheritance changes let a template be based on a master: values resolve down the chain (master first, then the hotel's override) with safeguards against circular references, and screens clearly mark inherited versus overridden values. For bulk loading, files dropped on a hotel's shared drive are picked up automatically and routed to the right template, with success/failure alerts.
Unit tests to be covered.
- Filtering by each source shows only matching templates; a new template requires a source
- A hotel shows master values until overridden; an override wins
- The system prevents a template from referencing itself in a loop
- Deleting shows dependents then removes on confirm; duplicating produces an identical copy
- A valid file loads automatically and alerts; a failed load triggers a failure alert; a wrong-hotel file is flagged
Acceptance criteria.
- Every template has a source and the list can be filtered by source
- Changing a master template updates hotels that haven't overridden it; overrides are respected and clearly marked; reports are no slower
- Templates can be deleted (with an impact preview), duplicated, and flagged as common
- A file dropped on a hotel's shared drive loads on the next check; success and failure both alert; misrouted files are flagged
Sprint 2C - Interactive Strategy Report (ISR)¶
Business problem. There is no single interactive place to review and adjust pricing per day; seasons, events, price overrides and rate-to-publish decisions are handled separately and don't update live; calculations can be slow; and report figures lack consistent formatting.
User story / requirement.
- As a revenue manager, I want a live calendar-and-grid report where I adjust season/event/override settings and choose the rate-to-publish strategy per day, and see results immediately.
- As a revenue manager, I want to export the report to Excel, edit the permitted columns offline, and import it back with a preview and audit.
- As a revenue manager, I want to create price overrides directly in the report and use the old page only for history.
- As a report user, I want each column formatted as currency, percentage or number with chosen decimals.
- As a user, I want strategy calculations to be fast enough for live, per-day recalculation.
Solution approach. The ISR presents a calendar and grid that stay in sync; each day exposes season/event/override dropdowns and a per-day rate-to-publish choice (with bulk save and audit). Changing a day triggers a fast per-day recalculation so results appear within about a second. The report exports to Excel and re-imports with only the permitted columns writable, every change preview-checked and audited; price overrides are created directly from the report. Column formatting, dynamic date filters and lazy tab calculation are delivered as part of the report.
Unit tests to be covered.
- Each column format (currency/%/number) and decimal setting displays correctly, including zero/empty values
- Changing a per-day dropdown updates the grid promptly; the calendar and table stay in sync
- A timed recalculation meets the target
- Per-day rate-to-publish bulk save commits valid days, flags conflicts and writes audit rows
- Dynamic date tokens resolve correctly; only the active tab calculates on load
- On Excel import, editing a protected column has no effect; the preview lists intended changes
- An override set in the report appears in history; the old page is read-only
- A benchmark calculation is timed and the output compared before/after (no change)
Acceptance criteria.
- In the ISR, per-day dropdowns drive a live recalculation (~1 second) and the calendar and grid never desync
- Mandatory columns can't be removed; advanced and dynamic date filters work; only the active tab auto-calculates
- Rate-to-publish can be chosen per day, saved in bulk, and is audited
- Report columns show currency / % / number formatting with the chosen decimals
- Excel round-trip imports only the two allowed columns, with a change preview and audit
- Price overrides are created in the ISR and the old page shows history only
- Strategy calculations meet the speed target with no change in output
Sprint 2D - Summary Report Redesign¶
Business problem. The Summary report needs a refresh, and after login users don't land on a useful overview - they have to navigate to find one.
User story / requirement.
- As a user, I want a redesigned Summary report shown automatically as my home page after login.
Solution approach. After login, users are taken to the redesigned Summary report, which is rebuilt with a new layout and presentation and handles the empty/no-data case gracefully.
Unit tests to be covered.
- Logging in lands the user on the redesigned Summary report
- The report renders correctly with real data and with no data
- Other screens are unaffected
Acceptance criteria.
- The Summary report is redesigned and, after login, users land on it by default
- It renders correctly with real data and handles the empty / no-data case