Every task from the first day of discovery, in date order, with the hours of work each represents. Month subtotals and the running total reconcile to the project total of 549 hours of work.
| Date | Type | Task | Hours | Running |
|---|---|---|---|---|
| May 2026 (May 23–31) | ||||
| May 23 | Design | Discovery: FMX field inventory (40 fields, 8 request types, 65 buildings), walk-through of the live FMX form | 7 | 7 |
| May 23 | Design | Salesforce reconciliation of the existing Facility and Facility Request objects; data model and specification; decision log | 9 | 16 |
| May 23 | Build | Phase 1 fields and permission set deployed; effective-window formula corrected; functional test 5/5 | 4 | 20 |
| May 23 | Build | Conflict-detection flow: flag mode, then block mode (first-come-secures); retest 4/4 | 4 | 24 |
| May 23 | Build | Public site, guest profile, bookings REST service, Visualforce calendar, iframe embed on form 175 (clickjack and trusted-domain settings) | 9 | 33 |
| May 23 | Build | Approval form 176 and update connector; approval token flow; email engine in Apex with inline branded templates | 9 | 42 |
| May 23 | Testing | Case-object impact audit (76 flows, 2 triggers, zero coupling) | 1 | 43 |
| May 24 | Testing | Connectors enabled, form published; first end-to-end test failed at the connector and was fixed; full loop proven; approver-capture fields; test recipients set | 7 | 50 |
| May 25 | Data | FMX exports processed; 65 buildings and 2,525 rooms loaded; three-level building → resource type → room cascade built on the form; date and time validation | 9 | 59 |
| May 25–26 | Build | Calendar requests scoped (school filter, ICS feed, Eastern time); Eastern-time fix deployed | 3 | 62 |
| May 24–31 | Meetings | Weekly huddle, demo rehearsal, Remaining Work planning summary | 7 | 69 |
| Subtotal, May 2026 | 69 | 69 | ||
| June 2026 | ||||
| Jun 1 | Build | FormAssembly API approach established; 24-field build on the clone form; school filter authored; approval-email recipients | 7 | 76 |
| Jun 1 | Data | 324 additional facilities; Equipment object and 344 records with permission set | 4 | 80 |
| Jun 2 | Meetings | Demo to CPS, preparation, and post-demo priority agreement | 6 | 86 |
| Jun 6 | Build | Post-demo sprint: building and room name resolution, school filter deployed, entrance records, ICS feed, form 175 field push with rollback snapshot, 32 conditional-logic rules, connector cluster repair, two validation rules, Lightning record page, pre-go-live cleanup | 15 | 101 |
| Jun 8 | Docs | Google calendar rollout brief for district IT | 1 | 102 |
| Jun 9 | Build | Branded Request Received email; status path extended by four stages; organisation fields and required-on-create rule; five checkbox fields converted to Yes/No; calendar tile redesign | 9 | 111 |
| Jun 10 | Build | Availability REST service with CORS and form handoff; request-type and record-type alignment; calendar shows approved and pending; five branded workflow emails; Committee Review rename | 9 | 120 |
| Jun 10 | Data | Hourly rates from three district workbooks on 2,525 rooms; rate and flag fields; quote calculation | 6 | 126 |
| Jun 10 | Meetings | Weekly huddle with Adam: requirements capture, rate workbooks, July 1 date; follow-up | 3 | 129 |
| Jun 11 | Build | Paid status, payment due, scheduled auto-cancel, payment stamp; workflow-emails flow; Yes/No connector emergency and fix; attachment step; six-digit request number | 9 | 138 |
| Jun 13–14 | Data | Facility Requester object; 1,225 FMX requesters loaded and deduplicated to 1,215 | 7 | 145 |
| Jun 13 | Build | Reservation Resource junction object, resolver flow and permission set | 4 | 149 |
| Jun 13 | Design | Feedback document review and change-request batch #2 scoping | 4 | 153 |
| Jun 2–30 | Testing | User acceptance support: test submissions with Adam, defect triage, test-record cleanup, recipient reversion before go-live | 11 | 164 |
| Jun 23–25 | Meetings | Senior leadership presentation support; governance meeting and feedback additions | 4 | 168 |
| Jun 27 | Fix | Feedback cleanup (request types, theatre spelling, test data); rooms-not-populating root cause and building-scoped resource-type endpoint | 7 | 175 |
| Jun 29 | Build | Attendee auto-calculation, reminder field removed, untyped rooms corrected; June 29 Project Status document | 6 | 181 |
| Jun 30 | Build | Recurrence and security fields; principal and athletic-director routing fields, 57 buildings loaded, staff-recipient formula; test addresses removed | 8 | 189 |
| Jun 30 – Jul 1 | Docs | Go-live readiness checks; Approval Routing Open Items document | 3 | 192 |
| Jun | Meetings | Weekly huddles and decision threads through June | 8 | 200 |
| Subtotal, June 2026 | 131 | 200 | ||
| July 2026 | ||||
| Jul 1–2 | Testing | Go-live support; first live routing review and note to Adam | 4 | 204 |
| Jul 8 | Build | Status Path component; four fee fields and automatic rental and total formulas; quote email; path reorder; scheduled auto-complete | 9 | 213 |
| Jul 13–15 | Meetings | Working session (70 minutes), transcript, 12-item programme scoped with effort per item | 9 | 222 |
| Jul 15–16 | Build | Sandbox baseline; Site Review advancement and price override built and validated in sandbox; Batch A production release | 9 | 231 |
| Jul 13–22 | Build | Rental office users, permission set and app; additional user July 22 | 4 | 235 |
| Jul 16–24 | Build | Batch B built in sandbox: three committee stages, approver configuration setting, daily reminders, Education Center auto-confirm, calendar colour at sign-off | 15 | 250 |
| Jul 21–24 | Docs | Facilities feedback check-in and huddle; Open Items and Batch B Deployment Plan | 4 | 254 |
| Jul 25 | Build | Batch B production release (22 components, 20 tests); 17 failing tests repaired; 36-record backfill; weekend guard; Committee Review removed from path; list-view rights; stuck-record triage; Work Completed document | 13 | 267 |
| Jul 25–27 | Data | Legacy FMX analysis: 311 rows, 17 collisions, duplicate detection corrected; Items to Resolve document and decision email | 11 | 278 |
| Jul 27 | Design | Requester self-edit recommendation; licensing question answered | 3 | 281 |
| Jul 29 | Fix | Principal routing gap closed (64 of 64 buildings); Walnut Hills and repeat-event bugs root-caused; huddle and sync | 7 | 288 |
| Jul 29 | Build | Recurrence Phase A designed, deployed to production, email previews | 7 | 295 |
| Jul 29–30 | Build | Recurrence Phase B design and engine built in sandbox: 24 fields, 8 classes, 40 tests, 7 functional proofs; backfill analysis | 14 | 309 |
| Jul 30–31 | Fix | Launch Ed room-block levers tested and applied; Findings and Options document | 4 | 313 |
| Subtotal, July 2026 | 113 | 313 | ||
| August 2026 | ||||
| Aug 1–2 | Testing | Phase A proven on live submissions; session handoff | 2 | 315 |
| Aug 3 | Meetings | Facility Rental meeting (migration scope), SCPA profiling, session note and six migration questions | 6 | 321 |
| Aug 4 | Testing | Secretary training day support (33 submissions), twin analysis, handoff | 4 | 325 |
| Aug 5 | Data | Migration rehearsed in sandbox (100 of 101), external id, load file, collision handling; scope narrowed to pending | 9 | 334 |
| Aug 5 | Docs | Sequenced Release Plan; Launch Ed existing-bookings document; SCPA athletic director set; huddle | 6 | 340 |
| Aug 5 | Build | Multi-date calendar picker built on the clone form | 7 | 347 |
| Aug 6 | Testing | Committee chain observed end to end at SCPA; handoff | 2 | 349 |
| Aug 11 | Build | Education Center approval emails (template, copy to principal, flow) | 3 | 352 |
| Aug 12 | Design | Education Center approval routing build specification | 3 | 355 |
| Aug 13 | Meetings | Working call (60 minutes), ten decisions, FMX resource-type root cause, exceptions file, handoff | 8 | 363 |
| Aug 14–15 | Fix | Inverted time windows corrected; room-block correction; handoff | 4 | 367 |
| Aug 16 | Fix | Form 175 session: conditional-logic analysis, picker port to a second clone, connector-failure workbook (57 submissions), blank-resource fix, facility record defects (310 rows) | 11 | 378 |
| Aug 17 | Fix | Date-scoped Launch Ed block (74 records) and closeout; Dynamic Form edit fix and closeout; status note | 7 | 385 |
| Aug 19 | Fix | Connector failures re-investigated (19 of 21 resolved); HVAC records corrected; field history enabled | 3 | 388 |
| Aug 19 | Build | Recurrence engine to production with permission set, guards, configuration and rollback plan; engine enabled; list views and series related list; picker live on form 175 (revision 68) with connector remap; runbooks | 15 | 403 |
| Aug 19 | Data | First FMX load: 175 bookings; exceptions file; Questions and How Multi-Date Bookings Work documents | 9 | 412 |
| Aug 20 | Fix | Series cap defect (52 of 169 dates) diagnosed; handoff | 4 | 416 |
| Aug 22 | Fix | Room-already-booked complaint: availability check never wired, 471 duplicate room names; build specification | 4 | 420 |
| Aug 24–25 | Build | ICS feed review, 548-event export, subscription links for 67 schools; handoff | 4 | 424 |
| Aug 26–27 | Build | Calendar end times, page into source control; completed events kept on the calendar; closeouts | 3 | 427 |
| Aug 26–27 | Meetings | Weekly huddle and sync: calendar feedback, reporting wishes, migration audit | 3 | 430 |
| Aug | Testing | Regression and verification across four release days; sandbox validations | 15 | 445 |
| Aug | Meetings | Decision threads with Jenna, Adam and Shauna between sessions | 9 | 454 |
| Aug | Rework | Education Center bypass reversal, form revision churn (61 → 68), sandbox re-baselining | 13 | 467 |
| Aug | Docs | Session handoffs of August 13, 15 and 20 | 7 | 474 |
| Subtotal, August 2026 | 161 | 474 | ||
| September 2026 (Sep 1–11) | ||||
| Sep 1 | Build | Education Center requests routed to Jenna before the approval email: new field, workflow and advancement flow versions, auto-confirm and notify retired, activation | 10 | 484 |
| Sep 1 | Docs | End-user Standard Operating Procedure (6 pages) | 11 | 495 |
| Sep 1 | Docs | Senior leadership briefing deck (15 slides) | 7 | 502 |
| Sep 2 | Meetings | Presentation support; Salesforce chat | 2 | 504 |
| Sep 4 | Data | Second FMX load: 34 bookings; theatre spelling; exceptions and Needing a Decision workbook | 7 | 511 |
| Sep 4 | Build | Principal note-to-requester built in sandbox (field, layout, handler, tests) | 6 | 517 |
| Sep 4 | Meetings | Athletic-director integration discussion | 2 | 519 |
| Sep 9 | Meetings | Workflow and security session; approver identity check | 4 | 523 |
| Sep 10 | Meetings | Form requests session: cancellation, capacity, calendar toggle; scoping notes | 4 | 527 |
| Sep 11 | Meetings | Reporting session with Adam; scoping of directory-driven routing | 4 | 531 |
| Sep 11 | Docs | Project write-up and effort estimate | 9 | 540 |
| Sep | Testing | Regression, verification and decision threads through September 11 | 9 | 549 |
| Subtotal, September 2026 | 75 | 549 | ||
| Total, May 23 – September 11, 2026 | 549 | 549 | ||
| Type | Hours | Share |
|---|---|---|
| Build | 215 | 39% |
| Meetings | 79 | 14% |
| Data | 62 | 11% |
| Testing | 55 | 10% |
| Fix | 51 | 9% |
| Docs | 48 | 9% |
| Design | 26 | 5% |
| Rework | 13 | 2% |
| Total | 549 | 100% |
I replaced the retired FMX facility-request process with a Salesforce system fronted by a public FormAssembly form. Discovery started on May 23, 2026 against a June 2 demo and a July 1 production date, both of which were met. The system took its first real requests on July 1, absorbed the district's secretary training day on August 4 (33 submissions in one day), and by September 1 held 1,332 booking records, 646 of them for the Education Center.
The build covers intake, room selection, double-booking protection, a nine-stage approval path with emailed approvals that need no Salesforce login, branded notifications, rate-based quotes and payment controls, a public calendar with per-school subscription feeds, multi-date series booking, and the migration of the forward FMX schedule. This document records what was built and when, what was delivered, where testing sat in the calendar, and the effort the work represents.
| Period | What happened |
|---|---|
| May 23 | Discovery: FMX field inventory (40 fields, 8 request types, 65 buildings), Salesforce reconciliation, data model designed and deployed the same day. Conflict detection, public calendar site, approval form and email engine built by end of day. |
| May 24 | Testing began. Form 175 published and connectors enabled; the first end-to-end test failed at the connector and was fixed the same day. Full loop proven: form submit → Salesforce record → emails → emailed approval → calendar. |
| May 25 – Jun 1 | 2,592 facility records loaded, three-level building → resource type → room cascade built on the form, Eastern-time fix, additional 324 facilities and 344 equipment records. |
| Jun 2 | Demo to CPS. Strong reception; post-demo priorities agreed. |
| Jun 2 – 30 | User acceptance window. Post-demo sprint (school filter, ICS feed, conditional logic, name resolution), status path, branded emails, pricing, payment controls, requester directory, multi-room junction, feedback rounds on June 10, 13 and 25, principal routing wired on June 30. |
| Jul 1 | Go-live. First real approvals within the week (a principal declined a request on July 7). |
| Jul 8 – 25 | Status Path and fee model (Jul 8); Jul 13 working session set a 12-item programme; Batch A released Jul 16; Batch B (three committee stages, approver reminders, Education Center auto-confirm, calendar colour) released Jul 25 with 22 components and 20 passing tests. |
| Jul 29 – Aug 6 | Recurrence Phase A live; Phase B engine built and proven in the full sandbox; Launch Ed rooms closed; FMX migration scoped with CPS on Aug 3 and rehearsed in sandbox on Aug 5; secretary training Aug 4. |
| Aug 11 – 17 | Education Center approval emails; routing redesign agreed with CPS on Aug 13; inverted time windows corrected; date-scoped room block (74 records) and resource-name edit fix closed out Aug 17. |
| Aug 19 – 20 | Largest release. Ten production deploys: recurrence engine enabled, multi-date picker on the live form, external-id field, 9 list views, series related list, 175 legacy bookings loaded. One live defect surfaced the next day (a 169-date series capped at 52). |
| Aug 22 – 27 | Availability-check gap diagnosed and specified; ICS feed reviewed; calendar tiles show end times (Aug 26) and keep completed events (Aug 27). |
| Sep 1 – 4 | Education Center requests routed to Jenna before approval email (Sep 1); end-user SOP and leadership briefing deck for the Sep 2 presentation; second migration load of 34 (Sep 4); principal note-to-requester built in sandbox. |
| Sep 9 – 11 | Working sessions with CPS on remaining migration outreach (about 16 bookings), reporting needs, cancellation and capacity requests, and directory data for future routing. |
| Date | Release |
|---|---|
| May 23–26 | Data model, conflict detection, public site and calendar, approval form and emails, timezone fix |
| Jun 1 | Facility and equipment data loads |
| Jun 6 | Post-demo sprint: name resolution, school filter, ICS feed, validation rules, record page |
| Jun 9–11 | Branded emails, status path, organisation fields, Yes/No fields, availability service, pricing, payment controls |
| Jun 13–14 | Requester directory and multi-room junction |
| Jun 27–30 | Feedback cleanup, building-scoped resource types, attendee auto-calc, security fields, principal routing |
| Jul 8 | Status Path, fee model, auto-complete |
| Jul 13–16 | Rental office users and app; Site Review advancement (Batch A) |
| Jul 25 | Batch B: committee stages, reminders, Education Center auto-confirm, calendar colour |
| Jul 29 – Aug 17 | Recurrence Phase A, room block, Education Center approval emails, inverted-window and edit fixes |
| Aug 19–20 | Recurrence engine, multi-date form, external id, list views, first FMX load |
| Aug 26 – Sep 4 | Calendar end times and completed events, Education Center routing to Jenna, second FMX load |
| Date | Object | Rows | Source |
|---|---|---|---|
| May 25 | Facilities (buildings + rooms) | 2,592 | FMX resources export |
| Jun 1 | Facilities (additional) | 324 | FMX resources export |
| Jun 1 | Equipment | 344 | FMX equipment export |
| Jun 10 | Hourly rates on rooms | 2,525 | Three district rate workbooks |
| Jun 13–14 | Requesters (deduplicated to 1,215) | 1,225 | FMX user export |
| Jun 30 – Jul 29 | Principal and AD routing on buildings | 64 | District principal and AD lists |
| Jul 25 | Education Center backfill to Paid | 36 | Policy decision Jul 13 |
| Aug 17 | Launch Ed date-scoped room blocks | 74 | CPS request Jul 31, shortened Aug 13 |
| Aug 19 | Legacy FMX bookings, load 1 | 175 | FMX future schedule export |
| Sep 4 | Legacy FMX bookings, load 2 | 34 | Same export, held rows |
| Date | Deliverable | For |
|---|---|---|
| May 24 | Remaining Work planning summary | Internal |
| Jun 8 | Google calendar rollout brief | District IT |
| Jun 29 | Project Status (HTML/PDF): 45+ items shipped, 9 remaining | Adam |
| Jul 1 | Approval Routing Open Items (PDF) | Adam |
| Jul 24 | Open Items and Batch B Deployment Plan | Adam |
| Jul 25 | Work Completed (HTML); Legacy Schedule Migration — Items to Resolve (HTML) | Adam |
| Jul 27 | Legacy migration decision email (DOCX) | Adam |
| Jul 29 | Block Off Time intake template (CSV) | Rental office |
| Jul 30 | Launch Ed Room Block — Findings and Options (HTML/PDF) + Scheduled Use listing | Adam, Jenna |
| Aug 5 | Sequenced Release Plan; Launch Ed Existing Bookings (HTML/PDF) | Internal; Jenna |
| Aug 12 | Education Center Approval Routing build spec | Adam, Jenna |
| Aug 13 | FMX vs Salesforce resource-type exceptions (CSV, 157 rows) | Adam |
| Aug 17 | Room Block Closeout; Resource Name Not Editable Closeout (HTML/PDF) | Jenna, Adam |
| Aug 19 | Release rollback plan; How Multi-Date Bookings Work (DOCX); Questions for the buildings team (DOCX); migration exceptions (CSV) | Internal; CPS |
| Aug 22 | Form 175 Availability Check build spec | Internal |
| Aug 24 | School Calendar Subscription Links (XLSX, 67 schools); calendar export (ICS) | Adam |
| Aug 26–27 | Calendar end-time and completed-events closeouts (PDF) | Adam |
| Sep 1 | Facility Use Schedule Request SOP (6 pp, HTML/PDF); SLT Briefing deck (15 slides) | Jenna, SLT |
| Sep 4 | FMX Bookings Needing a Decision (XLSX, 16 rows); migration exceptions (CSV) | Jenna, Adam |
| Jul 29 – Aug 27 | Eleven dated session handoffs with per-item state | Internal |
| Date | Session |
|---|---|
| Jun 2 | Solution demo |
| Jun 10 | Weekly huddle (requirements capture, rates, July 1 date) |
| Jun 23 | Senior leadership presentation (Adam) |
| Jun 25 | Governance meeting (feedback additions) |
| Jul 13 | Working session, 70 minutes (12-item programme, committee approvers, Education Center policy, pricing) |
| Jul 21–22 | Facilities feedback check-in; weekly huddle |
| Jul 29–30 | Weekly huddle; Salesforce sync |
| Aug 3 | Facility Rental meeting (migration scope 294, placeholders, collisions) |
| Aug 4–5 | Training-day check-in; weekly huddle |
| Aug 13 | Working call, 60 minutes (ten decisions: Education Center routing, recurrence conflicts, room block, required fields, edit rights) |
| Aug 26–27 | Weekly huddle; Salesforce sync (calendar feedback, reporting wishes, migration audit) |
| Sep 2 | Jenna's SLT presentation (deck delivered Sep 1) |
| Sep 4 | AD integration discussion |
| Sep 9–11 | Three sessions: workflow and security, form requests (cancellation, capacity, calendar toggle), reporting with Adam |
Plus the weekly Salesforce huddles through May and June and the day-to-day email and chat threads that carried decisions between sessions.
Hours of work a skilled Salesforce and FormAssembly consultant would need to reproduce the project, split into build and engagement so each line can be checked against sections 3 to 7. Each line is skewed upward rather than down. The total is 549 hours of work.
| # | Workstream | Hours |
|---|---|---|
| 1 | Discovery and solution design: FMX field inventory, Salesforce reconciliation, data model and spec, decision log | 18 |
| 2 | Core data model, conflict detection, permissions | 13 |
| 3 | FormAssembly intake: form 175 rebuild (cascade, 22-field push, 32 rules, required flags, organisation fields, multi-date picker), approval form 176, connectors 205 and 206, API push and rollback, Yes/No and attachment fixes | 40 |
| 4 | Public calendar and services: site, guest profile, calendar page, bookings REST (4 modes), timezone, school filter, tiles and colour states, ICS feed, availability service and CORS, end times, completed events | 35 |
| 5 | Notifications and status workflow: email engine (13 templates), token flow, intake and workflow flows through 12 and 4 versions, status path 6 → 14, Path component, record-type alignment, Site Review advancement | 31 |
| 6 | Pricing, payment and completion: 2,525 rates, rate fields, quote calculation, Paid / payment due / auto-cancel, payment stamp, six fee fields, auto-complete, price override | 15 |
| 7 | Committee review and Education Center: three stages, approver config, reminders with weekend guard, auto-confirm and notify, 36-record backfill, list views, layouts, rental-office users and app, 17 tests repaired, Sep 1 routing change | 42 |
| 8 | Recurrence: Phase A; Phase B engine (24 fields, 8 classes, 41 tests, kill switch, permission set, list views, rollback plan), connector remap, enablement | 53 |
| 9 | Reference data and directories: 2,916 facilities, 344 equipment, 1,225 requesters and dedupe, entrances, resource-type cleanup, principal and AD routing, HVAC, field history, room blocking | 26 |
| 10 | Legacy FMX migration: 311-row analysis, decision document, sandbox rehearsal, external id, two production loads, exception and decision lists | 24 |
| 11 | Post-go-live defect resolution: inverted windows, connector failures, Dynamic Form lock, availability gap diagnosis and spec, 52-date cap, ICS filter, stuck records, Walnut Hills, Yes/No emergency | 26 |
| Subtotal, build and data | 323 |
| # | Category | Hours |
|---|---|---|
| 12 | Scoping and requirements: FMX walkthroughs, weekly huddles, feedback rounds (June 13 and 25), 12-item programme (July 13 → 15), migration scoping (July 25 → August 5), Education Center routing scoping | 48 |
| 13 | Working sessions and communication: the sessions in section 7, preparation and follow-up, email and chat threads carrying decisions | 53 |
| 14 | Testing and user acceptance: first end-to-end May 24, pre-demo cycles, UAT June 2 – 30, regression after each of 12 releases, sandbox rehearsals, training-day support August 4, post-release verification | 73 |
| 15 | Documentation and enablement: status documents, eleven handoffs, release and rollback plans, build specs, SOP, leadership deck, closeouts, explainers, decision emails | 37 |
| 16 | Rework and change absorption: post-demo scope changes, August 13 reversal of the Education Center bypass, form revision churn (rev 61 → 68), sandbox refresh re-baselining | 15 |
| Subtotal, engagement | 226 | |
| Total hours of work | 549 |
| Period | Focus | Hours | Per week |
|---|---|---|---|
| May 23 – 31 | Discovery, core build, form and calendar, first end-to-end tests, data load, demo preparation | 69 | ≈ 53 |
| Jun 1 – 30 | Demo, post-demo sprint, UAT, pricing and payment, directories, feedback rounds, go-live preparation | 131 | ≈ 30 |
| Jul 1 – 31 | Go-live support, fee model, July 13 programme, Batch A and B, recurrence Phase A, migration scoping | 113 | ≈ 26 |
| Aug 1 – 31 | Migration rehearsal and load, recurrence engine and multi-date form, room block, routing redesign, defect resolution, calendar fixes | 161 | ≈ 37 |
| Sep 1 – 11 | Education Center routing, SOP and leadership deck, second load, reporting and backlog scoping | 75 | ≈ 47 |
| Total, 16 weeks | 549 | ≈ 34 |