Vous êtes sur la page 1sur 7

OOUI-The future form of User Interface

DM.V.S..KARTHIK K.VENKATESWARA RAO B.C.S.V. PAVAN

sivakarthik.das@gmail.com nani.nani041@gmail.com bscvpavan@gmail.com

Ph no: 8125823017 Ph no: 9550593929 ph no: 8125576247

ECM Branch, KONERU LAKSHMAIAH UNIVERSITY

GREEN FIELDS, VADDESWARAM

VIJAYAWADA

Abstract: The Object-Oriented (OO) process is an


evolutionary approach to software
engineering. It encompasses the entire
This paper aims at highlighting the
software life cycle, from operational concept
importance of Object-Oriented approach through release. Object oriented technology
represents the methodologies which are
taking the user interface as study subject.
based on ‘Object’ approach.
The paper starts giving the classification of
Object Oriented Technologies in their basic
Object oriented Technology is seen in three
forms and defines the Object-Oriented
basic forms. They are,
approach. . The basic idea of object-
1. Object-Oriented User Interfaces
oriented approach promotes a ‘NO (OOUI)
COMPROMISE’ motto on both the product 2. Object-Oriented Programming
development and user interface efficiency. It Systems (OOPS)
then provides Object-Oriented User 3. Object-Oriented Database
Interface as a solution to the problems in Management (OODBM)

the present user interface giving rise to the


future of user interface-the OOUI. Object-Oriented Programming systems
(OOPS):
Introduction: Object-oriented programming (OOPS) is
Object Oriented Technology (OOT) a programming paradigm using "objects"
– data structures consisting of data
fields and methods together with their
interactions – to design applications and The following definition gives the
computer programs. Programming clarification of essential properties of an
techniques may include features such as data object:
abstraction, encapsulation, messaging, modu
larity, polymorphism, and inheritance. Many An object is an abstraction of set of real-
modern programming languages now world entities or things such that:
support OOP.
• All of the real-world things in the set
–the instances – have the same
characteristics
Object Oriented Database Management
(OODBM): • All instances are subject to and
conform the same rules
An object-oriented database is
a database model in which information is The concepts in Object approach add many
represented in the form of objects as used advantages to the OO system such as
in object-oriented programming. When increased productivity, reduced
database capabilities are combined with maintenance, standardization in case of
object-oriented (OO) programming language Inheritance and improved program
capabilities, the result is an object-oriented reliability, ease of coding, reusability in case
database management system (OODBMS). of encapsulation and so on the list continues.
But the thing to be observed here is that they
add value to the system.
Object-Oriented User Interfaces (OOUI): Let us now see what a UI is.
In computing an object-oriented user
interface (OOUI) is a type of user
interface based on an object-oriented User Interface (UI):
programming metaphor. In an OOUI, the
user interacts explicitly with objects that User interface is the space where interaction
represent entities in the domain that the between humans and machines occurs. The
application is concerned with. Many vector goal of interaction between a human and a
drawing applications, for example, have an machine at the user interface is effective
OOUI - the objects being lines, circles and operation and control of the machine, and
canvases. The user may explicitly select an feedback from the machine which aids the
object, alter its properties (such as size or operator in making operational decisions. In
color), or invoke other actions upon it (such case of computing it comprises of visual and
as to move, copy, or re-align it). auditory information. GUI (Graphical User
Interface) is one such interface.
What is an object?
An Object is the basis for any OO
technology. It is defined as - "An object is Graphical User Interface (GUI)
anything, real or abstract, about which we
In computing a graphical user interface is a
store data and those operations that
type of user interface that allows users to
manipulate the data."
interact with electronic devices with images
rather than text commands. GUIs can be
used in computers, hand-held devices such
as MP3 players, portable media players or
gaming devices, household appliances and The WIMP style of interaction uses a
office equipment. A GUI represents the physical input device to control the position
information and actions available to a user of a cursor and presents information
through graphical icons and visual indicators organized in windows and represented with
such as secondary notation, as opposed to icons. Available commands are compiled
text-based interfaces, typed command labels together in menus, and actions are
or text navigation. The actions are usually performed making gestures with the
performed through direct manipulation of pointing device. A window manager
the graphical elements. The GUIs familiar to facilitates the interactions between windows,
most people today are Microsoft Windows, applications, and the windowing system.
Mac OS X, and X Window System The windowing system handles hardware
interfaces. devices such as pointing devices and
graphics hardware, as well as the positioning
of the cursor.
A GUI uses a combination of technologies
and devices to provide a platform the user
can interact w with, for the tasks of Flaws with present GUI
gathering and producing information. A
GUI has more advantages than other user
series of elements conforming a visual
interfaces like CLI-command line interface.
language have evolved to represent
The explanation is too simple- a CLI can be
information stored in computers. This makes
run in GUI as some programmers and
it easier for people with few computer skills
advanced users would want it but it’s not
to work with and use computer software.
possible otherwise. Furthermore, multi-
The most common combination of such
tasking is quite simple with GUI when
elements in GUIs is the WIMP ("window,
compared to CLI. In spite of all this there
icon, menu, and pointing device") paradigm,
are some limitations or flaws to GUI. Let’s
especially in personal computers.
have a look at them.

Figure 2: clutter of applications and


explorer windows
Figure 1 : WIMP example
Consider a normal desktop usage. While The fundamental problems of modern user
browsing the internet for example, I open interfaces are:
Google chrome for Facebook, Gmail and I
can’t use chrome for any more needs 1. They’re application based – Modern UI’s
because I follow the links in the mail and fb are focused on files and applications. They
in the same browser making the number of don’t recognize most projects we work on
tabs to 15 to 20. I use my favorite reader to are multi-application, and so they don’t have
follow the RSS feeds of my favorite sites. a good way of dealing with our need to open
Many explorer windows would be kept open and manage multiple apps when we are
where I store my graphics, save webpages, working on a project.
and music. I use an audio player to play
2. They lock data up in a file format – This
songs meanwhile. And this clutter goes out
isn’t just a matter of interoperability (i.e.,
of hand when I am working on a project at
opening docx files on Linux and the like.)
the same time.
This is about the fact that the modern UI
does not recognize that inside a Word
document there might be pictures, and that I
Though this problem could be minimized by might want to extract them for some other
using advanced software’s to group things purpose.
like Firefox grouped tab browsing remember
that more software leads to extra allocation 3. They lack a good way to share and
of memory resource, processing power etc. version – Obviously there are exceptions,
which leads to slowing down the pc. like with most document processing
software. However, the point is that
versioning is at an application level, not an
OS (this isn’t exactly UI, but I feel like it’s
Besides this, there are other major flaws. in the same basic realm.)
Let’s consider the example of a person
documenting his work. He inserts graphics
in to his word doc for easier representation
of data, includes references from the internet Object Oriented User Interface
in to his doc, screenshots his application (OOUI) - the solution
output or stats in his app and pastes them for
reference and etc... While this seems easier A major part of that rethinking will borrow
can the opposite work be equally easier?? heavily from the realm of object oriented
programming. The OOUI has three parts-
Objects, collections, and a canvas. Their
relationship can be summed up in the
Consider that I have a document of abstract
following manner; Collections are a group
and I need to prepare a presentation based
of objects arranged on a canvas. Those
on it. Can this be equally easier as when you
objects can be anything; graphs, images, text
knew all the sources? Will he be able to
files, audio files, web pages, whatever. The
retrace all them without too much of
canvas can also be very flexible, 2D, 3D,
unnecessary process?? There’s really no
with an image background, with predefined
good answer
object slots (i.e. days on a calendar). The
. user interacts by dragging objects round on
the canvas in a very natural manner, much
like Bump Top. They can open an object
and edit it more fully, or change its collection. Most importantly, users should
configuration so that it’s bigger, a different be able to easily “explode” these complex
color, transparent, etc. This combination of a objects into their component primitives,
very natural user interface, and the ability to letting them say extract all the images from
save entire collections, helps address the a power point presentation to use
first problem of modern UI’s. somewhere else.
Bump Top (an advanced application that None of the elements, objects, canvas, or
implements collection strategy using the collection, bears a direct resemblance to
icons of the respective files) offers a good Microsoft Word, or PowerPoint, or any
idea of what collections in an OOUI might other of the applications we’re familiar with.
be like. However an OOUI would go one So what happens to the application in an
step further by allowing this type of OOUI?
interaction with more than just icons, but
with the actual content (text, images, audio,
etc).
To understand its best if we start by thinking
about what an application now is. At its
heart, an application is a couple of different
The key thing is how the computer manages things.
these objects. Users can save and open
collections, so that everything, down even to 1. First an application is a set of tools to
the layout, is preserved. Furthermore, the manipulate a certain collection of data,
OOUI thinks of objects much like objects in called a file. This manipulation may be just
object oriented programing. Each object has a matter of viewing, or it may involve
attributes, its content, its name, its current editing
layout, etc. Each object also has methods
2. Second and application is an interface that
that allow the user to manipulate it, such as
displays the data and the tools.
save, edit, move, group, play, etc.

What’s important is that in a traditional


Here’s where the OOUI begins to solve the
application these two elements are
second problem. Just like in OOP, objects in
inseparable. The tools are directly tied to the
the OOUI come in two flavors, primitives
interface. Adobe Photoshop offers a perfect
and complex objects. The primitives are
example of this. Photoshop has a very
your basic types of content. Text files,
powerful set of tools for manipulating
images, sound, video, link, application
images. You can color, stretch, erase, apply
window, database table are some examples
filters, etc. But you can only use these tools
of primitives. Complex objects are then just
in Photoshop. If you copy an image into
a collection of primitives, with specially
Microsoft Word, you can’t use Adobe’s
designed methods to bring them together.
tools anymore, not unless someone designs a
For example, a programmer could construct
plugin specifically to allow that sort of use.
a graph object which had one attribute to
Instead you’re stuck with the rather meager
specify a data source, and then methods to
image editing tools Word offers.
create various kinds of graphs (bar, pie, plot,
etc.) Then the user could use this object to
create a variety of graphs for their
In short each application is a silo, and data the logical end point of the abstraction
has to move between applications before between functionality and interface.
you can make use of the tools that
application offers. What’s important to note,
is that often you can’t import data directly
OOUI application development comes in
into a secondary application, instead you
three parts.
have first open it in the primary application,
and then drag and drop into a secondary one.

1. Object Definition – First the developer


needs to write the object defections for any
complex objects the application will need or
for any additional methods that the app will
enable for primitives. For an image editing
program, this might just be a new set of
filters to change an image. For a power point
style program this might be more
complicated. You might have to right the
definition for a slide object, which is a
collection of images and text, and then a
Figure 3 : problem with conventional GUI presentation object, which is a collection of
slides.
To put it simply, a set of tools is tied to a
specific interface, not to a specific type of 2. Canvas Definition – Then the developer
data. As you move from interface to needs to define a default of canvas designed
interface you gain and lose functionality for viewing and manipulating their data. For
a calendar application, the canvas might be
designed so that the background displayed
the days of the month. Furthermore, the
The OOUI however takes the philosophy
developer might design it so that you could
that tools should be tied to data. You should
only layout objects on a specific date, not
be able to do the same things to an image in
anywhere on the canvas. It’s important to
Word that you do in Photoshop. It’s just an
note though, that users should be able to
image after all. Why does it matter what
move data off of this canvas.
other pieces of content you’ve put it in
relation to? 3. Control Objects – Control Objects are a
special type of object that is designed purely
This radically changes the process of
to give basic user interface points. On a
application development, basically
music player application, this might be the
completely abstracting the challenge of data
stop, start buttons. And volume control. On
manipulation from interface design.
other applications this might be a search
Interesting though, this is the direction that
box.
programming has been going for years, to
the extent where a lot of modern application To design an application the developer
development uses one language to do writes the object definition, sets up the
interface (some sort of markup language, canvas, and the populates it with controls.
like XAML, or XUL) and one language for The result is a collection with a unique
functionality. In some ways the OOUI is just
canvas and application specific controls. The
user opens this up like any other collection,
and imports objects from the file system,
either manually or using some kind of
search based control object.

Conclusion:
The OOUI stands as a solution to
problems of present GUI and also offers
many advanced features. The basic idea of
objects promotes a ‘NO COMPROMISE’
motto on both the product development and
user interface efficiency. Thus the OOUI
can be seen as the future form of OOUI.

References:
• www.stason.org
• www.ksi.cpsc.ucalgary.ca

• www.wikipedia.org
• www.developers.com

Vous aimerez peut-être aussi