Существует такая наука – Interaction Design (проектирование взаимодействия), которая позволяет проектировать интерфейс исходя из опыта взаимодействия пользователя с системой. Здесь мы коснемся только самых основ. Но этого будет вполне достаточно, чтобы спроектировать грамотный интерфейс.