[UI] UI attributes
Adrin
adrin at ic.cz
Wed Sep 12 15:25:17 UTC 2007
Hi,
I em interested in UI and GUI and new ways of presenting and
manipulating data. I like to make my own GUI or participate in the
existing ones. But first of all – Is there any study or theory what the
UI exactly is, what needs UI to satisfy and what is the best ergonomic
UI for most people?
I did not find anything complex enough to make my mind clear, therefor I
just try it myself:
UI in layers (separate things that are not related):
*
ergonomic – define how to ensure users needs (controlling,
visualization, eye candy, cooperation in terms of applications and
multiuser interface)
*
technique – define how to achieve data visualization and feedback
from users (widgets, costumes, etc...)
*
technology – define implementation (objects, databases, XML, etc...)
UI types (some UIs and its characteristics):
*
device's / machine's UI (inputs: buttons, switches, trimmers;
output: control diodes, led numbers, displays) – it is mend for
one purpose and ease understandings
*
batch commands (inputs: char stream; output: char stream) – batch
commands are best in mathematic transformation or bulk data
processing; there is no user interaction along the process
*
CLI – command line interface (input: commands, parameters; output:
char stream) – in this UI users are able to react to outputs;
input and outputs could be chained to each other
*
GUI (input: events; output: graphical objects) – users have almost
fully control to processes; number of large time spending
operations are minimized or they are hidden in background;
interaction is highest but at the other hand, graphical objects
are not, in most cases, reusable by other applications
UI attributes (everything what should be measured in UIs):
*
chaining – possibility to chain application's inputs and outputs
*
interaction – user's ability to see and control running process
*
visualization – possibility to view data on different complexity level
*
virtualization – ability to operate with data on different
visualization level
*
independence – data and UI independence
*
image – possibility to data self presentation
*
freedom – user's freedom to transform and combining data
*
wizardness – ability to perform user's wishes
*
intuitiveness – ability to follow user's ideas
*
helps – ability to help user to resolve problems
*
undoable – possibility to undo data changes to original state
*
previews – possibility to view and compare actions and variant of
actions
(it could be able to compare UIs like Linux shell, KDE, Morphic, Croquet
by assigning points to these attributes)
It is obvious I try to point out that most of GUIs simulate something
(for example machine's GUI) instead of allowing users to work with data.
Thanks to Model-View-Controller programmer easily make new data
visualization and new application, but user are not able to do that by
easy way. There is bunch of questions before we make GUI for that
purpose. Like: do users need absolute freedom or are they satisfied with
completed solutions? is anywise possible to learn users more abstract
UIs or are they struggled in idea: 'push the button means do the
action'? is it necessary to write that kind of GUI from scratch, or it
is possible to assimilate some completed one?
Anyway, no respect how this questions will be answered, if other
attributes or diversification of UI cross your mind, I appreciate your
ideas. I believe this abstract thoughts are important to the future of UI.
Have a nice day,
Adam
More information about the UI
mailing list