Path: utzoo!attcan!utgpu!news-server.csri.toronto.edu!rutgers!ucsd!ucbvax!bloom-beacon!eru!hagbard!sunic!mcsun!ukc!harrier.ukc.ac.uk!rlh2 From: rlh2@ukc.ac.uk (Richard Hesketh) Newsgroups: comp.windows.x Subject: Re: UIMS recs and suggestions wanted Message-ID: <5635@harrier.ukc.ac.uk> Date: 6 Oct 90 15:18:48 GMT References: <16590@unix.SRI.COM> <6016@hplabsz.HPL.HP.COM> <1990Oct5.163113@heike.informatik.uni-dortmund.de> Reply-To: rlh2@ukc.ac.uk (Richard Hesketh) Organization: Computing Lab, University of Kent at Canterbury, UK. Lines: 65 Summary: Expires: Sender: Followup-To: In article <1990Oct5.163113@heike.informatik.uni-dortmund.de> klute@heike.informatik.uni-dortmund.de (Rainer Klute) writes: >Could someone please give a good definition for both "UIMS" and "builder" >so that I can see the difference? A UIMS or User Interface Management System is basically a set of tools and a methodology for specifying, designing, implementing and providing runtime-support for user interfaces. Therefore a true UIMS would support all these activities in a seemless manner using the underlying methodology. A user interface builder is merely part of a UIMS and is just one tool used by an interface developer to produce the user interface. Normally a UI builder is used to create the static parts or layout of the user interface. Some UI builders go further and provide a dialog language in which to describe the dynamic parts of the UI. The ideal UIMS would seem to be one in which you can: Specify the tasks you wish the interface to perform/invoke (basically the connection between the user interface and the application). This specification would be done in a multitude of ways; formal (mathematical) specification, visual specification language, traditional style programming language etc. The UIMS would use the specification to present a series of possible user interfaces; menus, command languages, gesture or voice recognition. Along with a critical analysis of each type of user interface. This analysis would be based on an ever expanding knowledge base of theorectical and empirical results from Human-Computer Interaction Experts; Psychologists and Behaviouralists. The designers would have at their fingertips, highly graphical and interactive tools that would allow them to refine these interfaces. These tools include user interface builders and rapid prototypers. The runtime support offered by a UIMS would include a separation of user interface to the application allowing simultaneous, multiple user interfaces; e.g. for character based terminals or bitmapped workstations, menus or command languages. Plus lots lots more 8-) Of course this is just a taster of what is an ever increasingly large field of research and development. IMHO probably the most readable paper that discusses the whole definition of UIMS's and the like is: "Toward empirically derived methodologies and tools for human-computer interface development" by H. Rex Hartson and Deborah Hix in the International Journal of Man-Machine Studies (1989) Volume 31, pages 477-494. (Hartson and Hix also did a 90 page (!) paper published in ACM Computing Surveys Vol.21, No.1, March 1989, that is worth a read). "Serpent" is a UIMS from Carnegie Mellon University which is freely available if you want to play with a UIMS. It also contains a user interface builder which they call the "Dialogue Editor". There was a recent article describing the latest Alpha release (0.9) of Serpent and where the source code can be found. Richard Hesketh : @nsfnet-relay.ac.uk:rlh2@ukc.ac.uk : rlh2@ukc.ac.uk ..!{mcsun|mcvax}!ukc!rlh2 Computing Officer, Computing Lab., University of Kent at Canterbury, Canterbury, Kent, CT2 7NF, United Kingdom. Tel: +44 227 764000 ext 7620/7590 Fax: +44 227 762811