Once the product’s task is known, design the interface first; then implement to the interface design.

Jef Raskin
Jef Raskin (1943-2005) American computer scientist, writer
The Humane Interface, 1-5 (2000)
    (Source)