Developers often perform with technical excellence, but they create an awful program. This is because they did what they were asked, but they weren’t asked to do the right thing.
It is more important to ask the right question, than answer the wrong one with excellence.
For example: “I want an application that can take notes.” is the wrong question. When developing with that perspective, the success of the application is measured on whether or not it can take a note.
The correct question would be: “I want an application that can make note-taking a better, easier experience.” Notice the inclusion of “experience”. As Jesse Schell puts it: ” The Designer Creates an Experience”*.
At what point are the features and functions taking away from the usefulness of an application? If the essential goal of the application (as an experience, not a technical entity) is not clearly identified, then how can that question be answered?