Group Recording of Web Navigation Maria Grazia Calabr ` o, Delfina Malandrino, Vittorio Scarano Dipartimento di Informatica ed Applicazioni “R.M. Capocelli” Universit ` a degli Studi di Salerno 84081, Baronissi (Salerno), Italy {delmal,vitsca}@dia.unisa.it 1. INTRODUCTION Finding information on the web is often an experience that easily degrades from excitement (“Everything is there!”) to frustration (“.. but I don’t know where it is!” or “.. but I can’t find it anymore!”). Of course, when something rele- vant is found, the user is strongly motivated to avoid to re- peat the (painful) search again for the item by using book- marks. Several techniques add functionalities to standard bookmarking: their goal is to to make permanent user’s navigation and experience. Web recorders such as WebVCR [1] offer to replay navigation while Web-R [6] stores nav- igated pages locally. Collaboration during the navigation can improve the results of the search as well its efficiency and several tools were proposed for enhancing social navi- gation such as recommender systems [4] or adaptive group collaboration [2]. In this paper, we present a prototype that allows users to exchange information about their navigation via navigation path recording, annotation and editing. Each user can there- fore use our system to create a permanent and modifiable collection of URLs that can be shared with other users. As an example application, a typical activity of a researcher is to navigate to find relevant references to her current re- search interests; once the user found and annotated a set of URLs, she can share them with her research team, therefore increasing, as a result, the group knowledge. 2. GROUP RECORDING Our prototype GroupRecorder offers a cooperative en- vironment to store and retrieve navigation paths and sup- ports the paradigm of social navigation since it offers full awareness of what other users in the group are navigating. GroupRecorder allows users to create paths from their own navigation: the user can annotate each URL and delete unnecessary and irrelevant entries (the problem of frames, embedded images, dynamic commercial advertisement etc. is well recognized in this area [1]). The whole set of recorded paths is, then, offered to all the users of the group as an as- set to the group knowledge. The recorded paths are also searchable (for text in the URL or in the comment). GroupRecorder is designed to be highly portable and browser independent: in fact, its proxy-side component runs everywhere a Java Virtual Machine does and its client-side component is a standard Java applet that does not leverage on specific characteristics of the browser (as long as it sup- ports Java applets) and requires minimum installation (i.e. setting the proxy address). 2.1 The architecture GroupRecorder consists of two components (see Fig. 1). The proxy-side component is in charge of extracting the nav- igation paths of each user during her navigation and offering recording, etc. to the clients. The client-side component is much simpler: it is a Java applet, run on a separate browser window, that, by interacting with the proxy-side compo- nent, is able to present the user her current path, to allow annotation, to offer awareness of other users’ actions and storing/retrieving information. The proxy-side component of GroupRecorder is imple- mented by using the Web Intermediaries (WBI) [3], a pro- grammable proxy in Java that receives the user’s HTTP re- quests and produces or filters the responses. Programming applications in WBI is done via MEGs (request editor, gen- erator, monitor end document editor) that can be combined to create an application into what is called a plugin. The WBI Plugin that realizes GroupRecorder consists of two MEGs. The AuthorizationGenerator MEG recognizes the user by the usual challenge-response mechanism of the Proxy-Authorization HTTP header. The AppletGenerator MEG is the core of the system. First of all, it allows the user the usual navigation in the Web, by fetching the requested URLs and sending them back to the client. Then, it also manages the communication with all the Recorder applets in order to provide (a) monitor- ing and storing user’s browsing information, (b) searching among GroupRecorder recorded paths, (c) the awareness of other users’ actions (i.e. currently navigated pages) and (d) the annotation of URLs within the path. 2.2 Functionalities The user, say Alice, starts by loading a specific start-up page, called http:// init, into the browser. This URL is