Chapter 33 -- Check Your Setup Program

Chapter 33

The setup program is an essential part of your software, yet it's often overlooked in the development process. You should regard the setup program as a critical component of your program's user interface. Why? For starters, it is the first software the customer sees. It helps form the all-important first impression—the "out of the box" experience. Painless installations make a good first impression. Difficult installations do not. And these first impressions last a long time.

Consider how you would react to a program that didn't install easily or, worse yet, didn't install at all. The setup program is the direct link between your distribution media and the user's computer. If the setup fails, the program is worthless. Setup problems lead to product returns, lost sales, high technical support costs, and dissatisfied customers. In financial terms, poorly implemented setup programs have a direct impact on the bottom line.

Yet in spite of their importance, setup programs traditionally do not receive the attention they deserve during the development and QA process. Programmers often perceive them as somebody else's problem and try to avoid the issue. As a result, setup programs are often created late in the process and are not given sufficient review to make sure that they are effective and reliable.

Installing Microsoft Windows programs becomes more complex as time goes on. Clearly, this isn't desirable in itself, but it isn't an indication of a failure of Windows. Rather, it's an indication of its progress. Windows programs need to have better system integration to give users more power and flexibility. The system needs to know more about programs—their location, icons, document types, and services. With this information, the system can give the user the ability to create new documents, to print documents, and to link and embed documents. These capabilities are essential to making Windows document-centric instead of application-centric.

Furthermore, users have higher expectations than before. In the early days of Windows, each setup program could behave differently and developers could depend upon readme files and technical support to tie together any remaining loose ends. This approach no longer works. Users have more programs to deal with than before. Instead of a couple of dozen programs, a typical user today might have hundreds. Users now expect to be able to manage their desktops and their hard disks more efficiently. They now want to be able to uninstall unused programs easily—without using third-party utilities. Administrators now want to perform automated installation across their networks.

In practical terms, one clear implication of this increased complexity and greater emphasis on efficiency is that it's almost impossible to write your own setup program from scratch. The proper setup process is simply too complex. However, even if you are using a fabulously wonderful commercial setup program, there are still plenty of ways to do the setup wrong. It is not by accident that nearly a quarter of the Designed for Microsoft Windows logo requirements deals with setup-related issues.

In the remainder of this chapter, I'll describe the typical problems with setup programs, how to satisfy the user's goals when installing a program, and how to improve and simplify a setup program's user interface. You'll also get some advice on being logo-compatible and tips on how to avoid common setup problems.



Developing User Interfaces for Microsoft Windows
Developing User Interfaces for Microsoft Windows
ISBN: 0735605866
EAN: 2147483647
Year: 2005
Pages: 334

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net