2005.11.17
Improving the Usability of Splash Screens
by Karel Thönissen

As simple as they are, it is a misunderstanding that splash screens cannot be improved upon from a human factors point of view.
Splash screens are the logo screens that are shown for a few seconds when applications are started. Contrary to popular belief, splash screens are not simple advertisements. A good splash screen can improve the usability of the application that it belongs to.
The most important reason for the existence of splash screens is rather mundane. Launching a large application can take many seconds before all files have been loaded from disk and the application is fully operational. Without feedback, the user may think that something is wrong and he may try to start the application again in frustration. However, certain applications cannot be run more than once at the same time, so the additional attempts to launch the application will result in all sorts of nastiness. Even if the application can run multiple instances, it is unlikely that the user wanted this. So in that case he must close all superfluous application windows. This problem is solved with a splash screen. The splash screen is a lightweight application that can load quickly and provides instant feedback to the user. It hides the longer load time of the main application. Even though the load time of the main application can actually decrease slightly due to the added load time of the splash screen, users perceive the application as having become snappier.
Splash screens are normally used to provide commercial information such as name of vendor, legal notices, version information, license numbers, etc. This information is relevant for the user, but it should not get in the way during the normal use of the application. This is the sort of information that is also shown in the about-menu of many applications. It is the identifying information that users must known, e.g. when there are problems. Putting this information in the splash screen is an excellent option, because the type of information we talk about is static and in the splash screen it does not get in the way, because the main application itself is not available yet.
For our project code-named Tarn, we went a step further. Our splash screen still is lightweight, but we have turned it into a mini application. Certain tasks that logically belong outside the main application itself, are made available in the splash screen. For example, installation should be placed outside the main application itself, because one cannot use the application to install itself when it has not been installed yet. The same thing applies to registration and updating. These logically belong outside the main application. Nonetheless, these functionalities should be made available inside the main application, because computer-savvy users, spoilt by bad designs, will look for it there.
We went even further and allow the user to make his first application level choices in the splash screen itself. These first decisions then do not have to be made in the main application a few seconds later. The splash screen provides options for the most common commands of our application. So it provides guidance to the novice users, but without hindering the experienced users.
What was a mild annoyance to some has become a usability feature for many. We have turned the idle time before the main application becomes available into a useful possibility to interact.
|