Developers who return again and again to their work, simplifying it and making it more general-purpose, produce smaller, simpler systems that deliver more to users.
Software for Use: A Practical Guide to the Models and Methods of Usage-Centered Design