Booking systems need capacity rules

Model people, equipment, travel and buffers before allowing customers to select appointment times.

Tablet booking calendar beside appointment tokens at a workshop reception.

An available time on a calendar is not always a service the business can deliver. A booking may require a qualified person, a vehicle, a room, a specific piece of equipment and enough time between jobs. The useful design question is which resources must be available together. Answer that before turning a staff calendar into a public booking page, particularly when customers can confirm appointments without a coordinator reviewing them.

Describe the real appointment

Consider a Perth inspection business offering property visits. A sixty-minute inspection may also require preparation, travel and report writing. The customer's appointment window and the staff member's occupied time need not be identical, but their relationship must be explicit. List the service types, durations, required skills and geographical constraints. Decide whether the booking is immediately confirmed or requested for review. If the latter, use language that clearly states a time has been requested and explain when confirmation will arrive. A calendar invitation should reflect the same distinction.

Protect the final place

Two customers can select the same remaining slot at nearly the same time. The application must decide availability again when confirming the booking, rather than relying only on the earlier calendar display. Database transactions are one building block for making related changes succeed or fail together; PostgreSQL documents this all-or-nothing behaviour. The implementation still needs an appropriate rule preventing conflicting reservations. Ask for a demonstration with simultaneous attempts, a cancelled booking and an abandoned checkout. These tests reveal capacity assumptions that a calm single-user demonstration can miss.

Handle changes as part of the service

Rescheduling should account for the same constraints as creating a booking. If staff manually move an appointment, the system should explain any overridden capacity rule. Decide how far ahead customers may book, how close to the visit they can request changes and who handles exceptions. Those are operating choices to agree with your team and communicate in plain language. Avoid hard-coding a temporary staffing arrangement into the software. A coordinator should be able to block leave, equipment downtime or a training day without requesting a software release.

Rehearse a difficult day

Build a fictional day with a late-running job, a staff absence and a new urgent request. Watch how the calendar behaves before relying on it for live commitments. The next useful deliverable is a one-page capacity rule sheet covering:

  • Required resources and occupied time for each service.
  • Travel boundaries and buffer rules between appointments.
  • Who can override a conflict and how the reason is recorded.
  • What customers see when their chosen slot is no longer available.

Further reading

Discuss your software project with 110s

Related Insight