semantic wiki

124
STRAYER UNIVERSITY A STUDY ON THE IMPLEMENTATION OF SEMANTIC WIKI-BASED KNOWLEDGE MANAGEMENT SYSTEM FOR APPLICATION SERVICE PROVIDERS (ASP'S) IN MANAGING SOFTWARE ARTIFACTS A DIRECTED RESEARCH PROJECT SUBMITTED TO THE FACULTY OF THE GRADUATE SCHOOL OF INFORMATION SYSTEMS IN PARTIAL FULFILLMENT OF THE REQUIREMENTS FOR THE DEGREE OF MASTERS OF SCIENCE IN INFORMATION SYSTEMS SUBMITTED TO DR. DEBORAH HARRIS-SIMS BY ADELMAR R. ESPLANA CHESAPEAKE CAMPUS JUNE 2009

Upload: aesplana

Post on 09-May-2015

3.776 views

Category:

Documents


1 download

DESCRIPTION

The inability of knowledge workers to locate valuable information when needed is not because of an absence of tools, but because the different tools available are not integrated. The purpose of this study was to determine how semantic wikis can be used by ASPs as an alternative knowledge management solution for managing software artifacts. Qualitative data taken from secondary sources was used in conducting the analysis of this study. The researcher compared solutions, identified challenges, evaluated the semantic wiki solution, and presented other studies on the issue. Semantic wikis offer the most functionalities and flexibilities relative to other solutions for effective and efficient information sharing. It is also the most practical and promising solution to support the information sharing requirements of ASPs.

TRANSCRIPT

Page 1: Semantic Wiki

STRAYER UNIVERSITY

A STUDY ON THE IMPLEMENTATION OF SEMANTIC WIKI-BASED KNOWLEDGE

MANAGEMENT SYSTEM FOR APPLICATION SERVICE PROVIDERS (ASP'S) IN

MANAGING SOFTWARE ARTIFACTS

A DIRECTED RESEARCH PROJECT SUBMITTED TO THE FACULTY

OF THE GRADUATE SCHOOL OF INFORMATION SYSTEMS

IN PARTIAL FULFILLMENT OF THE REQUIREMENTS

FOR THE DEGREE OF MASTERS OF SCIENCE IN INFORMATION SYSTEMS

SUBMITTED TO

DR. DEBORAH HARRIS-SIMS

BY

ADELMAR R. ESPLANA

CHESAPEAKE CAMPUS

JUNE 2009

Page 2: Semantic Wiki

Semantic Wiki ii

ABSTRACT

The inability of knowledge workers to locate valuable information when needed is not

because of an absence of tools, but because the different tools available are not integrated. The

purpose of this study was to determine how semantic wikis can be used by ASPs as an

alternative knowledge management solution for managing software artifacts. Qualitative data

taken from secondary sources was used in conducting the analysis of this study. The researcher

compared solutions, identified challenges, evaluated the semantic wiki solution, and presented

other studies on the issue. Semantic wikis offer the most functionalities and flexibilities relative

to other solutions for effective and efficient information sharing. It is also the most practical and

promising solution to support the information sharing requirements of ASPs.

Page 3: Semantic Wiki

Semantic Wiki iii

ACKNOWLEDGEMENTS

―At times our own light goes out and is rekindled by a spark from another person. Each of us

has cause to think with deep gratitude of those who have lighted the flame within us." —Albert

Schweitzer

This project is dedicated to my family and friends who have always encouraged me to do my

best with all of my academic endeavors. This accomplishment would have been impossible

without the unwavering support, emotionally, physically, mentally, and financially, of my wife,

Bing. I am grateful for your love and devotion and proud to share my life journey with you.

My sincere thanks go to my thesis adviser, Dr. Deborah Harris Sims, for her input, guidance,

patience, and encouragement, especially when I was considering dropping this class. I would

like to express my appreciation to my colleagues and friends at work for the support that they

have provided me throughout this program. I would like to express my thanks to all my friends

in church for their prayers and for helping my family while I was studying. I offer special thanks

to Jennifer Alluisi for shepherding sentences gone astray. I also acknowledge my brother Elmer

Esplana and his wife Arlene Esplana for sharing their time and expertise in reviewing my work.

Finally, I would like to give glory and honor to my Lord Jesus Christ for everything.

Page 4: Semantic Wiki

Semantic Wiki iv

TABLE OF CONTENTS

ABSTRACT .................................................................................................................................... ii

ACKNOWLEDGEMENTS ........................................................................................................... iii

TABLE OF CONTENTS ............................................................................................................... iv

CHAPTER 1 ................................................................................................................................... 1

Background ................................................................................................................................. 1

Context of the Problem ............................................................................................................... 6

Statement of the Problem ............................................................................................................ 7

Research Questions ..................................................................................................................... 8

Significance of the Study ............................................................................................................. 9

Objectives of the Study .............................................................................................................. 10

Research Design and Methodology .......................................................................................... 11

Organization of the Study ......................................................................................................... 11

Definition of Terms ................................................................................................................... 13

CHAPTER 2 ................................................................................................................................. 17

Introduction............................................................................................................................... 17

On Knowledge ........................................................................................................................... 18

On Knowledge Management ..................................................................................................... 20

On Knowledge Sharing ............................................................................................................. 21

On Application Service Providers ............................................................................................ 30

On Software Documentation ..................................................................................................... 32

On Software Artifacts ................................................................................................................ 33

On Managing Software Artifacts .............................................................................................. 33

On Wiki ..................................................................................................................................... 41

On the Semantic Web ................................................................................................................ 43

On the Semantic Wiki ................................................................................................................ 48

On the Implementation of Semantic Wiki-based Knowledge Management Systems ................ 49

CHAPTER 3 ................................................................................................................................. 52

Introduction............................................................................................................................... 52

Research Methodology.............................................................................................................. 53

Assumptions and Limitations .................................................................................................... 53

Requirements of Information Sharing ....................................................................................... 54

Conclusion ................................................................................................................................ 70

Page 5: Semantic Wiki

Semantic Wiki v

CHAPTER 4 ................................................................................................................................. 72

Introduction............................................................................................................................... 72

Semantic Wiki Knowledge-sharing Support in Managing Software Artifacts .......................... 72

Conclusion ................................................................................................................................ 89

CHAPTER 5 ................................................................................................................................. 91

Introduction............................................................................................................................... 91

Requirements of Software Artifacts Documentation ................................................................. 91

Conclusion .............................................................................................................................. 100

CHAPTER 6 ............................................................................................................................... 102

Introduction............................................................................................................................. 102

Summary ................................................................................................................................. 103

Conclusion and Recommendations ......................................................................................... 106

REFERENCES ........................................................................................................................... 110

List of Tables .............................................................................................................................. 116

List of Figures ............................................................................................................................. 117

Appendix A – Conversational Technologies .............................................................................. 118

Page 6: Semantic Wiki

Semantic Wiki 1

CHAPTER 1

Introduction

Background

In the global economy, understanding the competitive advantage of the company is

crucial in the success of any business. Competition drives companies to find ways on how to

minimize cost and maximize profit. Strategically, they concentrate on their core competencies,

while relying on other companies to provide services for which their company had no expertise.

Business Process Outsourcing (BPO) is the hiring of third party sources to handle other business

activities (Bobsguide.com, n.d.). Conversely, the emergence of Application Service Providers

(ASPs) changed the process of software distribution from typical off-the-shelf product to

―Software as a Service‖. In the ASP model, computer-based services are offered by providers to

their customers over the network to take advantage of the provider’s competitive advantage in

terms of better resources, systems support and maintenance schedules which include regular

hardware and software upgrades. Software resides on the vendor’s server(s), and customers’

users access the applications through a direct connection to the provider’s server(s). The

software vendor provides the updates to the software (unless the software is customized) via the

internet from a quarterly to an annual basis arrangement. ASPs are broken down into four

subcategories: a) Enterprise ASPs, which deliver high-end business applications; b)

Local/Regional ASPs, which supply a wide variety of application services for smaller businesses

in the local area; c) Specialized ASPs, which provide applications for a specific need, such as

website services or human resources; d) Vertical Market ASPs, which provide support to a

specific industry, e.g., the real estate industry (Lo, 2003).

Page 7: Semantic Wiki

Semantic Wiki 2

Industries, as in the case of pharmaceutical industry, are benefiting from this trend and

new developments. Speaker Program is an innovative approach to reach and influence

clinicians. It usually occurs at restaurants, offices of medical institutions, and other alternative

venue for presentation where company-trained speakers deliver a presentation about specific

drugs. Effective speaker management programs help strengthen the relationship between

physician and sales representatives (commonly referred to as Reps). In fact, this program is now

used as one of the primary channels by many of the most highly respected pharmaceutical

companies to educate the medical community about disease status and their companies newly-

released pharmaceutical products. To maximize the highest return on investment (ROI) for this

kind of program, the program must be properly managed as integrated systems and processes.

Process automation requires the understanding of the client’s meeting policies and overall

business rules. Solution providers have to understand how their business process operates from

planning to execution.

The ASP Model is very compelling in that one company provides software framework to

multiple customers. In the case of Vertical ASPs specialized in a certain niche market, (e.g.

pharmaceutical industries), they are utilizing the provider’s expertise solution for their need.

Depending on the type of ASP provider and the service agreement with their clients, there are

ASPs who provide customization solutions on top of their base framework. Basic web

customization is normally at the interface level, which can be individualized either automatically

or explicitly by user. Customization may also be at the database level, which enables user

information to be stored for presentation or referral at a later time. An extensive customization is

one in which each customer is treated individually. Each client uses a shared framework, while

customization happens on a client basis. For instance, if the provider has three clients, each

Page 8: Semantic Wiki

Semantic Wiki 3

client has its own web application. Each web application uses the same common framework

which is shared among clients. If there is a customization need, assessment of the change

request will be identified prior to the modification to determine the areas affected. Change

requests may require framework change or just client code change.

During the life cycle of the application, when there is a requirement to change the

functionality of the existing feature, software engineers often need to identify the software

artifacts relevant to the change request. Assessing software artifacts is not an easy task, due to

the fact that many software projects have various versions, and often requirement documents are

not updated. On some occasions, documents reside on different files and emails, and for this

reason finding the current functionality is extremely hard without reading the code. Some

companies are using repository solutions like Subversion (SVN) and CVS (Concurrent Version

System) because they are excellent open source version control systems, and are also available

for free. SVN and CVS can operate across networks, which allow it to be used by people on

different computers. At some level, the ability for various people to modify and manage the

same set of data from their respective locations fosters collaboration. Subversion manages files

and directories and the changes made to them over time. Using SVN, work is versioned and there

is no need to fear if some incorrect change is made to the data. If an incorrect change does

occur, there is always a way to recover older versions of data and to examine the history of how

data is changed (Sussman, Fitzpatrick, & Pilato, 2005).

The discovery of software artifacts (files, documents, and datasets) relevant to change

requests can increase software reuse and reduce the cost of software development and

maintenance; however, traditional search techniques implemented by repository solution failed

to provide relevant documents because they do not consider relationships between software

Page 9: Semantic Wiki

Semantic Wiki 4

artifacts (Lindvall, Feldmann, Karabatis, Chen, & Janeja, 2009). The failure of the company in

the area of managing software artifacts may cause project slippage and costs overspend. One

study showed that the inability to provide an accurate assessment of the cost may result in an

actual cost three times higher than the originally predicted amount (Lindvall, Feldmann,

Karabatis, Chen, & Janeja, 2009). Software estimation is not very straight forward (there could

be several obstacles in the way of finding the relevant artifacts), especially if the one who is

doing the assessment is not familiar with the software project evolution and framework.

Software documentation is an invaluable asset. It plays a very important role in the

realization of software development milestone. Without proper form of documentation, the

effort of producing a concrete product is difficult, if not impossible. Creating software is a

complex task: most of the time, the effort spent understanding requirements and specifications

alone are higher compared to the time spent building the actual product. Good software

documentation produces multiple views of the system (static, dynamic, external and internal) and

provides different levels of abstraction (architecture, design and implementation). Software

documents are typically mixtures of different notations such as text, code, models and images.

Therefore, a good documentation must be able to provide static and dynamic content in a

medium that is easier to change and to find.

Central documentation practices often cause many problems for software developers and

for project managers as well. In general, the main challenge is to keep the information up-to-date

while change occurs. In addition, especially in large distributed projects with overlapping

responsibilities, information quickly gets redundant and inconsistent. For this reason, an

enterprise knowledge management is critical for the knowledge creation and in the leveraging of

knowledge. Knowledge management is the systemic and organizationally specified process for

Page 10: Semantic Wiki

Semantic Wiki 5

acquiring, organizing, and communicating knowledge of employees so that other employees may

make use of it to be more effective and productive in their work (Alavi & Leidner, 1999).

In an ASP environment, there are people who are called Subject Matter Experts (SMEs)

in specific aspects of the business. It means that an individual proficient in information and

procedures is ―silo’d‖ (isolated) with them. In other words, the information often confined to

SMEs are normally invisible to other people. If the person who is expert in a specific area were

to leave the company, the sought-after knowledge which he/she holds could be a detrimental loss

to the company’s operation. A survey of European firms by KPMG (Klynveld Peat Marwick

Goerdeler) (1998) found that almost half of the companies that have experienced the lost of

SMEs have reportedly suffered from a significant setback due to the loss of the key staff. About

43 percent have lost regular clients or have experienced problems in terms of supplier relations.

Thirteen percent suffered from loss of income because of the departure of a single employee or

SME (p.7).

Even though many organizations are aware that knowledge is a primary asset, still many

companies have difficulty in defining processes for sharing knowledge and creating the systems

to facilitate the sharing of information. In the KPMG 1998 survey, results showed that the

barriers to effective implementation of knowledge management include; 1) lack of time to share

knowledge (49%); 2) lack of skill in knowledge management (49%); 3) lack of understanding

(40%); and 5) lack of appropriate technology (26%) (p.16). However, in some companies’

current situations, over half of respondents said that there are people who wanted to share

knowledge, but did not have the time. Only 16 percent of the respondents said that they are

unwilling to share knowledge (p.16). On the other hand, 18 percent said that they did not want to

share best practices to other people (p.17). Part of the problem might be due to ―information

Page 11: Semantic Wiki

Semantic Wiki 6

overload‖ (p.16). About 14 percent complained that there was too much knowledge (p.16).

Knowledge sharing permits the creative recombination of knowledge which can promote

knowledge growth and enable the development of solution for the complex business problems

(Lo, 2003). The knowledge management system can provide a great benefit in developing and

maintaining processes easily and reliably. It can also help organizations to maintain their access

to domain knowledge and to unlock information silos. The benefit of a successful knowledge

management include: 1) better decision-making; 2) faster response time to key issues; 3)an

increase in profit; 4) improved productivity; 5) the creation of new/additional business

opportunities; 6) reduction of costs; 7) the sharing of best practices between each other or within

the company; 8) an increase market share; 9)an increased share price and 10) better staff

attraction/retention (KPMG Management Consulting, 1998).

Context of the Problem

As more and more companies are moving toward Business Process Outsourcing for their

IT needs, information sharing and knowledge management are crucial areas that ASP providers

must be aware of. Based on the survey conducted by Filemaker International (2007) on over

100 people responsible for IT management within UK businesses with 250 employees or less,

around 64 percent of the respondents believed that silo mentality had something to do with how

information is created and used. Interestingly, as the company increases their need to outsource

their IT skills and needs requirement, silo mentality also dramatically increases (File Maker,

2007).

In ASP environments, employees are commonly given task investigating a problem. This

is not a trivial task, especially if one is familiar with all of the facets of the system. There are

times when an SME’s expertise is needed but SMEs are not always available. Therefore, the best

Page 12: Semantic Wiki

Semantic Wiki 7

hope is to find the written documentation. However, due to various reasons (i.e., lack of

commitment to knowledge sharing, lack of time to update documents, and lack of conducive

tools for knowledge sharing), documents are outdated. There are also instances where updated

documents are within the SME’s computer hard drive and emails. Because of this, the necessary

documents cannot be found.

Ideally, enterprise’s digitized information, regardless whether it is stored on individual

hard drives, email and in personal files, should be searchable as long as employees are willing to

share the information. File sharing, a practice of sharing computer files over a network, has

been around since the advent of local area networking. However, finding unstructured

information is quite exigent. Because unstructured information is only implicit, in order for the

computer program to understand the meaning, it requires some degree of analysis to clarify the

document's semantics. Given that situation, it would be helpful if: a) the information were stored

in a shared location using a knowledge management system; b) the information silo between

different applications could be resolved; c) there were an intelligent search engine smart enough

to link directly to the right document

Statement of the Problem

The inability to locate valuable information when needed is one of the most common

issues that knowledge workers are facing today. Based on the studies done in the 2001,

knowledge workers spend 15- 25% (1-2 hrs) of time hunting for information, while 60 percent of

employees spend more than an hour per day duplicating the work of others (O’Brien, Bernoff,

Sorley, & Flemming, 2001). In today’s economy, knowledge is priceless. But how does is

knowledge really valued and protected? More than 80 percent of enterprise's digitized

information resides in individual hard drives and in personal files. As a result, employees get

Page 13: Semantic Wiki

Semantic Wiki 8

50%-75% of their relevant information directly from other people (Philips, 2007). What will

happen if the person who holds the information is gone? Sadly, most of the relevant information

will definitely vanish the moment the person in charge of the information leaves the company.

The issues that knowledge workers are facing today are not because of the absence of

tools, but because the different tools are not integrated. In the attempt to take advantage the

benefits of knowledge management, corporations have deployed different types of solutions.

Unfortunately, many of these knowledge management implementations have failed because of

the focus on technology rather than on creating an atmosphere conducive to knowledge capture

and sharing (Gonzales, 2005). Application silo is generally a common issue that many

researchers have attempted to solve, particularly in the area of knowledge management. There

are a handful of solutions that have been developed and implemented by different organizations.

But, in spite of those solutions, a lot of knowledge management implementations are still ―silo‖

in nature. In addition, the problem is that maintenance of silo applications now consumes more

than 70 percent of the IT budget (Davis, 2006).

In this study, the researcher investigated a knowledge management solution that has an

intelligent engine, capable of self-learning and self-adapting to today’s requirement of

information sharing. Like a genie on the desktop, this engine is so powerful, it is capable of

pushing information required by the user, while at the same time capable of pulling information

that may be of interest to others.

Research Questions

The purpose of this study is to determine the following: How can Semantic Wiki be used

to share domain knowledge, and used to be able to create, search, navigate, collaborate and

manage software artifacts?

Page 14: Semantic Wiki

Semantic Wiki 9

To answer this question, the following sub questions were addressed:

1) What makes semantic wiki-based knowledge management system a good solution for the

information sharing requirements of Application Service Providers?

2) How can the semantic wiki be leveraged as a solution for knowledge

management/knowledge-sharing in managing software artifacts?

3) What are the requirements of software artifacts documentation and how can semantic

wiki address those requirements?

Significance of the Study

This study looked into the dynamics of the solution being provided by semantic wiki-

based knowledge management system for application service providers in managing software

artifacts. This study serves as the baseline information for ASP companies and IT departments

that are in the software solution (programmers, software architect, software engineer, etc.) for

them to know the important features and capabilities of semantic wiki-based knowledge

management system as compared to the other widely used knowledge management system for

software artifacts. The information which could be derived from the analysis of this study could

help the IT managers and company executives in the information technology companies to

understand the differences of semantic wiki-based knowledge management system and the

earlier system used by ASP companies in documenting software artifacts. Readers of this study

will also be updated on the trends and developments in the knowledge management system being

used by the different ASP companies.

The output of this study could also be beneficial to new knowledge management system

development practitioners. It would enable them to find other potential fields or areas of

expertise in the wiki-based knowledge management, which would improve or upgrade their

Page 15: Semantic Wiki

Semantic Wiki 10

skills for a semantic wiki-based knowledge management system capability and also for

technological advancement. Finally, the results of this study could help anyone in the IT

industry, particularly those in the government, private sector and industry associations, to know

the potential benefit of semantic wiki-based knowledge management system for their IT strategic

planning, production, marketing and other IT-based business–related decisions.

Objectives of the Study

The main objective of this study is to analyze the solution for a semantic wiki-based

knowledge management system for the Application Service Providers (ASPs) in managing

software artifacts.

This study specifically aims to:

1) Help Application Service Providers understand the capability of Semantic Wiki as a

knowledge management solution for managing software artifacts;

2) Serve as baseline information for ASP companies and IT departments that are in the

software solution (programmers, software architect, software engineer, etc.);

3) Encourage more people in IT profession to participate and go into semantic wiki-based

knowledge management systems development and semantic wiki-based solutions and

innovations;

4) Promote knowledge sharing among practitioners;

5) Advocate for the utilization of semantic wiki-based knowledge management system for

ASPs in managing software artifacts;

6) Help the different software development teams understand the different ways on how

semantic wiki can be used for sharing common knowledge; and

Page 16: Semantic Wiki

Semantic Wiki 11

7) Give recommendations on how the result of the study will be used to support the

implementation of Semantic Wiki-based knowledge management system for the

Application Service Providers (ASP’s) in managing software artifacts.

Research Design and Methodology

The research methodology used for this study of a qualitative nature and was obtained

from secondary sources. Sources pertinent to the main research question and three defining sub-

questions, which formulated this research project, were sought. Descriptive and comparative

analyses to answer the main search question and three defining sub-questions were analyzed.

Secondary research information was obtained from primary research sources, including scholarly

books; conference proceedings, peer-reviewed journals; unpublished research papers; any data

that has been published by private or nonprofit organizations (this includes not for profit

organizations) and information available from a college, university, or trade school. Essentially,

any information available in the public domain may be analyzed either in a verbal format to

arrive at a research conclusion.

Organization of the Study

This research project is divided into the following six chapters: The first chapter of this

study serves as an introduction to the research topic. A presentation of the problem to be

addressed is provided in addition to a contextual background and statement of the problem. The

main research question is has three related sub-questions and an overview of the significance of

the study. Lastly, an explanation of the research methodology is provided to show how the main

research question is to be addressed in the study. The second chapter is a thorough review of

more than 20 sources associated with the subject matters of knowledge, knowledge management,

knowledge sharing, knowledge management system, application service provider, software

Page 17: Semantic Wiki

Semantic Wiki 12

documentation, software artifacts, managing software artifacts, wiki, semantic web and semantic

wiki. Chapter 3 will seek to answer why a semantic wiki-based knowledge management system

is a good solution for the information sharing requirements of Application Service Providers.

Chapter 4 will evaluate how leverage semantic wiki can be leveraged as solution for knowledge

management in managing software artifacts. Chapter 5 will seek to answer what are the

requirements of software artifacts documentation and how can semantic wiki address those

requirements. Chapter 6 will discuss the summary of the study and the conclusion, which will be

derived from the results and analysis of the researcher. The study will provide recommendations

on how the result of the study will be used to support the implementation of Semantic Wiki-

based knowledge management system for Application Service Providers (ASPs) in managing

software artifacts.

Page 18: Semantic Wiki

Semantic Wiki 13

Definition of Terms

Semantic search, used to improve online searching by using data from semantic networks to

disambiguate queries and web text in order to generate more relevant results.

Context-based search, the application uses context data that is generated by a document

analysis component based upon context information from various sources, including for

example, document collections available on the web. The context data is provided to a search

query generator. The search query generator is configured to generate a contextually annotated

search query based upon a user query and context data.

Context-based navigation, user context can be used to support the user while he/she is

navigating through the information system. Navigation consists in going from one document to

the other, such as the Web navigation. These relations enhance navigation by giving easy access

to relevant related information.

Content Analysis, making content ―machine-understandable" is a popular paraphrase of the

fundamental prerequisite for the Semantic Web, basically: content (of whatever type of media) is

machine-understand-able if it is bound (attached, pointing, etc.) to some formal description of

itself (often referred to as metadata). Ideally, adding semantics to content" in this sense should be

achieved through algorithmic content analysis and/or algorithmic learning processes.

Copy-modify-merge model, in this model, each user's client contacts the project repository and

creates a personal working copy—a local reflection of the repository's files and directories.

Full text search, in a full text search, the search engine examines all of the words in every stored

document as it tries to match search words supplied by the user.

Software design patterns are recurring solutions to software design problems that we find again

and again in real-world application development. Patterns are about design and interaction of

Page 19: Semantic Wiki

Semantic Wiki 14

objects, as well as providing a communication platform concerning elegant, reusable solutions to

commonly encountered programming challenges (Do Factory, n.d.). Software pattern

implementation is an artifact that greatly facilitates the application (File Maker, 2007)of a pattern

in a particular environment; it provides a realized solution to real problems, and makes patterns

sharable and reusable. After they are implemented, these patterns become concrete software

artifacts (IBM, n.d.).

A knowledge worker in today's workforce is an individual that is valued for their ability to

interpret information within a specific subject area. They will often advance the overall

understanding of that subject through focused analysis, design and/or development. They use

research skills to define problems and to identify alternatives. Fueled by their expertise and

insight, they work to solve those problems, in an effort to influence company decisions, priorities

and strategies.

Personalization and Context, the way information is accessed can be optimized by taking into

consideration the personal profile of the users and the context of the activities currently being

carried out.

RSS or Really Simple Syndication is a useful tool for keeping updated on your favorite

websites. RSS makes use of an XML code that constantly scans the content of a website for

updates and then broadcasts those updates to all subscribers through a feed.

RSS feeds are typically used with news sites or blogs, although any website can use them

to disseminate information. When an update is sent out, it includes a headline and a small

amount of text, either a summary or the lead-in to the larger story. You will need to click a link

to read more. In order to receive RSS feeds, you must have an aggregator, a feed reader. There

are a number of aggregators online, many of them free, so with a little bit of searching, you

Page 20: Semantic Wiki

Semantic Wiki 15

should be able to find an interface that appeals to you. In addition to being available on your

computer, RSS feeds can also be read on PDAs and cell phones.

When you come across a website you would like to add to your aggregator, you can do so

in one of two ways. Most sites that offer an RSS feed have an "RSS" or "XML" button on their

homepage that you can click on and it will instantly add that feed to your aggregator. Depending

on your aggregator, you may instead need to copy and paste the URL of the feed into the

program.

A software framework is a re-usable design for a software system (or subsystem). A software

framework may include support programs, code libraries, a scripting language, or other software

to help develop and glue together the different components of a software project (Nation Master,

n.d.).

The semantic web has been called many things including Web 3.0, the Giant Global Graph,

Linked Data and the Smart Web. Simply explained, today's World Wide Web is built for

humans to read and semantic web developers are working towards a global system which is also

more machine readable, and which, in turn, will allow humans to reorganize and use online

information available far more effectively.

This will come about through using extra mark-up within HTML in the form of micro

formats and also using extra languages such as Resource Description Framework (RDF), Web

Ontology Language (OWL), and Extensible Markup Language (XML).

Unstructured information is contrasted with structured information. The canonical example of

structured information is the database table. Each element of information in the database is

associated with a precisely defined schema where each table column heading indicates its precise

Page 21: Semantic Wiki

Semantic Wiki 16

semantics, defining exactly how the information elements should be interpreted by a computer

program or end-user.

Page 22: Semantic Wiki

Semantic Wiki 17

CHAPTER 2

Review of Literature

Introduction

Organizational knowledge is now recognized as a key resource, and a variety of

perspectives suggest that the ability to marshal and deploy knowledge dispersed across the

organization is as an important source of organizational advantage (Tsai & Ghoshal, 1999;

Teece, 2000). Knowledge management initiatives in organizations are consequently becoming

increasingly more important and firms are making significant IT investments to deploy

knowledge management systems (KMS). The primary focus of many of these efforts has been

developing new applications of information technology such as data warehousing and document

repositories linked to search engines to support the digital capture, storage, retrieval and

distribution of an organization's explicitly documented knowledge (Hahn & Subramani, 2000).

To be able to provide solution that can support the requirements of today’s information

sharing, it is imperative that we review the previous work done in the field. A philosophical

adage which is popular in software development says, ―Don't develop software in a vacuum,‖

generally meaning not to go off and write code in the absence of customer feedback. What this

means to current researchers is that, to be able to develop a solution that will be usable and well-

fitted to an organization’s needs, we must understand their needs and consider them as a guiding

light in finding the right solution.

In this chapter, the researcher will review past work on the subjects of Knowledge,

Knowledge Management, Knowledge Management Systems, Knowledge Sharing, Wiki,

Semantic Web and Semantic Wiki, Implementation of Semantic Wiki-based Knowledge

Page 23: Semantic Wiki

Semantic Wiki 18

Management Systems, Application Software Providers, Software Artifacts, and Managing

Software Artifacts. The researcher will seek to answer questions such as: a) Why is Knowledge

Management important? b) What makes a successful Knowledge Management System? c)

What are the contributing factors of successful knowledge sharing? d) What makes Wiki a

promising solution for knowledge management? e) Why do we need Semantic Web? f) What is

the Semantic Web not?

On Knowledge

Knowledge is a complex concept, and a number of factors determine the nature of

knowledge creation, management, and sharing (Nonaka, 1994). Knowledge could be defined as

information that has been combined with experience, context, interpretation, and reflection

(Davenport, De Long, & Beers, 1997). Prior research suggests the existence of different types of

knowledge. Knowledge can be either tacit or explicit (Polanyi, 1967). This attribute is also

expressed as the distinction between knowing and knowledge (Brown & Duquid, 1991). A key

idea is that some knowledge is tacit (i.e., internalized), and other knowledge is explicit. Western

philosophy is described as having struggled to understand whether knowledge is based on what

we experience (empiricism) or inherent truths (rationalism) and therefore to have focused more

on explicit knowledge. Japanese thought has tended to treat tacit knowledge as more important

(but it has not really addressed epistemology as a philosophical tradition). Peter Drucker (1993)

says, a skill ―could not be explained in words, whether spoken or written. It could only be

demonstrated‖ and, ―the only way to learn a techne [skill, in Greek] was through apprenticeship

and experience.‖

Nonaka and Takeuchi (1995) describe differences in how Westerners and Japanese often

view knowledge. They espouse that the Japanese view knowledge as being primarily tacit,

Page 24: Semantic Wiki

Semantic Wiki 19

something not easily seen or expressible. Western culture has a strong focus on explicit

knowledge, which can be expressed in words and numbers and is more easily communicated

than tacit knowledge. They describe the contrast between these perceptions on knowledge as

being rooted in culture. In the Western culture, there has been a long history of separating

knowledge from the knower, whereas this is not the situation in Japanese traditions. Nonaka and

Takeuchi (1995) adopted a traditional definition of knowledge as ―justified personal belief.‖

Belief is critical to this concept of knowledge because it is closely tied to an individual’s or

group’s values and beliefs. Knowledge originates, from this perspective, in the minds and bodies

of individuals. Very important to the concept of knowledge is that of knowing. Knowing and

learning capture the dynamic aspects of knowledge. A knower, one who knows, can be said to

possess ―actionable knowledge.‖ Miller and Morris (1999) suggest that knowledge is gained

when theory, information, and experience are integrated.

Further, knowledge can be conceived of as existing at multiple levels—not only at the

individual level but also at the group and organizational levels. Organizational knowledge is

created through cycles of combination, internalization, socialization, and externalization that

transform knowledge between tacit and explicit modes (Nonaka, 1994). In light of this dynamic

process of knowledge creation, linkages between individuals and groups sharing similar tasks—

the communities of practice (Brown & Duquid, 1991)—play an important role in communicating

and sharing knowledge. However, communities have their own unique and context-specific

vocabularies that, while facilitating knowledge exchange within the community, impede

communication between them. The overlapping of understanding provided by boundary objects

spanning multiple communities (Borland & Tenkasi, 1995) provides a basis for communicating,

sharing, resolving, and combining disparate perspectives. These issues thus have an important

Page 25: Semantic Wiki

Semantic Wiki 20

bearing on the choice of KMS to accomplish the access and deployment of knowledge in

different contexts.

It is easily agreed upon that knowledge is complex and those two types of knowledge

must be addressed differently. There is no one solution that fits every problem, and the study of

primary concern is on the explicit side of knowledge. Software engineering is an art and science.

It is a lot less like other kinds of engineering than most people think. There is an aspect of art,

which you can only gain by experience outside of the classroom. On the other hand, that does

not mean that relying on experience alone is sufficient. According to Steve McConnell (2004),

the issue of cost and schedule overruns by doing code-and-fix development is not the result of

software engineering calculation but of too little education and training in software engineering

practices. Therefore, to synthesize tacit and explicit software engineering knowledge, education

and experience must be combined (Steve, 2004).

On Knowledge Management

Knowledge management is the systemic and organizationally specified process for

acquiring, organizing, and communicating knowledge of employees so that other employees may

make use of it to be more effective and productive in their work (Alavi & Leidner, 1999).

Knowledge management involves the panoply of procedures and techniques used to get the most

from an organization’s tacit and codified know-how (Teece, 2000). While defined in many

different ways, knowledge management generally refers to how organizations create, retain, and

share knowledge (Argote, 1999).

The definition of Argote (1999) on Knowledge Management is simpler than many others.

However, the end results of Knowledge Management mentioned by Alavi and Leidner (1999) are

what really matters. ―It's a means to an end‖, the ―means‖ being process and techniques

Page 26: Semantic Wiki

Semantic Wiki 21

(mentioned by Teece) and the need for these to be done in order to achieve goals (the ―end‖) is

what Alavi and Leidner (1999) pointed out. In knowledge management, it is important that we

understand the end results or we will end up managing things that are not viable for the

company.

On Knowledge Sharing

Enterprise knowledge sharing can occur in many forms. Enterprise knowledge sharing is

often described in the literature as critical to the performance of knowledge creation and

leveraging knowledge (Von Krogh, Ichijo, & Nonaka, 2000). Ives et al. (2003) described

knowledge sharing as a human behavior that must be examined in the context of human

performance. Human performance is described as a complex activity that is influenced by many

factors. They describe a human performance model that includes the business context and

organizational and individual factors. Organizational performance factors include: structure and

roles, processes, culture, and physical environment. Individual performance factors include:

direction, measurement, means, ability, and motivation.

What are the contributing factors of successful knowledge sharing?

Jeffery Cummings (2003) identified five primary contexts that can affect successful

knowledge-sharing implementations: a) the relationship between the source and the recipient; b)

the form and location of the knowledge; c) the recipient’s learning predisposition; d) the source’s

knowledge-sharing capability; and e) the broader environment in which the sharing occurs

(Cummings, 2003).

According to Small & Sage (2005), there are inter-related factors for knowledge sharing

that must work together to become effective:

Page 27: Semantic Wiki

Semantic Wiki 22

1) Business Context: Employees are more likely to share knowledge if the behavior is linked

to business goals.

2) Organizational Structure and Roles: Supporting knowledge sharing is encouraged by means

of a two-part organizational structure: 1) a dedicated KM staff who owns the knowledge

processes, templates, and technologies; and 2) knowledge sponsors and integrators from the

business units who ―own‖ the knowledge content.

3) Organizational Processes: Knowledge processes need to be built into the daily work

process, and well-defined knowledge capture processes should exist. Knowledge processes

should depend on the type and level of knowledge.

4) Organizational Culture: In addition to stressing the importance of organizational culture to

Knowledge-Sharing (KnS) behavior, the authors also emphasize the importance of

understanding the cultural differences between individual knowledge workers. Steps to

achieving a KnS culture include setting KnS priorities, strong KnS leadership, KnS

investment support, and modeling by senior leadership (i.e., visible advocacy of KnS

behavior).

5) Physical Environment: Many organizations are beginning to recognize the need to create

environments (e.g., quiet space, informal environments, relaxed physical environments

enhanced by technology) that are appropriate for knowledge sharing.

6) Direction: Knowledge sharing is a new behavior to many organizations, so guidance is

needed to achieve enhanced value. Guidance for knowledge sharing is therefore needed in

terms of the contextual awareness abstractions of what to share, when to share, and how to

share, as well as why share, what to share, and with whom to share. Guidance of this sort

Page 28: Semantic Wiki

Semantic Wiki 23

that is given in the context of the daily work processes is especially useful to knowledge

workers.

7) Measurement: Human performance measurement is becoming increasingly more important

as knowledge-based organizations begin to recognize that the organization’s greatest

resource is comprised of its people. The authors describe how a KnS proficiency has been

established and measured at their company. KnS expectations are communicated and

translated into actions that can be documented in a performance review. Individual and

team KnS metrics provide definition to KnS behavior and communicate that the

organization places a value on it. Documenting the mission impact (outcome metrics) of

KnS behavior is important to obtaining and keeping senior leadership support.

8) Means: Effective enterprise knowledge sharing cannot be done without information

technology (IT). The existing knowledge management infrastructure (i.e., e-mail, internet,

intranet, groupware, and web technologies) can be extended to support KnS processes.

Videoconferencing, application sharing, and electronic meeting support are KnS enablers.

Many organizations focus on the IT component of knowledge sharing because it is the most

tangible; however, it is important to provide the means to accomplish this within the

context of the various organizational performance attributes.

9) Ability: KnS behavior within a corporate environment needs ongoing support and training.

It is important to coordinate or integrate KnS training with the entire array of training

initiatives. Knowledge workers need training prior to job performance, knowledge support

during job execution, and time to reflect on lessons learned to improve individual learning

and to contribute to organizational learning.

Page 29: Semantic Wiki

Semantic Wiki 24

10) Motivation: There are individual and cultural differences that drive KnS behavior.

Knowledge sharing is best supported by intrinsic rewards (e.g., saving work time,

participating in useful and interesting dialog, or professional pride in being recognized as

an expert). External rewards must be selected carefully because what motivates in one

organization may be a barrier in another. The importance of employee care and trust is also

emphasized. KnS motivation factors cited include: being a normal part of the job, being

related to career growth, receiving thanks and recognition, knowing how others used their

contributions, and knowing it is expected behavior.

In this research, it is important to understand that technology alone is not enough solution

to address the issues and challenges of knowledge sharing. As stated by Small & Sage (2005),

all of the inter-related factors are necessary to work together as one. Conversely, since this

research is geared towards technology, our assumption is that prior to the implementation,

everything mentioned above must happened first. To narrow down the scope of our study, the

researcher decided to only focus on Application Service Provider context in managing software

artifacts. It is true that the body of knowledge is different depending on the context. In his four

years of experience working as Software Engineer for Application Service Provider company,

He can attest that the communication languages of technical and business people are different,

and the experience he gained by working with them throughout the years helped him to become

familiar with their language. Therefore, it is important to set common understanding on certain

terms in addition to a well-crafted knowledge management solution that caters to both technical

and business people independently based on their context and needs.

Page 30: Semantic Wiki

Semantic Wiki 25

On Knowledge Management Systems

Knowledge management systems (KMS) are tools to effect the management of

knowledge and are manifested in a variety of implementations (Davenport & De Long, 1998)

including document repositories, expertise databases, discussion lists, and context-specific

retrieval systems incorporating collaborative filtering technologies. Document repositories

store many types of documents, allowing them to be used for a wide range of purposes such as

a media repository, a document (file) repository, or an article repository. Collaborative filtering

technology enables users to view information about others’ opinions, usually presented in the

form of ratings. Through the use of various algorithms, collaborative filtering technology

compiles data about users of a variety of websites (e.g., Digg.com, del.icio.us, Flickr, Last.fm) to

help other users predict the utility of the products or services displayed on that site. User ratings,

recommendations, and tags are compiled and presented to (often similar) other users to whom

the information may be relevant (Sundar, Oeldorf-Hirsch, & Xu, 2008).

A context-specific document recommender system retrieves documents from a

knowledge repository that are relevant to the task-at-hand. A content-based context specific

document recommender can be embedded in e-mail systems or workflow systems, and retrieves

relevant documents by matching contextual information from task descriptions or e-mail

messages. However, unlike a search engine, which can be used for exploratory search, a context

specific document recommender system needs to recommend only a few highly relevant

documents, thereby preventing information overload (Sarnikar & Zhao, n.d.).

Why is knowledge management important?

The knowledge-based theory of the firm suggests that knowledge is the organizational

asset that enables sustainable competitive advantage in hyper-competitive environments. The

Page 31: Semantic Wiki

Semantic Wiki 26

emphasis on knowledge in today’s organizations is based on the assumption that barriers to the

transfer and replication of knowledge endow it with strategic importance (Alavi & Leidner,

1999). Knowledge management systems can provide a great benefit in developing and

maintaining processes easily and reliably. It can also help organizations to maintain their access

to domain knowledge and unlock information silos. The benefits of successful knowledge

management include: 1) better decision-making; 2) faster response time to key issues; 3) increase

in profits; 4) improvements to productivity; 5) creation of new/additional business opportunities;

6) reduction of costs; 7) ability to share best practices among employees; 8) increased market

share; 9) increased share price; and 10) better staff attraction/retention (KPMG Management

Consulting, 1998).

What are the pitfalls of the Knowledge Management Initiative?

Based on previous studies, Gillingham and Roberts (2006) summarized the following

points that should be carefully considered in avoiding potential pitfalls of a knowledge

management initiative.

1) The key elements of people, process, and technology should be equally resourced in terms of

time and money.

2) There is a lack of trust and a need to encourage a culture of trust and openness. This is

especially difficult when the converse has been true in an organization.

3) The business is too busy; people have other priorities. It is important to embed knowledge

goals into company strategy and project planning so that it becomes acceptable for people to

have time and space to reflect and seek out knowledge. Giving people time to seek

knowledge now will halve the time needed to complete tasks later.

Page 32: Semantic Wiki

Semantic Wiki 27

4) There is intolerance for mistakes or asking for help. The organization culture should allow

for mistakes by accepting and rewarding creative errors and collaboration. Also, there

should be no loss of status from not knowing everything.

5) Do not attempt to implement everything at once. It is a long and iterative process, not a

quick fix, and the benefits are realized over a period of time.

6) If knowledge management is to thrive, organizations must create a set of roles and skills to

do the work of capturing, distributing, and using knowledge.

What makes a successful Knowledge Management System?

According to Davenport De Long (1997), there are four basic objectives of Knowledge

Management Projects which include:

1) Creating knowledge repositories: a) External knowledge, such as competitive intelligence; b)

Structured internal knowledge and information, such as research reports, product-oriented

marketing material, technical product information, and sales presentations; c) Informal

internal knowledge, such as discussion databases full of know-how and lessons learned; d)

Knowledge that resides in the minds of the people in an organization but has not been but in

structured, document-based form (also known as tacit).

2) Improve knowledge access and transfer: a) Build and manage expert networks; b) Develop

an infrastructure to facilitate access and transfer through videoconferencing, document

scanning, and sharing tools rather than extract from a repository; c) Institute formal practices

for knowledge transfer; d) Develop a knowledge transfer group.

3) Enhance Knowledge environment: a) Change the organizational norms and values related to

knowledge—encourage reuse; b) Make contributions to a knowledge base a factor in

compensation.

Page 33: Semantic Wiki

Semantic Wiki 28

4) Manage Knowledge as an asset: a) Treat knowledge like any other asset on the balance

sheet; b) Conduct an internal audit on intellectual capital and include in annual report to

stockholders; c) Focus on managing specific knowledge-intensive assets. Dow Chemical

saved $4 million on reviewing and managing patents by lowering taxes on patents that were

no longer useful.

Eight key factors of a successful knowledge management project

There are eight key factors of a successful knowledge management project according to

Davenport, De Long and Beers (1997). They are:

1) Link knowledge project to economic performance or industry value through illustrating

money saved or earned, or indirect costs like cycle time, customer satisfaction, phone calls

averted, or amount of knowledge reused.

2) Use a broad technical and organizational infrastructure. Most companies use multiple tools

(for example, Lotus Notes and web-based intranets). Also, use standardized personal

productivity tools to facilitate exchanging documents. Building an organizational

infrastructure means identifying a set of people who have skills to serve as resources, set

knowledge strategy, prioritize knowledge projects, etc.

3) Develop a standard, flexible knowledge structure. Create categories and key terms. Another

important issue is who controls decisions regarding the structure. One company referenced

in the text created a thesaurus of technical terms.

4) Create a knowledge-friendly culture where people have a positive orientation to knowledge.

People are not inhibited in sharing knowledge. Some people feel their knowledge is critical

to their value or maintaining their job. There is pressure to be creative and original.

Page 34: Semantic Wiki

Semantic Wiki 29

5) A clear purpose and language are particularly important for knowledge management. For

example, the terms knowledge, information, and organizational learning are subject to varied

meanings and interpretation. Successful projects in the text paid attention to this factor and

addressed it. Normal business language gives the impression of being fact-based, often

drawing on military and natural science metaphors, but knowledge management deals with

things like complexity and uncertainty.

6) Change in motivational practices. Knowledge does not emerge from or flow easily across

role or functional boundaries. Therefore, the motivation to create, share, and use knowledge

is a critical success factor

7) Provide multiple channels for knowledge transfer. Successful knowledge projects usually

address knowledge transfer though various channels, recognizing that each adds value in a

different way and that their synergy enhances use. For example, the organization should not

eliminate face to face meetings.

8) Senior management support. Support includes sending messages that knowledge is critical to

company’s success, providing funding and resources, and clarifying what types of knowledge

are important to the business.

The knowledge management objectives stated by Davenport et al. (1997) are invaluable

guidelines, and though he formulated them almost a decade ago, they are still applicable to

today’s requirements of knowledge management. He stated in the list to use broad technical and

organizational infrastructure. It is a reality that people had already developed preferences for

what applications they would like to use for various tasks.

However, the challenge facing today’s businesses is the issue of the information silo. A

lot of the data that we use everyday are not consolidated into one application. These data are in

Page 35: Semantic Wiki

Semantic Wiki 30

various silos, and reside in different software applications and different places that cannot be

connected easily. Therefore, the goal of this research is to investigate Semantic Web and

Semantic Web-emerging technologies pertaining to knowledge management. In summary,

implementing knowledge management is about bringing together people, skills, business

processes, and technology infrastructure including content management in order to exploit an

organization’s knowledge base.

On Application Service Providers

Application service providers (ASPs) ushered in a new paradigm of technology

outsourcing by making software services available to users via the internet/WAN on a pay-as-

you-go basis (Lo, 2003). In the ASP model, computer-based services are offered by providers

to their customers over the network to take advantage of the provider’s competitive advantage in

terms of better resources, systems support, and maintenance schedules, including regular

hardware and software upgrades. Software resides on the vendor’s server(s) and customers’

users access the applications through a direct connection to the provider’s server(s). The

software vendor provides the updates to the software (unless the software is customized) via the

internet on a quarterly to annual basis. ASPs are broken down into four subcategories: a)

Enterprise ASPs: they deliver high-end business applications; b) Local/Regional ASPs: they

supply a wide variety of application services for smaller businesses in the local area; c)

Specialized ASPs: they provide applications for a specific need like website services or human

resources; and d) Vertical Market ASPs: they provide support to a specific industry, e.g., the real

estate industry (Lo, 2003).

The ASP model is very compelling in that one company provides a solution to multiple

customers. In the case of Vertical ASPs, pharmaceutical industries are utilizing the provider’s

Page 36: Semantic Wiki

Semantic Wiki 31

expertise solution for their need. Depending on the type of ASP provider, a business may find

ASPs that provide customization solutions on top of their base framework. Basic web

customization is normally at the interface level, which can be individualized either automatically

or explicitly by the user. Customization may also be at the database level, enabling user

information to be stored for presentation or referral at a later time. An extensive customization is

the one where each customer is treated individually. Each client uses a shared framework, while

customization happens on a client basis. For instance, if the provider has three clients, each

client has its own web application. Each web application uses the same common framework

which is shared among clients. If there is a customization need, assessment of the change

request will be conducted prior to the modification to determine the areas affected. Change

requests may require framework change or just client code change.

Software projects in the ASP model utilize the concept of software framework reuse. For

each client, software engineers create requirements, design specifications, source code, data

schemes, and so forth. The experience they gain from each client and the acquired knowledge in

customizing the framework can be reused. However, knowledge reuse is challenging.

Software frameworks are a powerful reuse technique that enables ASP providers the

ability to reuse code and design implementation among clients. Frameworks that are utilizing

components and patterns are considered promising technology; however, to achieve the full

benefits of framework reuse advantage, first we have to invest time to understand the framework

and learn how to use it. Frameworks can be particularly hard for first-time users to understand,

especially if they are not accompanied by the appropriate documentation. Documentation helps

developers achieve the degree of understanding they need to reuse and to integrate artifacts

(Aquiar, David, & Padilha, 2003).

Page 37: Semantic Wiki

Semantic Wiki 32

On Software Documentation

Software developers are increasingly exploiting the web as a document management

system. However, the web has some limitations since it is not aware of the structure and

semantics associated with certain pieces of information (e.g., the fact that a document is a

requirement specification) and of the semantics of relationships between pieces of information

(e.g., the fact that a requirement specification document may be associated with a design

specification document) (Cattaneo, Nitto, Fuggetta, Lavazza, & Valetto, 2000). Documenting

software can be hard, expensive, and laborious, but in some ways it can be regarded as a

necessary evil; the benefits usually outweigh the costs. The process of documentation is not an

easy undertaking, for this reason, a good approach that is supported by the appropriate tools and

methodology is essential.

Software documentation is an invaluable asset. It plays a very important role in the

realization of software development milestone. Without the proper form of documentation,

producing a concrete product is difficult, if not impossible. Creating software is a complex task;

most of the time, the effort we spend understanding requirements and specifications alone is

more than the time we spent in building the actual product.

Good software documentation produces multiple views of the system (static, dynamic,

external, and internal) and provides different levels of abstraction (architecture, design, and

implementation). Software documents are typically mixtures of different notations such as text,

code, models, and images. Therefore, good documentation must be able to provide static and

dynamic content in a medium in which it is easy to change and to find content.

In research conducted by a team of Carnegie Mellon University Master of Software

Engineering (MSE) students on wiki in documenting framework architecture (Bachmann &

Page 38: Semantic Wiki

Semantic Wiki 33

Merson, 2005), it was found that using wiki as a collaborative tool for software architecture

documentation is promising, although they created a lot of workarounds to use the technology.

Because of this, organizations are hesitant to adapt to wiki-based approach solution. On the

other hand, the advantages that they gained by working collaboratively (at least in a small team)

to create architecture documentation seemed to outweigh those disadvantages.

On Software Artifacts

There are several different types of software artifacts, and they come in various forms

(e.g., text, code, model, images), different sources, and different platforms, using different

editors. Software artifacts are categorized as source code, models, and documentations. Source

code is the low-level internal documentation; models are specific-purpose representation of

software architecture and framework; and documents are higher-level of artifacts that pertain to

requirement documents, use case specifications, and reference manuals (Aquiar & David, 2005).

On Managing Software Artifacts

As mentioned in the problem statement, more than 80 percent of enterprise's digitized

information resides in individual hard drives and in personal files. With this in mind, software

artifacts must be stored in a shared location. Subversion (SVN) and Concurrent Version System

(CVS) are excellent open-source version control systems available for free. SVN can operate

across networks, which allows it to be used by people on different computers. At some level,

the ability for various people to modify and manage the same set of data from their respective

locations fosters collaboration. SVN manages files and directories, and the changes made to

them, over time. SVN work is versioned, and there is no need to fear if an incorrect change is

made to the data. If it happened, there is always a way to recover older versions of data and to

examine the history of how data is changed (Sussman, Fitzpatrick, & Pilato, 2005).

Page 39: Semantic Wiki

Semantic Wiki 34

Why is it important to manage software artifacts?

During the life cycle of the application, when there is a requirement to change the

functionality of an existing feature, software engineers often need to identify the software

artifacts relevant to the change request and estimate the effort of doing the job. Assessing

software artifacts is not an easy task because many software projects have various versions and

often requirement documents are not updated. On occasion, documents reside in different files

and e-mails; for this reason, finding the current functionality is extremely hard to find without

reading the code.

The discovery of software artifacts (files, documents, and datasets) relevant to the change

request can increase software reuse and reduce the cost of software development and

maintenance. But due to the inadequacy of the traditional search techniques to provide relevant

software artifacts necessary for the assessment of cost in doing the job. There is a tendency of

providing inaccurate software estimate. Software Estimation is the ability to accurately estimate

the time and/or cost taken for a project to come in to its successful conclusion (wikipedia).

Software estimation is not straightforward (there are several obstacles to finding the relevant

artifacts), especially if the one who is doing the assessment is not familiar with the software

project evolution and framework. One study shows that the inability to provide reasonable

software estimate may end up three times higher than the originally predicted amount (Lindvall,

Feldmann, Karabatis, Chen, & Janeja, 2009).

Previous studies related to the management software artifacts

1) Managing software artifacts on the web with Labyrinth

In the Labyrinth project, the developers enhanced the capabilities of the web as a

document management system by means of a semantic model (called schema, in an analogy

Page 40: Semantic Wiki

Semantic Wiki 35

to database schemas), which is associated with web documents. This model is itself a web

document and can be accessed and navigated through a simple web browser. Labyrinth

combines a lightweight web-based approach with an explicit, expressive, and fully

customizable schema. Labyrinth can be integrated with a workflow management system and

with several tools to assist the user in defining the schema, in deploying datawebs on remote

sites, and in defining policies for managing inconsistency. The modular servlet-based

architecture of Labyrinth was exploited to add information search utilities (Cattaneo, Nitto,

Fuggetta, Lavazza, & Valetto, 2000).

2) WikiWiki weaving heterogeneous software artifacts

The goal of the XSDoc Wiki was to reduce the development-documentation gap by

making documentation more convenient and attractive to developers (Aquiar & David,

2005). XSDoc helps by creating and annotating framework documents, integrating different

kind of contents (text, models, and source code), and providing a simple and economic

cooperative web-based documentation environment that can be used standalone in a web

browser or in an integrated development environment IDE (Aquiar, David, & Padilha, 2003).

3) Search for relevant software change artifacts using semantic network

The study ―Search for Relevant Software Change Artifacts using Semantic Networks‖

(2009) found that the creation of semantic networks to convey relationships will assist not

only in discovering requested artifacts based on query, but also in discovering other relevant

artifacts that the user may not have been aware of. The researchers created a set of tools and

technologies which used metadata to assist software engineers in their search for software

artifacts in response to change requests. They performed experiments on real software

projects with the help of domain experts, measuring precision and recall by comparing full-

Page 41: Semantic Wiki

Semantic Wiki 36

text semantic networks only, and combined the use of semantic networks and context

methods. Accuracy increased as a result of their experimental effort, and the semantic

approach led to better recall and precision compared to existing full-text search approaches

(Lindvall, Feldmann, Karabatis, Chen, & Janeja, 2009).

4) Self-organized reuse of software engineering knowledge supported by semantic wikis

Self-organized reuse of artifacts from software and system development using

lightweight wiki technology promises a sustainable preservation and availability of business-

critical information. However, due to the organic, sometimes chaotic growth of content

inside a wiki, additional support for structuring the knowledge and finding interrelated useful

content is needed. The enhancement of Wiki content with ontologies—named semantic

wikis—can solve these problems (Decker, Eric Ras, Klein, & Hoecht, 2008).

Earlier studies that can serve as a baseline for Application Service Providers in their

implementation initiative

1) Documentation - Central documentation practices often cause problems for software

developers and project managers. The main challenge is to keep the information up-to-date

while change occurs. In addition, especially in largely distributed projects with overlapping

responsibilities, information quickly gets redundant and inconsistent. Wikis present a

convenient platform to address both information up-to-datedness and consistency. Firstly,

the easy-to-use update mechanism enables all stakeholders to update information as soon as

changes occur. In this way, the documentation process also gets distributed simultaneously

to the development and management activities. Secondly, the easy information linking in

wikis reduces inconsistencies by keeping the information in a central place (e.g., a wiki page)

and referencing it if required (Happel, Maalej, & Panagiotou, 2006).

Page 42: Semantic Wiki

Semantic Wiki 37

WikiDoc (Zhao, 2006) and XSDoc (Aquiar, David, & Padilha, 2003) are two concrete

examples that clearly demonstrate the benefits of wikis for software documentation. In

WikiDoc, java code documentation can be added via a wiki interface, even by non-

programmers. XSDoc enables the creation and annotation of software framework documents

as well as the integration of different content types (text, models, and source code). Using

wikis as a documentation infrastructure might be inefficient if paper-based high quality

documentation is needed (e.g., user manual). In this case, the organic (due to the natural and

non-predefined growth) structure of the wiki documentation and the informality of the

content might affect the quality of the document. Wiki documentation needs to be

restructured, serialized, and adapted to the target reader. However, wikis can still serve as an

important help for document writers. Bachmann and Merson (2005) represented their

lessons learned from using a wiki-based tool for architecture documentation. They argue that

the advantage of being able to create and maintain architecture documentation in a dynamic

and collaborative way seems to outweigh any other disadvantages.

2) Bug tracking - Wikis have also been used to capture and manage bugs and issues of software

systems, especially in distributed open source projects. Bug tracking is a collaborative,

knowledge-intensive, and interdisciplinary task that can perfectly be supported by wikis.

Again, the linking feature and the ease of posting are the key success factors for this wiki

application. System developers as well as users are able to post, comment, link, describe,

and collaborate in order to detect and fix issues. Trac is an example of a wiki-based bug-

tracker that allows relating wiki pages to issues and vice versa (Trac, n.d.). Furthermore, the

code of a project can be integrated as a read-only document.

Page 43: Semantic Wiki

Semantic Wiki 38

3) Requirements and traceability management - Traceability enables programmers to trace

requirements back to the stakeholders or forth to the design concepts, source code, and test

cases. Indeed, traceability is not excluded to requirements. Especially in largely distributed

projects where change occurs frequently, developers and other system stakeholders often

need to trace artifacts and trace decisions to other artifacts, decisions, models, and

participants. It is often useful to trace a test case to the related components that should be

tested. A design goal might also be traced to non-functional requirements. A management

decision might be traced to a risk or to a design decision. Wikis offer an easy and intuitive

way to associate everything with everything. The links between wiki pages might be

interpreted as associations between ―data objects‖ (the pages). This makes information

traceable to other information pieces across the project. Using XSDoc (Aquiar, David, &

Padilha, 2003), in the study entitled ―Wiki-Based Requirements Documentation of Generic

Software Products‖ (2005), the authors present a wiki-based requirements and traceability

management approach especially for customizable software. The relationship between

specific requirements and generic product characteristics is established mainly via

configuration parameters and associated configuration questions. Linking and viewing

facilities supports traceability analysis. Wikis are eligible platforms for requirements

engineering since they allow a very large number of spatially distributed stakeholders to

collaborate in defining the knowledge about the system. WikiReq explores the usage of this

platform for collaborative business process reengineering (Abeti, Ciancarini, & Moretti,

2008).

4) Reuse support - Wikis can be considered an easy-to-use platform for exchanging reusable

knowledge and artifacts among and within software projects. Wiki support for reuse goes

Page 44: Semantic Wiki

Semantic Wiki 39

beyond its origin for supporting pattern reuse as stated before. Indeed, the linking features

enable the reuse of requirements specifications, documentations, testing instructions, lessons

learned, etc. Although conventional wikis provide a general history tracking mechanism, this

often does not supply the strong common need for elaborated configuration management

mechanisms, which support reuse. Histories of a wiki page present a linear sequential thread

of changed content on the page. The creation and management of parallel branches, a basic

feature of each configuration management system, is not supported by conventional wikis.

5) Communication and collaboration - Wikis support both planned and unplanned

communication in a distributed development context. A successful example of supporting

planned communication is presented in (Mullick, 2006), where a wiki is deployed as a

management tool for meeting protocols in real life projects. Decker et al. (2008) state four

main advantages of wikis for supporting collaboration and knowledge exchange in the course

of software development projects. a) One place publishing: a central place for publishing

information often simplifies the communication between participants. Moreover, the content

of the communication is stored locally and can be used for other reasons (planning,

documentation, etc.); b) Simple and safe communication: the rules of wikis are easy,

especially to software developers who are used to source code editing. Simple access right

mechanisms make the communication more secure; c) Easy linking: this is a major strength

of wikis, especially when applied in the domain of software engineering. Indeed, a rising

need in software projects is to be able to associate everything with everything. Especially in

highly dynamic domains where changes occur frequently, software engineers often need to

associate participants and artifacts (such as design models, communication objects, or a

change request) with each other; d) Description on demand: a user might link an object to a

Page 45: Semantic Wiki

Semantic Wiki 40

target, although the target does not exist at the ―linking‖ time. Therefore it is possible to

create the target object whenever it is needed. Linking becomes easier.

6) Agility support - Wikis provide a perfect tool to support agility in development projects.

Wikis facilitate informal communication, which is a main success factor for agile

methodologies. Additionally, wikis make up a flexible and quick mechanism of carrying out

changes. Unlike classical methodologies that strive toward minimizing and controlling

changes (e.g., through change control boards, strict change rules), agile methodologies

consider changes as a main condition during and after development. Wikis also provide a

convenient implementation of motivating participants—a core principal of agile practices.

The developers’ motivation is higher if they personally propagate their knowledge and are

responsible for it. Unlike central communication mechanisms with tight control that limits

potential opportunities for expertise sharing and collaborative knowledge creation among

distributed team members, everyone is responsible for his/her content in a wiki. This

increases the information quality and the motivation of the developers. Many recent studies

have demonstrated the usefulness of wikis in agile projects (Silveira, Faria, Aguiar, & Vidal,

2005). In a case study by Chau and Maurer (2005), the authors present the results of an

exploratory case study. They argue for the need of knowledge sharing tools that support not

only structured but also unstructured knowledge representation. Wiki-based informal

knowledge authoring tools can be used for sharing content about problem understanding,

instrumental, projective, social, expertise location, and content navigation purposes. The

authors also observed self-organized maintenance of the repository content among the

ordinary repository users as a result of the open-edit nature of the wiki-based repository.

Page 46: Semantic Wiki

Semantic Wiki 41

On Wiki

Cunningham, the inventor of first wiki in 1995, was promoting software patterns called

the Portland Pattern Repository, a repository for computer programming design patterns. To

popularize his research, he created a website called WikiWikiWeb, which he coined after he saw

the Wiki Wiki shuttles at the Honolulu airport during his vacation in Hawaii. Ward created the

Portland Pattern Repository on c2.com as a means to help object-oriented programmers publish

their computer programming patterns. Cunningham posted software patterns on the site and

invited friends and collaborators to do the same. The concept spread slowly across the web and

the sites based on the Cunningham’s model became known as wikis (C2, n.d.). A wiki is

described as a set of linked web pages (and the application enabling its development), created

through incremental development by a group of collaborating users (C2, n.d.). The wiki’s

uniqueness lies both in its software and in the use of the software by collaborating members.

Issues and challenges of traditional wiki

Wiki is indeed a promising tool, but as wikis grow with a large number of participants,

problems may develop related to users’ difficulty in finding their way, in navigating and

searching. A company named ILOG, which uses ASPSeek to index and search the resources of

their wiki-based intranet, apparently noticed over time that the search engine performance had

suddenly dropped, and that, as a result, people stop using it. The University of Nice confirmed

that the search is less useful as the wiki document base grows (Buffa & Gandon, 2006). In the

case of the New York Times Digital, they encountered several problems as wiki grew to

thousands of pages. The primary issue that they encountered was related to the navigation of

pages. To resolve this, navigation bars were added, but users still find it confusing and

convoluted. Another problem that they encountered was a WikiNames collision. WikiNames

Page 47: Semantic Wiki

Semantic Wiki 42

are often phrases without a widely agreed-upon meaning. Wiki participants cooperate to

generate shared meaning. With the WikiNames collision, the intent was to join a new page with

an existing page that had the same concept. By doing this, it was hoped that information with

similar concepts could easily be found. For this reason, it is challenging to choose a sensible

WikiName. It is desirable for the name to be based on what is/will be on the WikiPage and how

people will use it. However, in the New York Times Digital, the users frequently wanted to have

their own pages, so they invented WikiNames that were no longer meaningful to the content. As

a result, the wiki, a promising tool, was found to be a disaster in their publishing process due to

its inability to navigate and search the location of page without knowing its URL (Buffa &

Gandon, 2006).

A research project done by the National Research Study of Canada (2005) found

hyperlink management as a major usability problem. To identify problems with their wiki, they

conducted research through observation and problem-solving interaction with several children

who used the tool to collaboratively author hypertext stories over several sessions. Based on 224

unique problems that they observed, the observation frequencies were as follows: hypertext

medium related issue (62% of all problems), link creation and management (49% of all

problems), hypertext authoring (14% of all problems), image uploading (12% of all problems),

creating/editing pages (11% of all problems), basic computer skills (9% of all problems),

collaboration (7% of all problems) , navigation (6% of all problems), global site view (4% of all

problems), and lastly human error (4% of all problems) (Desilets, Paquet, & Vinson, 2005).

Because of wikis’ pros and cons, it is essential that developers understand when, why,

and how to apply a wiki solution to be successful, and they must remember that technology is

just a tool. Owning a hammer does not make anyone a good carpenter. To be a good carpenter,

Page 48: Semantic Wiki

Semantic Wiki 43

a person needs experience. Applying this analogy in the context of wiki issues, it is well-

documented that there are issues related to link management and page creation. However, it

must also be considered that wiki is an evolving solution. According to Davenport, De Long and

Beers (1997), knowledge management is evolving practices; even the most developed and

mature knowledge management projects they studied were unfinished. Like any other solution,

there is a refinement process. To address the current issues of wikis, a new breed of wiki is

needed, one that is capable of self-learning and self-adapting to today’s requirement of

information sharing, and a means of injecting semantics-awareness to the traditional web

infrastructure to allow machine-understandable domain knowledge to be shared across

application boundaries (Tolksdorf, Paslaru, & Simperl, 2006).

On the Semantic Web

Semantics is the study of meaning. The word ―semantic‖ comes from the Greek

semantikos, or ―significant meaning,‖ derived from sema, or ―sign.‖ Semantic Web technologies

help separate meanings from data, document content, or application code, using technologies

based on open standards. If a computer understands the semantics of a document, it doesn't just

interpret the series of characters that make up that document; it understands the document's

meaning.

Principles of "web data"

According to Tim Berners (1996), the inventor of web, ―The goal of the Web was to be a

shared information space through which people (and machines) could communicate.‖ It was also

the original intent that this so-called ―space‖ ought to span all sorts of information, from different

sources to a wide array of formats, and from highly valued designed material to a spontaneous

Page 49: Semantic Wiki

Semantic Wiki 44

idea. In the original design of the web, he stated the following fundamental design criteria

(Berners, 1996):

1) An information system must be able to record random associations between any arbitrary

objects, unlike most database systems. The concept of database systems has been purposely

utilized to facilitate storage, retrieval, and information generation of structured data. Unlike

database systems, the web concept of ―one universal space of information‖ is based on the

principle that almost anything on the web could be possibly linked to any arbitrary objects.

The power of the web is that linkage can be established to any document (or, more generally,

any resource) of any kind in the universe of information, whereas in database systems, one

has to understand the data structure in order to establish the relationship.

2) If two sets of users started to use the system independently, to make a link from one system

to another should be an incremental effort, not requiring unscalable operations such as the

merging of link databases. In the business environment, to integrate two different types of

systems, it is necessary to perform some degree of integration efforts such as merging,

importing, or linking of databases. On the contrary, the idea of the web was to be able

integrate systems easily. Most of the systems done in the past involve a great deal of

integration effort due to the information silo. For this reason, the idea of machines talking to

each other set forth the promise of seamless integration.

3) Any attempt to constrain users as a whole to the use of particular languages or operating

systems was always doomed to fail. Information must be available on all platforms,

including future ones. Platform and language interoperability support the principles of

universality of access irrespective of hardware or software platform, network infrastructure,

language, culture, geographical location, or physical or mental impairment.

Page 50: Semantic Wiki

Semantic Wiki 45

4) Any attempt to constrain the mental model of users of data into a given pattern was always

doomed to fail. If information within an organization is to be accurately represented in the

system, entering or correcting it must be trivial for the person who is directly knowledgeable.

If the interaction between person and hypertext could be so intuitive that the machine-

readable information space gave an accurate representation of the state of people's thoughts,

interactions, and work patterns, then machine analysis could become a very powerful

management tool, seeing patterns in our work and facilitating our working together in spite

of the typical problems which beset the management of large organizations.

The basic principles of the web proposed in 1989 to meet the design criteria were adopted

based on the well-known software design principles called ―independent specification design.‖

This design was based on the principle of modularity, meaning that when a design is modular in

nature, the interfaces between the modules hinge on simplicity and abstraction. This allows

seamless compatibility of the existing content to work with the new implementation. As

technology evolves and disappears, specifications for the web’s languages and protocols should

be able to adapt to the new hardware and software changes. Along with this basic principle are

the three main components of URI, HTTP, and HTML.

Why do we need the Semantic Web?

The Semantic Web is a web of data. It is about common formats for integration and a

combination of data drawn from diverse sources, where the original web design mainly

concentrated on the interchange of documents. It is also about language for recording how data

relates to real world objects that allow a person, or a machine, to start off in one database and

then move through an unending set of connected databases (Herman, 2009). From the traditional

―web of pages‖ to a ―web of data‖, the Semantic Web goal is to provide a cost-efficient way of

Page 51: Semantic Wiki

Semantic Wiki 46

sharing machine-readable data. The Semantic Web can aid effective knowledge management

and cost-effective product life cycle automation for faster development and integration processes

(Balani, 2005).

Solution for the information silo

A lot of the data that people use everyday are not part of the web. These data, which are

in various silos, reside in different software applications and locations that cannot be connected

easily. Due to the silo of information where both personal and business information are managed

by different software, most people are forced to learn to use different programs all the time. In

addition, since data are controlled by applications, each application must keep the data to itself.

According to W3C Group, what is needed is a ―web of data‖ (Herman, 2009). Supported

by Fielding’s dissertation, Herman notes that there is a need for a way to store and structure our

own information, whether permanent or temporal in nature, both for our own necessity and for

others, be able to reference and structure the information stored by others so that it is not

necessary for everyone to keep and maintain local copies (Fielding, 2000). The Semantic Web

provides a common framework that allows data to be shared and reused across application,

enterprise, and community boundaries. You can think of the Semantic Web as an efficient way

to represent data on the world wide web, or as a database that is globally linked, in a manner

understandable by machines, to the content of documents on the Web. Semantic technologies

represent meaning using ontologies and provide reasoning through the relationships, rules, logic,

and conditions represented in those ontologies.

To represent the Semantic Web, one would use the following technologies:

1) A global naming scheme (URIs)

2) A standard syntax for describing data (RDF)

Page 52: Semantic Wiki

Semantic Wiki 47

3) A standard means of describing the properties of that data (RDF Schema)

4) A standard means of describing relationships between data items (ontologies defined with

the OWL Web Ontology Language)

What the Semantic Web is not

Semantic Web is not Artificial Intelligence (AI). It is true that most techniques that are

currently used in the Semantic Web did come from research in AI. But the concept of machine-

processable documents does not imply the sort of magic implied by AI. The concept means that

computers will have enough semantics to allow them to solve well-defined problems through

sequential processing operations. According to Antoniou and Harmelen (2004), ―If the ultimate

goal of AI is to build an intelligent agent exhibiting human-level intelligence (and higher), the

goal of the Semantic Web is to assist human users in their day-to-day online activities.‖

Semantic Web is not a separate Web, but rather an extension of the current Syntactic Web.

Semantic Web will not demand the use of complex expressions. Although the Semantic Web

language standard, OWL, supports very sophisticated constructs, it will not be mandatory that

every Semantic Web application show this level of complexity. Semantic Web is not a rerun of a

failed experiment (Breitman, Casanova, & Truszkowski, 2006).

Future of the Semantic Web

Semantics are the future of service-oriented integration. Semantic technologies provide

an abstraction layer above existing IT technologies, one that enables the bridging and

interconnection of data, content, and processes across business and IT silos. From the human

interaction perspective, semantic technologies add a new level of semantic portals that provide

far more intelligent, relevant, and contextually aware interactions than those available with the

traditional point-to-point integration approach for portal-based information delivery (Balani,

Page 53: Semantic Wiki

Semantic Wiki 48

2005). The Semantic Web is like glue that can put broken things together. It was a concept

envisioned by Tim Berners (1996) since the day the web was conceptualized. The Semantic

Web is the realization of Tim Berners’ vision of communication among machines. It has four

major components: URI as identifier, RDF as language, RDF as metadata, and OWL ontology as

a way to establish relationships. Lastly, it is the future of service-oriented architecture, the

solution to the information silo, and the backbone of the Semantic Wiki.

On the Semantic Wiki

A hybrid solution derived from the strengths of the Semantic Web (machine processable,

data integration, complex queries) and wiki (easy to use/contribute, strongly interconnected,

collaboration) technologies. The availability of machine-understandable domain knowledge and

the means to inject semantics-awareness into the traditional web infrastructure is expected to

enable or enhance the navigation, personalization, and search functionalities (Tolksdorf, Paslaru,

& Simperl, 2006). According to SemWiki (n.d.), the goals of the Semantic Wiki include the

following : simple annotations of existing wiki content; tools that guide users from informal

knowledge contained in texts to more formal structures; and full-fledged tools for ontology

editing when the text is no longer in the focus of the system (SemWiki.org, n.d.).

The potential benefits of Semantic Wikis relative to traditional ones have been well

summarized in a recent Project10X report (Davis, 2006):

1) Concept-based rather than language-based searching; queries span vocabularies, languages,

and search engines.

2) Question answering rather than simple retrieval. Also, overlaying ontologies and knowledge

bases can integrate with major web search engines.

Page 54: Semantic Wiki

Semantic Wiki 49

3) More richly structured content navigation, including multiple perspectives, multiple levels of

abstraction, dependency/contingency relationships, etc.

4) Easy visualization of content structure (categories, taxonomies, semantic nets, etc.). Direct

editing of content structure.

5) Mining of semantic relationships in content.

6) Wiki content linked to dynamic models, simulations, and visualizations.

7) Wiki content linked with external repositories and file systems (e.g., personal desktops,

enterprise servers, web sources, semantic-enabled feeds, etc.).

8) Richer user access/rights models, including reputation systems.

On the Implementation of Semantic Wiki-based Knowledge Management Systems

In computer science, an implementation is a realization of a technical specification or

algorithm such as a program, software component, or other computer system. Many

implementations may exist for a given specification or standard. For example, web browsers

contain implementations of World Wide Web Consortium-recommended specifications, and

software development tools contain implementations of programming languages.

What makes Semantic Wiki a promising solution for knowledge management?

1) Social techniques instead of software components - A study entitled ―Wiki and the Wiki

Way: Beyond a Knowledge Management Solution‖ concluded that the wiki way solution

encompasses the idea of employing social techniques instead of software components to ease

collaboration and interaction of capturing knowledge (Gonzales, 2005). According to Stowe

Boyd (2005), ―wiki solution is the opposite of project-oriented collaboration tools that places

people into groups. Social software supports the desire of individuals to be pulled into

groups to achieve goals‖ (Boyd, 2005).

Page 55: Semantic Wiki

Semantic Wiki 50

2) Solution for knowledge sharing - Wikis are a promising new technology that supports

―conversational‖ knowledge creation and sharing (Wagner, 2004). According to Gonzales

(2005), wikis have the ability to disseminate knowledge to various domains that reside across

time, distance, and organizations. They can be integrated as part of an employee’s work

process in order to facilitate knowledge-sharing and system utilization.

3) Solution for knowledge capture and collaboration - Wikis provide a dynamic system for

knowledge capture that is able to evolve with changing needs. The open wiki feature allows

for communication, collaboration, and the documentation of what is collectively considered

pertinent knowledge (Gonzales, 2005). A wiki is a collaboratively created and iteratively

improved set of web pages, together with the software that manages the web pages. Because

of their unique way of creating and managing knowledge, wikis combine the best elements of

earlier conversational knowledge management technologies (Table 2.1), while avoiding

many of their disadvantages (Wagner, 2004).

4) Conversational technology solution - Wiki pages demonstrate a conversational KM solution.

Conversational KM has surfaced as a method for organizational knowledge creation,

particularly in a virtual team environment. The prospect of several key benefits make these

solutions a favorable business option since they are not economically or technologically

demanding, are quick to create knowledge, and are well-suited for decentralized

environments (Wagner, 2004). The potential of wikis may surpass those familiar

conversational technologies presently internalized in business processes such as e-mail,

discussion forums, instant messaging, and group decision support systems. In addition, wiki

pages exemplify a social software solution whereby individuals are technically supported in

aspirations to belong and contribute in a group atmosphere. This type of group participation

Page 56: Semantic Wiki

Semantic Wiki 51

creates voluntary social connections said to help realize personal goals (Boyd, 2005). As a

conversational technology (Table 2.1), wikis should be most effective for ad-hoc problems

with decentralized knowledge sources (Cheung, Lee, & Ip, 2005).

5) Solution beyond knowledge management - The power of wiki applications is being extended

beyond KM initiatives to include document retention, project management, employee

evaluation, help desk, calendars, and much more. In essence, the flexible customization of

wiki pages allows them to be molded to fit a specific need; basically, Wymiwyg (―What-you-

make- is-what-you-get‖) (Gonzales, 2005).

Page 57: Semantic Wiki

Semantic Wiki 52

CHAPTER 3

Semantic Wiki-based Knowledge Management System solution for the information sharing

requirements of Application Service Providers

Introduction

Ives et al. (2003) define knowledge sharing as a human behavior that must be examined

in the context of human performance. They describe a human performance model that includes

business context, organizational, and individual factors. The requirements of the technological

aspect of knowledge sharing being studied are within the Application Service Provider’s context.

There are two types of organizational structures primarily involved in the knowledge sharing of

an ASP Model. First, the knowledge sharing within the ASP provider’s organizational structure

and the knowledge sharing between the ASP provider and its clientele. The study focuses on

knowledge sharing that is within the boundaries of the ASP provider, the IT (Information

Technology) solution groups and the client services groups. The client services groups are

employees who interact directly with the client while the IT solution groups are employees who

are in charge of the delivery of customized software solutions.

Assessing software artifacts is not a straightforward undertaking; often, many software

projects have various versions, and requirement documents that are not updated. In doing an

assessment, there are times when documents reside on different files, e-mails, or on an

employees’ computer. For this reason, assessing the impact of the changes within the current

functionality is difficult to do without reading the source code of the program.

Using of a repository solution like Subversion (SVN) is a norm in the software

development community because it is an excellent open source version control system. SVN

Page 58: Semantic Wiki

Semantic Wiki 53

operates across networks, which allows it to be used by users on different computers. At some

level, the ability of various people to modify and manage the same set of data from disparate

locations fosters collaboration; however, using this type of solution often causes problems for

software developers and project managers. The main challenge is to keep the information up-to-

date, even as changes are constantly happening. In large client projects with overlapping

responsibilities, the information can quickly appear redundant or inconsistent. Accordingly,

knowledge management is critical for the creation and leveraging of knowledge.

Research Methodology

In the quest for answers to the challenges of today’s technological aspects of information

sharing, the researcher conducted a study on principles and the implementation of the semantic

wiki—a semantic web based solution—envisioned to answer information silos and information

sharing challenges. The researcher compared Word/SVN, e-mail, traditional wiki, and semantic

wiki solutions specifically for the purposes of collaboration, information retrieval, information

dissemination and integration, and the comparative analysis of each solution’s strengths and

limitations was discussed. The information was gathered from journals, symposia and research

studies archives. The data collected for the purposes of comparative analysis was evaluated,

analyzed and synthesized accordingly by the researcher. Currently the researcher is employed as

a software engineer to one of the largest ASP providers in the United States specializing in

pharmaceutical markets.

Assumptions and Limitations

It is important to understand that technology alone is not enough of a solution to address

the issues and challenges of knowledge sharing. For this reason it is important that the

implementation of the solutions mentioned below must take place prior to the execution of the

Page 59: Semantic Wiki

Semantic Wiki 54

knowledge management solution. The following assumptions were considered in order for the

system to be effective: a) employees are willing and able to share knowledge; b) employees are

given time to document their work; c) companies are committed to knowledge sharing and to the

cost of doing it; d) since the system will only be accessible within the company’s network,

security concerns will not be an issue; e) employees are encouraged by the company to share

knowledge because of the added incentives they will receive; and f) a good knowledge

management system will foster good relationships and encourage transparency

Requirements of Information Sharing

According to Von Krogh, Ichijo, & Nonaka (2000), knowledge sharing is critical to the

performance of knowledge creation and in the leveraging of knowledge, whereas Ives et al.

(2003) described knowledge sharing as a human behavior that must be examined in the context

of human performance. The requirements of knowledge sharing stated in the study do not

pertain to human behavior but rather to technological dynamics. One of the critical components

that must be addressed as part of implementation of knowledge management systems is the

human behavior aspect of knowledge sharing, or the willingness of each individual to be open

and share his or her knowledge within the boundaries of the ASP provider. These are the

requirements of information sharing.

1. The system should be able to support communication and collaboration

As information is managed collaboratively, multiple users need system support for

creating and editing shared versions of the same information resources in parallel directions.

MSWord/SVN - Microsoft Word does not provide common functionalities such as

comparing, merging, or identifying differences between documents. To compensate for these

limitations, a revision control system, Subversion (SVN), is used to track the history of the

Page 60: Semantic Wiki

Semantic Wiki 55

changes in the documents, as well as document chains. Subversion and many other version

control systems use a copy-modify-merge model as an alternative to locking. Users then work

simultaneously and independently, modifying their private copies. Private copies are merged

together into a new, final version. The version control system often assists with the merging, but

ultimately, a human being is responsible for successful document integration (Sussman,

Fitzpatrick, & Pilato, 2005).

The Word/SVN solution uses Subversion as storage to centralize the sharing of

information. At its core is a repository, or a central storage area for data. The repository stores

information in the form of a file system tree—a hierarchy of files and directories. Clients are

connected to the repository, and the permissions for accessing the information posted in the

repository are set to either read or write from the file system. By writing data, a client makes the

information available to others; by reading data, the client receives information from others.

There are no limitations to the layout of directories within SVN, but there are certain conventions

in its use. You can access Subversion repositories through many different methods, on local

disks or through various network protocols, depending on the settings applied by the

administrator. A repository location, however, is always a URL (Collins, Fitpatrick, & Pilato).

Whenever checking out a file, the Subversion client puts a perfect copy of this file in a

special directory with a .svn file extension. Whenever the file is edited, Subversion is able to

track—without going to the server—what changes have been made to the file. It is also able to

restore the file to its state before the changes were introduced without calling the server side.

The limitation, however, is that, when a comment is made, it is only capable of sending the

earlier version whether in text or binary files. It is capable of giving different versions

(directories, etc.), and it supports moving files, directories, branches, etc.

Page 61: Semantic Wiki

Semantic Wiki 56

E-mail – E-mail is not a preferred method for collaboration since it operates in a forward

and reply pattern and does not track changes, but it works well for private communications tasks.

With lengthy discussions, the tracking of information flow in e-mail is complex and tedious,

while e-mailing a bulky document is inconvenient due to file size constraints. In the absence of

more appropriate collaboration tools, e-mail tends to be misused because of its accessibility and

convenience. Users frequently access e-mail to process new messages, and exploit this access to

update the outstanding tasks at hand and identify new tasks. E-mail’s conduit functions lead

many to exploit the inbox for task management. Information about current tasks are left there,

knowing that, when reopened, the user will be reminded about outstanding tasks. E-mail is also

an important information repository for personal information, but archiving can be problematic.

The disorganized collection of messages that accumulates in the inbox decreases the relevance

and accessibility of individual messages, which are often pushed out of sight by incoming items

(Whittaker, Bellotti, & Gwizdka, 2006). Much of the anxiety of information overload is in many

cases caused by e-mail (Tjaden, 2007).

Traditional & Semantic Wikis - Wiki has the ability to track the revisions of each

contributor to the input document. Wikis are good for non-private collaboration. As soon as

content is created, others can contribute to it, extend it, and correct it, giving the user almost

complete freedom over the content development process without rigid workflow, restrictions or

predefined structures. Wikis are great tools to avoid reinventing the wheel. Many wiki systems

provide further collaborative editing by means of discussion forums, summaries of changes, and

lists of the most recent updates. Conversely, the editing experience may prove difficult for non-

technical users, and it can be equally difficult to convert a wiki page into something that looks

good in print.

Page 62: Semantic Wiki

Semantic Wiki 57

Analysis

‘Required’ and ‘Recommended’

The overall features available in traditional and semantic wikis in the ―required‖ category

are greater than SVN and e-mail, except for the ―recommended‖ category where MS Word is

more advantageous because MS Word has the built-in capability to track changes. Although

SVN is a revision control system, the merging capability offered by SVN requires manual

intervention, and the changes must be done manually to make sure that the built-in functionality

merges the changes properly.

Editing experience

Given that MS Word is an editing tool, the editing experience is superior to that of the

wiki. Users are comfortable using MS Word because of advanced editing capabilities such as

grammar and spelling checking. The emergence of rich internet client (RIA) capabilities opens

up the possibility of having the same WYSIWYG experience in wiki; however, advanced

features available in MS Word for editing are not yet available in wiki.

Flexible permission capability

In an ASP software development environment, software services are offered to multiple

clients. Each client has a dedicated team solely responsible for the development, support and

maintenance of the ASP. ASP companies employ temporary employees that have limited access

to company resources. For this reason, the flexible permission capability included in the

―required‖ category is considered a first-class requirement in information sharing. In

comparison with SVN and wiki, SVN offers a greater flexibility of security configuration than

wiki.

Page 63: Semantic Wiki

Semantic Wiki 58

Table 3.1. Communication and Collaboration Criteria Comparison

MSWord/SVN

MSWord/E-mail

Traditional

Wiki

Semantic

Wiki

Platform

Collaboration Editing

Application MS Word MSWord Web Brower Web Brower

Repository Engine Revision

Control Server Mail Server Web Server Web Server

Taxonomy

Word

processing

software/

Version Control

System

Personal

Information

System

Social

Website

Social

Website

Designed for : Versioning

Code

Private

communication

tasks

Non-private

collaboration

Non-private

collaboration

Resource Requirements

License Required True True False False

Training Required True False False False

Required

Versioning and Page

History True False True True

Collaborative Editing True False True True

Locking Mechanism False False True True

Reliable Merging False False True True

Changes applied

automatically False False True True

Difficult editing experience False False True True

Page 64: Semantic Wiki

Semantic Wiki 59

Flexible permission

capability

True True False False

Quality printed output True True False False

Non-Required

Commenting False False True True

Popularity False False True True

Rating False False True True

Support Disconnected

scenario from network True False False False

Recommended

―Track Changes‖ review for

tracking of changes per

document

True True False False

Each person edits copy of

document True True False False

Other implementation considerations

Avoid reinventing the wheel True False True True

Attachment size constraints False True True True

Complete freedom over

content development

process

False False True True

Conversational technology

solution False True True True

Requires careful planning of

directory structure True False False False

Solution for constantly

changing requirements False False True True

Support Disconnected/Occasionally disconnected scenario from network

Employees interfacing with the client are typically working remotely and have no access

to a company’s virtual private network (VPN). Wiki is a brower-based application for which

Page 65: Semantic Wiki

Semantic Wiki 60

information is accessible only if the VPN connection is available, whereas in SVN each user has

his or her own copy of the MS Word document file. While maintaining separate copies of files

alleviates the possibility of having outdated documents, the disadvantage is the incapacity to

work freely without network access.

Resource requirements

Neither SVN or wiki require significant resource investments since both solutions are

downloadable for free. The only solution that requires licensing is MS Word, but there are

counterparts of MS Word offered by other companies free of charge (e.i. openoffice - the leading

open-source office software suite for word processing, spreadsheets, presentations, graphics,

databases). In addition, because of the complexity of SVN, training may be required for non-

technical users.

Avoid reinventing the wheel

Included in the wiki design principles is the ―convergent‖, which means duplication can

be discouraged or removed by finding and citing similar or related content (C2, 2009). Semantic

Wiki’s advanced searching capabilities make comunications easier to share, because, if the

information is already available information can be added on the same page instead of creating a

new one.

Commenting

Wiki offers additional features like commenting, which can be used as a replacement for

e-mail discussion as long as the content is not confidential in nature. Wiki is observable, which

means activity within the site can be watched and reviewed by any other visitor to the site.

Conversational technology solution

Page 66: Semantic Wiki

Semantic Wiki 61

One study showed that the potential of wikis may surpass those familiar conversational

technologies presently internalized into business processes, such as e-mail, discussion forums,

instant messaging, and group decision support systems (Wagner, 2004). In addition, wiki pages

exemplify a social software solution whereby each individual is technically supported in

whatever information he or she would like provide, contributing to benefit others by providing

an organized atmosphere. This manner of group participation creates voluntary social

connections which aid in realizing personal goals (Boyd, 2005).

Complete freedom over content development process

According to Davenport De Long (1997), knowledge management tools should facilitate

sharing rather than extract from a repository. Knowledge repositories should be created for

structured internal knowledge and information, as well as to create informal internal knowledge.

These include knowledge that is in the minds of the people within the organization but has not

been in any structured or document-based written format. Using a wiki, any individual on the

team can publish informal and random knowledge since he or she will have the complete

freedom over the content development process.

Quality printed output

Because of HTML—the markup of wiki—producing quality output is not necessarily

conducive to printing quality output, although there are ways to convert HTML to a .pdf format.

A lot of wikis do not offer this functionality.

Communication and Collaboration

Wikis support both planned and unplanned communication in a distributed development

context. A successful example of supporting planned communication is presented in Mullick, et

al. (2006), where a Wiki is deployed as a management tool for meeting protocols in real life

Page 67: Semantic Wiki

Semantic Wiki 62

projects. Decker et al. (2008) state four main advantages of Wikis for supporting collaboration

and knowledge exchange in the course of software development projects: a) one place

publishing, b) simple and safe communication, c) easy linking, and d) description on demand.

One of the major benefits of the wiki concept is the ability to allow a large number of

authors to collaboratively produce articles (Brannstrom & Martenson, 2006). Wiki is a

collaborative authoring system for collective intelligence. It is widely used in the open source

and global software development communities for documentation and coordination purposes

(Xiao, Chi, & Yang, 2007).

Solution for constantly changing requirements

Wikis provide a dynamic system for knowledge capture, able to evolve with changing

needs. The open wiki feature allows for communication, collaboration and the documentation of

what is collectively considered pertinent knowledge (Gonzales, 2005).

2. The system should be able to provide advanced information retrieval techniques

In order to handle the available information, the system should include searching and

navigation features which include full text search, semantic search, context-based search, context

based navigation, personalization, and content analysis.

Microsoft Word/SVN – The Subversion solution is much more efficient than ad hoc

arrangements such as e-mailing files back and forth. A web server is not intended to synch files.

Subversion has two components: a server that stores files (called modules) and a desktop client

for accessing the server. The Subversion server can be installed locally or on a remote machine.

The focus of the Word/SVN solution is often in the documents and how to organize them in

folders, while a wiki system is completely focused on the content itself (Brannstrom &

Page 68: Semantic Wiki

Semantic Wiki 63

Martenson, 2006). Word/SVN is only an ad-hoc solution, and therefore more of a starting point

towards content management.

E-mail is designed for personal communication and not for collaboration. Due to the

absence of alternative tools, users would be required to push the limits of e-mail to handle

coordination. Using a traditional wiki as a means to organize information has been proven

effective in some cases in the past but not in others; consequently, the Semantic Wiki solution

carries the promise of true collaboration and coordination. There are numerous free solutions

available but the general concept is not simple. To leverage the full potential, an understanding

of the technology is required. Due to the absence of structure, wikis tend to work best when

users can decide for themselves where to organize information. Without pre-defined structure,

page navigation is difficult.

Tortoise SVN is the most popular Subversion client for Windows (Rahmel, 2007).

Tortoise asks for the URL of the repository, a user id, and a password. All files in a module can

be checked out, edited as needed, and then saved. Tortoise integrates into Windows Explorer.

Folders show a green check mark if they are current, or a red X when they have been changed.

There are tools available that are used to scan a whole Subversion repository and create a

searchable index (i.e. Google Desktop and Window Search). They can scan Word, Excel,

PowerPoint, and Adobe Acrobat files in addition to other kinds of text based data. Microsoft and

Google Desktop searches are the most popular desktop search engines, providing full text search

over e-mail, files, music, photos and more.

Traditional Wiki - Pages are linked to each other using hyperlinks. The simplified wiki

syntax makes it very easy to define a link to another page in the wiki. For example, in many

wikis a link is defined by enclosing a word in brackets, or by using a so-called ―CamelCase‖, in

Page 69: Semantic Wiki

Semantic Wiki 64

which a word contains several upper-case letters. Links to non-existing pages are usually

rendered in a different color. If a user clicks on such a link, the system redirects the user to an

address where he or she can create the non-existing page. Links within a wiki are the most

important tool for navigation; therefore, many systems allow not only the ability to follow links

in the direction they are defined, but also to reverse direction (―back-links‖).

Wikis do not support structured access, as they provide no means for navigating related

information. They do not support information reuse since information is only represented in

natural language. For example, translations of pages have to be maintained manually, and

database-like views of the information (there is no way to query the data since page is stored in a

natural language) are not possible (Oren, Breslin, & Decker, 2006).

Semantic Wiki – The navigation of semantic wikis is accomplished by annotating

existing navigational links with symbols that describe their meaning. Virtually all semantic

wikis allow the annotation of links by giving them certain types. The idea behind this is that

every link carries meaning beyond mere navigation. For example, a link from Mozart to

Salzburg could be annotated with ―lived in‖ or ―born in‖. Such annotations are useful for

enhanced presentation through the display of contextual information, enhanced navigation

through giving access to relevant information, and enhanced ―semantic‖ searches that respect

context in addition to content.

Semantic wikis allow users to make formal descriptions of resources by annotating the

pages that represent those resources. Where a traditional wiki enables users to describe

resources in natural language, a semantic wiki enables users to additionally describe resources in

a formal language. The authoring effort is relatively low, as the semantic annotations are very

similar to the layout or structural directives that are already in widespread use in ordinary wikis.

Page 70: Semantic Wiki

Semantic Wiki 65

Using formal annotations of resources, semantic wikis offer additional features over regular

wikis. Users can query the annotations directly (―show me all authors‖) or create views from

such queries. Users can also navigate wikis using annotated relations (―go to other books by

John Grisham‖), and introduce background knowledge to the system (―all poets are authors;

show me all authors‖) (Oren, Breslin, & Decker, 2006). A more rigid and defined structure

could lead to wider applicability of the wiki for its users while disrupting natural creative flow

and discouraging wider exploration and discovery of content

Table 3.2. Information retrieval techniques comparison

MSWord/SVN

MSWord/E-mail

Traditional

Wiki

Semantic

Wiki

Search and Navigation features

Full-Text Search True True True True

Semantic Search False False False True

Semantic Navigation False False False True

Context-Aware

Presentation False False False

True

Reasoning Support False False False True

Other consideration

Access Method File System or

URL E-mail Web

Web

Organization Folder

Structured Inbox Structured

Non -

Structured

Structured

Listed below are features that semantic wikis provide that are not available in traditional

wikis:

Page 71: Semantic Wiki

Semantic Wiki 66

a.) Semantic search – Most semantic wikis allow ―semantic search‖ on the underlying

knowledge base (Schaffert, Westenthaler, & Gruber, 2006). Usually, queries are expressed

in the language SPARQL, an RDF query language proposed by the W3C. Using ―semantic

search‖, users can search queries like ―retrieve all pieces composed by Mozart‖ or ―retrieve

all documents where the license permits derivative works‖.

b.) Semantic navigation – Compared to a traditional wiki that only allows forward linking, a

semantic wiki offers additional information on the resource the link describes (Aumueller &

Auer, n.d.). Such information can be used to offer more sophisticated navigation. For

instance, links are more independent from the textual context and can be displayed in a

separate ―related information‖ section. The page describing Mozart could offer a separate

section with references categorized by ―lived in‖, ―composed‖, etc.

c.) Context-aware presentation – Many semantic wikis can change the way content is presented

based on semantic annotations. This can include enriching pages by displaying semantically-

related pages in a separate link box, displaying information that can be derived from the

underlying knowledge base (for example, a box with a graphical tree presentation or license

information), or even rendering its page content in a different manner that is more suitable

for the context (multimedia content vs. text content) (Schaffert, Westenthaler, & Gruber,

2006).

d.) Reasoning support – Reasoning means deriving additional, implicit information from facts

entered into the system using predefined or user-defined rules in the knowledge base

(Decker, Eric Ras, Klein, & Hoecht, 2008). For example, from the fact that ―Mozart‖

composed ―Die Zauberflote‖, a system capable of reasoning could deduce that ―Mozart‖ is a

―composer‖. Although reasoning is an important feature, it is only supported by a few wikis.

Page 72: Semantic Wiki

Semantic Wiki 67

Analysis

The only searching functionality supported by Word/SVN, e-mail, and traditional wiki

solutions is the full-text search; for this reason, Semantic Web offers the most preferable

functionalities. In the study ―Search for Relevant Software Change Artifacts using Semantic

Networks‖ (2009) it was found that the creation of semantic networks to convey relationships

helps assist not only in discovering requested artifacts based on search queries but also other

relevant artifacts of which the user may not be aware (Lindvall, Feldmann, Karabatis, Chen, &

Janeja, 2009).

3. The system must allow machine-understandable domain knowledge shared across

application boundaries

A system needs to consistently relate to an external information source in order to

improve the quality of its information services and to round out the functionality of the overall

system. Digitization means information can be shared, cross-referenced, and repurposed;

however, the greatest challenge lies in making information accessible to the end user. Content

integration and the opening up of the information silos has been an important topic in business

for several years. Information is gathered with incompatible software and used by different

groups in organizations without knowledge of one another. The same information about

customers or products is repeatedly collected in different silos, duplicating effort and preventing

valuable information from being located and utilized across silos (Webster, 2009). Large

organizations, particularly ones in which large repositories of information are stored in different

systems which are inaccessible to one another, are confronting this content management

challenge.

Page 73: Semantic Wiki

Semantic Wiki 68

Ideally, an enterprise’s digitized information, regardless whether it is store on individual

hard drives, e-mail, or in personal files, should be searchable as long as employees are willing to

share the information. Because of other sensitive information, however, employees are hesitant

to share their hard drives. On the other hand, even if drives are shared, finding unstructured

information is of immediate concern. Because unstructured information is only implicit, in order

for the computer program to understand the meaning, it requires some degree of analysis to

clarify the document's semantics.

Semantic wikis are a great tools which enable collaboration within an organization or

community. However, if multiple groups (such as ASP technical and business group) need to

share information with each other, wikis should be connected. Semantics are the future of

service-oriented integration. Semantic technologies provide an abstraction layer above existing

IT technologies, one that enables the bridging and interconnection of data, content, and processes

across business and IT silos. From the human interaction perspective, semantic technologies add

a new level of semantic portals that provide far more intelligent, relevant, and contextually aware

interactions than those available with the traditional point-to-point integration approach for

portal-based information delivery (Balani, 2005).

Analysis

Implementing knowledge management is about bringing together people, skills, business

processes and technology infrastructure, including content management in order to exploit an

organization’s knowledge base. The power of semantic wiki applications can be extended

beyond knowledge management initiatives to include document retention, project management,

employee evaluation, help desk, calendars and much more (Gonzales, 2005). Semantic wikis are

a promising solution in that they can be integrated with other coordination systems such as bug

Page 74: Semantic Wiki

Semantic Wiki 69

tracking, documentation and other software engineering tools. They can also be integrated as

part of an employee’s work process in order to facilitate knowledge sharing and system

utilization.

Beyond knowledge management, ASP companies can utilize semantic wikis and

semantic web functionalities in sharing functionalities. The semantic web provides a common

framework that allows data to be shared and reused across applications, enterprises, and

community boundaries. Semantics are the future of service-oriented integration. Semantic

technologies provide an abstraction layer above existing IT technologies, one that enables the

bridging and interconnection of data, content, and processes across business and IT silos.

4. The system should be capable of simultaneously pushing and pulling information

required by the user

There are a number of e-mail and RSS-based alert systems available on the internet, but a

truly personalized result on the scale of the web based on query is something that is envisioned

as a future capability.

Analysis

The ability of the employee to be part of the whole coordination process is something for

which even e-mail has fallen short. With e-mail, if the sender would like additional users to be

part of the mailing list, they have to be in the cc (carbon copy) list. Other coordination systems

used in project management do the same thing, features for sending notification and alerts are

pre-defined in the application. In short, a lot of applications do not offer the RSS features. With

the advent of RSS (Really Simple Syndication), which is typically used with news sites and

blogs to disseminate information, users can utilize that same concept and apply it in the

coordination process of bug tracking and other management tools. The remarkable power of

Page 75: Semantic Wiki

Semantic Wiki 70

syndication technology is the ability to subscribe and unsubscribe a page. As stated earlier,

much of the anxiety of information overload may in many cases be instead caused by e-mail

overload (Tjaden, 2007). The problem with e-mail is that, if a user is in the list and who does not

wish to be part of it, the user must convey this fact to the sender. With RSS, as long as the user

knows and has access to the page, he or she can subscribe or unsubscribe as desired. With e-mail

technology, posting a memo to a large number of people is not efficient, whereas in a wiki,

regular memos can be posted and subscribed to, and as a result, there is no need to send a group

message. The possibility of erroneous messages is also minimized. Using RSS, because

information is stored in the database, if there is something wrong with the message the user can

immediately edit the message and save it again.

Conclusion

Based on the four requirements of information discussed and analyzed in this chapter 1)

its capability to support communication and collaboration; 2) its capability to provide advanced

information retrieval techniques; 3) its capability to allow machine-understandable domain

knowledge to be shared across application boundaries; and 4) its capability of pushing

information required by the user while at the same time pulling information for the information

that may be of interest to others, semantic wikis offer the most functionalities and flexibilities for

effective and efficient information sharing relative to knowledge management systems of ASPs.

The most evident caveat in using wikis is the lack of user interface capabilities that are

available in MS Word and the printing capabilities available in almost any web-based application

that are not available in wikis. There rest of the important functionalities and flexibilities call for

the competitive advantage of the Semantic wiki-based knowledge management system.

Page 76: Semantic Wiki

Semantic Wiki 71

Semantic wikis are promising but complex in that anybody wishing to unlock their power

must have tacit and explicit knowledge of the processes involved; however, they are an evolving

information systems technology that researchers and IT practitioners are keen to explore. It is a

worthwhile exercise to explore and maximize the capabilities of semantic wikis in order to

improve information sharing for the knowledge management systems of ASP companies and

their clients, but it is also a significant challenge to the implementers and innovators of this

technology to determine how quickly this technology could be put into place in a company to

facilitate better information sharing among its users.

Page 77: Semantic Wiki

Semantic Wiki 72

CHAPTER 4

Semantic Wiki Knowledge-sharing Support in Managing Software Artifacts

Introduction

According to Davenport & De Long (1998), knowledge management systems are tools to

effect the management of knowledge and are manifested in a variety of implementations

including document repositories and context-specific retrieval systems incorporating

collaborative filtering technologies. In this chapter, the researcher investigates possible solutions

that will address the challenges of knowledge-sharing solutions in the context of the ASP Model

in managing software artifacts. In the search for answers, the researcher did the following:

identified the challenges, evaluated the solution, and presented current studies of the semantic

wiki.

Semantic Wiki Knowledge-sharing Support in Managing Software Artifacts

In Chapter 1, the research discussed the different requirements of knowledge-sharing. In

this chapter, the researcher will utilize the same requirements as an extension for further study,

only the requirements will be studied in the context of managing software artifacts.

1. Communication and collaboration support

In today’s global economy, software development teams are no longer confined to a

single location. In the ASP model, client services groups and IT groups are situated in diverse

locations (Figure 4.1). Client services are usually located in the area where most of the clients

are, while software development can be anywhere around the globe.

Page 78: Semantic Wiki

Semantic Wiki 73

Figure 4.1. Application Service Provider Groups

SDT 2

CSG 1

Software

Development

Client Services

Network Solution

Provider

SDT 4

SDT 3

SDT 1

CSG 2

CSG 4

CSG 4CSG 3

Managing software artifacts in a team environment, particularly in an ASP model, is

complex. A substantial coordination and communication effort is critical in the delivery of a

successful software solution. The success of the project is also dependent on how well each

member of each team performs their job. The role that the client services group plays in the

course of the software delivery process is crucial; their primary responsibility is to make certain

that the business requirements specified by the client are well-defined before they are sent to the

development group. Creating and managing requirements is challenging because of the

necessity of managing a contractual relationship. The client services group also needs to

effectively define and manage requirements to ensure the team is meeting customer needs,

staying on schedule, and staying within budget. The failure to manage client expectations and to

provide well-defined requirements has a domino effect on the entire team, which can lead to

time-consuming rework, inadequate deliveries, and budget overruns (The Standish Group

Report, 1995). Furthermore, collaboration among groups and team members is very important

and requires social skills and technological dynamics. Social skills allow the team members to

Page 79: Semantic Wiki

Semantic Wiki 74

function well in front of clients while making sure that the technical aspects of the solution are

possible and pragmatic.

―Collaboration is a recursive process where two or more people work together toward an

intersection of common goals…by sharing knowledge, learning, and building consensus‖

(Wikipedia.com). In the context of ASPs, collaboration happens when coordination takes place

between the client services group (CSG) and the software development group (SDG). The point

of contact for both the client and the SDG is the CSG. While CSG information gathering is

taking place with the client, the CSG is in constant communication with the SDG to make sure

that the requirements of the client are well understood and to make sure that any new

requirements are well supported by the ASP provider’s solution framework. During this

recursive process, a requirements management tool is necessary to make sure that every piece of

information is recorded for future analysis. E-mail is the one of the most commonly used tool in

collaboration process because there is no other feasible alternative solution. This can be

problematic because e-mail is not designed for collaboration. In a very long discussion, tracking

of information flow is complex and tedious while e-mailing bulky documents is not tolerable due

to file size constraints.

E-mail is an important information repository for personal information, but archiving e-

mail in a useful manner can be challenging. The disorganized collection of messages that

accumulates in a person’s inbox decreases the relevance and accessibility of individual

messages, which are often pushed out of sight by incoming items (Whittaker, Bellotti, &

Gwizdka, 2006). Much of the anxiety over information overload is caused by e-mail overload

(Tjaden, 2007).

Page 80: Semantic Wiki

Semantic Wiki 75

Software is a product of collaboration. Software development in this day and age is

generally a team effort. This does not mean that the team must start building the software from

nothing. In today’s era of open source technology, writing software from the ground up is not

advisable unless it is for something completely new and different. In other words, there is no

need to re-invent the wheel. Wikis are a product of open source technology. Cunningham

(1995) was the first developer of a wiki framework; from his work, other developers created their

own solutions based on Cunningham’s invention. When adapting open source technology for

their own purposes, may developers believe in two sometimes contradictory tenets: ―If isn’t

broken, don’t fix it‖ and ―If isn’t broken, try to make it better.‖ Open source technology allows

anyone to publish their work and then give other people permission to use it and adapt/enhance it

for their own needs. Examples of source code repositories used by the open source community

are the websites sourceforge.net (owned and operated by Source Forge, Inc.) and codeplex.com

(hosted by Microsoft).

Decker et al. (2008) state four main advantages of wikis for supporting collaboration and

knowledge exchange in the course of software development projects:

a) One place publishing: having a central place for publishing information often simplifies

communication between participants. Moreover, the content of the communication is

stored locally and can be used for other purposes (planning, documentation, etc.).

b) Simple and safe communication: the rules of wikis are easy, especially to software

developers who are used to source code editing. Simple access right mechanisms make

the communication more secure.

c) Easy linking: this is a major strength of wikis, especially when applied in the domain of

software engineering. A rising need in software projects is to be able to associate

Page 81: Semantic Wiki

Semantic Wiki 76

everything with everything. Especially in highly dynamic domains where changes occur

frequently, software engineers often need to associate participants and artifacts (such as

design models, communication objects, or a change request) with each other.

d) Description on demand: a user might link an object to a target, although the target does

not exist at the linking time. This makes it possible to create the target object whenever it

is needed. Linking becomes easier.

Semantic wikis support both planned and unplanned communication in a distributed

development context. A successful example of supporting planned communication is presented

in Siemens Global Studio Project (GSP) (Teece, 2000), where a wiki is deployed as a

management tool for meeting protocols in real life projects.

2. Support for sharing of knowledge across application boundaries

During the life cycle of the application, when there is a requirement to change the

functionality of an existing feature, software engineers often need to identify the software

artifacts relevant to the change request. Assessing software artifacts is not an easy task due to

the fact that many software projects have several versions and requirement documents are often

not updated. On some occasions, documents reside in different files and e-mails, which makes

it hard to find the current functionality without reading the application source code. Some

companies use repository solutions like Subversion (SVN) because they are excellent open

source version control systems and are available for free. SVN can operate across networks,

which allows it to be used by people on different computers. The possibility for several people

to modify and manage the same set of data from their respective locations fosters collaboration.

SVN manages files and directories and tracks the changes made to them over time. Using SVN,

work is versioned, so there is no reason for concern if an incorrect change is made to the data. If

Page 82: Semantic Wiki

Semantic Wiki 77

an incorrect change does occur, there is always a way to recover older versions of data and to

examine the history of how the data has been changed (Sussman, Fitzpatrick, & Pilato, 2005).

Ideally, an organization’s digitized information, whether it is stored on individual hard

drives, in e-mail, or in personal files, should be searchable as long as employees are willing to

share the information. File sharing, a practice of sharing computer files over a network, has been

a common network feature since the advent of local area networking. However, finding anything

in a network of unstructured information can be quite difficult. Because unstructured

information is only implicit, some degree of analysis of the document's semantics is required for

the computer to understand the document’s meaning.

According to Tim Berners (1996), widely considered the inventor of the web, ―The goal

of the web was to be a shared information space through which people (and machines) could

communicate.‖ It was also his original intent that this so called ―space‖ ought to span all sorts of

information, from different sources and a wide array of formats, from highly valued designed

material to spontaneous ideas. Today this concept is what we call the ―Semantic Web.‖

Most of us we know the term ―web page‖ because a website is made up of pages

accessible through a web browser by means of a Uniform Resource Locator (URL). However,

URLs were not part of the original design of the web. The three main components that were

originally proposed were the Uniform Resource Identifier (URI), Hypertext Transfer Protocol

(HTTP), and Hypertext Markup Language (HTML). The popularization of URLs as a medium

for locating websites happened as the use of the term became common among IT practitioners,

and as a result, URI became URL. It is still important, however, to understand both concepts.

The Universal Resource Locator refers to the subset of the Uniform Resource Identifier, so that

URL is the representation of primary access while URI is the identification of the resource by

Page 83: Semantic Wiki

Semantic Wiki 78

name (Berners, Fielding, & Masinter, 2005). Using SVN as a repository system, one must

navigate through the directory structure of the SVN repository by typing the URL into the

repository browser in order to access and locate files (Figure 4.2).

Figure 4.2. SVN Repository Browser

While URL is the mechanism to access the resource directly, URI is different—it is a

compact string of characters for identifying the abstract resource. This means a person doesn’t

access the physical location or directory structure directly (i.e.,

svn://svn.screwturn.eu/STW/Trunk/AclEngine-Tests) but rather by typing abstracted names. For

example, on the popular wiki website Wikipedia, if a person is interested in finding the definition

of ―web page,‖ he/she can type the URL ―http://en.wikipedia.org/wiki/Web_page‖ into his/her

web browser and the URL would redirect the person to the resource about the term ―web page‖

(Figure 4.3). Wikipedia was built based on the URI principle. WikiWord and WikiName are

synonymous—they are simply the word or combination of words, without intervening white

spaces, where the first letter of each component word is capitalized and the remaining letters are

in lower case (C2, n.d.). In the example about web page, the term is composed of two words, so

the WikiName of web page is ―Web_page.‖

Page 84: Semantic Wiki

Semantic Wiki 79

Figure 4.3. Wikipedia demonstration of an access page

The URI concept is one of the basic foundations of the web, and yet they are often

misunderstood, and their implementations and uses are sometimes incomplete or incorrect

(W3C, 2003). A common mistake, responsible for many implementation problems, is to

envision a URI as an equivalent to a filename within a computer system. This is wrong as URIs

have, conceptually, nothing to do with file systems. A URI should not show the underlying

technology (server-side content generation engine, script written in a computer language) used to

serve the resource. Using URIs to show the specific underlying technology means that one is

dependent on the technology used, which, in turn, means that the technology cannot be changed

without either breaking URIs or going through the hassle of ―fixing‖ them.

The four design principles (mentioned in the Chapter 2) Tim Berners (1996) envisioned

before the explosion of the web have not been fully utilized in our current web infrastructures.

For instance, the Microsoft implementation of the Internet Information Server (IIS) at this point

still uses the URL concept as opposed to the URI concept, and that is the reason users often get

an error message when visiting sites run by Microsoft IIS. Accessing via URL means accessing

Page 85: Semantic Wiki

Semantic Wiki 80

the source directly from its location or directory structure plus the actual name of resource file.

In the URL ―http://www.smileyberks.com/Portal/DesktopDefault.asp,‖ ―http‖ stands for

protocol, ―www.smileyberks.com‖ is the domain name, and ―/Portal/DesktopDefault.asp‖ is the

physical name of the resource file. A problem arises when the name of the resource file is no

longer ―DesktopDefault.asp‖ but rather ―DesktopDefault.aspx‖ because the owner of the site

converted the site the Microsoft’s latest implementation (which changed .asp files to .aspx files).

If someone were to reference this URL now, then the link would no longer work (Figure 4.4.).

To fix this issue, the site owner would have to go back to the page referencing the URL and

make the necessary adjustments. To reiterate Berners’s third principle of the web, ―Any attempt

to constrain users as a whole to the use of particular languages or operating systems was always

doomed to fail.‖ As he predicted, this is exactly the end result.

Figure 4.4. The page cannot be found

The popularity of wiki framework gave birth to what is now called the semantic wiki,

which is hybrid solution derived from the strengths of the semantic web (machine processable,

data integration, complex queries) and wiki (easy to use/contribute, strongly interconnected,

collaboration) technologies.

Page 86: Semantic Wiki

Semantic Wiki 81

Figure 4.5. Conceptual framework: sharing of knowledge across application boundaries

Semantic Wiki

User Interface (UI)

Repository

Software

Artifacts

(documents,

code, design

etc.)

Metadata

(RDF/OWL)

Retrieval component

Version

control

systems

(SVN)

Database

(SQL Server)

Bug tracking

Requirements Management

Semantic-Aware UI Apps

Software Development Plugins

Non-Technical UsersTechnical Users

Client Component

Server Component

Repository

Recall now the topic of this chapter: how can semantic wikis be leveraged as a solution to

integrate different applications used in managing software artifacts? Semantic wikis are an easy-

to-use platform for exchanging reusable knowledge and artifacts between and within software

projects. Semantic wiki support for reuse goes beyond its origin for supporting pattern reuse as

stated before. The linking features enable the reuse of requirements specifications,

documentation, testing instructions, lessons learned, etc.

The availability of machine-understandable domain knowledge and the means to inject

semantics-awareness to the traditional web infrastructure is expected to enable or enhance

navigation, personalization, and search functionalities (Tolksdorf, Paslaru, & Simperl, 2006). A

semantic web is like glue to put broken things back together; it is a concept envisioned by Tim

Berners (1996) since the day the web was conceptualized. A semantic web is the realization of

Tim Berners’ vision of inter-machine communication. The semantic web has four major

Page 87: Semantic Wiki

Semantic Wiki 82

components: URI as identifier, resource description framework (RDF) as language, RDF Schema

as metadata, and web ontology language (OWL) as a way to establish relationships. Lastly, it is

the future of service-oriented architecture (SOA), the solution to information silos, and the

backbone of semantic wikis.

In Figure 4.5 showed that by enabling different applications like Bug Tracking,

Requirement Management, and Software Development Integrated Development Environment

(IDE) to be semantic-aware, it would be possible to bridge and interconnect data, content, and

processes across business and IT silos.

SOA solutions have been created to satisfy business goals including easy and flexible

integration with legacy systems, streamlined business processes, reduced costs, innovative

service to customers, and agile adaptation and reaction to opportunities and competitive threats.

SOA is a popular architecture paradigm for designing and developing distributed systems

(Bianco, Kotermanski, & Merson, 2007). SOAs are complex systems consisting of a large

number of heterogeneous artifacts and documents. Their documentation and maintenance

involves diverse stakeholders such as developers and business experts. Because SOA involves

both technical (e.g., interfaces specifications) and textual documentation, SOA information is

often scattered in different information spaces, which causes substantial management effort.

Semantic wikis can serve as a foundation for a lightweight solutions to document and

maintain SOAs. They allow for informal documentation with low entry barriers, while providing

means for specifying formal relationships among concepts where needed. Additional

information can be derived by combining the asserted knowledge with existing specification

documents taken from external service repositories.

Page 88: Semantic Wiki

Semantic Wiki 83

The semantic wiki solution can be achieved by importing the structure of technical

artifacts, such as interface descriptions, into a knowledge base that serves as the basic structure

for browsing the SOA, providing a better overview for developers and business experts. Through

semantic connections between services, business objects, and domain concepts, it is possible to

gain a quick overview of the SOA, e.g., which services are using a certain business object. Since

this enables an easy access to explore the list of available services, it might also foster the reuse

of existing services. Semantic wikis enable an informal style of documentation while also

providing support to incorporate machine-interpretable knowledge about technical descriptions.

Thus, they allow collecting relevant information about an SOA at a central place that had

previously been maintained separately.

Software Development Plug-ins

WikiDoc (Zhao, 2006) and XSDoc (Aquiar, David, & Padilha, 2003) are two concrete

examples of software development plug-ins that clearly demonstrate the benefits of wikis for

software documentation. Software development plug-in is used to extend the functionality of

software development integrated development environment (IDE). In WikiDoc, java code

documentation can be added via a wiki interface by both programmers and non-programmers.

XSDoc enables the creation and annotation of software framework documents as well as the

integration of different content types (text, models, and source code). Using wikis as a

documentation infrastructure might be inefficient if paper-based high quality documentation is

needed (e.g., user manuals). In these cases, the organic structure (due to the natural and non-

predefined growth) of the wiki documentation and the informality of the content might affect the

quality of the document. Wiki documentation needs to be restructured, serialized, and adapted to

the target reader. However, wikis can still serve as an important aid for document writers.

Page 89: Semantic Wiki

Semantic Wiki 84

Bachmann and Merson (2005) represent their lessons learned from using a wiki-based tool for

architecture documentation. They argue that the advantage of being able to create and maintain

architecture documentation in a dynamic and collaborative way outweighs any other

disadvantages.

Bug Tracking

Wikis have also been used to capture and manage bugs and issues of software systems,

especially in distributed open source projects. In fact, bug tracking is a collaborative a

knowledge-intensive, and interdisciplinary task, which can perfectly be supported by wikis.

Again, the linking feature and the ease of posting are the key success factors for this wiki

application. System developers as well as users are able to post, comment on, link to, describe,

and collaborate in order to detect and fix issues. Trac is an example of a wiki-based bug-tracker

that allows relating wiki pages to issues and vice versa (Trac, n.d.). Furthermore, the code of a

project can be integrated as read-only documents.

Requirements and Traceability Management

Traceability enables the developer to trace requirements back to the stakeholders or forth

to the design concepts, source code, and test cases. Traceability is not exclusive to requirements.

Especially in largely distributed projects were change occurs frequently, developers and other

system stakeholders often need to trace artifacts and decisions to other artifacts, decisions,

models, and participants. It is often useful to trace a test case to the related components that

should be tested. A design goal might be also traced to non-functional requirements. A

management decision might be traced to a risk or to a design decision. Wikis offer an easy and

intuitive way to associate everything with everything. The links between wiki pages might be

interpreted as associations between data objects (i.e., the pages themselves). This makes

Page 90: Semantic Wiki

Semantic Wiki 85

information traceable to other information pieces across the project. Using XSDoc, the authors

of the study entitled ―Wiki Based Requirements Documentation of Generic Software Products‖

(Silveira, Faria, Aguiar, & Vidal, 2005) present a wiki-based requirements and traceability

management approach especially for customizable software. The relationship between specific

requirements and generic product characteristics is established mainly via configuration

parameters and associated configuration questions. Linking and viewing facilities support

traceability analysis.

Requirements Engineering

Decker et al. present an application scenario of semantic wikis in requirements

engineering (Decker, Eric Ras, Klein, & Hoecht, 2008). They augmented the wiki with

application and solution domain-specific ontologies. This provided means to manage the organic

growth inherent in the wiki approach. Annotating the knowledge created in requirements

elicitation based on ontologies enabled the wikis to offer relevant recommendations. For

instance, explicitly ―telling‖ the wiki that an object is an actor and that an actor instantiates a use

case allows wikis to recommend possible actors. Moreover, consistency checks (e.g., each actor

should initiate at least one use case) and cross project offering based on the capture of the user

context might add value to traditional wikis. Wikis are eligible platforms for requirements

engineering because they allow a very large number of spatially distributed stakeholders to

collaborate in defining the knowledge about the system. WikiReq explores the usage of this

platform for collaborative business process reengineering (Abeti, Ciancarini, & Moretti, 2008).

Documentation

Central documentation practices often cause problems for software developers and

project managers. In general, the main challenge is to keep the information up-to-date while

Page 91: Semantic Wiki

Semantic Wiki 86

change occurs. In addition, especially in largely distributed projects with overlapping

responsibilities, information quickly gets redundant and inconsistent. Wikis present a convenient

platform to address both information up-to-datedness and consistency. The easy-to-use update

mechanism enables all stakeholders to update information as soon as changes occur. This means

that the documentation process also gets distributed simultaneously with the development and

management activities. Also, the easy information linking in wikis reduces inconsistencies by

keeping the information in a central place (e.g., a wiki page) and referencing it if required

(Happel, Maalej, & Panagiotou, 2006).

3. Support for advanced information retrieval

In ASP environments, employees are commonly given the task of investigating a

problem. This is not a trivial task, especially if one is familiar with all of the facets of the

system. There are times when an subject matter expert (SME)’s expertise is needed, but SMEs

are not always available. In these cases, the best hope is to find the original written

documentation. Unfortunately, due to any of several reasons (lack of commitment to knowledge

sharing, lack of time to update documents, lack of conducive tools for knowledge sharing), the

documents may be outdated. There are also instances when updated documents are within the

SME’s computer hard drive and e-mails. Because of this, the necessary documents often cannot

be found.

As discussed in Chapter 1, the only searching approach supported by SVN is the full text

search; however, since the data is replicated on the client’s machine, there are desktop search

utilities developed by Google and Microsoft (i.e. Google Desktop and Windows Search) that can

be downloaded for free that allow text searches of a user's e-mails, computer files, music, photos,

chats, and web pages viewed. There are also enterprise search products designed for

Page 92: Semantic Wiki

Semantic Wiki 87

organizations to manage and search content inside and outside of their networks in a way that is

transparent and easy to understand. According to Gartner, the forecasted worldwide enterprise

search market will surpass $1.2 billion in total software revenue by 2010 (Gartner, 2008):

Enterprise search technologies are entering a new phase of deployment and use.

Technologies are maturing and now offer improved indexing, querying, presentation, and

drilldown of results,‖ said Tom Eid, research vice president at Gartner. ―However, by

itself the search function has limited value. The real value of search and information

access technologies is in the ongoing efforts needed to establish effective taxonomies, to

index and classify content of all kinds, in order to provide meaningful results.

As long as search and information access capability remains a compelling business

requirement at both the desktop and enterprise level, many vendors, from startups to

established vendors, will compete to provide basic and highly focused offerings,‖ said

Mr. Eid. ―However, no one vendor can solve all information access needs. Search and

information access is not a one-size-fits-all marketplace, and the market will continue to

develop, whether within individual devices, through organizational intranets, across the

web, or specialized in a digital asset type.‖ (Gartner, 2008)

An interesting development in the realization of the semantic web is the acquisition of a

company called Powerset by Microsoft. Powerset uses so-called ―semantic web‖ technology that

generates results based on an understanding of a word's meaning and the context of its use.

―Microsoft's acquisition of Powerset makes perfect sense and is probably the best shot at a

disruptive technology that might allow it to leapfrog Google,‖ says Andrei Hagiu, assistant

professor of strategy focusing on technology, at Harvard Business School (Holahan, 2008).

Page 93: Semantic Wiki

Semantic Wiki 88

According to the Project10X report, the advantages of using a semantic wiki are as

follows: a) Concept-based rather than language-based searching: queries span vocabularies,

languages, and search engines; b) Question answering rather than simple retrieval. Also,

overlaying ontologies and knowledge bases can integrate with major web search engines; c)

More richly structured content navigation, including multiple perspectives, multiple levels of

abstraction, dependency/contingency relationships, etc.

4. Support for advanced dissemination strategy

The ability of the employee to be part of the coordination process is something for which

even e-mail has fallen short. With e-mail, if the sender would like to receive additional e-mails

as part of the mailing list, he/she must be in the cc (carbon copy) list. Other coordination

systems used in project management do the same thing, providing built-in functionalities

encoded in the application to notify the desired receiver. The limitation of the process is that

adding a new person to the coordination list is not simple. Semantic wikis support Really Simple

Syndication (RSS), which is typically used with news sites and blogs to disseminate information.

We can utilize that same concept and apply it to the coordination process of bug tracking and

other management tools.

As discussed in Chapter 1, if e-mail is a cause of information overload, then improperly

managed e-mail may also cause network overload. People commonly receive an e-mail that

contains a very long discussion, which they may not read at all because it is so long. Sometimes

employees may also overload the company network by e-mailing very large files to several

people. An alternative usage of RSS in this situation is to integrate RSS technology into the

work flow process rather than sending e-mail. Instead of sending a long e-mail containing the

entire thread of discussion about a particular issue, the company could use RSS to notify

Page 94: Semantic Wiki

Semantic Wiki 89

subscribed users every time there are new updates to the discussion. An advantage of doing this,

in addition to being less taxing on the company’s e-mail servers, is that any information is no

longer stored in an employee’s e-mail inbox, so if the employee leaves the company, finding the

information contained in that employee’s discussion would be much easier.

Conclusion

Semantic wiki knowledge-sharing support for Application Service Providers’ internal

business unit in managing software artifacts were identified and conceptualized in a different

dimension. By applying the same set of requirements in knowledge-sharing, this chapter

highlights, on a pragmatic level, the issues and challenges that ASP client service groups (CSGs)

and software development groups (SDGs) are facing in the delivery of software solutions.

Collaboration and communication support was identified as an important aspect that

requires social skill and technological dynamics. The degree of coordination and communication

involved for CSGs and SDGs to perform their job requires a solution that is centralized, simple,

secure, scalable, and intuitive. Semantic wikis can be used as a coordination and communication

tool for gathering of requirements and sharing of ideas.

Semantic wikis’ support for sharing knowledge across application boundaries was

discussed in detail regarding the expansion of awareness and understanding of future

development initiatives. The semantic web was addressed as a solution for information silos and

for future service-oriented architecture strategies. Semantic wikis have promising applications

which can be leveraged by ASPs for bug tracking, requirement and traceability management,

requirements engineering, and documentation; this was presented as evidence of semantic

awareness potential. Because of its semantic awareness, a semantic wiki can be used as an

integrated application for advanced searching and context-aware navigation.

Page 95: Semantic Wiki

Semantic Wiki 90

Support for advanced information retrieval was identified as one of the most important

aspects of the system, because inability to locate valuable information when needed is cited as

one the most common issues that knowledge workers face today. Semantic wiki solutions for

today’s common issue of SMEs were addressed in several ways, such as: concept-based rather

than language-based searching; question answering rather than retrieval; richer structure content

navigation rather than the traditional forward linking. Desktop searches as well as enterprise

searches were also noted, proving that the need for efficient and effective ways to find pertinent

information is relevant in saving time, money, and effort. Semantic wikis have advanced

searching and retrieval functionality and can be used for tracing issues due to their advanced

content analysis feature.

Support for an advanced dissemination strategy was suggested as an area of

enhancement, moving from the traditional e-mail technique to an RSS technique. Examples

were presented to showcase different ways in which RSS can be used as solution for information

overload and network overload.

Page 96: Semantic Wiki

Semantic Wiki 91

CHAPTER 5

Semantic Wiki-based Knowledge Management System solution for the Requirements of

Software Artifacts Documentation

Introduction

In Chapter 3, the researcher proposed that semantic wikis are the most practical solution

to support the information sharing requirements of Application Service Providers, while in

Chapter 4, the researcher identified the challenges of managing software artifacts and presented

several alternative solutions. This chapter will focus more intensely the detailed requirements of

software artifacts documentation. The researcher will identify the requirements for creating and

maintaining software artifacts documentation. The requirements used by the researcher in this

evaluation were adapted from the study done by Carnegie Mellon University (CMU) entitled

―Experience Using the Web-Based Tool Wiki for Architecture Documentation.‖ (2005) CMU’s

study focused on the benefits and challenges of using a wiki-based collaborative environment to

create software architecture documentation. While the study done by CMU was on the

traditional wiki and specifically for architectural documentation, this researcher was able to

utilize their experiences and augmented the applicability of semantic wikis to address some of

the challenges the CMU researchers encountered in their study.

Requirements of Software Artifacts Documentation

Considering the latest semantic technology developments and innovations, the current

issue is still to find a single solution that can meet the requirements of software artifacts

documentation. The evidence presented in Chapters 1 and 2 indicated that the biggest challenge

Page 97: Semantic Wiki

Semantic Wiki 92

in using wiki is that it is less capable of providing advanced user interface (UI) functionalities

compared to Microsoft Word or any other Windows applications.

A document prepared using a web-based documentation tool can typically be structured

as linked web pages. Compared with documents written with a text-editing tool, web-oriented

documents typically consist of short pages (created to fit on one screen) with a deeper structure.

One page usually provides some overview information and has links to more detailed

information. When done well, a web-based document is easier for people to use to view

overview information. On the other hand, it can become more difficult to navigate if someone

needs more detail. Finding information can be more difficult in multi-page web-based

documents than in a single-file, text-based document unless a search engine is available.

Using a semantic wiki as a web-based documentation tool, we can see some solutions for the

given requirements:

1) Support for documents that contain text and diagrams. Software artifacts

documentation used throughout the life cycle of the application is comprised of different

artifacts which are categorized as source code, models, and documentation. Part of the life

cycle is the design stage, which involves the creation of design documents (Burback, 1998).

Therefore, the requirement is identify a solution that has both text editing and drawing

functionalities.

As discussed in Chapter 3, the limitation of wikis and the web-based application involves

the user interface. Even though a web page can contain text and multimedia, the capability it

can provide is purely read-only. Documentation is structured as link pages which are

suitable only for browsing and not for producing printed versions.

Page 98: Semantic Wiki

Semantic Wiki 93

Result of CMU Study: The inability of the wiki tool to deal with drawing is most likely its

biggest drawback.

Analysis: Wikis currently don’t support advanced user interface capable of producing

diagrams; however, with current technology, it is not impossible to add this feature to a wiki.

Gliffy.com is an example of rich internet application (RIA) that can create process flow

diagrams, organizational charts, floor plans, business processes, network diagrams, technical

drawings, user interface wire frames, and more using an online interface (Figure 5.1). Gliffy

is also capable of producing quality printing.

Figure 5.1. Gliffy online rich internet application for diagramming

According to Rafe Needleman, editor at large of CNET, Gliffy is going to be the online

replacement of Visio. Needleman says:

Like other online applications, it has inherent advantages over traditional

software. Collaboration is easier, for one. Although Gliffy doesn't offer

real-time group editing like Writely, Google Spreadsheets, or

SynchroEdit, it makes it easy for multiple users to work on a diagram in

Page 99: Semantic Wiki

Semantic Wiki 94

turns. Gliffy does track all changes made to a document. It's kind of like

a wiki in that way. (Rafe, 2006 )

Despite the dominance of Microsoft’s product suite in the consumer market, experts

consider the company to be far behind the times because they have not developed an internet-

ready application version of Visio.

It is important to understand that a semantic wiki is not the solution to application silos;

this solution lies in the semantic web. Therefore, if the Gliffy supports annotation metadata

like resource description framework (RDF), then it would be possible to integrate a semantic

wiki with Gliffy.

2.) Support for multiple views with elements and relations. Fixing bugs, adding new

functionalities, and deploying releases are the most common tasks after the initial launch of

an application. In order to accomplish these tasks, a structured view of information, which is

able to support relationships between views, is an important aspect of the solution.

Documentation should provide a smart navigation feature. If the developer, during the

problem investigation process, would like to find out in which release a certain incident bug

was resolved, he should be able to use an intelligent search and navigate through the site to

learn more about how the issue occurred, what might be the cause, and how the issue could

be related to another bug.

Views in a wiki can be created as a set of pages that are linked to one another. It is also

easy to create an overview page to help stakeholders select views. The linking feature and

the ease of posting are the key success factors for this type of wiki application. System

developers as well as users are able to post, comment on, link to, describe, and collaborate in

order to detect and fix issues.

Page 100: Semantic Wiki

Semantic Wiki 95

Result of CMU Study: The inability of wikis to understand architecture elements is a

drawback.

Analysis: It is true that the limitation of a traditional wiki is the inability to establish

relationships due to a lack of semantic awareness. However, semantic wikis can change the

way content is presented based on semantic annotations. This can be accomplished by

enriching pages by displaying semantically related pages in a separate link box, displaying

information that can be derived from the underlying knowledge base (e.g., a box with a

graphical tree of releases and bug fixes), or even rendering the content of a page in a different

manner that is more suitable for the context (e.g., multimedia content vs. text content). Trac

(Trac, n.d.) is an example of a wiki-based bug-tracker that allows relating wiki pages to

issues and vice versa. Furthermore, the code of a project can be integrated as read-only

documents. Trac is an enhanced wiki and issue tracking system for software development

projects. It uses a minimalistic approach to web-based software project management (Trac,

n.d.). Trac’s change log functionality is a good of example of how a wiki can support

multiple views with elements and relations (Figure 5.2).

Page 101: Semantic Wiki

Semantic Wiki 96

Figure 5.2. Trac’s integrated software configuration and project management

3.) Support for version control. Requirements gathering is a collaborative effort which means

that documentation usually has more than one author; therefore, version control and merging

capabilities would be helpful.

Wikis have version control for every page and provide the capability to show the

differences between versions. Furthermore, a page can be structured into sections, and any

section can be edited. This capability to segment pages should minimize possible concurrent

changes to the same document, supporting different team members editing the same

document or even the same page simultaneously. Although wikis support collaboration, they

have limited support for merging changes, baselining pages, or managing sets of pages. As

mentioned in Chapter 3, wikis do not have built-in capabilities for tracking changes like

Microsoft Word does.

Result of CMU Study: A discussion page is not coupled with a page version. When

reviewing comments, a team member could tell neither which version of the page was being

Page 102: Semantic Wiki

Semantic Wiki 97

discussed nor whether the comment was current or old. The team overcame this weakness by

mentioning the page version number in their comments as a standard practice.

Analysis: The issue that they encountered had nothing to do with a semantic wiki. What

they encountered was simply a limitation of the traditional wiki implementation and could be

addressed in succeeding versions of the traditional wiki (Figure 5.3).

Figure 5.3. Page revisions history

4.) Support for easy access. Throughout the life cycle of any project initiative, documents will

be read by a diverse group of stakeholders, requiring the documentation artifacts to be easy to

access and navigate. In an ASP model, some employees who are interfacing with the client

are also usually working remotely and have no access to the company’s virtual private

network (VPN). This must be considered in the selection process. The web-based pages

created with a wiki should be easy for most stakeholders to read. For developers who are

interested in seeing all of the details in a single place, a wiki might be more difficult to use.

Result of CMU Study: They encountered two issues here. First, the structure became more

complex as the amount of information grew, and they had no insight regarding which

Page 103: Semantic Wiki

Semantic Wiki 98

navigational features to use or how to use them in substantive architecture documentation.

The second problem was the expectation that all stakeholders would actually read the

documentation online to get the latest information. This did not happen, so they had a

problem with stakeholders coming to meetings with old versions of a document. If a

stakeholder has no reliable internet connection, then it is not advisable to rely on a wiki.

Therefore, the stakeholders relied on the last printed copy of the document that was available,

which was printed days before the meeting. By the time of the meeting, the information in

the wiki pages had been changed, causing confusion as participants referenced different

versions.

Analysis: In the first issue, it is imperative to make the inherent structure of the wiki—its

strong linking between pages—accessible to machines (agents, services) beyond mere

navigation. This is generally done by annotating existing navigational links with symbols

that describe their meaning. Virtually all semantic wikis allow annotating links by assigning

them to certain types. This ensures that every link carries meaning beyond mere navigation.

Regarding the second issue, it had nothing to do with the wiki. The issue is not the internet

connection; it is the implementation of the wiki. Depending on how a wiki is used, if the

wiki will be used only within a company’s network, then it is better to install the wiki locally

only. If it must be accessible outside of the company’s network, then the wiki should be

installed to make sure the site is accessible from the outside. In any case, the wiki should be

available internally at a minimum.

5.) Low cost. Because many stakeholders are potentially interested in the documentation, the

costs for the tool environment and system administration should be kept to a minimum.

Page 104: Semantic Wiki

Semantic Wiki 99

Wikis require a server connected to an intranet or the internet. In addition to network

connectivity and the wiki software itself, these elements are required: a web server (e.g.,

Apache HTTP Server), a relational database server (e.g., MySQL), and PHP. It is possible to

install a complete solution using solely free and open source software. On the server side,

the cost of installing and maintaining the wiki is related to the administration of the server.

Administration involves executing backups, installing version upgrades, setting user rights,

customizing functionality, and configuring localization. In practice, little maintenance is

required after installation. On the client side, there is no additional cost for the users of the

wiki since the only tool they need is a web browser. Therefore, the relative cost of a wiki is

inversely proportional to the number of users.

Result of CMU Study: The student team and customer were able to use the infrastructure did

so with no problems and at very little cost. The tool is robust and did not crash. One

incident, however, showed the strong dependency on a working infrastructure. For several

days, the team lost its server access and, with it, the ability to work on any documents. This

problem is not specific to the wiki; it applies to all server-based infrastructures (such as web

or mail servers) and can be solved with the usual measures, such as providing redundancy.

The problem does demonstrate that a working infrastructure is critical.

Analysis: To reiterate their recommendation, the issue of infrastructure is critical to almost

everything. It must be treated as a separate matter and with great importance.

6.) Support for change requests.

A wiki allows anyone to change content. When developers discover a problem in the

document, they can correct it immediately. Anyone interested in changes to a particular part

of the documentation can display what was changed, when, and by whom. According to

Page 105: Semantic Wiki

Semantic Wiki 100

CMU, when they rated the wiki against the list of architecture documentation requirements,

they concluded that wiki offers an acceptable solution.

Result of CMU Study: The student team did set up a feedback capability with its client,

allowing reviewers to comment on or change pages directly. Interestingly, the wiki-based

feedback never happened. The client provided feedback via e-mail and telephone

conferences. A feature that was intended to improve the communication between

stakeholders was not used. Wikis change this traditional feedback paradigm, and, therefore,

the users have to be reeducated.

Analysis: In Chapter 3, assumptions were noted that the success of a wiki is dependent on

the behavioral factor of the users. If they don’t take advantage of the technology, then it will

be rendered useless.

Conclusion

Challenges and issues of requirements of software artifacts documentation were

identified and analyzed in–depth in this chapter to isolate source of the problem. Results of

CMU’s study on the experiences of using a wiki for architecture documentation served as the

foundation of this chapter. Lessons learned on each requirement served as a baseline for a better

semantic wiki solution. From the CMU study using traditional wikis, the biggest drawback

indicated was the inability of the wiki to deal with the creation of drawings. It was argued that

although support for this kind of feature is not available, a solution is not far from reality. The

inability of a wiki to understand architecture was something that the traditional wiki failed to

address but that semantic wikis are now capable of. The desire for version control to identify the

version of the page being discussed can be possibly addressed by enhancing the wiki. This

enhancement had nothing to do with the semantic wiki. The requirement for easy access to

Page 106: Semantic Wiki

Semantic Wiki 101

documentation was comprised of two separate issues: the unstructured nature of the wiki and the

accessibility of the wiki when an internet connection is not available. The issue of a wiki being

unstructured is no longer a concern with semantic wikis because they can do more than mere

navigation. The network accessibility problem was a wiki deployment concern and had nothing

to do with the wiki as an application. The low cost requirement reflects the nature of all wikis,

which can be implemented as open source solutions at no cost. The requirement for use of the

change request feature was not a technological issue but rather a human factor. This will require

user reeducation as software is a simply tool, and if it is not used, it is rendered useless.

Page 107: Semantic Wiki

Semantic Wiki 102

CHAPTER 6

Summary, Conclusion and Recommendations

Introduction

This study looked into the dynamics of the solution being provided by semantic wiki-

based knowledge management system for application service providers in managing software

artifacts. This study serves as the baseline information for ASP companies and IT departments

that are in the software solution (programmers, software architect, software engineer, etc.) for

them to know the important features and capabilities of semantic wiki-based knowledge

management system as compared to the other widely used knowledge management system for

software artifacts. The information which could be derived from the analysis of this study could

help the IT managers and company executives in the information technology companies to

understand the differences of semantic wiki-based knowledge management system and the

earlier system used by ASP companies in documenting software artifacts.

The output of this study could also be beneficial to new knowledge management system

development practitioners. It would enable them to find other potential fields or areas of

expertise in the wiki-based knowledge management, which would improve or upgrade their

skills for a semantic wiki-based knowledge management system capability and also for

technological advancement.

The purpose of this study is to determine the following: How can Semantic Wiki be

implemented and used to share domain knowledge, and used to be able to create, search,

navigate, collaborate and manage software artifacts?

To answer this question, the following sub questions were addressed:

Page 108: Semantic Wiki

Semantic Wiki 103

4) What makes semantic wiki-based knowledge management system a good solution for the

information sharing requirements of Application Service Providers?

5) How can we leverage semantic wiki as a solution for knowledge management in

managing software artifacts?

6) What Are the Requirements of Software Artifacts Documentation and How Can

Semantic Wiki Address Those Requirements?

The research methodology used for this study was a qualitative nature. It was obtained

from secondary sources. Sources pertinent to the main research question and three defining sub-

questions, which formulated this research project, were sought. Descriptive and comparative

analyses to answer the main research question and three defining sub-questions were done.

Secondary research information was obtained from primary research sources, including scholarly

books; conference proceedings, peer-reviewed journals; unpublished research papers; any data

that has been published by private or nonprofit organizations (this includes not for profit

organizations) and information available from a college, university, or trade school.

Summary

Based on the four requirements of information sharing discussed and analyzed in chapter

3, 1) its capability to support communication and collaboration; 2) its capability to provide

advanced information retrieval techniques; 3) its capability to allow machine-understandable

domain knowledge to be shared across application boundaries; and 4) its capability of pushing

information required by the user while at the same time pulling information for the information

that may be of interest to others, semantic wikis offer the most functionalities and flexibilities

for effective and efficient information sharing relative to knowledge management systems of

ASPs.

Page 109: Semantic Wiki

Semantic Wiki 104

It is also important to note that the most evident caveat in using wikis is the lack of user

interface capabilities which are available in MS Word and the printing capabilities available in

almost any web-based application that are not available in wikis. The rest of the important

functionalities and flexibilities are call for the competitive advantage of Semantic wiki-based

knowledge management system.

Semantic wikis are promising but complex in that anybody wishing to unlock their power

must have tacit and explicit knowledge of the processes involved; however, they are an evolving

information systems technology that researchers and IT practitioners are keen to explore. It is a

worthwhile exercise to explore and maximize the capabilities of semantic wikis in order to

improve information sharing for the knowledge management systems of ASP companies and

their clients, but it is also a significant challenge to the implementers and innovators of this

technology to determine how quickly this technology could be put into place in a company to

facilitate better information sharing among its users.

Semantic wiki knowledge-sharing support for Application Service Providers’ internal

business unit in managing software artifacts were identified and conceptualized in a different

dimension. By applying the same set of requirements in knowledge-sharing, chapter 4 highlights,

on a pragmatic level, the issues and challenges that ASP client service groups (CSGs) and

software development groups (SDGs) are facing in the delivery of software solutions.

Collaboration and communication support was identified as an important aspect that

requires social skill and technological dynamics. The degree of coordination and communication

involved for CSGs and SDGs to perform their job requires a solution that is centralized, simple,

secure, scalable, and intuitive. Semantic wikis can be used as a coordination and communication

tool for gathering of requirements and sharing of ideas.

Page 110: Semantic Wiki

Semantic Wiki 105

Semantic wikis’ support for sharing knowledge across application boundaries was

discussed in detail regarding the expansion of awareness and understanding of future

development initiatives. The semantic web was addressed as a solution for information silos and

for future service-oriented architecture strategies. Semantic wikis have promising applications

which can be leveraged by ASPs for bug tracking, requirement and traceability management,

requirements engineering, and documentation; this was presented as evidence of semantic

awareness potential. Because of its semantic awareness, a semantic wiki can be used as an

integrated application for advanced searching and context-aware navigation.

Support for advanced information retrieval was identified as one of the most important

aspects of the system, because of its inability to locate valuable information when needed is cited

as one the most common issues that the different knowledge workers faced today. Semantic wiki

solutions for today’s common issue of SMEs were addressed in several ways, such as: concept-

based rather than language-based searching; question answering rather than retrieval; richer

structure content navigation rather than the traditional forward linking. Desktop searches as well

as enterprise searches were also noted, proving that the need for efficient and effective ways to

find pertinent information is relevant in saving time, money, and effort. Semantic wikis have

advanced searching and retrieval functionality and can be used for tracing issues due to their

advanced content analysis feature.

Support for an advanced dissemination strategy was suggested as an area of

enhancement, moving from the traditional e-mail technique to an RSS technique. Examples were

presented to showcase different ways in which RSS can be used as solution for information

overload and network overload.

Page 111: Semantic Wiki

Semantic Wiki 106

Challenges and issues of requirements of software artifacts documentation were

identified and analyzed in–depth in chapter 5 to isolate the source of the problem. Results of

CMU’s study on the experiences of using a wiki for architecture documentation served as the

foundation of this chapter. Lessons learned on each requirement served as a baseline for a better

semantic wiki solution. From the CMU study using traditional wikis, the biggest drawback

indicated was the inability of the wiki to deal with the creation of drawings. It was argued that

although support for this kind of feature is not available, a solution is not far from reality. The

inability of a wiki to understand architecture was something that the traditional wiki failed to

address, but semantic wikis are now capable of. The desire for version control to identify the

version of the page being discussed can be possibly addressed by enhancing the wiki. This

enhancement had nothing to do with the semantic wiki. The requirement for easy access to

documentation was comprised of two separate issues: the unstructured nature of the wiki and the

accessibility of the wiki when an internet connection is not available. The issue of a wiki being

unstructured is no longer a concern with semantic wikis because they can do more than mere

navigation. The network accessibility problem was a wiki deployment concern and had nothing

to do with the wiki as an application. The low cost requirement reflects the nature of all wikis,

which can be implemented as open source solutions at no cost. The requirement for use of the

change request feature was not a technological issue but rather a human factor. This will require

user reeducation as software is simply a tool, and if it is not used, it is rendered useless.

Conclusion and Recommendations

Based on the analysis which the researcher made in this study, a semantic wiki-based

knowledge management system is the best solution for application service providers (ASPs) in

managing their software artifacts.

Page 112: Semantic Wiki

Semantic Wiki 107

This study is intended to help ASPs understand the capabilities of semantic wikis as a

knowledge management solution for managing software artifacts. This study can serve as

baseline information for ASP and IT department professionals who are implementing the

software solution (programmers, software architects, software engineers, etc.). The study may

also encourage more people in the IT profession to learn about and specialize in semantic wiki-

based knowledge management systems development and semantic wiki-based solutions and

innovations. Additionally, the study promoted that knowledge sharing should be enhanced

among practitioners for both the ASPs and their clients. Furthermore, the results of this study

indicated the wisdom of utilizing semantic wiki-based knowledge management systems for ASPs

in managing software artifacts. The results suggested that it is important for the different

software development teams in an ASP to understand the various ways a semantic wiki can be

used for sharing common knowledge. Lastly, recommendations of the study can be used to

support the implementation of semantic wiki-based knowledge management systems for ASPs in

managing software artifacts.

Some of the recommendations the researcher identified include: For the implementers of

semantic wiki-based knowledge management systems, the four requirements of information

sharing should always be present in the system to effectively and efficiently share the

information among stakeholders. For companies not yet using semantic wiki-based technology in

their knowledge management system, it is recommended that they find ways to utilize the

technology and maximize the capabilities of semantic wikis to benefit their companies and

improve their information sharing. As collaboration and communication support was identified

as one of the most important aspects of knowledge-sharing, and communication of that degree

requires social skills and technological dynamics, it is recommended that the degree of

Page 113: Semantic Wiki

Semantic Wiki 108

coordination and communication among Customer Support Groups (CSGs) and Software

Development Groups (SDGs) should be improved, particularly in the areas of gathering of

requirements and sharing of ideas using semantic wikis. It is also recommended that new

adopters of a semantic-wiki based knowledge management system maximize the capabilities of

this technology in integrating different applications such as advanced searching, context-aware

navigation, bug tracking, requirement and traceability management, requirements engineering,

and documentation. The study recommended that the implementation of semantic wiki-based

knowledge management systems could help ASPs save money, time and effort when the

technology is used in managing software artifacts, because semantic wikis have advanced

searching and retrieval functionality which could be used for tracing system bug issues and

problems during advanced content analysis of information system. This enhancement will serve

as the solution for the previously encountered problems of information and network overload by

serving as a support mechanism for an advanced dissemination strategy, which was suggested as

an area of enhancement that could be achieved by semantic wikis (particularly in moving from

traditional e-mail techniques to an RSS technique). The semantic wiki technology is a good

application resource for the implementation of low-cost open source solutions, and the lack of

use of the change request feature could be addressed by re-educating users with human factor

consideration. It is also important to consider that the desire for version control in documenting

software artifacts can be addressed using semantic wiki technology. For this reason, it is

recommended that semantic wikis should be considered as a tool to be used to make people’s

lives easier because of its technological advancement, and organizations should consider the

social aspect of implementing this technology. It is also important to include that an

interdisciplinary/transdisciplinary approach increases the usefulness of any solution to the

Page 114: Semantic Wiki

Semantic Wiki 109

different issues of knowledge management, ensuring a holistic information management system

among ASPs, information technology practitioners, and relevant stakeholders. Lastly, it is

recommended that the government, private sector, and industry associations to join hands in

implementing more research in the area of knowledge management and knowledge management

systems in order to continue improving the information and knowledge-sharing available among

these stakeholders in different sectors of society that use these technologies to provide a better

work environment and improved access to information in their organizations in the coming

years.

Page 115: Semantic Wiki

Semantic Wiki 110

REFERENCES

Abeti, L., Ciancarini, P., & Moretti, R. (2008). Wiki-based requirements management for

business process reengineering. WikiSym. Porto, Portugal.

Alavi, M., & Leidner, D. E. (1999, February). Knowledge management systems :

Issues,challenges, and benefits. Communications of the Association for Information

Systems .

Antoniou, G., & Harmelen, F. V. (2004). A Semantic Web Primer. Cambridge Massachusetts

USA: MIT Press.

Aquiar, A., & David, G. (2005). WikiWiki weaving heterrogeneous software artifacts. WikiSym

'05 (pp. 67-74). San Diego, CA, USA.: ACM.

Aquiar, A., David, G., & Padilha, M. (2003). XSDoc: an extensible wiki-based infrastructure for

framework documentation. Retrieved April 24, 2009, from

http://paginas.fe.up.pt/~aaguiar/xsdoc/XSDoc-JISBD-2003.pdf

Argote, L. (1999). Organizational learning: creating, retaining and transferring knowledge.

Norwell, MA, USA: Kluwer.

Aumueller, D., & Auer, S. (n.d.). Towards a semantic wiki wxperience - desktop integration and

interactivity in WikSAR. Augustusplatz, Liepzig, Germany.

Bachmann, F., & Merson, P. (2005, September). Experience using the web-based tool wiki for

architecture documentation. Retrieved May 25, 2009, from

http://www.sei.cmu.edu/pub/documents/05.reports/pdf/05tn041.pdf

Balani, N. (2005). The future of the web is semantic. Retrieved June 1, 2009, from

http://www.ibm.com/developerworks/web/library/wa-semweb/

Berners, T. (1996). The world wide web: past, present and future. Retrieved May 25, 2009, from

http://www.w3.org/People/Berners-Lee/1996/ppf.html

Berners, T., Fielding, R., & Masinter, L. (2005, January). Uniform resource intentifier (URI) :

Generic syntax. Retrieved May 25, 2009, from

http://labs.apache.org/webarch/uri/rfc/rfc3986.html#URLvsURN

Bianco, P., Kotermanski, R., & Merson, P. (2007). Evaluating a service-oriented architecture.

Retrieved June 06, 2009, from

http://www.sei.cmu.edu/pub/documents/07.reports/07tr015.pdf

Page 116: Semantic Wiki

Semantic Wiki 111

Bobsguide.com. (n.d.). Business process outsourcing solutions. Retrieved June 19, 2009, from

bobsguide.com: http://www.bobsguide.com/guide/BPO.html

Borland, R. J., & Tenkasi, R. V. (1995). Perspective making and perspective taking in

communities of knowing. Organization Science , 350-372.

Boyd, S. (2005). Are you ready for social software? Retrieved May 31, 2009, from

http://www.stoweboyd.com/message/2006/10/are_you_ready_f.html

Brannstrom, M., & Martenson, C. (2006). Enhancing situational awareness by exploiting wiki

technology. Retrieved May 25, 2009, from

http://www.foi.se/infofusion/bilder/CIMI_2006_S3_2.pdf

Breitman, K., Casanova, M., & Truszkowski, W. (2006). Semantic web: concepts, technologies

and applications. London, UK: Springer Science+Business Media, LLC.

Brown, J. S., & Duquid, P. (1991). Organizational learning and communities of practice: Toward

a unified view of working learning innovation. Organization Science , 40-57.

Buffa, M., & Gandon, F. (2006). SweetWiki: semantic web enabled. WikiSym (pp. 69-78).

Odense, Denmark: ACM.

Burback, R. (1998). The design phase . Retrieved June 19, 2009, from

http://infolab.stanford.edu/~burback/watersluice/node11.html

C2. (n.d.). Portland pattern repository. Retrieved May 25, 2009, from http://c2.com/cgi/wiki?

C2. (2009). Wiki design principles. Retrieved June 19, 2009, from

http://www.c2.com/cgi/wiki?WikiDesignPrinciples

Cattaneo, F., Nitto, E. D., Fuggetta, A., Lavazza, L., & Valetto, G. (2000). Managing software

artifacts on the web with Labyrinth. International Conference on Software Engineering

(pp. 746-749). Limerick, Ireland : ACM.

Chau, T., & Maurer, F. (2005). A case study of wiki-based experience repository at a medium-

sized software company. Proceedings of the 3rd international conference on Knowledge

capture (pp. 185 - 186). Banff, Alberta, Canada: ACM.

Cheung, K. S., Lee, F. S., & Ip, R. K. (2005). The development of successful on-line

communities. International Journal of The Computer, the Internet and Management , 71-

89.

Collins, B. S., Fitpatrick, B. W., & Pilato, M. C. (n.d.). Version control with subversion.

Retrieved May 25, 2009, from svnbook.com: http://svnbook.red-

bean.com/en/1.5/svn.basic.vsn-models.html

Page 117: Semantic Wiki

Semantic Wiki 112

Cummings, J. (2003). Knowledge sharing. Retrieved May 30, 2009, from

http://lnweb90.worldbank.org/oed/oeddoclib.nsf/docunidviewforjavasearch/d9e389e7414

be9de85256dc600572ca0/$file/knowledge_eval_literature_review.pdf

Davenport, T. G., De Long, D. W., & Beers, M. B. (1997, January). Building successful

knowledge management projects. Retrieved May 30, 2009, from

http://www.providersedge.com/docs/km_articles/Building_Successful_KM_Projects.pdf

Davenport, T. H., & De Long, D. W. (1998). Successful knowledge management projects. Sloan

Management Review .

Davis, M. (2006). Semantic wave 2006 - part-1: Executive guide to billion dollar Markets. A

Project10X special report.

Decker, B., Eric Ras, J. R., Klein, B., & Hoecht, C. (2008, 2008). Self-organized reuse of

software engineering knowledge supported by semantic wikis. Retrieved June 1, 2009,

from http://en.scientificcommons.org/40499741

Desilets, A., Paquet, S., & Vinson, N. (2005). Are wiki usable? WikiSym (pp. 3-14). San Diego,

CA, USA: ACM.

Do Factory. (n.d.). Design patterns. Retrieved May 25, 2009, from

http://www.dofactory.com/Patterns/Patterns.aspx

Drucker, P. (1993). Post-capitalist society. New York, NY: HarperBusiness.

Fielding, R. (2000). Architectural styles and the design of network-based software architectures.

Retrieved May 25, 2009, from http://www.ics.uci.edu/~fielding/pubs/dissertation/top.htm

File Maker. (2007). Business information silos survey. Retrieved May 25, 2009, from

http://www.filemaker.co.uk/frustrated/downloads/FM_Silo_Ex_Sum.pdf

Gartner. (2008, Feb 5). Gartner says worldwide enterprise search market will surpass $1.2

billion in total software revenue by 2010. Retrieved June 2005, 2009, from Gartner:

http://www.gartner.com/it/page.jsp?id=596407

Gillingham, H., & Roberts, B. (2006). Implementing knowledge m: A practical approach.

journal of knowledge management practice .

Gonzales, J. R. (2005, February). Wiki and the wiki way: beyond a knowledge management

solution. Retrieved May 25, 2009, from

http://www.uhisrc.com/FTB/Wiki/wiki_way_brief%5B1%5D-Jennifer%2005.pdf

Hahn, J., & Subramani, M. (2000). A framework of knowledge management system issues:

Issues and challenges for theory and practice. International Conference on Information

Page 118: Semantic Wiki

Semantic Wiki 113

Systems (pp. 302-312). Brisbane, Queensland, Australia: Association for Information

Systems: Atlanta, GA, USA.

Happel, H.-J., Maalej, W., & Panagiotou, D. (2006). Tightening knowledge sharing in distributed

communities by applying semantic technologies. Information Society Technologies.

Herman, I. (2009). W3C semantic web activity. Retrieved May 25, 2009, from

http://www.w3.org/2001/sw/

Holahan, C. (2008, July 1). Microsoft's plan b for search. Retrieved June 5, 2009, from

http://www.businessweek.com/technology/content/jun2008/tc20080630_349921.htm

IBM. (n.d.). Pattern solution. Retrieved May 25, 2009, from IBM:

http://www.ibm.com/developerworks/rational/products/patternsolutions/#i

Ives, W., Torrey, B., & Gordon, C. (2003). Knowledge sharing is human Behavior, in:

Knowledge management: classic and contemporary work. Cambridge MA: MIT Press.

KPMG Management Consulting. (1998). Knowledge management research report.

Lindvall, M., Feldmann, R. L., Karabatis, G., Chen, Z., & Janeja, V. P. (2009). Searching for

relevant software change artifacts using semantic. SAC'09 (pp. 496-500). Honolulu, HI,

USA: ACM.

Lo, B. W. (2003). The application service provider-cliet relationship and knowledge sharing. 2nd

IASTED International Conference, (pp. 407-086). Scottsdale,AZ,USA.

Miller, W. L., & Morris, L. (1999). Fourth generation r&d: Managing knowledge, technology,

and innovation. Hoboken NJ: Wiley.

Mullick, Bass, Houda,Paulish & Cataldo. (2006). Proceedings of the IEEE international

conference on global software engineering (pp. 203 - 212). Washington, DC, USA: IEEE

Computer Society.

Nonaka, I. (1994, February). A dynamic theory of organizational knowledge creation.

Organization Science , 14-37.

Nonaka, I., & Takeuchi, H. (1995). The knowledge-creating company: How Japanese

companies create the dynamics of innovation. New York: Oxford University Press.

O’Brien, D., Bernoff, J., Sorley, J., & Flemming, G. (2001). Portals squeeze business media.

Cambridge, MA USA: Forrester Research, Inc.

Oren, E., Breslin, J. G., & Decker, S. (2006). How semantics make better wikis. www.

Edinburgh, Scotland: ACM.

Page 119: Semantic Wiki

Semantic Wiki 114

Philips, C. (2007, March). Beyond recruiting and retention. Retrieved May 25, 2009, from

http://download.microsoft.com/download/2/a/1/2a11a642-2804-4de9-b186-

7341768a8803/Energy%20EyeOpener%20FINAL%20presentation%20May14%20no%2

0notes.ppt

Polanyi, M. (1967). The tacit dimension. Garden City, NY, USA: Doubleday.

Rafe, N. (2006 , June 27). Gliffy, the online visio killer. Retrieved June 05, 2009, from

http://news.cnet.com/8301-10784_3-6088621-7.html?tag=newsmap

Rahmel, D. (2007). Professional Joomla. John Wiley and Sons.

Sarnikar, S., & Zhao, L. (n.d.). Task-centric document recommendation via context-specific

terms. Retrieved June 4, 2009, from http://www.aaai.org/Papers/Workshops/2006/WS-

06-12/WS06-12-009.pdf

Schaffert, S., Westenthaler, R., & Gruber, A. (2006). IkeWiki: A user-friendly semantic wiki.

3rd European Semantic Web Conference (ESWC). Budva, Montenegro: Salzburg

Research Forschungsgesellschaft.

SemWiki.org. (n.d.). Retrieved June 19, 2009, from http://www.semwiki.org/

Silveira, C., Faria, J. P., Aguiar, A., & Vidal, R. (2005). Wiki based requirements documentation

of generic software products. AWRE’05, the Tenth Australian Workshop on Requirements

Engineering, (pp. 42-51). Melbourne, Australia.

Steve, M. (2004). Software engineering, not computer science. Boston, MA, USA: Addison-

Wesley.

Small, C., & Sage, A. (2005/2006). Knowledge management and knowledge sharing: A review.

information knowledge systems management , 153-169.

Sundar, S., Oeldorf-Hirsch, A., & Xu, Q. (2008). The bandwagon effect of collaborative filtering

technology. CHI 2008 Proceedings (pp. 3453-3458). Florence, Italy: ACM.

Sussman, B. C., Fitzpatrick, B. W., & Pilato, M. C. (2005). Version control with subversion (2nd

Edition ed.). O'Reilly Media.

Teece, D. (2000). Strategies for managing knowledge assets: The role of firm structure and

industrial context. Long Rang Planning , 35-54.

The Standish Group Report. (1995). The Standish group report chaos.

Tjaden, T. (2007, June 26). Combating information overload. Retrieved May 25, 2009, from

http://www.slaw.ca/2007/06/26/combating-information-overload/print/

Page 120: Semantic Wiki

Semantic Wiki 115

Tolksdorf, R., Paslaru, E., & Simperl, B. (2006). Towards wikis as semantic hypermedia.

WikiSym 2006 (pp. 78-88). Odense, Denmark: ACM.

Trac. (n.d.). Retrieved June 05, 2009, from Trac: http://trac.edgewall.org/

Trac. (n.d.). Retrieved June 05, 2009, from Trac: http://www.hosted-

projects.com/trac/TracDemo/Demo/about

Tsai, W., & Ghoshal, S. (1999). Social capital and value creation: The role of intrafirm networks.

Academy of Management Journal , 464-476.

Von Krogh, G., Ichijo, K., & Nonaka, I. (2000). Enabling knowledge creation. Oxford: Oxford

University Press.

W3C. (2003). Common http implementation problems. Retrieved May 25, 2009, from

http://www.w3.org/TR/2003/NOTE-chips-20030128/

Wagner, C. (2004). Wiki: A technology for conversational knowledge management and group

collaboration. Communication of the Association for Information , 265-289.

Webster, P. (2009, May 28). Breaking down information silo:Integrating online information.

Information Today Inc. , pp. 30-34.

Whittaker, S., Bellotti, V., & Gwizdka, J. (2006). Email in personal information management.

Communication of the ACM , 68-73.

Xiao, W., Chi, C., & Yang, M. (2007). On-line collaborative software development via wiki.

WikiSym '07 (pp. 177-183). Montreal, Quebec, Canada: ACM.

Zhao, J. (2006). WikiJavadoc - A collaborative documentation system for java. Retrieved June

02, 2009, from http://www.inf.fu-

berlin.de/inst/agse/theses/wikidoc/ZhaoJ06_WikiDoc.pdf

Page 121: Semantic Wiki

Semantic Wiki 116

List of Tables

Table 3.1. Communication and Collaboration Criteria Comparison

Table 3.2. Information Retrieval Techniques Comparison

Page 122: Semantic Wiki

Semantic Wiki 117

List of Figures

Figure 4.1. Application Service Provider Groups

Figure 4.2. SVN Repository Browser

Figure 4.3. Wikipedia demonstration of an access page

Figure 4.4. The page cannot be found

Figure 4.5. Conceptual framework: sharing of knowledge across application boundaries

Figure 5.1. Gliffy online rich internet application for diagramming

Figure 5.2. Trac’s integrated software configuration and project management

Figure 5.3. Page revisions history

Page 123: Semantic Wiki

Semantic Wiki 118

Appendix A – Conversational Technologies

Table 2.1. Conversational Technologies (Wagner, 2004)

E-mail E-mail is predominantly a one-to-one or one-to-many conversation tool

without a central knowledge repository or knowledge organization facility

(unless provided as value-added features of the e-mail software). E-mail is

the most essential IT based communication technology and the most

widely used after the telephone.

Static and

database-backed

web pages

Promoted by numerous free ISP services, Internet users broadcast their

knowledge (e.g., within Geocities), or organized and commented on other

people’s knowledge (e.g., About.com). The ―conversation‖ mode is

generally one-to-many. But, due to the multitude of broadcasters, it can be

considered an unstructured, many-to-many conversation where

communicators answer each other not directly, but through new posts on

their web sites.

Discussion forum Discussion forums are a key online conversational knowledge exchange

and the core technology for many on-line communities. The leading on-line

community hosts (such as ezboard.com) manage the discussions of

millions of communities1. Conversations are many-to-many, frequently

with threaded discussions.

Internet chat /

instant messaging

Instant messaging is promoted through a number of free services, including

ICQ and AOL Instant Messenger, each of which serves tens of millions of

users. Instant messengers enabled multiple conversation modes from one-

tomany to many-to-many.

Video and audio

streaming

Video and audio streaming emerged as a popular technology for

broadcasting (one-to-many communication). Unfortunately, almost all

video and audio streams are neither indexed nor search engine friendly.

When streams are recorded, they facilitate different-time communication.

Also, records of communications require significant storage space, transfer

speed, and human time to read them.

Video and audio

conferencing

.. Video and audio conferencing are popular for one-to-one or one to-many

communication, with partners meeting at the same time. Results can be

recorded, but are usually not indexed and not search engine friendly. Also,

records of communications require significant storage space, transfer

speed, and human time to listen to them

Group decision

support system

(GDSS).

Throughout the last two decades, GDSS have been a highly popular

technology for small and medium-size groups meeting typically face-to-

face and at the same time. Their objective is not so much knowledge

management, but collaborative idea generation (group brainstorming) and

consensus development. Nevertheless, GDSS were used in a number of

other application areas, including, for example, negotiation, learning, and

Page 124: Semantic Wiki

Semantic Wiki 119

crisis response, some of which do have a considerable knowledge

management component.

Ad-hoc knowledge . Knowledge users are likely unable to specify their knowledge needs a

priori.

As a result, they rely on a just-in-time knowledge management tool that

can satisfy the needs as they arise, i.e., a tool that incorporates fast question

answering system. Users want to find knowledge if it is available in the

system. Since today’s advanced search engines such as Google employ not

only basic keyword search, but also more advanced hyperlink and

hyperlink popularity interpretation, users will benefit from a tool which is

―search (engine) friendly‖, and thus keyword oriented, hyperlinked, and

indexed.

Weblog. A Weblog, is a personal web page, kept by the author in reverse

chronological diary form. It is a ―log on the web‖ and a ―log of the web‖.

As a log on the web, it is kept first and foremost on the web, either on a

static web page, or via a database-backed website, enabled through

―blogging‖ software. As a log of the web, it frequently refers to other

Internet locations via hyperlinking.

Wiki. A Wiki is described as a set of linked web pages (and the application

enabling its development), created through the incremental development by

a group of collaborating users. The Wiki’s uniqueness lies both in its

software and in the use of the software by collaborating members.