MTB 623 Multics Technical Bulletin
To: MTB Distribution
From: N.S.Davids
Date: May 25, 1983
Subject: A Menu Interface for Multics
Comments may be made:
Via electronic Mail:
Davids.Multics
Via telephone:
862-6643
HVN: 357-6643
Via forum (method of choice):
>udd>m>meetings>ease_of_use (eou)
________________________________________
Multics Project internal working documentation. Not to be
MTB 623 Multics Technical Bulletin
INTRODUCTION:
The current marketplace demands that user interfaces be easy
to use. While Multics is a powerful tool it is not easy to use
and can be extremely frightening to a new or infrequent user.
This MTB proposes a Multics interface (executive services
(xservices), ala xmail) driven by menus. The xservices interface
will provide the user with an integrated and consistent menu
interface to Multics subsystems and services.
PROPOSAL:
The xservices package is made up of three elements:
menu standards
xservices driver and utilities
menu interfaces to subsystems/services
The subsystems/services menu interfaces will be implemented as
part of the subsystems/services that they interface to. (This is
not an attempt to allocate work assignments to people who are
currently working on the subsystems/services mentioned below).
The design of their user visable features, e.g. function key
usage will be standardized so that the interfaces for all
subsystems/services will be consistent. They will also have a
set of standard entry points so that the xservices driver can
interface with them. The xservices driver will provide an
overall menu interface and those utilities which are common to
the subsystems/service menu interfaces or which are not part of
any of the subsystems/services.
subsystems/services:
For the xservices package to present a useful environment it
must include enough functions so that the user does not have to
venture outside its confines. To do this the following existing
subsystems/services must have an xservices interface:
mail (xmail)
forum
database access
memo
common commands
help
calc
The following subsystems/services are not currently part of
the Multics system but would greatly increase the utility of the
xservices environment:
personal filing system
spreadsheet subsystem
computerized appointment book
management tools
Multics Technical Bulletin MTB 623
xservices utilities:
One of the problems with menus is that while they are easy to
use they are also boring if used extensively. A solution to this
is the personal menu. A personal menu is to menu selections as
an abbrev is to commmands, that is it is a menu which has
recorded a sequence of menu selections and allows the user to
select that sequence by selecting only 1 item from the personal
menu. The xservices driver will provide personal menus. Note
that other forms of speeding though a sequence of menus, i.e.
typing head the various menu responds will also be provided. The
personal menu approach however does not require that the user
remember the various menu response.
Another capability that the xservices package must have is the
ability for users to easily incorporate their existing packages
into xservices. Again the goal is to provide a friendly
environment which the user does not have to leave. In many cases
users already have packages that they run, it is not reasonable
that they be required to exit the xservices environment inorder
to execute those packages. In order to do this there must be an
easy mechanism for generating a menu interface. A menu driven
interface for creating menus will also be provided by xservices.
In addition the list of lower level menu interface drivers will
be dynamic and under the users control.
Since the user interacts though the xservices driver it will
be possible to provide certain user setable defaults which would
apply to all subsystems/services in the xservices environment,
i.e. editor of choice., detail of error messages, etc. The
xservices driver will include a menu for the user to set (and
save) these values and provide these values to the individual
subsystems/services.
BENEFITS:
First the xservices package will present an integrated menu
driven interface to Multics from which many users will never have
to leave. This will greatly enhance our ease of use stance and
hence our position in the marketplace. Second the approach of
independent but standardized implementation will allow both
incremental implementation of the xservices package and allow
customers to purchase the package minus subsystems they do not
want, i.e. xmail, forum. Finally the menu interfaces may be
used independently of the xservices package allowing customers to
purchase menu interfaces without having to purchase xservices, or
allow a user who does not want the all encompassing xservices
envrionment to still use a standard menu interface when dealing
with unfamiliar subsystems/services.
MTB 623 Multics Technical Bulletin
QUESTIONS:
1) Is this the appropriate interface for the new/infrequent user,
if its not what should the interface look like?
2) Should there be (and if so how) a mechanism for easy
transition from the menu interface to the command line
interface?
3) What other subsystems/services should be included in the
xservices package?
4) What kind of mechanism should be used for incorporating user
applications into the xservices menu, i.e. path names in a
user profile, search rules, entry in xservices to locate an
application interface?
5) What kind of menu standards are needed?