Jan Miksovky as written a wonderful little post on the challenges of the user experience (UX) design world and how apparently simple things can turn complex and hellish very quickly.
He describes this creeping, but rapid complexity as 'fractal'. A great word to describe the branchiness of it all (Jan is a user experience designer, an ex-Microsoft user interface (UI) designer (see 'related stuff' below) who worked on the Windows Vista (Longhorn) user experience designs before leaving).
I completely relate. In the last 3 weeks I've been involved in designing a new particular 'feature' (one of gazillions at the moment) - at first sight to all it seems like a dead simple piece of functionality, 'user does this, they get this, this happens, happy days'. As we develop the various scenarios the monster seems to grow exponentially in its scope, not because you're wanting to add additional features (you're desperate not to or you'll never get the bloody thing out the door), but just to make the thing usable you need make the 'feature' smarter and make sure it works within the context of all the other things going on
This takes more time & resources than you accounted for just to get the feature to work with a simple feature-set (a single feature does have feature sets). And that's just for the scenarios you've thought of . Then you put the draft experience in front of your target audience as test and of course they come only to educate you on more problems and scenarios you didn't realize existed (no complaints here: that's one of the points of the exercise). 'And so it goes as' Jan puts it.
The fractal nature of of UI design problems
There are should be no surprises to anyone involved in ux design. I've been involved in producing functional sites for over 11 years, yet it never seems to amaze me how much the depth there can be under the tip of the fractal iceberg.
Other related UX / UI stuff: