This is how most UI Design processes go:
- List out desired features
- Sketch a few ideas
- Mock until everyone agrees on something
- Features change
- Usually your first instincts are wrong
- Design by committee will give you a camel
UI Design is really no different than Network Design, Architectural Design, or any other form of structural design. You need to approach it with a set of given base parameters and develop a metric to measure all proposals against. A more proper procedure would be as follows:
- Define the primary needs that the product provides
- Script out the most common use cases
- Draw flow charts to illustrate user paths
- Define set of controls and display elements
- Group related/parallel actions accordingly
- Sketch out various options of all necessary screens
- Measure if controls are present when wanted
- Measure distance to action and number of clicks to complete action
Now when you look at this second process, it may seem longer and more daunting. However, the truth is that when you skip over the initial scripting and mapping process, you loose the metrics by which you may measure the successfulness of all future design proposals. When you follow the complete design process, you actually can spend less time in mocking process, and have a more measurable certainty of success in the end.