It might sound stupid, but think of your users as they would behave like the most stupid user you might imagine.
Try to guide them through your application, but do not ask to much of them.
Today, during my work with Visual Paradigm, a dialog appeared in the upper right corner. My focus went up, away from what I was currently doing, I read the story it was telling me and my thirst thought running through my mind was: “So what?”.
I was trying to bring a control to front, but it was already there. If you don’t mind my saying, that’s a dialog I didn’t expect to see. It is telling me, that an operation that I tried to execute couldn’t be executed, because it wouldn’t change anything. Inexperienced users might think they would have done something wrong, while scratching their head.
That reminds me of my colleague tapping Ctrl + C for copying something four, maybe five, times repeatedly popping up an message for every tap: “Cannot copy content because it is in your clipboard already”
Now to one aspect the guys from Visual Paradigm solved perfectly. The message doesn’t need acknowledge, like a message box would, the user can continue work and the dialog will fade out after 10 seconds without any further action needed. That’s the behavior I’d expect when displaying a message of that severity.