The Media Policy Language would be sufficient for an expert programmer to configure their browser using a raw text editor. However, users cannot be expected to write mpl script. Instead we have constructed a series of layers around the policy descriptions, transmogrifying the concepts of mpl to abstractions and language that are more meaningful to the user.
Each user of the system begins with a default mpl file, which provides basic facilities to improve the web experience over low bandwidth links, or resource poor displays. They are then allowed access to concentric shells of editors which adjust the parameters according to their expertise. However, since little is known about the appropriate models upon which to build interfaces for distributed applications, the designs of the interfaces allow for the collection of information about the minimum levels of quality users wish to accept.
Figure 3: The simple editor
The prototype offers two interfaces to the user: simple and advanced. A first dialog box, common to both, allows the user to select details of constraints and persistent preferences in viewing from a series of choices. This creates a policy which never overestimates the capacity of the display screen and can make maximal use of other resources, such as bandwidth. The advanced screen offers a mechanism for further customizing the display. We anticipate that most people will opt to use the simple controls (Figure 3 presented here), a series of buttons and a slider which allow the user to determine change in terms of outcome (faster or smaller images) rather than method (e.g. compression and transformation). The system gives immediate feedback by representing the prospective changes on an image in the dialog box before a decision is confirmed. However, another advanced button gives access to the code which describes the policies (see below) and confident users can adjust settings here directly.
The interfaces were developed directly with users, who chose the terminology in which the outcomes were described. We gave this aspect of the work particular attention as concepts of bandwidth, image file size and compression are not familiar to some of the users who would benefit from employing the architecture, while the frustrations of delay and display are common to all.
It is easy to determine if the user is viewing a web page from a mobile device such as a laptop or palmtop - the user can specify a policy that accounts for the display and bandwidth attributes of their device; indeed they could select a predefined policy in the same way device drivers are selected by user for new hardware.