The InterUnit UI-design approach
is a PC-UI alternative to
the WIMP-based UI-design approach
used on Windows, MacOS and Linux.
The WIMP UI uses a desktop metaphor
for the front end of the UI.
The desktop includes a Titlebar at the top
and a Taskbar at the bottom
and Icons may be placed on the rest of the screen (the desktop).
The back end of the UI is the Window-Frame
which is a controllable frame inside which an application runs.
Windows may be ordered, tiled, resized, minimized, closed etc
using their WIndow-frames.
A Menu is placed either in the Titlebar (MacOS)
or in a titlebar inside a Window (Windows OS).
A Menu is a simple way to select actions to be performed.
InterUnit-UI is s a very simple UI-design approach
that does not use a Desktop metaphor
with its associated Icons and Menu.
It does not use spatially laid out windows
and it does not use multiple windows.
It does not use a point-click-drag mouse or touchpad as
a primary selection device.
InterUnit-UI presents a user-interface as a sequence of
temporal interface-units called InterUnits.
Each InterUnit presents an interface behavior
to service a specific user-goal.
It has full access to the screen and all user-input peripherals.
A special InterUnit called the engagement-manager
interfaces with the underlying OS's WIMP window.
It serves as a front-end control for InterUnit-UI.
It loads and unloads other InterUnits
and manages the current engagement session with the user.
It also maintains some history of usage.
The InterUnit-UI SDK product includes an engagement-manager
and several generally useful pop-up InterUnits.
It also includes a source-editor InterUnit
for developing InterUnits.
The InterUnit-UI SDK contains:
A library of structures functions and classes that use the wxWidgets library,
Source-code for a SourceEditor InterUnit.
An executable that runs the source-editor InterUnit inside an InterUnit-UI.
This executable can be used in conjunction with
VisualStudio on Windows
and XCode on MacOS
to develop an InterUnit that can run inside an InterUnit-UI.
Since the user interacts with a single InterUnit at a time,
each InterUnit can be optimized for use-ability independently.
This makes the development of any InterUnit a lot simpler
since the initial code can be refined over time.
We will license the InterUnit SDK to developers, organisations and PC OEMs,
as an annual subscription.
The engagement-manager
An engagement-manager InterUnit manages the user's engagement
with InterUnit-UI.
It keeps track of the user's activities,
during the user's engagement with InterUnit-UI,
and uses this information to optimize the efficiency of the engagement.
For example:
- The user may ask it questions relating to InterUnit usage.
- The engagement-manager helps the user remember
what they used the InterUnit UI for at various points in time.
It keeps track of the changes made by the user to the UI's state
and to the state of the InterUnit's and the data edited using them.
This way, the user may go back to some point in time in the past
in their usage of the InterUnit UI
and decide to make changes to what they did after that point.
They can track the evolution of the design they are working on
and judge whether any corrections are needed in their own design process.
This helps them observe their own design process
and make improvements in the way they are using InterUnit UI.
- They could even capture a design segment --
a sequence of design steps executed using InterUnit UI
and have the designers of InterUnit UI critique it
to suggest better ways to achieve the desired design-goal during that segment.
- InterUnit designers could also learn from this process
and add new design features to improve their InterUnit's efficiency in designing.
The engagement-manager serves to improve
the efficiency of the usage of InterUnit-UI over time.