When programmers typically use the term "software design" or "software architecture", they are usually talking about designing and documenting the internal workings of how the application will be structured. For example, they'll design out the database, the stored procedures, and perhaps the use of XML or web services. But what we are really talking about here are:
What the application is destined to do.
How the user interfaces will achieve this, in detail.
How the user will intuitively navigate through the application.
And what each user screen will look like, in detail.
Your web applications are meant to serve people, and so should be designed to be as intuitive and easy-to-use as possible. They should be designed in detail in the very beginning before any programming begins. If you leave it solely up to the programmers to design your web applications, they'll have a tendency to focus their energy on the stated business requirements, the underlying architecture and the intricacies of the code itself. Their focus will typically not be on creating a high quality user interface.