Many software programs fail the easy-to-use test because:
They act the same whether you are a highly experienced user or an absolute beginner.
They only deliver the benefits the developer considers important -- not what the user really wants.
They don’t deliver warning message when things are going wrong -- only when they fail totally.
They’re inflexible and unable to modify procedures to meet changing conditions.
They don’t allow people to change their mind and undo things, or to make mistakes.