Nothing is more important to web site and application development than User Experience Design (UX). This is something I’ve learned through experience and that I have a great passion about. If you think about it, it makes perfect sense. It is much easier to be “agile” when you are talking to a client or end-user and their change request involves changing a sketch or wireframe or a note on behavior, rather than completely reprogramming something. If someone really has a huge emphasis on being “agile”, I assume they are lazy on requirements gathering and design, and they are pushing the requirements analysis and design duties off onto their programmers. Really good and to-the-point requirements analysis and wireframe design can prevent mountains of problems and headaches and delays and disappointments down the line. It also ensures that programmers know the expectations of the client very clearly, and won’t spend time adding features that no one wants and won’t design in a way that fits more easily into programming tool conventions than human usability conventions.
A recent blog post over at www.experiencedynamics.com really nailed this! I’m linking to their infographic because they have really expressed what I know through experience.