Dynamic interface

(with demo applet at the end of the article)

by Evgeny Tarabrin

Introduction

The interaction of the user with the program is usually carried out by the help of GUI (graphic user interface). The typical interface of the modern program rather reminds the instrument panel with a plenty of buttons (items of the menu) and indicators. If the user wants to force the program to execute the certain actions he usually moves the cursor to the necessary button or item of the menu and click down by the mouse (uses the input interface). After that the user expects the decision of a task by the program and then perceives result through the output interface. Already became the classical requirement of maintenance of the similar interface in different programs. Generally speaking presence of identical monotonous interfaces facilitates to the user understanding of the new software. In present clause it is offered some other approach to designing the user interface. The essence of the offered approach is that already during a choice of necessary action by the user, the interface of the program should actively and dynamically cooperate with the user. The interface of the user should undertake the help to the user in a choice of a direction of work and demonstrate a degree of achievement of an target. An example of designing the dynamic interface for input in the computer text information is considered. Usually such input is carried out with the help of the keyboard. An opportunity of the decision of this task with use of the mouse is considered. The example carries only illustrative character for demonstration of the concept of the dynamic interface. In a body of this clause is built in applet in Java (TM) language developed by the author.

Standard approach to the interface design

In figure 1 the simplified diagram of the approach is submitted which the developers of the programs are usually guided by development of the user interface. In other words this is representation in the developer's mind how occurs interaction of the user and program.

Fig.1.

In this diagram there is one lack. If the user long enough works with the same program, gradually his actions get of automatism that is become unconscious. And the more skilled is the user then the share of unconscious actions of the user becomes higher at work with the program. Such gradual purchase of skills of work with the program as a matter of fact is growth of professionalism of the user. Unfortunately in the given approach such growth of unconscious components in actions of the user obviously is not reflected in any way.

Dynamic Interface Concept

In figure 2 is submitted the diagram of the offered approach to designing the interface conditionally named by the author by the dynamic interface .

Fig.2.

In the left part of figure the circuit of consiouse perception and actions of the user for traditional design was kept. In addition in figure the circuit of unconscious perception is submitted. Besides such elements the trial step of the user is entered. It is the rather important component of the discussed concept which provides an opportunity of fulfilment of trial actions not after start of execution of concrete task but at a level of the interface before the start of task execution. That is cooperating with the interface of the program the user before making a choice of concrete action already should know whether he comes nearer to the decision or comes out from it. The dynamic interface for a level of a choice of action helps the user in a choice of this action. The vast advantage of the dynamic interface is that it allows the user very quickly to develop in mind a component of unconscious perception. It promotes fast development of professionalism of the user at work with the given program. Let's proceed to consideration of a simple example of designing and use of the dynamic interface.

Example of dynamic interface design

Let's assume that before us is the task to ensure input of the text in the computer. Traditionally this base operation is carried out with the help of the keyboard. For fast input there is a blind ten-fingers method. Unfortunately to learn this method is rather labour-consuming. The overwhelming majority of the users use one-two fingers method of input. Let's develop a method for input of the textual data with the help of the mouse. The most obvious method of the decision of this task is a graphic representation of the keyboard on the screen. Then moving the cursor to the necessary key and then click of the mouse decides the task. However let's understand this situation more in detail. If we simply shall copy the keyboard as a graphic image on the screen we shall keep a problem unsolved for the user. The main problem for user consists in unusual from his point of view an arrangement of the alphabet on the keyboard! This arrangement of the alphabet was developed for a ten-fingers method of typing. Generally speaking to remember an arrangement of the letters on the keyboard is a completely not trivial task. To simplify to itself a task of use of our graphic keyboard, let's arrange the letters on the keyboard in alphabetic order. This natural order of an arrangement of the letters of the alphabet is known for each man from the time of language study. Now keyboard looks approximately how it is submitted in figure 3.

Fig.3.

Using the natural to us order of the letters now it is much easier to find the letter necessary to us. However in such interface there is one lack. To reach the concrete letters each time it is necessary to overcome various distances. To ensure the same distance of the letter from an index point, we shall present the alphabet as a circle (figure 4).

Fig.4.

In this case natural order of the letters in the alphabet is kept, and at the same time all symbols for our "finger" - cursor of the mouse at the same distance.

However in this case at consideration it is possible to find out such lack as it is necessary to overcome too large distance for the cursor (so also to our hand) for achievement of the concrete letter. And here the work is begining with the dynamic interface. Let part of work for us will execute the interface.

Fig.5.

Let's imagine that if we have begun to move the cursor in a direction of the concrete letter and from this letter to us there is also a counter movement (figure 5). Distance X is increased and arrow Y also is increased. That is, there is such dependence:

Y = K*X,

where X - displacement of the cursor from the centre,

Y - size of the interface element,

K - constant factor.

At that moment when the arrows X and Y will meet the symbol will be printed!

Pay attention that having made factor K large enough we can make movements of the user very small. It also is the dynamic interface in operation. The interface element (arrow Y) is derivated by the program and depends on actions of the user. This interface element:

1) Facilitates to us the decision of a task and considerably reduces necessary actions of the user,

2) Informs the user on whether correct action he makes (that symbol is chosen which is necessary) and as far we are from the purpose.

The applet to demonstrate dynamic interface for the given simple example is submitted below.

Put the cursor on a red circle and press the button of the mouse. Moving the mouse you will move a red circle in a direction of this or that letter. Green lines demonstrate a degree of achievement by you the purposes. When the top of distribution will touch a circle the symbol will be printed. The keys F9, F10, F11, F12 serve for switching various character sets. The technique of training to work with the program is simple. Begin that by some times print the alphabet in its natural order. It is possible that at this stage you should clean the mouse.

I assume shortly to expose on a site the program which can be used practically.

Conclusions

1. The professionalism in some degree consists in correct and unconscious performance of standard operations. The standard approach to design the interface of the software gives not enough means for fast accumulation of unconscious skills of work with the program. Moreover in an obvious view such task usually also is not put.

2. It is offered the method of designing of the user interface allowing to the user quickly to get skills of unconscious work with the program. The offered method assumes realization of the following principles of designing of such interfaces named as dynamic interfaces:

- use of structures well known for the user for representation of the data that considerably facilitates initial acquaintance and beginning of work with system;

- connection of of the user movements with the dynamic interface ensuring reaction of system on any action of the user. If this action already wrong right at the beginning of the action or even before its fulfilment the dynamic interface should show to the user a real picture of businesses. At movement to the purpose the dynamic interface should in the obvious form display to the user as far we from it are;

- even the incorrect actions of the user are necessary to use to show in what direction concerning the purpose there is a movement;

- the performance of concrete operations should be made via dynamic interface which should be as a channel of a feedback for showing as far we are from the purpose;

- a ultimate goal of the dynamic interface should be development at the user's mind of correct unconscious skills of work with system that promotes fast user's purchase of necessary professionalism.

3. The example of the system developed on the basis of these principles for input of the textual information with the help of the mouse is given. This system at all does not replace known ways of fast input of the information with the help of the keyboard. However similar system can considerably facilitate a problem of input of the information in the computer for those people for whom this task is not basic and also for vast quantity of the people with weak knowledge of language and specific order of an arrangement of the alphabet on the keyboard of the computer.

  

Copyright © 2000 Evgeny Tarabrin