By Ryan Galloway, software applications developer, KioskSimple
Does your system have too much downtime and you don't even know it? Are customers running away to your competitors without your knowledge?
The answer may be YES if your system experiences regular downtime, and, worst of all, you may not even be aware of the extent of the damage until your reputation has been irreparably tarnished.
The term 'downtime' derives from when a system, combination of systems, or any application or service is unable to perform a desired operation. Downtime can be expected and scheduled, such as planned maintenance, or it can be an unintended interruption of service, such as a server overload or device failure.
This article is intended to help broaden your thinking about the costs and types of system downtime.
When it comes to a multifaceted interdependent technical solution, if only one critical component is experiencing a failure or is inoperable then all other components of the system are also experiencing downtime by dependency.
In this article in a series on system downtime we'll explore the types of downtime that can prevent users from using your solution and the costs of system downtime.
In part two we'll cover how to best mitigate downtime while still giving your customers a good experience. We'll also discover what the term "uptime" really means and how you should consider uptime when designing your systems.
Flavors of system downtime
System downtime comes in many flavors. When most people think of downtime they think of a website that is unreachable or an "Out of Order" sign on a kiosk.
Trending topics on popular social media focus exclusively on downtime when a social or communication platform such as Facebook, Twitter or Gmail is experiencing downtime.
However, downtime can happen anywhere there is a fragile environment or if there is any sort of hardware or software involved. A blank Web page is an obvious downtime signal, however other types of downtime can include:
- Bottlenecking - If your application depends on remote data and you're transmitting too much data with too little bandwidth. This results in the customer waiting due to an unresponsive user interface and in some cases the loss of valuable customer data.
- Out-of-stock products - If your application sells products or services, and you are out of those resources, then the customer cannot complete their transaction as desired.
- Software defects - The application might have defects resulting in the app crashing or not being able to interface with third-party systems.
- Physical defects - Payment and user input devices can have defects resulting in payments not being processed. Let's say you have a kiosk within a secured area and the door to that area has a defect preventing user access. That is still downtime for your system because your kiosk is unreachable.
- Dependency downtime - Let's say your application uses a cloud service to fetch and store data. If this cloud service has downtime, so does your system. This applies to many dependencies such as DNS resolution, firewall hardware, etc.
- System components - CPU, RAM, overheating, etc., usually at the local kiosk/machine level. This typically results in a system restart causing the customer to lose their transaction state and have to — you hope — start over.
- Security breach - Malware can wreak havoc on an unprotected kiosk or PC, corrupting system files and stealing sensitive customer information.
- Misconfigurations - An application or service incorrectly configured can cause downtime. For instance, if a kiosk is not configured to boot directly into kiosk mode, then as soon as the machine restarts it can remain stuck at the login screen.
The high price of system downtime
Some of the costs of system downtime are obvious, while others are hidden.
Here is my shortlist of how system downtime can be costly:
- Lost revenue - Probably the first cost that comes to your mind when discussing the cost of system downtime is the loss of sales.
- Repair costs - Labor is costly, especially when it's after hours and involves key personnel or windshield time.
- Loss of consumer confidence - A system that has not properly planned for downtime comes across as amateur and unprofessional. In a world of instant gratification, your customers are expecting your system to just work. If their first impression of your brand is of your broken system, then it can take a lot of effort to win them back.
- Loss of shareholder trust - If downtime is a constant issue then it's only a matter of time before partners will start to get fed up — the same with financial backers such as banks and supply chains which can very quickly lead to ugly consequences.
- Lost or stuck data - Even the slightest downtime can impact data and reporting in connected systems. For instance, if a network outage occurs and your kiosks are still accepting orders in "offline mode," these transactions won't make their way up to your central server until connectivity is restored, which means your reporting will be temporarily inaccurate.
- Wasted rent - If you're paying some form of rent or royalty to have your system sitting in a foot traffic-heavy area, then having a useless machine with your logo slapped across it in the public eye is draining your resources and giving you nothing in return but a tarnished reputation.
Probably the greatest cost of all is the loss of trust
Imagine you have a lobby check-in kiosk in your place of business or an unattended POS for accepting utility bill payments — systems where completing a transaction in a timely manner is critical to customer satisfaction.
Your kiosks are an extension of your brand, and if they fail then your customer's distrust will transfer to your brand, which can severely damage your relationship.
Next time that customer will be more likely to go with your competitor or opt to deal with a cashier instead, which defeats the whole purpose of self-service.
Mitigating system downtime
In this article we covered the types of system downtime and the costs associated. In the next article we'll look at how we can mitigate system downtime, should it occur, and how to ensure the best possible customer experience so you can retain their business. We'll also look at what uptime means and how it relates to designing your systems.
Ryan Galloway is the lead developer of the kiosk software KioskSimple. He also handles the integration of new payment devices such as bill acceptors/recyclers, EMV Chip and PIN, and NFC, and has extensive experience with client-side technologies like AngularJS and jQuery.