Joining It Up
Five systems each hold part of a person's week. Assembling the whole is a sequence of small joins, and the order decides whether it ever finishes.
One organisation, where the week lives
Hours the employer sees
31
Hours actually worked
51.5
Five systems, one person, one week. Four of the five hold data of good quality collected for other purposes. The integration work is real and it is small, and the reason it has not happened is that no single person owns the question of what the week adds up to.
The hours that count towards a limit are distributed across several systems, each accurate about its own part. The working time figure is whichever of them happens to feed the report, which is almost always the time and attendance system.
The workflow in “Joining It Up” becomes more reliable when scheduled hours, actual time and later corrections can be distinguished. For teams exploring dual n back training, the Monitask website can add operational time and project context, provided data collection is proportionate, permissions are limited and every important exception receives human review.
Assembling the whole is not a transformation programme. It is four or five joins, each small, and the only real difficulty is that nobody owns the result.
For an independent reference relevant to “Joining It Up”, consult the Singapore Ministry of Manpower working-hours guidance. Use it to test working-time definitions, recordkeeping, access, retention and exception handling against the organisation’s real process rather than treating one software report as conclusive.
The order to do them in
Largest gap first, measured rather than assumed. For a field workforce that is travel; for a multi-site operation it is the second site; for an engineering operation with a standby rota it is call-outs.
Doing them in order of size means the figure improves fastest and the effort can stop when the remaining gap is immaterial. Doing them in order of technical convenience means starting with the easiest system, which is usually the smallest category.
The join key
A person identifier that exists in all the systems. Payroll number is the usual candidate; employee reference, national insurance number or email address are the fallbacks.
Where the identifiers differ, a mapping table is the answer and it is a one-off exercise. The trap is building a join on name, which fails for the handful of people who matter most — the ones with records in several places under slightly different names.
What each join actually needs
A scheduled export from the source system with three fields: person, date, hours. Occasionally a start and end time where rest matters.
That is a far smaller ask than most integration conversations assume. The source systems already produce exports for other purposes, and a filtered version of one of those is frequently sufficient.
The categorisation decision
Each incoming category needs a decision: does it count, fully or partly, towards which limits. Travel between jobs usually counts fully. On-call depends on the assessment. Training counts where it is required.
Make those decisions once, write them down, and implement them as rules in the join. The alternative — deciding per record — guarantees inconsistency and makes the resulting figure impossible to explain.
Where the figure should end up
In one place, as a per-person weekly total of counted hours, feeding the average calculation and the rest calculation and the rota tool.
The common failure is to build the joins and leave the output in a reporting tool nobody reads. The join is only worth doing if it reaches the decision, which is the rota, and that last step is usually the one left for later.
The interim position while it is built
Use a documented multiplier per group, derived from the sampling exercise described earlier in this collection. Recorded hours times this factor, for this population, because these categories are not yet captured.
It is crude, it is honest, and it keeps the organisation operating on an approximately right number rather than a precisely wrong one during the eighteen months the integration takes.
Who owns the result
This is the question that determines whether any of it happens. The join crosses operations, HR, IT and whoever owns each source system, and in most organisations nobody is accountable for the combined number.
Name somebody. The natural owner is whoever owns working time compliance, with a specification they can hand to IT. Without a named owner the work is proposed, agreed in principle, and never scheduled, which is the state most organisations are in.
What finishing looks like
A per-person weekly figure that includes every material category, refreshed at least weekly, visible in the rota tool, with a documented list of what it includes and what it still does not.
The last clause matters. There will always be something uncounted — an hour of evening email, a journey nobody logged — and the figure is useful precisely because its boundaries are written down rather than assumed.
The join that fails on twenty people
Any identifier-based join leaves a residue: people with two records, a changed name, a transposed payroll number. It is usually a handful on a site of several hundred.
Those twenty are disproportionately the ones who work across sites, which is precisely the population the join was built for. Produce the unmatched list every time the join runs and work it by hand; the alternative is a report that is accurate for everybody except the people it was supposed to find.