A software wizard or setup assistant is a user interface type that presents a user with a sequence of dialog boxes that lead the user through a series of well-defined steps. Tasks that are complex, infrequently performed, or unfamiliar may be easier to perform using a wizard. In contrast, an expert system guides a user through a series of (usually yes/no) questions to solve a problem.
By 2001, wizards had become commonplace in most consumer-oriented operating systems, although not always under the name "wizard." In Mac OS X, for example, they are called "assistants"; some examples include the "Setup Assistant," which is run at initial bootup of the Macintosh, and the "Network Setup Assistant," which has a similar function to the MS-Windows "New Connection Wizard." GNOME refers to its wizards as "assistants."
Many web applications, for instance online booking sites, make use of the wizard paradigm to complete lengthy interactive processes, sometimes becoming similar to automated online assistants. Oracle Designer also uses wizards extensively.
The use of wizards is controversial among user interface designers[who?] because wizards encourage modal windows, which their opponents consider antithetical to proper human interface design.[why?]
The Microsoft Manual of Style for Technical Publications (Version 3.0) urges technical writers to refer to these assistants as "wizards" and to use lowercase letters.
The following screenshots show the installation wizard for Kubuntu 12.04, a free and open-source operating system. The wizard consists of seven steps. By the end of the step seven, the operation will be completed.