The term context (and context-awareness) emerged in
computer application development from the early 90s. Since
then, incorporating various kinds of context information into
application development and runtime has proven to have a
significant impact on improving usability and the way end
user computer and mobile applications are developed [7, 9,
15, 30]. This has been termed context-aware computing or
more generally context-awareness. Gartner predicts that by
2015 context will be influential in delivering mobile
consumer services [13, 17]. The crux of context-aware
computing is to acquire context information within the user’s
environment and to utilise the information to adapt the
application to suit the particular user’s context during
runtime [23]. The overall goal of context-aware computing is
to improve user experience and usability of applications