Ubiquitous Computing
Ubiquitous Computing
Ubiquitous Computing
HISTORY
History of ubiquitous computing
The term Ubiquitous Computing was coined and introduced by the late Mark
Weiser (1952 -1999). He worked at the Xerox Palo Alto Research Center (PARC,
now an inde- pendent organization). PARC was more or less the birthplace of
many developments that marked the PC era, such as the mouse, windows-based
user interfaces and the desktop metaphor (note that Xerox STAR preceded the
Apple Lisa, which again preceded Microsoft Windows), laser printers, many
concepts of computer supported cooperative work (CSCW) and media spaces,
and much more. This success is contributed (among other reasons) to the fact that
PARC man- aged to integrate technology research and humanities research
(computer science and human factors in particular) in a truly interdisciplinary
way.
Weiser concentrated so much on user aspects that quite a number of his first
prototypes were mere mock ups: during corresponding user studies, users had to
imagine the technology side of the devices investigated and focus on use cases,
ideal form factors and desired features, integration into a pretend intelligent
environment, etc.
MARK WEISERS THREE KEY DEVICES
These complementary UC devices were prototyped at his lab; investigated in the
context of PARCs typical creative, team-oriented setting, all three were thought
as electronic replacements for the common analog information appliances.
Xerox Pad:
The Xerox Pad can be considered to be the prototype and father of present PDAs,
introduced even before the Apple Newton appeared in 1993. The initial concept
was that of an electronic equivalent to inch-size information bearers, namely
PostIt Notes: easy to create and to stick almost every- where, available in large
quantities. As the PDA analogy suggests, the prototypes had a lot more
functionality than PostIt Notes but were also a lot more expensive and
cumbersome to handle by design (not only due to short and mid-term technology
limitations).
Xerox ’Tab’:
The Xerox Tab can be considered to be the prototype and father of present Tablet
PCs. The analogy from the traditional world was that of a foot-size information
bearer, namely a notebook or notepad. One may infer from the rather stalling
market penetration of Tablet PCs that technology is still not ready for mass market
Tabs today, but one may also expect to find a pen centric, foot size handheld
computer to become very successful any time soon. An interesting facet of the
original Tab concept was the idea that Tabs would in the future lay around for free
use pretty much as one finds paper notebooks today, e.g. as part of the
complementary stationery offered to meeting participants.
fig: XEROX TAB
Xerox Liveboard’:
The Xerox Liveboard was the prototype of present electronic whiteboards. A
PARC spinoff com- pany designed and marketed such boards, and today many
companies like Calgary based Smart- Technologies Inc. still sell such devices.
Liveboards represented the yard-size information bearers in the family of
cooperating devices for cooperating people. In contrast to many devices sold
today, liveboards supported multi-user input pretty early on.
The developments and studies conducted at Mark Weisers lab emphasized the
combination of the three device types for computer supported cooperation, and
cooperative knowledge work in particular.
Layers of Ubiquitous Computing
It is not as easy as creating a new type of computer with varying abilities from
its predecessors to define ubiquitous computing. It’s as complex as establishing
a unique manner of engaging with and obtaining information, communicating,
and a new way of living. One may use wireless sensor networks with the
Internet of Things (IoT).
Such sensor networks gather information from selected device sensors before
passing it to an IoT server. A system of layers with a specific series of tasks that
come together to make up ubiquitous computing might be considered. These
layers include the following:
Ubiquitous middleware
Ubiquitous middleware is a critical component in Ubiquitous Computing
(Ubicomp) environments that acts as an intermediary layer of software between
the hardware components (sensors, devices, actuators) and application software.
It facilitates communication, data processing, and the management of distributed
resources in Ubicomp systems. Here's a more detailed explanation:
Key Functions and Characteristics of Ubiquitous Middleware
1. Interoperability: Ubiquitous middleware enables different devices,
sensors, and software applications to communicate and work together
seamlessly. It abstracts the complexities of device-specific communication
protocols and data formats.
2. Data Aggregation and Processing: Middleware collects data from various
sensors and devices deployed in the environment. It processes this data,
filtering, aggregating, and analyzing it to derive meaningful insights.
3. Context Awareness: Middleware plays a crucial role in maintaining
context awareness in Ubicomp systems. It keeps track of the environment's
current state, including the location of devices, user preferences, and real-
time data.
4. Resource Management: Ubiquitous middleware manages distributed
resources efficiently. It allocates computing resources, network
bandwidth, and storage capacity as needed to support various applications
and services.
5. Security: Middleware implements security mechanisms to protect data and
communication. This includes encryption, authentication, authorization,
and access control to ensure the privacy and integrity of information.
6. Scalability: Ubiquitous middleware can scale to accommodate the
growing number of devices and sensors in Ubicomp environments. It can
handle the increased volume of data and users effectively.
7. Real-Time Communication: In Ubicomp, real-time communication is
often essential. Middleware supports low-latency communication between
devices and systems, allowing for quick response to changing conditions.
8. Application Integration: Middleware provides Application Programming
Interfaces (APIs) and tools for developers to build and integrate Ubicomp
applications. This simplifies the development process and ensures
compatibility with existing systems.
9. Event-Driven Architecture: Middleware often employs an event-driven
architecture, where actions or events trigger specific responses. For
example, a change in sensor data might trigger an action to adjust
environmental controls.
How Ubiquitous Middleware Works
1. Data Collection: Sensors and devices continuously collect data from their
surroundings and transmit it to the middleware layer.
2. Data Processing: Middleware processes the incoming data, applying
filtering, transformation, and analysis as required. It may identify patterns,
trends, or critical events.
3. Context Management: Middleware maintains context information about
the environment, users, and devices. This context awareness is used to
make informed decisions and trigger actions.
4. Communication and Integration: Middleware ensures that data and
information are shared among devices, services, and applications. It
facilitates the interoperability of various components.
5. Security: Middleware enforces security measures to protect data in transit
and at rest. It manages user authentication, authorization, and encryption
of sensitive data.
6. Resource Allocation: Middleware allocates computing resources
dynamically to meet the demands of various applications. It ensures that
computing resources are used efficiently.
7. Event Handling: Middleware uses an event-driven model to respond to
events or conditions in real-time. For example, a fire alarm sensor
triggering an alert is an event that the middleware can handle.
Ubiquitous networking
Ubiquitous networking is a fundamental concept in Ubiquitous Computing
(Ubicomp) that refers to the establishment of interconnected networks allowing
devices, sensors, and services to communicate and collaborate seamlessly. It aims
to provide continuous and ubiquitous connectivity, enabling data exchange,
resource sharing, and real-time interaction across diverse devices and systems.
Here's a more detailed explanation:
Calm-Technology
Today Internet is carrying us through an era of widespread distributed computing
towards the relation- ship of ubiquitous computing, characterized by deeply
embedding computation in the world. Ubiquitous computing will require a new
approach to fitting technology to our life, an approach called ”calm technology”.
The most potentially interesting, challenging, and profound change implied by
the ubiquitous computing/ubicomp era is a focus on calm. If computers are
everywhere they better stay out of the way, and that means designing them so that
the people being shared by the computers remain serene and in control. Calmness
is a new challenge that UC brings to computing. When computers are used behind
closed doors by experts, calmness is relevant to only a few. Computers for
personal use have focused on the excitement of interaction. But when computers
are all around, so that we want to compute while doing something else and have
more time to be more fully human, we must radically rethink the goals, context
and technology of the computer and all the other technology crowding into our
lives. Calmness is a fundamental challenge for all technological design and
implementation of the next ten to fifty years.
In designing calm technology , Weiser and john saily brown describe calm
technology as ”” that which informs but doesn’t demand our focus or attention””
Characteristics of ideal Calm Technology
• The best computer is a quiet, invisible servant
• The more you can do by intuition the smarter you are;
• The computer should extend your unconscious.
• Technology should create calm
Context Awareness
Context awareness is an important characteristic to application in a ubiquitous
computing. Using con- text awareness, systems can integrate gracefully with their
environments with minimal intrusion and unnecessary interaction with the user.
There are many definitions of context awareness that have been discussed in
recent years. Each of these definitions, although slightly different from each
other, exhibits certain commonalities between them. These commonalities
mapped directly to the four types of context that a ubiquitous system can be aware
of:
•location
•activity
•identity
•time
Collecting and analysing this context information can greatly enhance ubiquitous
computing systems for the standard user. This point was illustrated by exploring
different ubiquitous computing systems that are currently available in todays
market place, or that are at the prototype stage and will perhaps be available in
the future. These examples showed that without the use of context aware
information in a ubiquitous computing system, none of these technologies would
be possible. Not only was it shown that context aware technologies enhanced the
overall experience for standards user, but also it was shown that context
awareness benefits users with disabilities through the use of assistive technology.
Over one- third of the assistive technology devices distributed each year are
abandoned by users v . This is due to the fact that the assistive technologies are
not context aware technologies. These systems will break down barriers, allowing
people with disabilities to integrate seamlessly into social environments, much
like ubiquitous computing itself.
Types of context
the four types of context that a ubiquitous system must be aware of:
1.Location
Location awareness plays a very important role for ubiquitous computing
systems. It allows these systems to adapt in terms of the resources that are
available to the user and to the system. With a users location, a system may be
able to determine what other objects or people are in the surround- ing area and
what activity is occurring near the entity. Furthermore, using this information the
ubiquitous system itself can adapt to ensure the users demands are met efficiently
and effectively.
With the increased popularity in mobile computing and communication, users
now have an expec- tation that information services should be available to them
at all times, irrespective of their current location. Mobile devices need to be aware
of your current location in order to ensure a user is provided with the most
efficient network service. Some locations may have access to Wi-Fi, some to 3G
and some to EDGE networks. Mobile computers need to, using the information
collected from the users location, determine which network service is the
strongest and then configure itself to that frequency, all without the need for user
interaction.
2.Activity
An activity describes what is occurring in a given situation. A ubiquitous
computing system that is activity aware will collect data regarding the activity
that is currently being performed as well as from previously performed user tasks.
With this data, the system can conduct a number of different data analytic
functions, and using the results, can determine what additional tasks need to be
performed as well as predicting what tasks will be performed in the future
whether a given context should trigger an event.
For example, many IT companies run a virus scanning tools over the companys
network to detect is the network is free from malicious viruses. This process can
be very resource intensive and can lead to workers computers slowing down
considerably. To prevent this slow down, and thus ensure the workers
productivity is not affected, the network system is programmed to be aware of
normal working hours and only begin this virus scanning outside of these hours.
Some systems can also determine when the last successful virus scan completed
and therefore flag to the ICT department if another scan is required.
3.Identity
When a ubiquitous computing system is identity aware, it has access to
information about the user. This information can either be explicitly or implicitly
provided by the user. For the identity information to be explicitly indicated the
user does not need to interact with the system in order for the system to collect
data. For example, facial recognition software can be used to correctly identify
the person that is interacting with the system. For identity information to be
implicitly collected, the user must directly interact with the software in order for
the system to be made aware of the user. A common implicit identity gathering
feature is a login dialog where the user must type in their username and password.
Once this primary identity information is acquired the system can access
secondary information about the user also, for example, a users contact
information, date of birth, relationship with other people in the environment, etc.
Knowing the identity of a user is a powerful and useful tool. It allows a system to
present cus- tomised information to the user as well as using this information to
determine what other system events should be processed in order to meet the users
demands.
4.Time
Time aware computing systems are aware of the time of day and/or can record
time lapses between certain events. These systems can use this time information
to determine capturing and processing this type of information it must still be
designed correctly to ensure the proactive solution does not irritate the user, as
this would remove the systems invisibility and transparency.
Knowing the identity of a user is a powerful and useful tool. It allows a system to
present customised information to the user as well as using this information to
determine what other system events should be processed in order to meet the users
demands.
HATT model
The Human Activity Assistive Technology (HAAT) Model is often used when
designing an assistive technology for a user with disabilities [6]. This model
describes how the users performance can be influenced, negatively or positively,
by the person, the activity and the persons environment.
The model suggests that each of these factors influence each other, and for
optimal performance these factors need to adapt to change effectively. Each of
the factors considered in the HAAT Model can be directly mapped to the types of
context information that a ubiquitous computing system can be made aware of.
Using this context information acquired by the ubiquitous system/assistive
technology, the system could continuously adapt to the users requirements.
As you can see, intention analysis and strategy planning are critical to how the
ubiquitous computing system will work. Both are necessary for goal based
interactions.
A users needs may be quite varied and the smart environments devices must
cooperate with each other in unison. In addition, as users add or remove devices
to their smart environment, ubiquitous computing technologies must easily allow
for such user changes. In the end, a goal oriented approach calls for a dynamic
system, so the users needs are met even as they change in real-time. The smart
environment will be able to simultaneously feed the senses so occupants can carry
out a multitude of functions. With few interface techniques a user may
communicate based on their intention; and therefore, their goals. Smart
environments will work seamlessly to orchestrate a smart space through context
aware techniques. Appliances will form an ensemble, giving rise to architectural
space that yields greatest value.
Above the sensors lies the wireless communication infrastructure, which can be
provided by the
802.11 family of networks. Newer standards such as 802.11n have lower latency.
Together with mesh networks, such standards ensure the connectivity of sensors
and devices. Another technology called ZigBee is a low-cost alternative for
keeping multiple devices connected, allowing parent devices to wirelessly control
child sensors. Near field communication (NFC) is yet another technology
standard that leverages RFID and can be used for ubiquitous computing,
especially in scenarios where non- battery-operated passive points are concerned.
NFC-powered devices can also interact with one another. The next level includes
a range of application services. The data from the sensors and handheld de- vices
is gathered, mined, and analysed for patterns. The patterns help provide options
to smart applications that proactively make changes to environments through
smartphones, tablets, netbooks, notebooks, handhelds, or other smart devices.
The smartphone, for instance, can transform itself into a barcode or quick
response (QR) code reader to identify and get details of a product from a retail
store, or display the barcode of your airline ticket so that the barcode code reader
at the check-in kiosk can read it and issue a boarding pass. Another example could
be that of a cardiac patient wearing a tiny monitor connected to a mobile device.
An irregular ECG will trigger the mobile to alert the patients doctor and
emergency services. An example of how this can happen has been depicted in
Figure.
Challenges
The power ubiquitous computing promises carries with it significant risks. One
such risk is associated with the amount of privacy that must be sacrificed to see
the benefits of truly helpful computers. Another is that early, bleeding edge
applications of ubiquitous computing will turn out to be more ambitious than
effective, leading some to prematurely conclude that the idea is a failure. We
address each of these concerns below.
Privacy and Security
When such a vast number of entities are connected, their interactions and
communications are examined more carefully. First, data from one persons device
must be distinguished from data from anothers. Second, it is necessary to ensure
that false data is not intentionally injected by some other device, masquerading
as a bonafide source for that information. And finally, it must be rendered difficult
or impossible to steal someone else data. Researchers are currently working on
solving each of these problems in an effort to secure mesh networks.
• You are now predictable
• System can co-relate location, context and behaviour patterns
• Do you want employer, colleagues or insurance company to know you
carry a medical monitor?
• Tension between authentication and anonymity business want to
authenticate you for financial transactions and to provide personalized
service
• Users should be aware of being monitored
• Ability to control who/what has access to my data (stored, communicated,
inferred), ability to define levels of privacy, trust etc
Information management
• Billions of sensors generating petabytes of (dynamic) data
• Need filtering, aggregation, collaborative sensing, new query techniques
which cater for errors in source.
• Meta data description of information
• Provenance - audit trails,
• how and where modified etc.
Scalability
• In a ubiquitous computing environment where possibly thousands and
thousands of devices are part of scalability of the whole system is a key
requirement
• All the devices are autonomous and must be able to operate independently
a decentralized management will most likely be most suitable
Mobility
• Mobility is made possible through wireless communication technologies
• Problem of disconnectivity !!! This behaviour is an inherent property of the
ubicomp concept and it should not be treated as a failure
Networking
• Another key driver for the final transition will be the use of short-range
wireless as well as traditional wired technologies
Reliability
• Thus the reliability of ubiquitous services and devices is a crucial
requirement
• In order to construct reliable systems self monitoring, self-regulating and
self-healing features like they are found in biology might be a solution
Interoperability
• This will probably be one of the major factors for the success or failure of
the Ubicomp vision
• This diversity will make it impossible that there is only one agreed standard
Resource Discovery
• The ability of devices to describe their behaviour to the network is a key
requirement.
• On the other hand, it can not be assumed that devices in a ubiquitous
environment have prior knowledge of the capabilites of other occupants.
Requirement
Ubiquitous service
A service refers to a software component that performs computation or action on
behalf of a system entity. This entity can be the user or another service. Services
are usually well-defined in their functionality as well as their inputs and outputs
. We identify the five goals of ubiquity, with regards to a service,as Availability,
Transparency, Seamlessness, Awareness, and Trustworthiness (ATSAT) as
depicted in the figure. These goals may be satisfied to varying degrees based on
user needs and operating conditions.
1.Availability
Ideally, a ubiquitous service should be available independent context. The service
should be also available regardless of changes in user status, needs, and
preferences.
2.Transparency
According to Weiser, a good tool is an invisible tool. Weisersnotion of
disappearance, where a tool is ”literally visible, effectively invisible” means that
the tool does not intrude on the user conscious- ness; the user focuses on the task,
not the tool. Ubiquitous computing provides smarter unconscious, so that users
do more easily and intuitively without requiring user attention and awareness of
the underlying technology. Transparency implies more than just a user-friendly
interface; the technology should facilitate the task in a non-intrusive way and in
this way ”hide” the underlying technology from the user
3.Seamlessness
Seamlessness can be defined as the capability of providing an everlasting service
session under any connection with any device. The ultimate goal is that the system
will recognize the user wherever she logs on, on any system, with any equipment,
at anytime, with the applications in a given state and have them adapting the best
possible way given these surrounding conditions. Seams occur when the service
fails to satisfy the minimum QoS requirements set by the end-user.
4.Awareness
Ubiquitous devices extend the human senses by providing greater awareness of
the surrounding environment. By blending into the physical world, a ubiquitous
service bridges the gap between the end-user and his surrounding. We advocate
the need for mutual awareness between the user (context) and the
service(feedback). Abowd and Mynatt put forth the ”five W’s” of context,
providing a good starting point of the different components that should be put
together to provide user context. The five Ws are:-Who (the ability of a device to
identify not only its owner, but other people and devices in its vicinity within the
environment),What (the ability to interpret user activity and behaviour, and using
that information to infer what the user wants to do), Where (the ability to interpret
the location of the user and use that to tailor functionality), When (the ability to
understand
the passage of time, use it to understand the activities around and to make
inferences), and Why (the ability to understand the reasons behind certain user
actions). In addition to the system awareness of its user, a ubiquitous environment
provides user awareness of the task (i.e. feedback) in a way that may enhance the
user’s decisions.
5.Trustworthiness
We define trust of an entity in a ubiquitous service environment asthe confidence
that the entity will behave as expected in a given context. Mutual trust must be
established between different entities in a ubiquitous environment in a sense that
each entity is assigned a trust value based on its behaviour. An entity can be a
device, a service or a user. In the latter case, the trust worthiness of a service or a
device has psycho sociological aspects that affect its usability. The model of trust
in a ubiquitous context should capture both the needs of the traditional world of
computing where trust is based on identity, and of the world of ubiquitous and
pervasive computing where trust is based on identity, physical context or a
combination of both . In other words, both identity-based and context-based trust
relationships should be defined between different entities within a ubiquitous
environment.
tags etc. The base stations for talking to them are simple devices that can be
plugged directly into a wall socket.
2.The ”ubi”
Future
When computing becomes ubiquitous you will not need to manually set
preferences. The object you interact with will learn from you and provide
information based on your environment. Temperature, time of day, movement,
sound, colour and light will all influence the information you receive. Ubiquitous
computing will provide a continuous stream of information without being
distracting and will only pro- vide the information you need at the time.
Everything will become interactive and more importantly, reactive. Imagine the
following scenarios:
1. You make a call to your friend whose native language is French. He
understands English quite well but prefers to speak in French. No problem.
In real-time what you say comes across on his end in French and vice-
versa.
2. You need to setup a meeting with a group of business partners who all have
busy schedules. No problem, their automated calendars work together to
find a good time for all of you to meet.
3. You are rushed to the hospital after a car accident. By performing a retinal
scan the ER doctors are provided with time-sensitive and important
information: allergies, past surgeries, existing condi- tions, emergency
contact information, name and age. (Ubiquitous computing will probably
prevent most accidents before they happen.)
4. You have lost your keys. No more searching, just ask your house. It will
know EXACTLY where they are, even if they are hiding in the couch
cushions. (Keys will probably be a thing of the past at this point.)
fig Ultra tiny computer imbedded in environment.
Conclusion
The UC will bring information technology beyond the big problems like
corporate finance and school homework, to the little annoyances like Where are
the car-keys, Can I get a parking place, and Is that shirt I saw last week at Macy’s
still on the rack? Many researchers are working towards this new era among them
our work at Xerox PARC, MIT’s AI-oriented ”Things That Think” program, the
many mobile and wearable computing programs (many funded by ARPA), and
the many companies integrating computation into everyday objects, including
Mattel and Disney but
• Currently pervasive systems are more hype than reality
• Some component technologies are available
• Technology problems - seamless communications, power
• Management problems - adaptive self management, privacy
• Most research focuses on Engineering aspects No theory to underpin
understanding, analysis & design
• SMC provides a scope for theoretical analysis and Implementation