Interface: Using Sound
Like color, sound is a potentially strong and informative interface element when used correctly, but it should always be used sparingly.
1. Don't Overdo It
Sounds can be potentially very annoying, so use them only when it's truly appropriate. Sound is most effective when used as a complement to visual notifications or as a Universal Access feature for people with poor eyesight. Having too many sound-inducing operations in a program will cause aural overload and confuse and annoy the user.
Avoid producing many audio signals within a short period of time, to allow the user to clearly associate a sound with an error message or an operation such as a finished process. Furthermore, a sound cue should only correspond to exactly one type of event, and vice versa. An error message should not invoke the same audio signal as a download completion, for instance. At the same time an error should not produce a sound that's different from another (similar) error.
Ideally any interface should allow for some degree of personalization of sound cues, or at the very minimum allow toggling sounds on and off.
2. Don't Use Sound Alone
Unlike user-dismissable dialog windows, sounds are inherently passing signals. Don't use them as your only form of giving the user information, as they can easily miss the sound. They might have poor hearing, or they might be away from the computer when your app plays the sound. Or, they might have turned sounds off or muted the computer's speakers if you didn't follow rule number one.