Question: I know that the default answer is "it depends", but I want to know the feature list you are working from in developing a good application.

I'm particularly interested in features that need to be cared about at design time because adding them late will cost us a lot.

**Please list one feature per answer so we can vote for the most important features.**

Any extra info, like your own war stories, will be appreciated.

I ask this question to enhance my application from day zero, and I think I'm not the only one with this target, so please write whatever feature YOU think should be exist in a good application.

Answer: 
**Logging and error handling**
**Unicode support**, because no good comes of your presentation layer encoding being ISO-8859-1 and your persistence layer encoding being UTF-8.