The InfoLens is intended to be a generalised tool for the visualisation of large data sets. At start-up time the system loads the data from a database along with a number of supporting graphical data files. For example, in the London Underground timetable system, the system loads the timetable information from a database together with various graphics files containing the bitmaps for the construction of a Bifocal Display of the London Underground map. The change of the window size or the magnification factor in the in-focus region (adjusting the distance between the lens and the viewer) will have direct implications for the magnification factors in other regions of the B ifocal Display. With the Bifocal Display, the system will require four additional bitmaps to support every set of these system parameters; the number of these files the system has to keep track of could be quite large. Further, these bitmap files are invariably large and if they are to be loaded into memory at start-up time, a lot of the system's primary memory resources will be required. In addition, a sophisticated memory management system will generally be necessary to control the activities which take place within the system. The use of secondary storage elements to support the system may be viable if the system response time is not significantly downgraded due to a page fault in the course of a memory swapping operation.
The memory resources and computational power of any real time interactive system are the most valuable commodities available to the system designers. Based on the relevant design criteria, the designer makes compromises between these commodities, aiming to achieve optimal overall system performance. In the case of the implementation of the lnfoLens, an obvious way to reduce system complexity would be
CHAPTER 6: DESIGNING THE INFOLENS 1 34 to cut down the number of these graphics files required to support the system. Unfortunately, this would have the undesirable effect of restricting the range and scope of the 'lens'. If the system is computationally powerful, one effective solution would be to generate the various sets of bitmaps for the Bifocal Display on the fly. Depending on the platform for implementation, dedicated hardware or efficient software modules may be used to support this. Using this scheme, a significantly reduced number of these bitmap files will be required to be downloaded at system start up time.
In the course of interaction with the InfoLens, the user will invariably adjust the 'lens' to navigate around the information space. This can be supported by using animation and morphing techniques (Foley, van Dam, Feiner & Hughes, 1990; Mason, 1994; Vince, 1992) to create a more dynamic interface, allowing the user to browse naturally. A sense of control over the 'lens' is thus created and the system provides a rich and natural style of direct manipulation. The effectiveness of this dynamic interface relies very much on the computational power of the system. The generation of animated sequences on the display in real time often places a huge burden on system resources. A performance enhancement technique, known as greeking (Robertson & Mackinlay, 1993), can be used to reduce the amount of computation required during the generation of animated sequences. The essence of this approach is to reduce the resolution of the display in the out-of-focus regions, thus lessening the burden on the system resources. Indeed, greeking may also be applied to the display at all times if system resources are limited or if a less detailed view may be tolerated in the out-of-focus region.
Colour is an essential ingredient of a display. There is evidence to suggest that colour supports efficient preattentive visual processes (Nothdurft, 1992). Experimental studies have also shown that observers can more rapidly pick out symbols defined by colours than symbols defined by shapes (Davidoff, 1987; Treisman & Gelade, 1980). Furthermore, colour searches are found to be parallel and search speed is unaffected by the density of irrelevant elements. However, Smith, Dunn, Kirsner & Randell (1994) suggest that "designers should not assume that colour is always desirable, but rather its full perceptual and cognitive implications need to be understood and considered in relation to the demands of each task and therefore each display".
Whilst all the illustrations of the InfoLens in the previous section have been presented in black and white for ease of their production, colour should be used selectively in the implementation of the InfoLens.
Increasingly, the object-oriented approach has been adopted in the design and implementation of user interfaces and complex user interface management systems (Linton, Vlissides & Calder, 1 989; Myers, Giuse, Dannenberg, Zanden, Kosbie, Pervin, Mickish & Marchal, 1990; Tyler, Schlossberg, Gargan Jr., Cook, & Sullivan,
CHAPTER 6: DESIGNING TilE INFOLENS 135 199 1 ; Bass & Coutaz, 1991; Zanner & Chew, 1992). This approach utilises a uniform underlying representation from object-oriented analysis (OOA) to object-oriented design (OOD) and then to object-oriented programming (OOP): the analysis stage is directly mapped to the design stage and the design stage mapped directly to the implementation stage. It also provides a stable framework for understandability, re-usability and extendibility. This continuum of representation throughout the development process results in no major difference in analysis and design notation, no more "transiting" into design and no waterfalls (Coad, 1991). This optimum route from OOA to OOD to OOP is recognised as one of the great strengths of the object-oriented approach (Bailin, 1989).
·
Whilst the concepts of inheritance and encapsulation are the two driving principles of the object-oriented approach, the design and implementation of the lnfoLens are well suited to this approach. First, as far as the interface objects go, their functionalities and behaviours are well defined. Second, reusability of code allows easy extension of the interface in the future. Third, the hierarchical structure of the bitmap files required to support the Bifocal Display of the information space provide a natural mapping for implementation.
6 . 5 Review
This chapter has examined the key concepts of the lens metaphor and discussed the basic operations of a magnifying/photographic lens. This lens metaphor has been extended to show how it can be applied to visualising large data sets in the design of a visualisation tool, the InfoLens.
The user interface of the InfoLens has been designed to conveniently map the functionalities of a magnifying/photographic lens to those used to visualise a large data space. An iterative design of the InfoLens has been proposed and implementation issues relevant to the system performance highlighted. _ .