Visit data lifecycle
From the municipality care decision to a published schedule — three layers (master data, dated visits, optimisation) and how data flows in CAIRE.
Municipality care decision (assistance decision)
The municipality decides which services a client is entitled to and how often. This is the legal basis for all planning. CAIRE translates the decision into services and templates in Layer 1.
The client view in CAIRE shows
decision (hours), planned (from templates) and used (completed visits) — so the planner sees gaps between law, plan and reality.
Master data — care decision, services, groups and visit templates
1A. Services (service types)
A service is a type of care or service clients may be approved for. Each service has organisation-wide default values:
1B. Service groups and dependencies
A service group bundles services that belong together in one day, in a fixed order with timing between steps. Each member has a sequence position and specifies minimum (and optional max) delay from the previous service.
Morning 07–10:30
Lunch 11–13:30
Evening 16–19
11:30–12:00, double staffing
12:00–12:30
Across days — frequency and spacing (pre-computed):
- Shower Mon+Wed+Fri → automatic 48h spacing via day selection.
- Cleaning 1×/month → spread evenly across the period.
- Every other day → CAIRE picks the right days when the schedule is created.
Per-client override: The service group timing is the default. In the visit template the planner can change for one client, e.g. "at least 3 hours" → "at least 2 hours".
1C. Time windows
Time windows divide the day into named periods. They are the main lever for when services should occur. When windows do not overlap, no special dependencies are needed.
07:00–10:30
11:00–13:30
16:00–19:00
1D. Shifts
Shifts define staff working periods. They are used both as frames for visit templates and as the basis for workforce planning in Layer 3.
07:00–16:00
15:00–22:00
08:00–17:00
1E. Visit templates (per client)
The visit template links the care decision to the operational schedule. One template per service per client. The template holds pattern rules, not calendar dates.
Template 2 — Lunch: Weekdays, 20 min, immediately after shower (from service group)
Dependencies can be inherited from the service group when the template is created. The planner can accept or adjust.
1F. Smart recommendations (new clients)
When a new client is onboarded, CAIRE can automatically recommend visit templates based on three factors:
The planner can accept, adjust or reject the suggestions.
How CAIRE handles constraints — simplest tool first
The fewer unnecessary dependencies, the faster and better the optimisation. Over-specifying makes the schedule rigid and increases the risk that visits cannot be placed.
Fixed routes are manual planning’s answer to an optimisation problem
In traditional home-care planning, routes (fixed rounds with fixed visits in fixed order) are copied from period to period. The route implicitly bundles continuity, priorities, dependencies and time logic — baked into one sequence. CAIRE models each requirement explicitly and separately, so it does not need routes at all.
| Aspect | Fixed route (manual) | CAIRE |
|---|---|---|
| Continuity | Implicit — same staff, same round. Breaks on sickness or change. | Explicit optimisation: preferred carers, continuity score as soft goal. |
| Visit order | Fixed sequence in the route. Change means replanning the whole route. | Time windows and dependencies drive order automatically. Optimiser finds best route. |
| Efficiency / travel | Depends on the route being good from the start. Often suboptimal — hard to review all rounds manually. | Route optimisation computes travel and finds the most efficient order given all requirements. |
| Priorities | Implicit in route order. No systematic way to prioritise in conflicts. | Explicit priority per service/template. Hard requirements always met; soft ones optimised. |
| Dependencies | Baked into the route — visible only to whoever built it. | Explicit in service groups and templates. Visible, editable, inheritable. |
| Changes | The weakest point. New client, sick staff, changed decision → route must be rebuilt manually. Often patches that accumulate problems. | Run optimisation again. CAIRE computes a new best solution given current requirements and changes. |
| Quality at start | Highly variable. Often wrong from the start — hard to manually optimise hundreds of visits. | Optimal from the start. Each period is optimised mathematically under all constraints. |
Service group → Visit template → Visit — how properties inherit
The planner rarely needs to edit individual visits. Most changes are made at service group or template level and inherit on the next materialisation.
| Property | Service group (default) | Visit template (client level) |
|---|---|---|
| Duration | — | 25 min |
| Priority | Normal | High (override) |
| Time window | Morning 07–10:30 | 07:00–09:00 (tighter) |
| Skill requirements | Gender: female | + double staffing (additive) |
| Preferred carers | — | Anna P., Erik S. (soft goal in optimisation) |
| Min delay | 3 h (group default) | 2 h (client override) |
| Double staffing | No (default) | Yes — two carers required |
| Locked / pinned | — | No (default) — can be set per instance |
Schedule — concrete visits with dates
2A. Area and time period
The schedule is created for one or more service areas and a time period (2 weeks, 4 weeks, quarter). The period should cover the longest frequency — if cleaning is 1×/month the window must be at least one month.
By selecting multiple areas the planner can run what-if scenarios and see how KPIs such as continuity and efficiency change if areas are merged.
2B. Day pre-computation
Templates expand to specific dates. Every other day, 3×/week, every 4th week — correct days are computed here. Cross-day spacing is handled via day selection, not as dependencies for the optimiser.
2C. Rules projected to visit level
Organisation and client rules (dependencies, preferences, skills, groups) are stored once at client/care-plan level. When the schedule is built CAIRE projects them onto each new visit. The next period automatically reflects updated care plans — without copying the previous schedule as source.
2D. Editable
The planner can add, remove or adjust individual visits before optimisation runs. Changes are tracked so the planner knows what changed since the last run.
| Date | Time window | Service | Double |
|---|---|---|---|
| Mon 14 Apr | 07:00–09:00 | Shower | Yes |
| Wed 16 Apr | 07:00–09:00 | Shower | Yes |
| Fri 18 Apr | 07:00–09:00 | Shower | Yes |
| Mon 21 Apr | 07:00–09:00 | Shower | Yes |
| Wed 23 Apr | 07:00–09:00 | Shower | Yes |
| Fri 25 Apr | 07:00–09:00 | Shower | Yes |
Right clients, right services, right days and time windows. If not — adjust directly in CAIRE.
Optimisation — assigned staff and exact times
3A. Supply: shifts and availability
Shift generation and contract rules (working time law, agreements, preferences) define supply. The planner can review supply before or after an optimisation run depending on workflow.
3B. Optimisation and assignment
3C. Hard and soft constraints
| Type | Meaning | Examples |
|---|---|---|
| Hard (must hold) | Requirements that must never be broken. | Working time law, skill requirements, staff cannot be in two places at once. |
| Soft (desirable) | Optimised but may be relaxed. CAIRE finds the next-best solution. | Preferred day, continuity, minimised travel. |
3D. Staff and client views
The planner reviews the same schedule in two perspectives (same data, same filters — only grouping and colouring change):
3E. After optimisation — actions
| Action | Description |
|---|---|
| Save (this visit) | Adjust a single visit in the solution without a full re-run. |
| Validate | Quick score/feasibility check (sync) before a large change. |
| Re-optimise | Run the solver again (e.g. after pinning, closure, weight changes). May be async. |
| This instance vs all future | Change can apply to this visit only, or edit the template and propagate to future visits. |
Assigned staff, exact times, routes, shifts. Compare scenarios if you like. Re-run when needed.
Rolling planning
Each service area can be configured with a planning horizon (weeks per window) and lead time to create the next period before the current one ends.
- First period: Created explicitly (wizard or equivalent) when templates and master data are ready.
- Later periods: Auto-chaining creates the next period automatically. It lands as draft until the team publishes.
- Continuity: The next period’s optimisation can favour continuity with the previous published solution (preferred staff in solver input).
- Automatic optimisation: Optional — a new draft period can be optimised automatically in the background.
Data can enter in several ways. The source of truth is always what is stored in CAIRE after import or registration — messy external files are mapped as well as possible; the planner corrects in the UI when needed.
Note: The CSV is not permanent truth. If it is wrong, data in CAIRE after import wins.