Understanding WHY Design Must Come Before DevelopmentJuly 15th 2009

Or, why design is more important than development.  Bold, I know, but allow me to elaborate.

There is an abundance of information available on the web about design methods, but I have not read terribly much about design theory.  While methods are wonderful, theory is just as important.  Tutorial websites and blogs have enabled the average person to learn a specific way to accomplish a design, but design theory is what makes these methods work.  Without the theory, there is no design.  Now I am by no means an expert on design theory, but I do feel I can contribute somewhat to the conversation.

37Signals has written about designing before developing, but the gist of their anecdote seems to be geared towards the fact that designing (whether paper prototypes, or HTML mock ups) is faster, easier, and more agile than developing.  While I would agree wholeheartedly with their points, I feel there is more to add.  There is a reason why designing must come before development, and why design is, to some degree, more important than development, and here it is:

Users do not care how good the development is, what methods/languages were used, or even how it works at all.  All they care about is that their assumptions about what the UI (whether a website, application, etc.) does prove to be true, and that they can easily use the UI to accomplish their goals.

This may seem obvious, or even perhaps dull, but take a moment to think about it.  Every idea the user has about using a UI relates to just that: using.  They want to be able to interact with a UI in such a way to accomplish the goals they have.  This is all they bring to the table.  When a user goes to save a project or time sheet in an online app, they don’t care that the updated info is sent to a database, overwriting the old info, and then called back again and displayed whenever the users clicks to access it.  They don’t care if you are asynchronously calling in the weather, all they care about is that it’s displayed in a quick and usable fashion.

Assuming my own statement about the assumptions users bring to any UI is true, then logically it follows that they only care about the interface and how easy (or difficult) it is for them to accomplish their goals.  Knowing this, then, it should be obvious that the only thing the user cares about should be designed, tested, reworked, and finalized before a single line of code is written.  If possible, every use case should be defined and looked at, so that it’s clear and obvious what interactions the user will make with the UI.  Once you have the hard part out of the way (creating a UI that is usable and allows goals to easily be accomplished) it should then be relatively simple to tie all of that into the back end.  I’m not at all saying that development isn’t important, or that time shouldn’t be spent refining code and efficiently making functions, but the back end is not what’s important to the user.

I hope I have communicated this in a fashion that is easy to understand, and again I never claim that this may be absolute truth, however I do think the principle, and the reason why design should come first, are important concepts to always keep in mind when created a new website, application, or anything else requires interaction with a UI.  Let me know your thoughts on what I’ve written, no matter if you agree or couldn’t disagree more.  I’d also love some links to any blogs or sites that have articles specifically on design theory, rather than methods.

Categories: Design Principles , User Experience | Comments: 2 Comments

Thoughts On Goal Oriented DesignJune 29th 2009

Categories: Design Principles | Comments: 13 Comments

© Copyright 2009 Josh Puckett, 55Eleven.com. This site validates and looks beautiful too!