Figure 1. A Historical Overview of Activity-Based Computing Systems Since 2003.
2003 2009 2006 2012
Activity-Based Computing Project
higher-level collaborative activities rather than low-level application and data management. We situate
this goal in Mark Weiser’s original ideas of transparency and computation as a ubiquitous background resource. In a ubiquitous computing world,
where users are using a multitude of heterogeneous
computing devices, the need for supporting the users
at the activity level becomes essential.
Our research on ABC has been crystallized into six
ABC principles (Bardram 2009). These principles are
grounded both in theoretical models of human cognition and activity, as well as in empirical research
involving the design and evaluation of ABC technologies and applications. Although the principles
themselves evolved over time from their original definition, the core concepts remain unchanged.
Work is organized into activities, which are higher-level computational constructs that encapsulate all
resources, tools, and communication mechanisms
into one goal-oriented interaction model. By moving
away from classic application-oriented interfaces to
multidevice activity-oriented work spaces, users are
presented with logical units of work combined with
the tools required to perform that work.
By supporting activity suspension and resumption,
users can easily switch between different activity
contexts. Suspending an activity means its state is
stored and removed from the active work space,
while resuming an activity restores it. This feature
supports parallel activities (multitasking) and inter-
ruptions in work.
Activities are stored in an infrastructure and hence
can be accessed from multiple devices. This allows a
user to suspend an activity on one device and resume
it on another, thereby allowing the user to roam
between devices. The context of an ongoing activity
can also be spread across devices, allowing for multi-device interaction on one common activity context.
Users are presented with awareness cues and
overviews on the distributed state and accessibility of
Activities adapt to the capabilities of the device(s) on
which they are resumed. Hence, an activity might
look quite different whether it is resumed on a wall-sized display or on a smartphone. A subset of an
activity’s context can be displayed when it is spread
across several devices.
Because activities are distributed, they can also be
shared among users. Shared activities can be accessed
and modified by all related participants. Accessing
activities simultaneously allows for synchronous collaborative setups. Alternatively, asynchronous
exchange of information is possible when separate
users suspend and resume an activity. By attaching
messages or other objects to the activity, all related
participants are notified of changes, thus providing
users with awareness about what changed and on
who is working on what activity.