MOBILEAUDIT
A Tool for Contextual Knowledge Management
Olaf Thiele, Hartwig Knapp and Martin Schader
University of Mannheim - Department of Information Systems
68131 Mannheim, Germany
Nicolas Prat
Essec Business School - Information and Decision Systems Department
Avenue Bernard Hirsch, B.P.50105 - 95021 Cergy cedex, France
Keywords:
Mobility, knowledge management and context-aware computing.
Abstract:
In many professional activities, the ability to retrieve and store knowledge in a mobile situation is crucial. This
need, together with the progress of mobile devices, has led to the emergence of mobile knowledge manage-
ment. In this paper, we propose a context-aware knowledge management architecture for mobile environments
and apply it to an auditing use case. We developed the MobileAudit prototype using the proposed architec-
ture. MobileAudit enables environmental audits according to US as well as European EMAS (ISO 14001)
legislation.
1 INTRODUCTION
The issues of knowledge management and mobility
have often been explored separately. In a joint re-
search project between decision science and software
engineering researchers we devised a possible archi-
tecture for mobile knowledge management (Thiele
et al., 2006). Our generalized approach towards
mobile knowledge management aims at two main
components in knowledge management architectures:
knowledge sources (like knowledge database) and
knowledge interaction modules (desktop applica-
tions). While most research focuses on certain as-
pects of the problem, we present a complete archi-
tecture, which builds upon previous work in the fields
of knowledge management and mobility. A middle-
ware component called the Contextualizer serves as
the main building block of the architecture. The Con-
textualizer is complemented by components that re-
side on the mobile device and in the back-end. This
reduces the resources needed to include a new mobile
device or knowledge source into the system.
Inspired by practitioners in the field we built Mo-
bileAudit, an environmental audit prototype imple-
mentation, that takes advantage of our proposed ar-
chitecture. Environmental audits are compulsory for
many companies in Europe and the US. Other compa-
nies take the audit voluntarily due to public pressure.
Typically, an external auditor is engaged to carry out
the audit. Since on-site interviews, up-to-date pic-
tures and personal inspection are part of every audit
trail, auditors need to be mobile while still carrying
all necessary material. Therefore, a mobile knowl-
edge management software solution might aid in this
situation.
In the next section, we present the mobile knowl-
edge management domain and point out the technical
prerequisites. In Section 3, we highlight our proposed
architecture and explain its main components. Sec-
tion 4 shows parts of our prototypical implementation
while we draw the outline of other works in Section 5.
Finally, we conclude with a resume and an outlook.
2 MOBILE KNOWLEDGE
MANAGEMENT AND
PROPERTIES
In this section, we highlight the main aspects of
knowledge management and mobility relevant to our
work.
2.1 Knowledge Management
Knowledge management is often described as a sys-
tem of activities to permit the utilization of organi-
zational knowledge by the members of that organi-
232
Thiele O., Knapp H., Schader M. and Prat N. (2007).
MOBILEAUDIT - A Tool for Contextual Knowledge Management.
In Proceedings of the Second International Conference on Wireless Information Networks and Systems, pages 216-221
DOI: 10.5220/0002149802160221
Copyright
c
SciTePress
zation (Hannig, 2002). In this paper, we focus on
four general knowledge management processes that
are relevant to our more technical view. On the one
hand, these are knowledge presentation and acquisi-
tion, which evolve around human interaction with the
system. Knowledge presentation comprises both dis-
playing data on the device as well as interacting with
it. If this interaction leads to some sort of knowl-
edge storage or if the user deliberately enters infor-
mation through a form or just as plain text, we cate-
gorize these activities as belonging to knowledge ac-
quisition. On the other hand, knowledge retrieval and
storage are relevant to our work. We use these terms
analogous to their technical counterparts.
2.2 Mobility Aspects
Classical knowledge management applications were
programmed for desktop use. With the introduction of
mobility, sophisticated adaptation to the mobile con-
text becomes more important. In general, the unique
properties of mobile devices are a major influencing
factor in the proposed system. With a growing num-
ber of different device types, the heterogeneity grows
enormously as most devices differ in their capabili-
ties from PCs (e.g. screen size) and from other mo-
bile device types (e.g. cell phones and PDAs). Criti-
cal factors include the display size and resolution, the
memory size and accessibility, the processing power,
connection protocols like GPRS, UMTS, or EDGE,
interaction techniques like the stylus and supported
standardized programming interfaces like Java or C
(see (Lum and Lau, 2002) and more recently (Adipat
and Zhang, 2005)). Key properties are the ubiquity
and the ability to adapt to the user’s context, given
the current position and other preferences (e.g. user
profiles). To sum up, benefits of joining the fields
of knowledge management and mobility are ”any-
time, anywhere information access” (Grimm et al.,
2005), mobile-added values like ubiquity or context-
sensitivity (Derballa and Pousttchi, 2004), and auto-
matic context incorporation (e.g., knowledge is ac-
cessed in an adapted way and context variables such
as location are stored automatically).
3 MOBILE KNOWLEDGE
MANAGEMENT
ARCHITECTURE
In this section, we introduce our mobile knowledge
management architecture and its underlying compo-
nents. Subsequently, we explain how the context
Figure 1: Mobile Knowledge Management Architecture.
mapping works and afterwards, we present the Con-
textualizer middleware in more detail in the Mo-
bileAudit Section 4.
3.1 Introduction
Our proposed architecture for mobile knowledge
management, shown in figure 1 on the next page, is
divided into four layers. The first layer contains the
mobile users or mobile agents. This human agent
interacts with the system to access knowledge. The
human agent then utilizes this knowledge, transfers
it to others or enters some new knowledge back into
the system. The knowledge management activities,
knowledge presentation and acquisition are the inter-
face between layers one and two. The second layer
consists of Java-enabled mobile devices like mobile
phones, PDAs, or laptop computers. The imple-
mented middleware serves as the connecting link be-
tween the adjoining layers - it is the main focus of our
work. It translates the data flow coming from the mo-
bile devices to a database query and the response is
then adapted according to the mobile context and sent
back to the device. The interfacing activities between
the third and fourth layer are knowledge storage and
retrieval. The fourth layer contains the knowledge
source which is built up of different database types.
We chose the three most popular types: relational
(SQL), object-oriented (OODB), and XML databases.
Due to the fact that most of the intelligence and com-
plexity of our application reside on the third layer, we
explain this component more detailed in the next sub-
section.
3.2 Outline of the Contextualizer
The Contextualizer is a middleware component,
which serves as a mediator between the human agent
and existing knowledge bases. It takes care of com-
munication with the knowledge base (knowledge stor-
age and retrieval) as well as linking the server and
client side according to the context (knowledge pre-
sentation and acquisition). In general terms, if the
MOBILEAUDIT - A Tool for Contextual Knowledge Management
233
Contextualizer receives an XML query from a mo-
bile device, it parses the request and analyzes the con-
text according to the following four context elements:
user dependency, technological environment, situa-
tion, and task. Subsequently, all relevant databases
are queried, the results are transformed according to
the four context elements, and, finally, the result is
sent back to the client application. All four context
elements are described thoroughly in the following
subsections.
3.3 User Dependency
User dependent elements form the first type of context
elements. They include technical preferences as well
as the agent’s role within the organization. Most tech-
nical preferences are represented through the user’s
profile. A typical user profile includes data on pre-
ferred color themes as well as favored font sizes. Pro-
file information is stored on the client and is trans-
ferred to the Contextualizer in the initialization phase.
In addition to the profile, the role of the user within
the organization needs to be taken into account. On
the one hand, not all members of an organization work
with all available knowledge. The users’ role deter-
mines what knowledge they are allowed to and need
to access.
3.4 Technological Environment
The technical environment comprises elements of the
device and the network. The device plays a major
role for the Contextualizer. Variables like the screen
size, processing power, available colors, or program-
ming interfaces are key determinants for putting the
knowledge into context. Two major types of applica-
tions need to be considered: text and graphical knowl-
edge representations. Text can be displayed in many
ways. Font size, text formatting and navigational el-
ements within texts (e.g. hyperlinks) as well as ways
for changing screens (e.g. scrolling) can be varied
between mobile devices depending on their capabili-
ties. As for graphical knowledge representation, dis-
play facilities vary a lot between devices. While some
devices like laptops or PDAs offer powerful standard-
ized programming interfaces, smaller devices like cell
phones or smartphones usually have limited custom
interfaces.
3.5 Situational Elements
Situational elements are those connected with time
and location. The time variable includes the actual
time as well as the corresponding time zone. De-
pending on the time of day, knowledge queries might
return different results. Moreover, the time zone is
important when retrieving time-critical information
from databases in far away countries. The other im-
portant situational element is the location. The posi-
tion of the user on the globe is one of the most promi-
nent contextual elements and is used in many mobile
applications. The location can be determined auto-
matically (via GPS) or manually. The position of the
user is especially interesting for graphical knowledge
representation in maps or sketches. The dynamic na-
ture of this element is also important in navigational
tasks. Both the Contextualizer and client need to keep
up with a driving vehicle to deliver timely knowledge.
3.6 Task-Specific Elements
All other context element implementations, as de-
scribed above, are universal and can be used for most
task types, but elements specific to the task need to be
adjusted for each task type. To ease the programming
effort needed for implementing new tasks, we devel-
oped a semantic XML description format (slightly en-
hanced Topic Maps), which can be used to seman-
tically express where knowledge resides and how it
should be handled. The semantic description is situ-
ated in a seperate Topic Maps repository. Apart from
that, the Topic Maps include information on interre-
lated topics. The documentation of relations between
topics is the great strength of Topic Maps and ideal
for mobile contextual adaptation. Data about techni-
cal issues can easily be connected to a topic as well as
other similar task related contents. See Seedorf et al.
for more on the use of Topic Maps in mobile knowl-
edge management (Seedorf et al., 2005).
4 MOBILEAUDIT
IMPLEMENTATION
We implemented a protypical MobileAudit applica-
tion to validate our mobile knowledge management
architecture and to illustrate its features. First, a tech-
nical overview of the environmental audit implemen-
tation - MobileAudit - is given. Subsequently, we then
present the basic idea of our use case and we introduce
the implemented clients as well as the corresponding
server side.
4.1 Overall Implementation
Generally, all applications (client and server side) are
programmed in Java. Technical context variables like
WINSYS 2007 - International Conference on Wireless Information Networks and Systems
234
processing power or disk size can either be typed be
the user or - our preffered method - are detected au-
tomatically. This is especially useful for varying vari-
ables. While display sizes are invariable, available
storage space changes permanantly. Situational con-
text elements need some client programming as well.
For PDA GPS reception, for example, we are using
the Navilock BT-338 Bluetooth receiver. A Java client
program on the PDA extracts the GPS position and
sends the data directly via HTTP to the server. The
server side and especially the Contextualizer were
programmed using J2EE on JBoss. The Java 2 Enter-
prise Edition APIs offer the capabilities for handling
multiple connections with clients as well as databases.
The Contextualizer is therefore scalable and perfor-
mant. We used Hibernate to access relational data and
stored XML in the eXist XML database.
4.2 Environmental Audits
Environmental issues such as global warming dom-
inate the news. Many companies, especially larger
ones, show their ecological responsibility by taking
environmental audits. Others, depending on local leg-
islation, need to prove that they are following certain
standards. While companies in the US show their
EPA compliance (US-EPA, 2007), European com-
panies follow the EMAS standard ISO 14001 (Eco-
Management and Scheme, 2007). Some commercial
applications are available to aid in the mobile auditing
process. Most functionality is offered by CMO Easy
Audit (for Environmental Audits ISO 14001 CMO-
Global-Services, 2007). This Windows-based PDA
application uses no context variables. It does not con-
nect to a server application. While this may be an ad-
vantage in some situations, the interaction with larger
data sources (like searching in existing reports) is im-
possible. Furthermore, all context variables need to
be gathered manually. This takes up valuable time
and some variables like the GPS position are best col-
lected automatically.
Root
Domain 1
Domain 2 Domain n
Section 1.1
Section 1.2
Test 1
Test 2
Figure 2: Sample Audit Trail.
Technically, an audit trail can be seen as a tree. To
complete the whole trail, all subnodes need to be com-
pleted. Subnodes contain other subnodes and some
are optional depending on previous answers in the
trail. A simple model of the tree is depicted in Figure
2. The root nodes represents a complete audit trail for
an area. Domains represents different audit areas like
air pollution, noise, chemical waste or environmental
impact. Typical sections for air pollution are furnace
or chimney usage, use of liquid fuels or asbestos con-
trol. Tests are generally questions. These might range
from yes/no answers to taking pictures or lengthy in-
terviews on working habits. Depending on previous
answers, tests can be skipped or lead to more elabo-
rate tests.
4.3 Application Implementation
Generally, we implemented two different client appli-
cations. A J2ME-based application for cell phones
and a JSP implementation for PDA‘s and laptops.
Due to the HTML limitations of the JSP implemen-
tation, we programmed some Java programs and ap-
plets to gather context variables or ease interaction.
The implemented use case adapts knowledge accord-
ing to all four context elements. User dependent el-
ements include a user profile and organizational role.
The user is able to choose a certain skin and save fa-
vored top menu items. The skin features different font
sizes as we found out that users vary in their pref-
erences for reading on mobile devices. Some prefer
colorful design whereas others want a clear, plain de-
sign. The organizational role determines, which parts
of the system may be accessed by the user. In au-
diting the most important feature is sealing. Once a
subsection has been marked as completed, it must no
be changed. Therefore access rights are crucial for the
auditing process.
Technical context elements in the use case include
the color, interaction style, screen size, and band-
width. The images sent to the device are adapted ac-
cording to the given color table. Large images need to
be scaled in order to be shown on an older cell phone.
Modern cell phones can easliy handle even larger im-
ages. The graphics are sent in total if the device sup-
ports interaction types like zooming, stylus navigation
or mouse movements. The screen size and bandwidth
determine how much of maps or drawings are sent at a
time. Devices with a slow network connection receive
smaller pieces while broadband connection get sent
everything. The bandwidth of a regular cell phone
posed a problematic situation when moving fast while
viewing high resolution images. Situational elements
include the time and place. Some areas have a higher
MOBILEAUDIT - A Tool for Contextual Knowledge Management
235
Figure 3: Screenshot Laptop.
chance of frost in winter time, which poses several
environmental hazards. Other areas have reoccuring
natural threats likes hurricanes or flooding.
Figure 4: Screenshot PDA.
The clients contain only a minimal set of program-
ming logic. The task specific logic of the application
keeps track of the auditing status, while the Contextu-
alizer organizes incoming and outgoing data accord-
ing to the context variables. We implemented the fea-
ture in both clients that the number of questions pre-
sented on one page or screen can be set as a user con-
text variable. Some participants liked it better to see
many questions on one page by scrolling down and up
again, others preferred only few questions per page
without scrolling. This feature was rated higher that
other features like the screenshot applet.
5 RELATED WORK
While knowledge management and mobility are well-
established research fields, the combination of both
raises questions and uncertainties. On the more tech-
nical side, for example, we face the problem that con-
nections between mobile devices and databases are
not dependable; a connection and session manage-
ment has to be introduced to guarantee a complete and
timely data exchange. Some (Holliday et al., 2002)
attend to the question how a database query might be
answered completely and discuss several disconnec-
tion modes while others (see for example (Chan and
Roddick, 2003)) dwell on weak or partial connection
modes. Zuma and Adigun combine these technical is-
sues with some reference to knowledge management
(Zuma and Adigun, 2006). In the field of user inter-
faces design, most are constructed especially for the
targeted device (e.g. special PalmOS devices; also see
(Bardram and Hansen, 2004)) or functionality is lim-
ited (e.g. WML; also see (Picco et al., 2000)).
Work similar to our approach was carried out by
Fagrell et al. as early as 2000 (Fagrell et al., 2000).
As mobile devices had much less processing power
back then, context elements such as user dependency
or automatic location detection were not considered.
The work of Wei and Prehofer focuses more on dis-
tributed context repositories, which are queried for
decision making (Wei and Prehofer, 2003). Derballa
and Pousttchi present the idea of mobile-added val-
ues (Derballa and Pousttchi, 2004). Their approach is
rather abstract and they do not offer a technical im-
plementation roadmap. Focusing on similar issues
are Grimm et al., who are working on the now fin-
ished MUMMY project (see (Grimm et al., 2005) or
(Grimm et al., 2002)). They developed applications
for several tasks (e.g. mobile facility management,
trade fair information). Finally, Adipat and Zhang
develop an adaptable framework for mobile knowl-
edge management (Adipat and Zhang, 2005). Their
main focus lies on web content adaptation according
to user preferences. See their recent publication for
an overview and update (Zhang, 2007). Further in-
formation on mobile web browsing from Pacheco et
al. (Pacheco et al., 2006). Quite similar to our ap-
proach but more focussed on cell phones than PDAs
and more on services rather than knowledge manag-
ment see Laako and Hiltunen (Laakko and Hiltunen,
2005).
6 CONCLUSION
Mobile knowledge management is a key application
area for mobile computing in general and context-
aware computing in particular. In this paper, we have
presented a context-aware mobile knowledge man-
agement architecture. The key component of the ar-
chitecture is the Contextualizer. This middleware im-
plements the knowledge management activities (e.g.,
WINSYS 2007 - International Conference on Wireless Information Networks and Systems
236
knowledge storage, retrieval, presentation, and acqui-
sition) by taking into account the context elements,
namely the user, the technical environment, the situa-
tion (i.e. time and place) and the specific task - here
environmental audits - at hand.
In the last year we developed several use cases
with the proposed architecture. While we continously
improved the mobile knowledge management archi-
tecture, we noticed large variations in the quality and
acceptance of the applications. Time and interest
from practitioners in the field prove to be an important
factor in the design of knowledge management appli-
cations. We are currently working on what specifica-
tions we need to implement a solid prototype imple-
mentation. Especially how our architecture can im-
prove existing processes.
Having little to none client specific code is one
of our key advantages. We are working with a large
variety of devices, especially larger companies are
not willing to exchange large quantities of existing
hardware. Therefore, the client software needs to be
adaptable. Furthermore, HTTP as the main transport
protocol works well over company firewalls. One of
the few drawbacks are rather bix XML-files. We are
currently working on compressing them when trans-
ferring data from cell phones.
Finally, we have not addressed collaboration so
far. Currently we are evaluating exisiting collabora-
tive approaches and want to incorporate them into our
architecture.
REFERENCES
Adipat, B. and Zhang, D. (2005). Developing adaptive
and personalized mobile applications: A framework
and design issues. In Proceedings of the Eleventh
Americas Conference on Information Systems (AM-
CIS 2005). Omaha, Nebraska.
Bardram, J. E. and Hansen, T. R. (2004). The aware archi-
tecture: supporting context-mediated social awareness
in mobile cooperation. In CSCW ’04: Proceedings of
the 2004 ACM conference on Computer supported co-
operative work, pages 192–201, New York, NY, USA.
ACM Press.
Chan, D. and Roddick, J. (2003). Context-sensitive mobile
database summarisation. In ACSC 2003. Twenty-Sixth
Australasian Computer Science Conference.
Derballa, V. and Pousttchi, K. (2004). Extending knowl-
edge management to mobile workplaces. In ICEC
2004. Sixth International Conference on Electronic
Commerce, pages 583– 590.
Eco-Management and Scheme, A. (2007). Website:
http://ec.europa.eu/environment/emas/.
Fagrell, H., Forsberg, K., and Sanneblad, J. (2000). Field-
wise: A mobile knowledge management architecture.
In CSCW 2000, pages 211– 220.
for Environmental Audits ISO 14001 CMO-
Global-Services, E. A. (2007). Website:
http://www.cmohandheldsoftware.com.
Grimm, M., Tazari, M.-R., and Balfanz, D. (2002). Lec-
ture Notes in Computer Science 2569, chapter To-
wards a Framework for Mobile Knowledge Manage-
ment, pages 326–338. Springer.
Grimm, M., Tazari, M.-R., and Balfanz, D. (2005). A ref-
erence model for mobile knowledge management. In
Proceedings of I-KNOW 05. Graz, Austria.
Hannig, U. (2002). Knowledge Management and Business
Intelligence, chapter Zwei Welten wachsen zusam-
men. Springer, Berlin.
Holliday, J., Agrawal, D., and El Abbadi, A. (2002). Dis-
connection modes for mobile devices. In Wireless Net-
works 8, pages 391– 402.
Laakko, T. and Hiltunen, T. (2005). Adapting web con-
tent to mobile user agents. IEEE Internet Computing,
9(2):46–53.
Lum, W. Y. and Lau, F. C. M. (2002). A context-aware de-
cision engine for content adaptation. IEEE Pervasive
Computing, 1(3):41–49.
Pacheco, A., Serro, C., Costa, C., and Dias, F. (2006). Small
screen rendering web-browser comparison - when
web content is too large to fit the screen. In ICE-B
2006 - International Conference on E-Business, pages
145–150. August 7th-10th.
Picco, G. P., Murphy, A. L., and Roman, G.-C. (2000).
Developing mobile computing applications with lime.
In ICSE ’00: Proceedings of the 22nd international
conference on Software engineering, pages 766–769,
New York, NY, USA. ACM Press.
Seedorf, S., Korthaus, A., and Aleksy, M. (2005). Creat-
ing a topic map query tool for mobile devices using
j2me and xml. In WISICT ’05: Proceedings of the 4th
international symposium on Information and commu-
nication technologies, pages 111–116. Trinity College
Dublin.
Thiele, O., Knapp, H., Schader, M., and Prat, N. (2006).
A context-aware architecture for mobile knowledge
management. In Proceedings International Confer-
ence on Wireless Information Networks and Systems.
Winsys.
US-EPA, U. E. P. A. (2007). Website for auditing:
http://www.epa.gov/compliance/incentives/auditing/.
Wei, Q. and Prehofer, C. (2003). Context management
in mobile environments. In Proceedings of ANwire
Workshop, Paris.
Zhang, D. (2007). Web content adaptation for mobile hand-
held devices. Commun. ACM, 50(2):75–79.
Zuma, S. M. and Adigun, M. O. (2006). Cacip: a pat-
tern for interfacing components in a context-aware
mobile environment. In MS’06: Proceedings of the
17th IASTED international conference on Modelling
and simulation, pages 416–423, Anaheim, CA, USA.
ACTA Press.
MOBILEAUDIT - A Tool for Contextual Knowledge Management
237