Usable design expert Donald Norman has written an interesting article that discusses the shortcomings of the currently popular approach to designing systems based around human input, usually called Human Centered Design or User Centered Design. I think he articulates far better than I can some of the factors that cause me to be uneasy with a blind commitment to UCD methodologies. Definitely worth a read.
One basic philosophy of HCD is to listen to users, to take their complaints and critiques seriously. Yes, listening to customers is always wise, but acceding to their requests can lead to overly complex designs. Several major software companies, proud of their human-centered philosophy, suffer from this problem. Their software gets more complex and less understandable with each revision. Activity-Centered philosophy tends to guard against this error because the focus is upon the Activity, not the Human. As a result, there is a cohesive, well-articulated design model. If a user suggestion fails to fit within this design model, it should be discarded. Alas, all too many companies, proud of listening to their users, would put it in.
Here, what is needed is a strong, authoritative designer who can examine the suggestions and evaluate them in terms of the requirements of the activity. When necessary, it is essential to be able to ignore the requests. This is the goal to cohesion and understandability. Paradoxically, the best way to satisfy users is sometimes to ignore them.