Resource Calendars, Availability & Utilization — business view

Technical trace: Resource Calendars, Availability & Utilization

1. Business Summary

Tracks each resource's daily availability — working hours, holidays, vacations, blocking periods — and computes utilization to gate selection. A parallel concept exists for users (e.g., PMs).

2. Business Value

Ensures assignments respect time zone, working days, and capacity, preventing missed deadlines.

3. Users / Stakeholders

PMs, vendor managers, resources.

4. Workflows

  • Calendar templates per country drive working days/holidays.
  • Daily calendar rows define hours; calendar updates record vacations and blocks.
  • Availability requests are issued for upcoming work; resources respond; cron jobs schedule and time-out requests.
  • Utilization is computed from assigned vs. available hours.

5. Sub-Features

  • User vs. resource calendars.
  • Availability requests with strategies and plans.
  • Cron-scheduled availability windows.

6. Business Rules

  • Availability respects template + holidays + calendar updates.
  • Resources blocked at high utilization (threshold not externally documented).

7. Data Entities

Resource Calendar Day / Update, Resource Availability, Availability Request and selected Resources, User Calendar Day / Update.

8. Entry Points

  • Resource availability screens.
  • Cron schedules.

9. Inputs & Outputs

  • Inputs: calendar updates, availability responses.
  • Outputs: availability windows, utilisation metrics, selection inputs.

10. Integrations

  • Email (availability requests).

11. Calculations / Logic

  • Window expansion across working days.
  • Utilization aggregation.

12. Status Lifecycle

  • Availability requests: pending → responded → expired/closed.

13. Permissions

  • VM, PM, resource (own).

14. Reports & KPIs

  • Utilization, calendar fill rate, response times.

15. Risks & Observations

  • Concurrent calendar updates without locking risk stale calculations.
  • Utilization threshold is not externally configurable from the visible code — operationally opaque.

16. Source Code Evidence

  • app/Plugin/resources/Model/{ResourceCalendarDay, ResourceCalendarUpdate, ResourceAvailability, AvailabilityRequest}.php.

← Deep dives index