Appointment Booking Model¶
Introduction¶
Appointment Booking is the process of requesting one or more suitable time slots for a new or existing activity. An available slot is then chosen, and the activity is restricted to be carried out in the chosen slot.
Example¶
The following example illustrates the Appointment Booking process:
- A customer rings up to arrange an appointment to have a fridge mended. The operator checks for resource availability in half-day chunks for the coming week, and tells the customer that they may choose from: (a) Wednesday morning (b) Thursday afternoon (c) Friday morning.
- The customer says that, of those, he can only make Thursday afternoon.
- The operator accepts the appointment on behalf of the customer.
Note
Since the Appointment Booking Engine (ABE) will have actually allocated a call at a particular time, it is possible to be more precise than just "morning" or "afternoon" for a specific, chosen, appointment. For example, it is possible to ask the appointment engine to return a 1 hour time window which can be agreed with the customer, and which the call will subsequently be constrained to.
This offers the customer a higher level of service, but at the cost of reduced flexibility in the schedule. It will be up to the service management system provider to choose how much flexibility they wish to offer.
Slot Reservation¶
The appointment booking engine is designed to handle multiple appointment requests being made concurrently. In this situation there is a risk that requests can interfere with each other. The engine supports two means of handling this, known as Blocking and Non-Blocking.
- Blocking Requests: With this option the Appointment Booking Engine will reserve time in the schedule for any offers made at the point that the offer is made. If a request has been made but no offer has yet been accepted, and then a subsequent request is made for a different activity, offers for the new activity will only be made if there is still space available after allowing for the reserved slots. Once an offer has been accepted the reserved time for all other offered slots will be freed up again.
- Non-blocking Requests: With this option there is an additional confirmation step when a slot is accepted. The Appointment Booking Engine will offer slots as before, but will not initially reserve this time in the schedule. This means that any subsequent offers could use the same resource time to offer a slot. When a slot has been chosen the Appointment Booking Engine will then confirm if the slot is still available. If it is available this slot will now be reserved until the input data is updated and the DSE has scheduled the activity accordingly. If the slot is no longer available then a new request would need to be made.
Choosing the Best Approach¶
Choosing whether to use blocking or non-blocking appointment requests is a matter of weighing up the pros and cons of each approach, based on the business requirements. Listed below are some of the factors that should be considered.
- Non-blocking requests are intended to be used with the confirmation step described above. If the integration doesn't support this it may be best to avoid this approach.
- Using blocking requests provides a more streamlined process since there is no need for the confirmation step.
- Since blocking requests reserve time in the schedule while the offers are outstanding, this can have an impact on the availability of subsequent offers. This applies both to future requests and also to subsequent offers for the same request. As a result using non-blocking may result in a higher availability of offers. This applies especially in the following circumstances:
- If there are likely to be lots of concurrent requests.
- When booking long duration activities.
- When appointment booking with linked activities.
- When requests are being made for multiple slots on the same day.
The following chapter describes the appointment booking process in detail, both for blocking and for non blocking requests.
Note
Note that it is also possible to use a combination of blocking and non-blocking appointment requests within the same schedule.
Warning
Note that whichever approach is used there is always a small risk that an appointment may not be able to be scheduled, due to changes in either the plan or the input data. While this should be kept to a minimum, some handling of appointments becoming unallocated will be required.