Community-supported collaborative navigation with FoxPeer

13
126 Int. J. Web Based Communities, Vol. 5, No. 1, 2009 Community-supported collaborative navigation with FoxPeer Adriana S. Vivacqua, José A. Rodrigues Nt.*, Michele Machado, Rodrigo Padula, Melissa Paes, Patrícia Barros, Geraldo Xexéo, Jano M. de Souza and Mutaleci Miranda Graduate School of Engineering Federal University of Rio de Janeiro (UFRJ), Brazil E-mail: [email protected] E-mail: [email protected] E-mail: [email protected] E-mail: [email protected] E-mail: [email protected] E-mail: [email protected] E-mail: [email protected] E-mail: [email protected] E-mail: [email protected] *Corresponding author Abstract: Navigating the web with its large number of resources can sometimes be hard. Web-based communities form as individuals get together to discuss and exchange information. These communities provide a nexus around which individuals organise and learn. As they grow and accumulate shared resources, they become rich information sources. The usual way to navigate the web is to search, starting from a search page and then browsing to look for adequate resources. However, when looking for information, individuals often turn to others for recommendations or answers. This paper presents a peer-to-peer tool to assist in web navigation and searches by leveraging a community’s existing knowledge. Individuals rate websites and share these ratings with the community. Recommendations are made based on these ratings. This enables a community-geared rating, where individuals know they will find ratings that reflect the opinions of the community in which he or she is inserted. This mimics recommendation-seeking behaviour and has the potential to lead to better results as searches become more directed towards a community’s context. Keywords: recommendation systems; website sharing; agent-based systems; communities of practice; CoPs. Reference to this paper should be made as follows: Vivacqua, A.S., Rodrigues Nt., J.A., Machado, M., Padula, R., Paes, M., Barros, P., Xexéo, G., de Souza, J.M. and Miranda, M. (2009) ‘Community-supported collaborative navigation with FoxPeer’, Int. J. Web Based Communities, Vol. 5, No. 1, pp.126–138. Copyright © 2009 Inderscience Enterprises Ltd.

Transcript of Community-supported collaborative navigation with FoxPeer

126 Int. J. Web Based Communities, Vol. 5, No. 1, 2009

Community-supported collaborative navigation with FoxPeer

Adriana S. Vivacqua, José A. Rodrigues Nt.*, Michele Machado, Rodrigo Padula, Melissa Paes, Patrícia Barros, Geraldo Xexéo, Jano M. de Souza and Mutaleci Miranda Graduate School of Engineering Federal University of Rio de Janeiro (UFRJ), Brazil E-mail: [email protected] E-mail: [email protected] E-mail: [email protected] E-mail: [email protected] E-mail: [email protected] E-mail: [email protected] E-mail: [email protected] E-mail: [email protected] E-mail: [email protected] *Corresponding author

Abstract: Navigating the web with its large number of resources can sometimes be hard. Web-based communities form as individuals get together to discuss and exchange information. These communities provide a nexus around which individuals organise and learn. As they grow and accumulate shared resources, they become rich information sources. The usual way to navigate the web is to search, starting from a search page and then browsing to look for adequate resources. However, when looking for information, individuals often turn to others for recommendations or answers. This paper presents a peer-to-peer tool to assist in web navigation and searches by leveraging a community’s existing knowledge. Individuals rate websites and share these ratings with the community. Recommendations are made based on these ratings. This enables a community-geared rating, where individuals know they will find ratings that reflect the opinions of the community in which he or she is inserted. This mimics recommendation-seeking behaviour and has the potential to lead to better results as searches become more directed towards a community’s context.

Keywords: recommendation systems; website sharing; agent-based systems; communities of practice; CoPs.

Reference to this paper should be made as follows: Vivacqua, A.S., Rodrigues Nt., J.A., Machado, M., Padula, R., Paes, M., Barros, P., Xexéo, G., de Souza, J.M. and Miranda, M. (2009) ‘Community-supported collaborative navigation with FoxPeer’, Int. J. Web Based Communities, Vol. 5, No. 1, pp.126–138.

Copyright © 2009 Inderscience Enterprises Ltd.

Community-supported collaborative navigation with FoxPeer 127

Biographical notes: Adriana S. Vivacqua is a PhD student on her final year at the Federal University of Rio de Janeiro, Brazil. Her interests are computer support for collaborative work, communities and user interaction. She holds an MSc from the MIT Media Lab.

José A. Rodrigues Nt. is a PhD student at the Federal University of Rio de Janeiro, Brazil. His interests are distributed systems, autonomic systems, computer support for collaborative work, knowledge management and business process management. He holds an MSc in Computer Science and an MSc in Operations Research, both from the Naval Postgraduate School, California, USA.

Michele Machado is an MSc student in the Database Group of the Federal University of Rio de Janeiro, Brazil. Her current research involves information extraction.

Rodrigo Padula is an MSc student in the Database Group of the Federal University of Rio de Janeiro, Brazil.

Melissa Paes is a Masteral student in Computer Science at the Federal University of Rio de Janeiro, Brazil. She is an IT Technologist in the Fundação Instituto Brasileiro de Geografia e Estatística (IBGE). Her current research includes website sharing and agent-based systems.

Patricia M. Barros is a Masteral student in Computer Science at the Federal University of Rio de Janeiro, Brazil. Her current research includes website sharing, scientific workflows and grid computing.

Geraldo Xexéo is a Professor working in the Database Group of the Federal University of Rio de Janeiro, Brazil.

Jano M. de Souza holds a PhD from the University of East Anglia, UK (1986), and is an Associate Professor at the Graduate School of Engineering of the Federal University of Rio de Janeiro, Brazil, where he heads the Database Group. He has extensive experience in the fields of databases, knowledge management and computer-supported cooperative work, supervised more than 50 students and written more than 200 papers in these areas. His activities include consulting for a number of Brazilian companies and governmental institutions. His current interests are in scientific knowledge management, ontologies and collaborative systems. He is a member of the steering committee of the yearly Computer Supported Cooperative Work in Design (CSCWD) conference and has participated in several programme committees for other conferences.

Mutaleci Miranda is a PhD student in the Database Group of the Federal University of Rio de Janeiro, Brazil.

1 Introduction

People in a shared environment (whether professional, familial, educational or social) often exchange information through readily available mechanisms such as meetings, dialogues or workgroups. These exchanges are usually spontaneous and collaborative.

128 A.S. Vivacqua et al.

This type of collaboration involves helping or assisting others in reaching their objectives, either informally (e.g., between friends) or in more formally defined work situations. Contributions are also inherent to Communities of Practice (CoPs), which are groups of people organised around a shared domain who share ideas and information (Wenger, 1998).

Information exchange is largely supported by the internet. A simple example is the proliferation of Peer-to-Peer (P2P) resource exchange tools, which are widely disseminated nowadays. Most P2P networks are virtual networks for resource sharing. One interesting peculiarity of these kinds of networks is that they are very fluid, as participation changes frequently, with members frequently joining or leaving. Content exchange and storage are the main drivers that stimulate participation and contribution between people (Kamienski et al., 2005). Fluid participation is a characteristic that can also be found in CoPs.

The internet is a rich environment for resource and information sharing, which bridges barriers such as time, distance, culture and race and allows sharing between any two people from anywhere. It can be a thriving environment for communities, given the appropriate resources. However, when using the internet to investigate complex topics, a significant effort is necessary (Hoskinson, 2005) and extra time is spent on the accomplishment of searches.

Given these difficulties, the tools to refine web information searches are needed in order to get more relevant results and reduce the search time. One possible approach to address this problem is to use collaborative techniques, where people with similar interests and experiences in web browsing and information searches on the web can share and recommend websites.

This paper presents a tool for information sharing within CoPs. FoxPeer is a plugin-based system for sharing website recommendations with others within the network and built on top of a P2P infrastructure. Through a very simple interface, users can rate the websites that they navigate to and share these recommendations with peers, who can then find new sites to visit based on others’ web browsing experiences. This also creates a group browsing history, as recommendations are saved for future reference.

This paper is organised as follows. In Section 2, we present a brief overview of the related topics and technologies, followed by a brief survey of similar tools in Section 3. In Section 4, we present a description of the FoxPeer tool and an evaluation in Section 5. A discussion of the impacts and future work are presented in Section 6.

2 Background research

This work brings together research and principles from different areas. In this section, we briefly present the most relevant ideas.

2.1 Communities of practice

Groups of individuals that share information, ideas or experiences on a common domain are usually referred to as CoPs (Wenger, 1998). CoPs exist in many types of organisations, whether they are commercial, academic or personal in nature. They occur when people without professional or functional dependencies form groups around common interests. These groups lead to knowledge sharing and peer-based learning,

Community-supported collaborative navigation with FoxPeer 129

creating an informal and parallel structure to the one that exists in the organisation. In this environment, mutual exchange is not mandatory, but is stimulated by personal interests, regardless of professional objectives.

Preece (2002) claimed that communication between people and a willingness to contribute strengthens any community, be they CoPs, communities of interest or simple acquaintance networks. Social capital holds these communities and other social networks together. Social capital is the amount of current and potential resources available, derived from and pertaining to a network of relationships of people or social units (Paquette, 2006). It is the basic resource that sustains communities and encourages contributions and cooperation between group members (Preece, 2002). Social networks are social structures that are formed by people or organisations interconnected through relationships, which can be familial, accidental, professional, etc. Communities are organised as social networks, as individuals spontaneously get together, usually without any formal organisation or planning.

A CoP goes through several developmental stages (Wenger, 1998):

• In the potential stage, individuals face similar situations without having a shared practice. In this stage, the members must find each other and discover commonalities to form communities around their common interests.

• In the coalescing stage, the members start to come together. At this point, individuals are exploring their links, defining joint activities and negotiating community terms.

• Active communities are those in which the members are engaged in their practice, create new practices, face new situations and renew their commitment and interest.

• In the dispersed stage, the members are no longer strongly engaged, but the community exists as a centre of knowledge.

• In the memorable stage, the community is no longer important, but the references and memories remain.

FoxPeer was designed to support the potential and coalescing stages of a community life cycle, offer the members subsidies to identify the commonalities with other members through the exchange of web browsing experiences and web-based information searches and help in the active phase, providing a tool for easy information/knowledge sharing.

The essence of contribution systems is the exchange of information between the users with similar interests. To use this type of system, it is important to have knowledge on the users who use it and who can be classified according to profiles. In reputation management systems, for instance, each group member is classified according to his or her performance. An evaluation of how much each user volunteers and the trustworthiness of the information or services is an important element in a reputation-based system (Dingledine et al., 2001).

2.2 Recommendation systems

The large amount of information that is available in the internet makes searching for relevant information a hard task. Recommendation systems have been proposed as a way to recuperate and group information in a more useful way.

130 A.S. Vivacqua et al.

Collaborative filtering is the process of recommending information based on the analysis of the similarity between the opinions of one user and a group of users in a system (Goldberg et al., 1992; Oliveira and Reis, 2004). Through collaborative filtering, it is possible to filter information in order to return only the resources that relate to a given context and recommend the results to the other users who share the same area of interest. According to Reategui and Cazella (2005), “simple collaborative filtering systems provide an average score for each item with potential interest. This score allows the user to discover items that are considered of interest for the group and to prevent items that are considered of little interest”. One of the goals of recommendation systems is to reduce the amount of retrieved information. Through recommendations, it is possible to suggest information about one subject to the other users according to profiles and ratings.

2.3 Information retrieval

Information retrieval deals with the representation, storage, organisation and access to information items (documents). The user of an Information Retrieval System (IRS) must enable easy access to the information of interest. Given a query, the main goal of an IRS is to return useful (relevant) information to the user, usually based on textual analysis. This means that the representation and organisation of the system and the information within it must be designed with that in mind.

Perhaps the best-known information retrieval technique is the vector space model, which was developed by Salton et al. (1975) and used in an IRS called SMART. In the vector space model, the items of interest are modelled as elements of a vector space. Specifically, terms, documents, queries and concepts are represented as vectors in a vector space (Wong et al., 1987). Each term in a query or document is a weighted element of a vector, where the weights specify the relevance of the term to that particular collection (Salton and Buckley, 1988).

These weights are used to compute the similarity between each stored document and a query that was made by the user. The calculation of the weights is based on the number of occurrences of the term in the document (term frequency). Similarity is usually calculated through a vector calculation, the simplest being to take the cosine between the two vectors. After the similarity degrees have been calculated, it is possible to build an ordered list of all of the documents and its respective relevance to the query. The documents that are most similar to the query are considered more relevant to the users and returned as the reply (Baeza-Yates and Ribeiro-Neto, 1999).

2.4 Peer-to-peer systems

A P2P system is a computational network application in which each node is autonomously managed and can contribute with its computational resources to the distributed execution of the tasks that are requested by other system nodes. An ideal P2P system is decentralised, fault-tolerant and scalable. Decentralisation means that no specific node is entirely responsible for the essential system functions. Fault tolerance is a consequence of decentralisation: the fact that responsibility for the system functions is distributed means that a small number of individual failures cannot impair the system as a whole. Finally, scalability can be obtained because each node that enters the network

Community-supported collaborative navigation with FoxPeer 131

offers additional computational resources to increase system capacities. In this context, P2P systems foster cooperation among people by encouraging them to notice that they can participate in the network and make a difference.

The COPPEER framework (Miranda et al., 2006) is a research project that was developed at the Database Laboratory of the Federal University of Rio de Janeiro Graduate School and Research in Engineering (UFRJ/COPPE), which supports an emergent approach for developing and running P2P applications. Emergence enables complex systems with an adaptive behaviour to be composed from a number of simple software agents, which are inexpensive to develop and maintain. To achieve this, COPPEER uses shared spaces (Eugster et al., 2003) to implement agent communication. COPPEER offers a network of shared spaces as a communication infrastructure, which simplifies development by eliminating the need to deal with object hierarchy, the management of local or remote references between agents and multithreading programming intricacies. Each shared space stores data items that are written by agents and notifies the other agents who are interested in matching these items. Besides that, COPPEER supports mechanisms for data exchange among shared spaces without agent interference.

3 Related systems

A number of agent-based and recommendation systems bear resemblance to FoxPeer. In this section, we mention some of those. Letizia is a user interface agent which assists in web browsing (Lieberman, 1995). While the user browses the internet, the agent tracks his or her behaviour and tries to anticipate topics of interest by concurrently following the links from the current position of the user. Based on a simple set of heuristics about what would be interesting to the user, this software shows a page that contains some site recommendations and the user can choose to follow these recommendations or not. The basic premise in Letizia is that information search is a cooperative adventure between human and intelligent software. The user and Letizia browse the same web space, looking for interesting things. The prime difference is that the agent searches faster and performs a breadth-first search, whereas users usually perform a depth-first search. This is a single-user system, which has no cooperative capability.

FootPrints is a system that was developed to assist people when they explore complex websites through the visualisation of the paths that were left by users who previously visited the site (Wexelblat and Maes, 1997). The paths are represented as graphs, where each node represents a document and the edges represent the paths covered between them. This visualisation allows the user to share their previous experiences in navigation and also allows others to benefit from the tracks that were left by other peers when moving through the information.

GroupLens is a research project that was developed at the Department of Computer Science of the University of Minnesota (Resnick et al., 1994). It is a distributed system for gathering, disseminating and evaluating information. It assists in the search for articles according to the users’ interests and makes a collection of evaluations of articles for each user. It uses these evaluations to identify other users with similar profiles.

FAB is a website recommendation system that was developed by Stanford University (Balabanovic and Shoham, 1997). This system was implemented by combining collaborative filtering and content-based filtering. In FAB, profiles are generated from an

132 A.S. Vivacqua et al.

analysis of content and are compared in order to identify similar users for collaborative recommendation. This was implemented as an agent-based system, where a Collection Agent is responsible for web document collection and a Selection Agent is responsible for the selection of pages to be presented to the users. After the recommendation, the user can evaluate the recommended websites, using a range that varies from 1 to 7 points.

The Collaborative Recommender Agent (CORA) is a system for the collaborative filtering of documents and developed at the University of Zurich (Lueg, 1998). This system uses a personal recommendation agent that monitors the user’s browsing behaviour. For each site that the user visits, there is an option to recommend it to a group of users. The monitoring agent sends out these recommendations and monitors the arrival of recommendations that were sent by other users.

Z9 (Tchezope, 2006) is a research project from the Catholic University of Rio Grande Do Sul (PUCRS). It attempts to use an individual’s navigation experiences as an aid for another’s navigation, enabling collaborative navigation. It uses a web data mining technique that is based on the identification and connection of navigation profiles. Its goal is to construct an information network that correlates the people browsing the internet. This is an effort to create a community where people exchange experiences and help each other. To use the software, it is necessary to install a client in the computer that identifies the sites that the user visits (recording the page’s address and title) and sends this information to the server to build the user’s profile. This profile is then compared with others’ profiles and the server informs which users have similar profiles and which pages are relevant for each user’s group.

Delicious Dynamics is a collaborative tagging system for social bookmarking which was developed by HP. Collaborative tagging is a process that is used to describe the content of an item to be shared. In this process, only keywords (tags) are used for the description of the content (Golder and Huberman, 2005). Individuals store their bookmarks in Delicious to be able to access them from any computer and share these bookmarks with others, generating a social network. To use this system, an individual must register in the Delicious website. To add a bookmark to his/her account, the user must be connected to the system and manually insert the new address or press a button that is installed in his/her browser. Then, the user can describe the site’s content using tags. To see a bookmark that was registered in Delicious website, it is necessary to access the personal pages of the users.

Similarly, Dogear is an enterprise system for social bookmarking that was developed by IBM (2006). It is the first tool that was designed specifically for an organisational environment, assisting the search for information about people within the same organisation or outside it. This system is very similar to Delicious and it is necessary to have an account, log in and bookmark manually or press a button that is installed in the browser to interact with the server.

4 FoxPeer

FoxPeer is a plugin for the Mozilla Firefox web browser (Mozilla Foundation, 2006) that allows users to exchange website recommendations in a P2P network. It recommends sites based on the user’s current page, which eliminates the need to generate keywords to execute an internet search, since it parses the user’s current browsing location to generate a search query. It is built on top of the COPPEER framework (Miranda et al., 2006).

Community-supported collaborative navigation with FoxPeer 133

Using a P2P approach is appropriate in this case, since communities usually display a dynamic configuration: individuals join or leave and their roles change, ranging from peripheral to active to core member. A P2P allows each individual to be one node in this network and adjust their participation as necessary, reducing the effort that is needed to join or leave particular communities.

Mozilla Firefox is a free multiplatform web browser that was developed by the Mozilla Foundation with the help of many collaborators. Firefox is a light, fast, intuitive and highly extensible browser that is based on Seamonkey, the navigation component of the Mozilla suite. One of its most interesting resources is the possibility for functionalities to be added through the creation of extensions. Extensions can provide users with new resources and services to facilitate navigation and present information according to their interests and profiles. To better meet users’ needs, many extensions have been implemented by the development group at Mozilla Foundation and the free software community.

Figure 1 The FoxPeer architecture

FoxPeer is implemented as a Firefox extension and linked with COPPEER in the backend. The main application runs on the COPPEER framework (see Figure 1). It communicates with the Firefox extension through a web server (Elonen, 2007), which allows the user’s recommendations to be sent to the application and the application to receive search results from it.

134 A.S. Vivacqua et al.

FoxPeer identifies users through their computers, as each has only one peer connected to the network. The users are able to recommend visited sites by attributing a value that ranges between great, good, regular, bad and very bad (4–0) via a specific toolbar that is installed when the user installs the plugin (see Figure 2).

Figure 2 The FoxPeer toolbar (highlighted), with the recommendation tab shown (see online version for colours)

The recommended websites are indexed by the indexer module using the vector space model. A full text index is created using the body of the recommended pages. The page’s title, address, rating, recommendation date and user comments are also stored. The retrieval of websites is done by calculating the similarity between the website that is currently open in the browser and the sites that were recommended by the users of the network. An agent is responsible for passing the query to all of the network peers and returning the result to the peer that requested it. The result is ordered by the ratings that were received in the recommendation. In cases where the same website was rated by more than one peer, the average rate is calculated. The results are presented to the user in the form of a list of links as a new tab in the same browser with all of the available information of each website (Figure 2).

Community-supported collaborative navigation with FoxPeer 135

5 Experiment

We conducted a simple experiment to evaluate FoxPeer. Since FoxPeer is a collaborative navigation tool, we designed the experiment to evaluate the impact of the tool on a community.

A group of 20 students was randomly divided into two groups. Group A was assigned the task of producing a text about Computer Supported Cooperative Work (CSCW) based on the texts available on the internet. Their task should be accomplished using a standard search tool, Google. They should look for sites on the subject and recommend them (using FoxPeer) from the perspective of the usefulness of the information found on the site to the required text preparation. Sites like Wikipedia were not allowed due to its intrinsic collaborative nature. It shall be noted that time that is spent to recommend a site is negligible, since it is just a matter of clicking on a chosen grade and the Recommend button. Group B was assigned the same task, but was directed to do it just by using the sites that were recommended by the previous FoxPeer user group (Group A). In both cases, the time to complete the task was recorded and the most relevant site to fulfil the task was also informed by the user, together with the order in which it was visited (i.e., if it was the first, second, etc., site visited). In other words, the independent variable was the use or not of FoxPeer to find the needed information and the dependent variables were the time to accomplish the task and the number of attempts to find the most relevant site (site access order). Since the time to prepare the text was not constrained, the quality of the produced text was not fully evaluated and it was not used as a metric.

The mean completion time for Group A was 45 min, while for Group B, it was 36 min. Assuming normality based on the Shapiro-Wilk test results (WA = 0.89, p-valueA = 0.1630 and WB = 0.97, p-valueB = 0.8675) and the small sample size, we performed a t-test on the groups’ data with the following results: t = 2.05 and p-value = 0.0697. Considering the results, we can say with good certainty that the use of FoxPeer yields better performance regarding the time to find the needed information.

The data also showed that, on average, the users on Group A found the page that was most relevant for their task on the fourth site that they reached, while in Group B, it was found on the second site. Actually, the latter information supports the findings of the former, since by reaching the needed information in fewer steps, the users would spend less overall time doing their task.

Based on the experiment, we can say that FoxPeer does exactly what it was designed to do, i.e., ease the task of finding relevant information on a subject by leveraging off community recommendations.

6 Discussion

FoxPeer is undergoing further development. An initial version was created for the initial tests that were reported in this paper. The initial investigations concern the search speed and the quality of the results, which the conducted experiment partially showed were better when using FoxPeer than when not using it, since the tool facilitated the users’ work of searching for information. However, several interesting possibilities exist for extensions and additional inferences, even when using only the data that were already generated and exchanged in this current version.

136 A.S. Vivacqua et al.

On this initial version, information retrieval is basically done using the vector space model (Baeza-Yates and Ribeiro-Neto, 1999). Nonetheless, other promising technologies can improve not only retrieval, but other foreseen discovery properties. One of such is computing with words or soft computing (Zadeh, 1999). Using fuzzy principles and leveraging the level of abstraction may be a nice way to help FoxPeer handle the large amount of information that is available on CoPs.

The information that is manipulated in this initial version already enables the creation of a reputation mechanism by classifying the relevance of the opinion of each user according to their recommendation rankings. These rankings consolidate a weight for the opinion of each user (Milani and Cazella, 2005) and the weight represents the knowledge level and the user’s capability in the areas of interest to the recommendation system. As other users rate the previously rated sites, it becomes possible to combine the ratings and verify whether each user’s ranking is in agreement with the community’s opinion (if the community believes that the sites are as good or bad as indicated) or if the community disagrees with him or her. This can elicit, in an emergent way, whether the members are ‘aligned’ with the community or not and what the other members think of one’s opinion. These rankings can be used to assess the quality of the sites that are recommended by peers and the quality of recommendations that have been made.

One of our next steps is to add profiling capability to the system: the creation of user profiles based on the recommended sites makes it possible for the users to know their peers and fellow community members better and know where the recommendations are coming from. It would also enable a collaborative filtering-style recommendation, suggesting sites based on users’ interests and profiles. A mechanism that is similar to FOAFRealm (Breslin et al., 2007) could be used. Additionally, we would like to add a faceted recommendation capability that allows ratings to be provided as they relate to certain communities in mind. In this ‘closed’ configuration, the ratings take into account the orientation and knowledge of the community, as what is good for one group might not be good for another.

We are also in the process of adding community discovery capabilities to the system (Puig-Centelles et al., 2007). We believe that by using the appropriate algorithms or heuristics, potential communities can be identified by looking at the sites that are recommended by FoxPeer users and finding user groups with similar interests or recommendations.

An important addition to the FoxPeer system would be interaction capability. Interaction is at the heart of any community and individuals often want to know others better, forming subgroups or getting together to work. We believe that by providing identifiable recommendations and tools to enable discussion on a given recommendation, the users would engage each other more frequently and exchange information in an informal and natural way.

One major benefit that we see in using a P2P architecture is the provision of flexibility and fluidity to community configurations. A community is a group of networked individuals, each of whom may be engaged in several communities (Simmel, 1955). In this configuration, the individual can be seen as an autonomous entity that flows between groups effortlessly. Supporting this individual means enabling this easy transition between communities. Through a P2P approach, the individual can be brought closer to his or her peers as his or her interests shift by the simple verification of his or her browsing behaviour and the clustering of similar peers. This enables the formation of virtual communities that are not necessarily aware of themselves as such.

Community-supported collaborative navigation with FoxPeer 137

In an open configuration, FoxPeer can be used to provide recommendations from

any other online peer, bringing individuals together through their browsing and recommending behaviour. In a closed configuration, FoxPeer can be used to recommend sites from within a particular community, reflecting the opinions of those within that community. We believe that the most interesting results will be obtained when the users start using it in an open configuration and clusters emerge from the aggregation of individual behaviours. These clusters should appear according to the users’ recommendations and similar users would be clustered together and joined in an ad hoc community.

Obtaining recommendations from those with similar interests or goals is a simple way of benefiting from community knowledge. Receiving recommendations that are similar to one’s own opinions is a way to find potential collaborators and new acquaintances whom one might have not found otherwise, thus expanding one’s social network. By having the added capacity to determine who has recommended what, we believe that people will have an added incentive to engage in discussions and interactions.

Acknowledgements

This work was partially supported by CAPES and CNPq.

References Baeza-Yates, R. and Ribeiro-Neto, B. (1999) Modern Information Retrieval, Addison Wesley.

Balabanovic, M. and Shoham, Y. (1997) ‘Fab: content-based, collaborative recommendation’, Communications of the ACM, Vol. 40, No. 3, pp.66–72.

Breslin, J., et al. (2007) ‘Sharing information across community portals with FOAFREALM’, Proceedings of the IADIS International Conference Web Based Communities, Salamanca, Spain: IADIS Press, pp.126–132.

Dingledine, R., Freedman, M.J. and Molnar, D. (2001) ‘Accountability’, in A. Oram (Ed.) Peer to Peer: Harnessing the Power of Disruptive Technologies, Chap. 16, O’Reilly and Associates.

Elonen, J. (2007) ‘NanoHTTPD’, http://elonen.iki.fi/code/nanohttpd/ (retrieved 13 August 2008).

Eugster, P.T., et al. (2003) ‘The many faces of publish/subscribe’, ACM Computing Surveys, Vol. 35, No. 2, pp.114–131.

Goldberg, D., et al. (1992) ‘Using collaborative filtering to weave an information tapestry’, Communications of the ACM, Vol. 35, No. 12, pp.61–70.

Golder, S.A. and Huberman, B.A. (2005) The Structure of Collaborative Tagging Systems, Information Dynamics Lab, HP Labs, Palo Alto, USA.

Hoskinson, A. (2005) ‘Creating the ultimate research assistant’, IEEE Computer Society, Vol. 38, No. 11, pp.97–99.

IBM (2006) ‘Think research: featured concept – fetch!’, http://domino.research.ibm.com/comm/ wwwr_thinkresearch.nsf/pages/20060627_dogear.html (retrieved 21 August 2006).

Kamienski, C., et al. (2005) ‘Colaboração na Internet e a Tecnologia Peer-to-Peer’, XXV Congresso da Sociedade Brasileira de Computação, Unisinos, Rio Grande do Sul, Brasil.

Lieberman, H. (1995) ‘An agent that assists web browsing’, Proceedings of the 1995 International Joint Conference on Artificial Intelligence, Montreal, Canada.

138 A.S. Vivacqua et al.

Lueg, C. (1998) ‘Considering collaborative filtering as groupware: experiences and lessons learned’, II International Conference on Practical Aspects of Knowledge Management, Basel, Switzerland, pp.29–30.

Milani, F. and Cazella, S.C. (2005) ‘Um modelo para determinar a autoridade de usuários em sistemas de recomendação’, III Fórum de Inteligência Artificial, Canoas, Brasil.

Miranda, M., et al. (2006) ‘Building tools for emergent design with COPPEER’, Proceedings of the 10th International Conference on Computer Supported Cooperative Work in Design, Beijing, China: IEEE Press, pp.550–555.

Mozilla Foundation (2006) ‘Mozilla Firefox web browser’, http://www.mozilla.org/ (retrieved 26 July 2006).

Oliveira, C.A.F. and Reis, J.F.T. (2004) ‘Filtragem Colaborativa: uma forma de personalizar informações’, CienteFico. Ano IV, Salvador, Brasil, Vol. I.

Paquette, S. (2006) ‘Communities of practice as facilitators of knowledge exchange’, in E. Coakes and S. Clarke (Eds.) Encyclopedia of Communities of Practice in Information and Knowledge Management, Idea Group, Inc.

Preece, J. (2002) ‘Supporting community and building social capital’, Communications of the ACM, New York: ACM Press, Vol. 45, No. 4, pp.37–39.

Puig-Centelles, A., Ripolles, O. and Chover, M. (2007) ‘Identifying communities in social networks: a survey’, Proceedings of the IADIS International Conference Web Based Communities, Salamanca, Spain: IADIS Press, pp.350–354.

Reategui, E.B. and Cazella, S.C. (2005) ‘Sistemas de Recomendação’, XXV Congresso da Sociedade Brasileira de Computação, Unisinos, Rio Grande do Sul, Brasil.

Resnick, P., et al. (1994) ‘GroupLens: an open architecture for collaborative filtering of netnews’, Proceedings of ACM Conference on Computer Supported Cooperative Work, Chapel Hill, pp.175–186.

Salton, G. and Buckley, C. (1988) ‘Term weighting approaches in automatic text retrieval’, Information Processing and Management, Tarrytown, NY: Pergamon Press, Vol. 24, No. 5, pp.513–523.

Salton, G., et al. (1975) ‘Vector space model for automatic indexing’, Communications of the ACM, Vol. 18, No. 11, pp.613–620.

Simmel, G. (1955) ‘The web of group affiliations’, Conflict and the Web of Group Affiliations, Glencoe: Free Press.

Tchezope (2006) ‘Ferramenta de navegação colaborativa Z9’, http://www.tchezope.org/divulgacao/ casouso.2005-04-10.1604354584 (retrieved 26 July 2006).

Wenger, E. (1998) Communities of Practice, Cambridge: Cambridge University Press.

Wexelblat, A. and Maes, P. (1997) ‘Footprints: history-rich web browsing’, Proceedings of the Conference on Computer Assisted Information Retrieval (RIAO), Montreal, Canada, pp.75–84.

Wong, S.K.M., Ziarko, W., Raghavan, V.V. and Wong, P.C.N. (1987) ‘On modeling of information retrieval concepts in vector spaces’, ACM Transactions on Database Systems, Association for Computing Machinery, Vol. 12, No. 2, pp.299–321.

Zadeh, L. (1999) ‘From computing with numbers to computing with words – from manipulation of measurements to manipulation of perceptions’, IEEE Transactions on Circuits and Systems – I: Fundamental Theory and Applications, IEEE Press, January, Vol. 45, No. 1, pp.105–119.