Dialog boxes are needed. In the old HCI thinking, a user interface is essentially a dialog between a human, and a computer.
However, handling of the dialog boxes can become habitual. The typical example is Word or any similar document editor: when you close an unsaved document, usually, you don’t want to save it. In those exceptional times when you actually want to save it, you’re prone to click “don’t save” anyway.
Therefore, it is a recommended best practice to avoid opening dialog boxes often. Provide forgiveness instead of asking for confirmation: provide a way so that the user can undo. If you look at document editors on iOS (Pages, or OmniOutliner), they don’t have confirmation dialogs at all, and I guess the Lion version of Pages doesn’t have it either.
Also, the users are sometimes not able to comprehend the situation in question. Like, in this case, I bet an average user doesn’t really know, what “Microsoft Windows Component Publisher” means. There is no meaningful action in this case from the view of the user.
In other cases, the dialog box doesn’t tell the user what can he do, what would be the result of each of the choices, and how would the user benefit from those possible futures. Always provide the right context, and make the options always clear from the users’ perspective.
The users are always trying to achieve a goal. If the goal is to remove an application, they do whatever it takes to remove the application, even if a dialog box tells them it also removes their whole windows installation, publishes their nasty pictures on the internet, and sell their soul on eBay.
Together with this, and the habituality of choosing a default option, it’s rather discouraged to do dialog boxes most of the time.
I’ll grab the studies for you, and edit this answer in a moment, just couldn’t find it at Nielsen (useit.com – albeit I’m sure it’s there), but I have a few UX books lying around here.
Edit: Unfortunately, I didn’t find the usual psychologic journal stuff about this,as this has been a known fact since the eighties, and even writers from the nineties were too lazy to cite these studies correctly.
- A case study from the Nielsen-Norman group is here
- General guidelines for error pages from Nielsen is here, and there is a course where they tell you about Dialogue Design
- Raskin was famously a big enemy of dialog boxes (look at the Canon Cat), and he describes these problems in The Humane Interface, Chapter 2-3: Locus of Attention
- He also cites Baars, Bernard J. A Cognitive Theory of Consciousness (Cambridge, U.K: Cambridge University Press, 1988) and Card, Stuart K., Thomas P. Moran, and Allen Newell . The Psychology of Human-Computer Interaction (Hillsdale, NJ: Lawrence Erlbaum Associates, 1983), although I have no idea what these writings contain, and I have no access to them
- Chapter Five of Norman’s classic Design of Everyday Things deals with errors, but it does deal with it in the physical environment, as the whole book tries to use the physical environment as a metaphor for the virtual one.
- Jeff Johnson talks about interface issues in Designing with the Mind in Mind, for example in Chapter 6, _Pop-up message in error dialog box”, but he doesn’t tell about habits.
I could also quote the Apple Human Interface Guidelines (or iOS guidelines) and perhaps also the Windows Interface Guidelines, but they are about practical issues. Also I grabbed two other UX books and I could grab a 90s edition of SEPA (Software Engineering: A Practitioners’ Approach), where I remember there was the 10 commandment of user interfaces, that was an often-quoted UI rule-of-thumb guideline, but I don’t think I’d find its reference.
All in all, it seems this is something that we understood for 30 years, and everyone is just too lazy to back up their claim. Perhaps it is this way because everyone knows from their private life how easy is to make such mistakes, and it is the most easily tested thing in experimental settings.
As for what to do instead of error boxes, read Raskins’ book, or Norman’s book. As for looking at how an alert-less application flow looks like,look at Google Docs or Lion / iOS 5 versions of Pages.
Sorry, I couldn’t find it, it seems even I just remember that this is how it should be done and these are the reasons, but I can’t find in my library where did it actually come from.