www in the small

31
World Wide Web (2007) 10:471–501 DOI 10.1007/s11280-007-0024-y WWW in the Small Towards Sustainable Adaptivity Stefania Bandini · Marcello Sarini · Carla Simone · Giuseppe Vizzari Received: 29 March 2006 / Revised: 22 September 2006 / Accepted: 26 February 2007 / Published online: 3 April 2007 © Springer Science + Business Media, LLC 2007 Abstract The web technology is increasingly used by communities of various kinds to support their memory and the interactions among their members. In these cases the WWW can be viewed as a web of local spaces (Web in the small), each characterized by local structure and semantics. The local space can be used to provide the community members with adaptive functionalities to enhance their navigations and to promote new forms of interaction among them. The realization and management of these functionalities are sustainable since they do not require more knowledge and effort than the ones the community generates and spends to survive. The paper presents a technology, the LAW system, which is a step towards a view of the Web in the small and complements more traditional technologies supporting the current acceptation of the World Wide Web (Web in the large). The LAW system is informed by an agent based model where space and its topology are first class concepts. Keywords adaptive web architectures · multi-agent systems · context-aware interaction · community support S. Bandini · C. Simone · G. Vizzari (B ) Department of Informatics, Systems and Communication, University of Milan–Bicocca, Via Bicocca degli Arcimboldi 8, 20126 Milan, Italy e-mail: [email protected] S. Bandini e-mail: [email protected] C. Simone e-mail: [email protected] M. Sarini Department of Psychology, University of Milan–Bicocca, Piazza dell’Ateneo Nuovo 1, 20126 Milan, Italy e-mail: [email protected]

Upload: independent

Post on 03-Apr-2023

1 views

Category:

Documents


0 download

TRANSCRIPT

World Wide Web (2007) 10:471–501DOI 10.1007/s11280-007-0024-y

WWW in the SmallTowards Sustainable Adaptivity

Stefania Bandini · Marcello Sarini · Carla Simone ·Giuseppe Vizzari

Received: 29 March 2006 / Revised: 22 September 2006 /Accepted: 26 February 2007 / Published online: 3 April 2007© Springer Science + Business Media, LLC 2007

Abstract The web technology is increasingly used by communities of various kinds tosupport their memory and the interactions among their members. In these cases theWWW can be viewed as a web of local spaces (Web in the small), each characterizedby local structure and semantics. The local space can be used to provide thecommunity members with adaptive functionalities to enhance their navigations andto promote new forms of interaction among them. The realization and managementof these functionalities are sustainable since they do not require more knowledgeand effort than the ones the community generates and spends to survive. The paperpresents a technology, the LAW system, which is a step towards a view of the Webin the small and complements more traditional technologies supporting the currentacceptation of the World Wide Web (Web in the large). The LAW system is informedby an agent based model where space and its topology are first class concepts.

Keywords adaptive web architectures · multi-agent systems ·context-aware interaction · community support

S. Bandini · C. Simone · G. Vizzari (B)Department of Informatics, Systems and Communication, University of Milan–Bicocca,Via Bicocca degli Arcimboldi 8, 20126 Milan, Italye-mail: [email protected]

S. Bandinie-mail: [email protected]

C. Simonee-mail: [email protected]

M. SariniDepartment of Psychology, University of Milan–Bicocca,Piazza dell’Ateneo Nuovo 1, 20126 Milan, Italye-mail: [email protected]

472 World Wide Web (2007) 10:471–501

1 Introduction

The WWW is usually described as a huge space where people can find a vast andever-growing amount of documents made available by other people all around theworld. In this view accessibility and reachability are the main properties that haveto be satisfied to retrieve information whose existence can even be unknown tothe searcher. In order to support the user in this activity, techniques are sought touncover associations of contents among different web pages, or to detect similaritiesin browsing behaviours to facilitate the identification of the most effective searchpath. These techniques are based on universal assumptions on the population,for example in terms of overall domain ontologies, or quantitative measures, forexample statistical data about performed navigations. The impossibility to effectivelyexploit the web beyond its syntactic structure due to its uncontrollable evolution anddimension, and to collect fine tuned information about the navigators due to theirvariety in terms of goals and contexts, forces the developers of such techniques toincrease the power of the adopted algorithmic instrumentation in order to improvethe quality of the provided services.

On the other hand, the universal retrieving capabilities afforded by the WWWmade it a pervasive technology that everybody is familiar with. The easiness bywhich the web technology can be appropriated by users lets it be increasingly usedbeyond its initial goals. Typically, it is a natural framework where communities ofvarious nature (from interest groups to informal networks or informal communitiesup to strategic communities of practice [2]) not only collect information constitutingtheir main gluing force but also interact to share and augment it. Anonymity anduniversality that are valuable in the global space (WWW in the large) are combinedwith different forms of mutual knowledge and expectations that characterize localspaces (WWW in the small). In other words, the web technology allows for a smoothtransition from the local to the global through the simple but powerful and uniformnotion of link. In this view the WWW can be seen as constituted of a web of localspaces that combines the power of the global space with the richness of the localones. The navigation is like a journey across these spaces following links that openor live in semantically rich contexts. Notice that the structure of the local spacesis almost independent from the structure of domains as manifested in the URLsformat. Local spaces are defined by the possibility to have available a knowledgeabout the locality at hand and to use it to improve the support provided to thetarget community(ies) and occasional visitors. In this case, the techniques adopted tomake the support fruitful are about the most effective use of this knowledge. Morespecifically, the problem becomes how to get the most effective support out of anefficient and sustainable management of the local knowledge. This balance is not easyto obtain: in fact, the above mentioned undifferentiated quantitative and qualitativetechniques on the one hand and on the other hand highly sophisticated user or groupmodelling techniques [26, 33] are at the extreme of a range of possibilities where theabove balance can be found.

The reference to communities to characterize the locality is not casual. In fact,communities are usually focused on producing knowledge and knowledge artifactsto organize its components rather than in managing the meta-knowledge concerningtheir members. Moreover, communities are in general not provided with organiza-tional support to do this meta-work, not only in terms of technological development,

World Wide Web (2007) 10:471–501 473

but specifically in terms of defining indices, monitoring accuracy, tuning parameters,and the like, activities that are all required when the sophisticated techniquesare applied in the small. Sustainability is therefore a key issue: the usage of theknowledge should require the least possible extra-work to manage it. In other words,what can be used is the knowledge produced by (and sometimes for) the targetcommunity: local ontologies, the knowledge implicit in the local web structure (i.e.,links and pages), (stereotypical) knowledge about user roles and needs, and so on.Hence, observation of user behaviours in browsing the web becomes a fruitful andeffective means since observation guarantees sustainability (in the above sense) andthe richness of locality allows a fecund interpretation of the observed behaviors,although the observation is in the small. The paper is a contribution to this approachbearing in mind that the most effective solution can be only obtained by a collectionof techniques that are able to follow the community and/or its members in the localand global, individual and collective behaviours that they take according to theirchanging needs and contexts.

A technology augmenting the web functionality in the direction highlighted byall the above considerations needs a reference model that takes into account thetopological structure of the space(s). In fact, the use of such a model supports thelocalization of entities in charge of observing users’ behaviours and tracing themin a fully distributed way to gather fine grained information on their usage of thespace. The gathered information can thus be used to supply dynamical adaptation ofthe provided support: for instance, by proposing links that are not part of the staticstructure of a web of local spaces or modifying their presentation style (e.g. color,relative position in a list of links) according to the past navigations of various users.In addition, the presence of distributed observers allows one to conceive new formsof diffusion of contextual information and of interaction among users, which are bothbased on their mutual position in the space. For instance, it is possible to use thespace together with the associated logical structures and semantics to modulate thepropagation of information concerning updates and modifications as well as of users’messages along with these structures: in this way this information can be differentlyperceived by other users according to their past navigations and current positions.

The main aim of this paper is to introduce the Local Adaptive Web (LAW)system, that is an architecture supporting this approach to the development of web-based adaptive systems. In particular, LAW aims to support the enhancement of thebrowsing experience of members of the community built around/building the localspace. To this aim, advanced functionalities such as adaptation effects providing anenhanced navigation and the promoting of new forms of interaction among usersof the local space are provided by the LAW system. The system currently has thustwo kinds of objectives: on the one hand, it aims to support a navigation in thelocal space that better fits users’ typical browsing trajectories and habits, supplyingawareness on contents they may consider interesting. On the other hand, LAWalso supports different forms of interaction among users of the local space, so as tocomplement its informative function (supporting the gathering of information fromother users, in addition to web resources), providing a new kind of functionality fora web site. The paper is organized as follows: the next section introduces the overallarchitecture of the LAW system, whose modules realize a framework for the designand implementation of adaptive web applications in a Web in the small perspective.In particular, this section describes how information on users’ behaviours can be

474 World Wide Web (2007) 10:471–501

gathered adopting the Multilayered Multi Agent Situated System (MMASS) [3].This model is endowed with an explicit representation of agent’s environment [45]used to represent the local space. Section 3 describes the adaptation effects that arecurrently implemented by the LAW system. These functionalities comprise a moretraditional adaptation effect (i.e. direct guidance) which represents a test-bed to showthe adequateness of the architecture to the implementation of adaptive web systems.On the other hand, we also propose a more advanced form of adaptation concerningthe interaction among users of the local space to facilitate their communication andinformation exchange. Section 4 discusses the relations among our proposal andrelated works, while the last section is focused on the experimentation and evaluationissues concerning LAW and, more in general, adaptive web systems. Conclusions andfuture developments will end the paper.

2 The architecture of the LAW system

The overall architecture of the LAW system, shown in Figure 1, contains a traditionalweb browser playing the role of client together with the some specialized modulesthat characterize the proposed web architecture. The role of the latter is described asfollows:

– MMASS Agent Server: this module manages the spatial structures (i.e. MMASSlayers) associated to the local space where the agents associated to users, calledfrom now on user agents, are situated;

– Tracker: this module captures the users’ requests for pages in the local space, andsupply user agents with this information so that the MMASS agent server mapstheir requests to agents’ movements inside the spatial structures it manages;

– Client: this module, beside the traditional functionality of a web browser, hostsanother kind of agents associated to the users, called from now on interfaceagents, that are in charge to implement the adaptation effects fitting users’characteristics and needs;

– Users’ behaviours database: this component stores the information extractedfrom the observation of users’ navigations in the local space.

Figure 1 Overall LAW system architecture.

World Wide Web (2007) 10:471–501 475

The following two subsections introduce the MMASS model and describe how it isused to represent the local space and the associated semantics. Then, the monitoringfunctionality of the Tracker module is presented together with the specification of themonitored information. The specific approaches and techniques to generate adaptivecontents out of this information will be described in Section 3.

2.1 The role of the MMASS model in the LAW system

The MMASS model is adopted by the LAW system to represent the local space andusers’ navigations through it. A complete description of the model is out of the scopeof this paper and can be found in [4].

The Multilayered Multi Agent Situated System (MMASS) model is a Multi-AgentSystems (MAS) [19] whose agents are situated in an environment that is explicitlyrepresented through a topological structure made of a multilayered network of nodes.Layers are connected by interfaces which support the exchange of information amongthem. Each layer allows the representation of the relationships existing among agentssituated in it, through an appropriate interpretation of nodes and edges. In the LAWsystem, the multilayered environment describes the structure and semantics of thelocal space: one layer is typically about its physical structure in terms of pages andlinks and is inhabited by user agents; the additional layers represent logical aspects ofthe local space, for instance the topics that are treated by those pages: these layers donot contain any sort of agents but provide additional connectivity among user agents.A more thorough description of the logical layers of the environment and how theyare interfaced to the physical one will be given in Section 2.2.

MMASS agents are characterized by a position in the environment (a node in oneof the layers), a state, a specification of their perceptive capabilities (i.e. how sensitivethey are to information present in the environment) and a specification of theirbehaviours according to predefined primitives. In the LAW system, the MMASSagents are the user agents that are positioned and move in order to track users’navigation. In the standard MMASS model every node may host at most one agent(according to a non-interpenetration principle: “two agents cannot occupy the samenode at the same time”), and every agent is situated in a single node at a given time(non-ubiquity: “at a given time an agent occupies a single node”). In the LAW systemthe first constraint is relaxed since it is important to model the fact that differentusers are visiting the same page (node). While such a modification to the basic modelcould possibly represent a problem in a simulation of a physical system, in this casethere are no problematic side effects. Moreover, this is a necessary modification,since this arrangement may be identified and exploited by the system to facilitate theinteraction among people whose related user agents are situated on the same node.Agents inherit the spatial relationships defined for the node they are occupying; inother words an agent positioned in node p is considered adjacent to agents placed innodes adjacent to p.

Since the aim of user agents is to gather information about users’ navigations, theirstate is a triple 〈Sp, Cp, L〉 in which:

– Sp is the node associated to the page in which the user started the navigationtrajectory;

– Cp is the node associated to the currently viewed page, corresponding to thecurrent position of the user in the local space;

476 World Wide Web (2007) 10:471–501

– L is a set of labels taking into account the relations among the pages visited bythe user and the characterization of these pages according to the logical layersassociated to the local space; more details will be given in Section 2.2.

Unlike standard MMASS agents that are memory-less, LAW’s user agents own ahistory to store information about past user navigations. This information is usefulto determine the agent perceptive capability with respect to the information spreadin the environment. More specifically, this history is made up of a set of k labels thatare associated to the contents of the pages visited by the user in the past. Moreoverthe agent is provided with a timer and a threshold �td which are used to evaluatethe navigation behaviour of the corresponding user; in particular, �td indicates theminimum time required to reasonably inspect the content of a specific web page. Themechanisms regulating the update of user agent state and history will be described inSection 2.4.

For what concerns agents’ behavior, the position of an agent in the environmentdefines a complex combination of internal/external events and states that the useragent has to take into account in performing its actions. In fact, MMASS situatedagents are reactive agents, which perform their actions as a consequence of theperception of influences coming either from other agents or from the environment.Being situated, agents are sensitive to the spatial relationships that determine theirconstraints, abilities and cooperation relationships. The MMASS model defines a setof influences (named fields) that are generated by agents; emitted fields propagatealong the edges of the multilayered topology representing agent’s environment andleave on the nodes information that is modulated according to the propagationlaw. Hence, field emission–propagation–perception allows an asynchronous andat-a-distance interaction among agents. Moreover, the MMASS model defines asynchronous interaction, called reaction, according to which a set of agents situated inadjacent nodes synchronously change their state. In the LAW system user agents canact as mediators supporting the interaction among the associated users. In particularthe latter can send messages which are diffused in the environment associatedto the local space and can be perceived by other user agents according to theircurrent position and perceptive capabilities. The mechanisms regulating this formof interaction will be described in Section 3.

2.2 More than links: logical layers

As alluded earlier, the possibility to associate to the local space a set of intercon-nected layers allows the description of the local space not only in terms of its “phys-ical and syntactic” structure, but also its characterization in terms of semanticallyricher descriptions.

This possibility solves one of the problems of a representation of the local spacewhich only considers the page interconnections (i.e. hyperlinks): distant pages (interms of number of links that must be followed to navigate from the first one tothe other) can be very close from a semantical point of view (i.e. the pages refer tothe same or very similar content), but this fact is completely neglected by a purelyphysical representation. Hence, the MMASS layers are used not only to represent thelink structure among pages but also to connect, through the inter-layers interfaces,pages to nodes of the different “logical” layers representing the semantics of the

World Wide Web (2007) 10:471–501 477

Page interconnectionlayer (pages andhyperlinks)

Logical layer A Logical layer B

Figure 2 A sample multi-layered structure of an environment encompassing a physical pageinterconnection layer and two distinct logical layers, interconnected by means of interfaces.

local space content. For instance, in Figure 2 page P2 and P3 are quite distant in thephysical layer, but they are both related to a concept C3 represented in the logicallayer B.

Moreover, the same multi-layered structure which facilitates the diffusion of fieldsamong nodes belonging to different layers of the environment, also supports thegathering of information about topics related to users’ navigations. In fact the setof labels constituting part of user agent’s state is updated according to the logicalcharacterization of the pages visited by the corresponding user, thus making use ofthe interfaces connecting the physical layer with the logical ones.

While the physical layer can be obtained in an automatic way, for instance byexploiting a web-crawler to explore the local space and create a correspondingMMASS layer, logical layers require an effort by members of the community tobe explicitly defined. For instance, a logical layer could represent a light form ofconceptualization of the possible topics related to the contents of the local space. Inthis case, the community members should produce such a conceptualization (a sortof very light ontology or a classification scheme), to be represented as an undirectedgraph and thus as a MMASS layer. A suitable tool supporting the definition ofthis kind of structure is available as a part of a framework for the development ofMMASS based systems [5]. The definition of interfaces between the physical and thelogical layers can instead be performed as an annotation of a given page in termsof one of the elements of the logical layers it is related to: for example, page P2 inFigure 2 must be annotated with C2 and C3 to be effectively interfaced to the relatednodes in the logical layers A and B.

2.3 Monitoring users’ requests

The approaches to the monitoring of users’ behaviours navigating a local spaceare generally based on the analysis of log files which store low-level requests to

478 World Wide Web (2007) 10:471–501

Figure 3 An excerpt from a typical web server log file.

the web server. These files are generally made up of entries including the addressof the machine that originated the request, the indication of the time and theresource associated to the request. A sample excerpt from a log file is shown inFigure 3.

In order to obtain meaningful information on users’ activities these raw data mustbe processed (see, e.g., [35]): one of the processing activities is devoted to collapserequests related to various elements of a single web page (e.g. composing framesand images) into a single entry. Moreover, this kind of information must be furtherprocessed to detect groups of requests that indicate the path that a user followedduring navigation.

In LAW the monitoring functionality is in charge of the Tracker, a module inter-cepting users’ requests and generating information used to trace users’ behavioursand to update the corresponding user agents’ positions in the local space.1 In fact,the adoption of a comprehensive model of the local space allows to mimic users’navigations by means of user agents and thus to gather directly a high level form ofinformation about their behaviours.

In order to coordinate the movement of user agents with the corresponding users’navigations it is necessary to monitor their requests. Hence, in addition to the usualsession management mechanisms, the Tracker keeps the list of the active sessionswith the associated users. It is thus able to provide the MMASS agent server withthe identifier of the corresponding user agent together with the requested page.The MMASS agent server maintains a table which maps the URL of the requestedpage with the corresponding node of the physical layer. In case a request issuedby a user is not present in the list (decision point A in Figure 4), the Trackerwill trigger the creation of a new user agent situated on the node related to therequested page.

Notice that the same user could be using different browser pages or tabs tosimultaneously view distinct pages of the local space, that is, a user might besimultaneously following different trajectories in her web local space navigation. Inorder to manage these situations, a user is associated to different user agents, and herrequests must be associated to the correct one, thanks to the information providedby the Tracker. More precisely, whenever a request is generated by a user already

1These functionalities are partly related to the Intercepting Filter pattern (http://java.sun.com/blueprints/corej2eepatterns/Patterns/InterceptingFilter.html) but more than checking directly auser’s request the Tracker is able to monitor the user’s behavior by generating an appropriate sideeffect in the Agent Server.

World Wide Web (2007) 10:471–501 479

<user,request>

TrackerBrowser

Sessions list1: <sessionx,usera>2: <sessiony,userb>...

request

MMASS server

Create new useragent

New user

Existing user

Move existinguser agent

Environmentand user agents

A

B

Figure 4 The user request management procedure, with the involved components and requiredinformation.

present in the sessions list, two possible situations can arise (decision point B inFigure 4):

– The user has followed a link from her current page: in this case, the associateduser agent is moved by the MMASS server from the node corresponding to thecurrent page to the node corresponding to the destination page;

– The user has requested a page that cannot be reached following a link fromher current page because she is following different navigation trajectories (forinstance she opened a new page from her browser): in this case the MMASSserver creates a new user agent in the node corresponding to the requested page.

From a technical point of view, the Tracker is implemented as a Java Servlet,which is invoked by every page of the local space but does not produce a visibleeffect on the related web page. The Tracker is responsible for the management ofuser authentication and requests, but it also triggers the MMASS agent server for

Figure 5 A diagram showing how user actions influence the related user agent through the captureof requests by the Tracker module.

480 World Wide Web (2007) 10:471–501

the creation and movement of user agents in the environment related to the localspace. In fact, the MMASS agent server is in charge of the management of useragents creation and movement in the environment. Figure 5 shows in details howthe communication among the client and the Web Server produces a side effectby invoking the Tracker, and how every request is mapped to a movement (or tothe creation) of an agent in the MMASS environment. In the figure the Tracker ispositioned outside the Web Server since it could be hosted by a different machine,and it could also possibly serve different web servers and agent servers. In general,the elements of the LAW architecture (Tracker, Web Server, Agent Server, Users’behaviours database) were kept separated to support a more scalable deployment ondifferent machines; however, they can also be hosted on a single server.

The identification of clients and the management of sessions is implementedexploiting cookies. When a user makes her first page request, the Tracker tries toset a cookie on the client including the session information. If the cookie is accepted,then it is possible to use the session information and the Referer parameter of theHTTP request header to track user’s movement in the graph related to the localspace. Requests from clients not accepting cookies will thus not be monitored. It mustbe noted, however, that regular users of the local space are registered to the systemand can access it through a traditional login mechanism. The following subsectionwill further analyze the user monitoring mechanisms. However, it can already benoted that information about anonymous visitors of the local space can only be usedto support some of the direct guidance adaptation effects, which will be described inSection 3, while data on specific registered and authenticated user’s behaviour canbe used for more personalized adaptation effects.

2.4 Monitoring users’ behaviours

This section describes the mechanisms employed by LAW to update the state andhistory of user agents and how they are made persistent as a basis for adaptationfunctionalities. The overall flow of information involved in these mechanisms isdepicted in Figure 6.

User agents are situated in the node corresponding to the page currently visited bythe corresponding user. When a user follows a link in the page the user agent state ischanged accordingly: in particular Cp is updated with the node corresponding to therequested page. Moreover, L is cleared from the previous elements and filled withthe labels associated to the content of the requested page.

The state of the user agent is a sort of temporary buffer containing the informationrelated to the current navigation, which, when the navigation ends, is made persistentto support later elaborations and adaptive functionalities. In particular part of theuser agent state takes into account past user navigation focusing on her movementin the local space. To this aim the LAW system uses a structure called trace. Atrace is a four-tuple 〈AId, Sp, Cp, L〉, where AId represents the identifier of theconsidered user agent, while Sp, Cp and L are related to the corresponding useragent state. In addition to traces, the set of labels L of the user agent state is storedin a pair 〈AId, l〉 where l is a single label belonging to L. This additional structureis adopted to facilitate the management of user agent history, which determinesperceptive capabilities of user agents and thus the possibility to receive messagessent by other agents (more details on this mechanism will be given in Section 3).

World Wide Web (2007) 10:471–501 481

User agent

Users’behaviours

State

Starting pos.

Current pos.

Labels

History

Past labels

End ofnavigation

User historyupdate

Supportingadaptive

functionalities

Determininguser agentperceptivecapabilities

Figure 6 The life-cycle of information gathered by user agents.

While the information of the occurrence of a label in past user’s navigations couldbe extracted from traces, its persistent storage in a separate structure simplifies itsusage.

When the navigation ends, the trace and the labels corresponding to it will beinserted in the database of Users’ behaviours: if they are not present they will beinserted, otherwise the counter of their occurrence will be updated accordingly. Fora more efficient implementation of the system, the MMASS agent server performs atranslation of this information before actually storing it in the database. In particular,user agent identifiers AId are mapped into the corresponding user identifier, and thenodes of the physical layer are mapped into the URLs of the corresponding pages.

The current navigation ends in two situations, that are illustrated in Figure 7:

– The user made a step back in the local space: in this case the user has requesteda page that was previously visited; before moving, the corresponding user agentevaluates the time spent by the user in the page she has just left. Figure 7 showsa situation where the user has followed two links from the starting page, andshe spent some time on the page reached following the links. Consequently

Figure 7 A sample trajectoryof user agent in a physicallayer of the environment andthe corresponding traces.

A

1 2 3

5Trace 3

Trace 1

Trace 2

46

482 World Wide Web (2007) 10:471–501

the user agent is moved from the first node following arcs 1 and 2. After that,the user has moved on (request 3), then she made some steps back (requests4 and 5) and eventually moved to the last known position (request 6). Thestep back (request 4) forces the corresponding user agent to evaluate the timeinterval between requests 4 and 3. Given �td (the threshold indicating theminimum time required to reasonably inspect the content of a specific web page)if timestamp(4) − timestamp(3) < �td then the current navigation continues,otherwise it ends, causing the storage of the data corresponding to Trace 1. Themere interval between the two requests is not a safe indicator of the fact that thepage was actually viewed and considered interesting, but this cannot be excludedand thus the trace will be closed and considered for further analysis.

– The user spent enough time on the current page: in this case, the correspondinguser agent detects that the time elapsed from the previous movement exceeds�td. To do so, the user agent must reset its timer whenever it moves from a nodeto another. An example of this situation in represented by Trace 2 in Figure 7: inparticular the time between requests 2 and 3 is greater that �td.

The use of information stored in the users’ behaviours database is twofold: on theone hand, it is exploited by interface agents to support adaptive functionalities andthis aspect will be more deeply investigated in Section 3; on the other hand, it is alsoused to characterize the perceptive capabilities of user agents, by keeping updatedtheir histories according to the users’ past navigations in the local space. Whenever anavigation ends, a user agent stores the related information in the Users’ behavioursdatabase as described above. After that, the user agent also queries this databaseto update its history with a new set of k labels. In particular, currently the LAWsystem adopts a simple mechanism to select these labels: among all the labels relatedto that user are selected from the database the k ones having the highest number ofoccurrences.

3 Adaptive functionalities

The previous section was mostly focused on the description of the LAW systemarchitecture and how it supports the gathering of information on users’ behaviours.This section describes how the LAW system exploits this information to support therealization of adaptive functionalities, aimed on the one hand at providing adaptationeffects supporting an enhanced navigation, and on the other to support a new formof interaction among users of the local space.

A huge research effort in the realization of methods and techniques for enhancingnavigation in the WWW is carried out in the Semantic Web [7] area. However, thetraditional semantic web approach is aimed at supporting the sharing and reusingof data across application, enterprise, and community boundaries by adoptingontologies which are used by applications as a common reference to interpretdifferent data descriptions. By relying on ontologies it is possible to conceive anddefine rules for semantic navigation of suitably annotated information through theautomatic identification of similar/related contents. The approach behind the LAWsystem is different for one main reason: it is not aimed at the definition and useof general ontologies supporting the interoperation of data from any source tomake them readable and accessible from applications. Instead, the LAW system

World Wide Web (2007) 10:471–501 483

Figure 8 A diagram showingthe interaction among aninterface agent, the user agentcorresponding to the userrequesting the page, and theusers’ behaviours database.

exploits a community specific “light” logical level of data description as a relevantpart of a multilayered representation of the local space. This specification is usedto dynamically identify neighborhoods representing portions of the local space inwhich messages or information published in a given position of the local space aremade visible to potentially interested users.

Figure 8 represents a diagram of the components that are involved in the adaptivefunctionalities. In particular, a specific interface agent is hosted by the client so asto proactively modify the page to improve the user’s browsing experience. To doso, it is instantiated and it remains active as long as the related web page is beingviewed by a visitor. It collaborates with the rest of the system for two purposes. Onthe one hand, the interface agent must obtain information on past user’s navigation,which is stored in the database of users’ behaviours. This information is necessaryto realize adaptation effects by providing links that are not included in the staticstructure of the local space and also by modifying their presentation to better suiteusers’ needs and preferences. On the other hand, the interface agent interacts withthe user agent situated in the node corresponding to the currently viewed page in theMMASS environment to gather information on the current context of navigation.In particular, the user agent can supply information on the fields active in the noderelated to the page currently viewed by the user. Fields are related to news or usermessages published in a specific point of the local space and diffused according to thestructure of the environment representing it.

The functionalities we are going to illustrate have been implemented in a pro-totypal version of the LAW system adopting SnipSnap,2 a Java-based weblog andwiki software, to provide basic content management facilities. Contents generatedthrough the SnipSnap page creation facility automatically include the invocationof the Tracker, which is specified in the template for new pages; instead, othercontents (e.g. specific HTML pages, JPSs) not created by means of SnipSnap shouldexplicitly provide a reference to the Tracker in order to be associated to a node in theMMASS agent server environment. Moreover, the SnipSnap page creation facilitywas enhanced with the possibility to annotate contents with labels corresponding tonodes of the logical layers. This form of annotation generates interfaces among thephysical and logical layers, and thus the diffusion of fields among nodes of differentlevels.

2http://snipsnap.org

484 World Wide Web (2007) 10:471–501

The interface agent is based on AJAX technology,3 and thus it does not requireusers to install additional software packages, being supported by the majority of webbrowsers currently in use. More details on the LAW interface agent and about AJAXapplication to web-based interface agents development can be found in [9].

The following subsection will describe in details the adaptation functionalitiesfocused on links, while Sections 3.2 and 3.3 will describe the innovative forms ofinteraction among users supported by the LAW system. The adaptive functionalitieswill be described taking into account specific use cases inspired from the Universitydomain.

3.1 Direct guidance and adaptive presentation

SnipSnap (like most content management systems) subdivides pages in blocks. Inparticular, the LAW prototype provides a static header block, including links torelevant areas of the web page; a left column adds dynamic additional information,such as the current user position in the structure of the local space and relevant links;and a main central area in which the specific current content is shown in details.In the current version of LAW the area which is affected by content adaptivity isincluded in the left column. This area shows to the visitor “emerging links,” thatare links not included in the predefined local space but are considered interestingaccording to the past navigations of the related user, so to provide her with a directguidance [10]. These emerging links represent shortcuts to pages in the local spacethat were previously visited by the user but that are not directly connected with thecurrent page. In this way the user is facilitated in finding the contents she seemsinterested in according to her previous navigation behaviour. To exploit this directguidance functionality the LAW system allocates in the left column four slots fordifferent links (the number is configurable, the current choice was due to graphicalreasons). Figure 9 presents a screenshot of a sample adapted web page: the visitor isrecognized and her movements are monitored by the Tracker. The lower part of theleft column presents three emerging links.

The interface agent in order to select meaningful links queries the database toretrieve traces whose starting node is the URL of the page that is being composed.Among them, the interface agent considers first of all those related to the requestinguser. In particular, the three traces having the highest number of occurrences (i.e.those indicating the most frequent destinations of user navigations starting from thispoint) are selected. The URLs associated to the destination nodes Cp of the selectedtraces are then transformed by the interface agent in emerging links. Similarly,the last link is generated by taking into account not only the traces correspondingto the requesting user, but all of the traces stored in the database. This choice ismotivated by the idea of proposing some destination concerning the choices of allusers navigating the local space.

The LAW system provides also an additional mechanism taking into account thefeedback of the user to the proposed emerging links. This means that additionalinformation is stored along with traces, and in particular, the number of times that

3http://www.adaptivepath.com/publications/essays/archives/000385print.php, Garret, J.J.: AJAX: aNew Approach to Web Applications. Technical report, Adaptive Path Essay (2005).

World Wide Web (2007) 10:471–501 485

Figure 9 A screenshot of a LAW generated web page adapted by the interface agent according tothe information gathered on the requesting user’s past behaviour.

the related trace was effectively selected by the interface agent to be proposed asan emerging link and the number of times that the emerging link was effectivelyexploited by a user. The first information is managed by the interface agent, whichupdates it whenever it selects emerging links. The indication on the effective usageof the emerging link by the user requires instead to extend the Tracker componentto capture also the selection of one of the proposed links. This information canbe used in different ways: first of all it can enhance the mechanism of selectionof the traces by the interface agent (e.g. for discriminating traces having the samenumber of occurences), but also to evaluate the effectiveness of the direct guidancefunctionality.

A similar mechanism is used by the interface agent to adapt the presentation styleof selected links or groups of links (e.g. a list of university courses). Among thepossible elements of presentation style the interface agent can modify, for instance,the order of presentation of links in a list or table, the color or size of the adoptedfont, and so on, in order to emphasize the most selected links according to pastnavigations either of the requesting user or of all the users who visited the local space.

These strategies for the exploitation of the gathered and stored information onusers’ behaviour represent a very simple way of exploiting this kind of informationwithout requiring an off-line analysis of the logs generated by the web server. Thedesign, implementation and test of more complex strategies are object of futureworks.

3.2 News diffusion

The aim of the News Diffusion adaptive functionality is to enhance the possibility fora user to obtain the information about news on topics or contents she is supposed tobe interested in. In particular, consider now an announcement about the Usabilityseminar published on the Human Computer Interaction course web page. Hence, auser navigating the related web page is able to find this information, however usersnot visiting that specific page would not be informed about the event. The idea is to

486 World Wide Web (2007) 10:471–501

Usability

Human ComputerInteraction

Web Programming

Computer ScienceDegree

Courses

Department of Computer Science physical layer

User Interfaces

Cognitive Psychology

Interface Design

Communication Science Degree

Courses

Topiclogical layer

Department of Psychologyphysical layer

Seminars

Syllabus

Seminar

Classification schemelogical layer

Course

Figure 10 A partial view of the environment representing the local space in the news diffusionscenario of the University domain. A news diffusion example is also shown.

diffuse this announcement in the environment in order to support the perception ofthis message by user agents associated to users that are navigating the local spacebut not necessarily that specific page. The LAW system provides the users with anadaptive area of their personal web browser where relevant information for themcan be published accordingly.

In order to illustrate how the LAW system deals with news diffusion, two physicallayers and two logical layers (see Figure 10) are considered: the first one representsthe link structure of the Computer science department web site while the secondone is about the structure of the Psychology department web site. The other layersrepresent logical representations of possible contents of the local space; one of themis about the topics related to the contents of pages of the local space (e.g. UserInterfaces, Cognitive Psychology), while the other is a classification scheme [38]of the types of events (e.g. courses, seminars, deadlines for bureaucracy) that aremeaningful for the target community. In order to support the flow of informationamong these layers suitable interfaces among them must be defined: for instance,the creator of the Usability page decided to annotate it with Seminar label. Conse-quently, the LAW system will create an interface between the corresponding nodeon the Department of Computer Science physical layer and the Seminar node of theClassification scheme logical layer.

In Figure 10, the information about the Usability seminar is modelled as a fieldwhich is diffused from the node corresponding to the Human Computer Interaction

World Wide Web (2007) 10:471–501 487

web page. Accordingly this information is spread to the Department of ComputerScience physical layer, and the intensity of the information decreases as it is diffusedacross the various nodes. Moreover, due to the fact that this physical layer shareswith the one associated to the Department of Psychology the two logical layers, thefield related to the announcement is also able to reach that physical layer (if theemission intensity is sufficient). In this way, the announcement will be perceived byuser agents situated in nodes belonging to the Department of Psychology physicallayer. In particular, in this situation the field follows two different paths: one passesfrom the seminar node of the classification scheme layer and it reaches the noderelated to the seminar announcement page of Department of Psychology web site.The other passes through the topic logical layer and it reaches the node related tothe Interface Design page. This means that the announcement will have a greatervisibility since it is shown to visitors of two different pages of the local space.

Figure 12 presents a screenshot of a page presenting in the top-right corner anarea related to the news that were diffused through the above illustrated diffusionmechanism and that were “strong enough” to reach the node related to the currentlyviewed page. News are ordered by date (ascending) and each of them has a link tothe page in which it was emitted. The area can be closed, minimized or expandedaccording to user’s preferences.

3.3 Contextualized user interaction

The previous case was focused on how information coming from the University asan institution is diffused as much as possible but taking into account the structureof the local space to avoid an indiscriminate information broadcast and still reachusers of the local space that can be interested in that information according to theirpositions in the local space. That case illustrated how the LAW system supports thisform of information diffusion exploiting the notion of field. However, the local spacecan be viewed not only as a way to find directly the needed information but also asocial medium helping people to reach each other in order to facilitate the gatheringof further information. This means that this form of information exchange considersthe notion of context: for the diffusion of information LAW exploits the structureof the environment underlying the local space (taking into account also the node inwhich the information is generated), and for the gathering of the diffused informationLAW takes into account both the position and the history of user agents associatedto users of the local space.

To show this use of the local space more aimed at supporting the community, weconsider another case of the University domain. In particular, let us suppose that astudent wants to find other students helping her to gather preliminary informationto undertake an exam. This way of interaction with other people is not currentlyeasily supported through the web technology (usual HTML or dynamic pages aimedat publishing information). The LAW system supports this kind of interaction bymeans of mechanisms very similar to those introduced in the previous section.

While in the previous case news were published by officially authorized usersand were considered thus of general interest of the community, in this case everyuser has the possibility to publish and diffuse her own messages by means of therelated user agent. Since these messages can have a more heterogeneous content,the LAW system introduces some additional mechanisms to filter the perception of

488 World Wide Web (2007) 10:471–501

Projects

Exam

Material

Courses Outline

Exam Requirements

Java

OOAD

Design patterns

UML design UMLResources

Basic AIphysical layer

Classification schemelogical layer

Topiclogical layer

Programming Labphysical layer

Figure 11 A sample environment and user message diffusion in the University domain.

the diffused messages. As introduced in Section 2.4, user agents are provided withan history representing the contents associated to the related user’s past navigations.This means that the user will be shown only those messages which are associated withat least one label present in the history of the corresponding user agent. In fact, unlikethe news diffusion case, user generated message are associated with labels expressingthe topic of the related message. These labels must belong to elements of the logicallayers, and can be associated to messages either manually by user themselves, or bythe user agent in charge of the diffusion of the message. In particular this can be doneby appending to the message the labels which are included in its current state, whicheffectively describe the node corresponding to the page the user is currently visiting.

Figure 11 shows an example of this form of information diffusion. In particular,two physical layers are present: the first is related to the Basic Artificial Intelligencecourse web site while the second is about the Laboratory of Programming course.The other layers are logical representations of possible contents of the local space,in terms of classification of contents and topics. The message sent by a student onthe Project page of the Basic AI course will be diffused also on the Laboratory ofProgramming physical layer. A user agent situated in the node related to the page ofUML design will be able to perceive the message only if its history encompasses thelabel Java (which is added by the user agent associated to the sending user) or if themessage is enriched by the sender with a label which is also contained in the historyof the user agent associated to the possibly interested user.

Figure 12 presents a screenshot of a page presenting in the top-right corner anarea related to the messages that were transmitted by other users in the local space.

World Wide Web (2007) 10:471–501 489

News Diffusion adaptivefunctionality

Contextualized UserInteraction functionality

Both areas can beexpanded (though the"more" link) or minimized

Figure 12 A LAW generated web page providing two adaptive blocks respectively related to thepublication of news and of user messages.

In particular, the shown messages were on the one hand able to reach the noderelated to the page that is being composed by the interface agent. On the otherhand, these messages were not filtered out by the perceptive capabilities of the useragent associated to the user requesting the page. Messages are ordered accordingto the intensity of the related fields in the node related to the page. As for thenews diffusion case, the area can be closed, minimized or expanded according touser’s preferences. Each message is associated to the sender so that she can becontacted by the message reader by means of a communication facility providedby an external application. Further developments of the LAW system provide theintegration with a synchronous chat system in which LAW automatically managesusers’ contacts or with other asynchronous communication channels, such as adedicated mail system where messages are exchanged only among members of thelocal space.

4 Related works

As illustrated by Brusilovsky et al. in [11], adaptive web systems can be char-acterized by a well structured information flow among three basic (functional)components: data collection, user model, and adaptation effect components. Dataabout users are collected from various sources and with more or less sophisti-cated techniques; these data are then used to feed the user model componentin order to dynamically maintain specific characteristics of a user (or a group ofusers); finally, the user model is used by the system as a means to adapt its be-havior, accordingly.

490 World Wide Web (2007) 10:471–501

4.1 Collecting data about users

As pointed out by Brusilovsky in [10], in web based systems (as a specific class ofhypermedia systems) there are some problems in collecting data about users: in factwatching what a user is doing in navigating web sites provides little information forthe needs of user modelling. An alternative approach to gather data about users isto involve them directly to provide the system with some forms of feedback (whatKay [25] calls collaborative or cooperative user modelling).

In our approach we gather information about users’ navigations by means of proxyagents: i.e., the user agents whose movements reflect the navigation behaviors of thecorresponding users. In particular, our approach aims to consider the WWW not as aglobal space, rather as a web of local spaces where members of a community navigate.In this way the wideness of the WWW space is reduced to a more manageabledimension on the basis of the common practices and interests among members ofa certain community. As a consequence of considering the WWW more in termsof a web of local spaces where members of a community navigate, we are morefocused on aspects concerning knowledge sharing and collaboration among thesemembers; hence, from our point of view, it is not so relevant to model the featuresof a single user, rather the possible interactions occurring among people sharing thesame web of local spaces. Consequently, it was natural to consider in our approacha multi-agent model where the emphasis is put on interactions among agents andmore precisely a situated multi-agent model where the environment – where theinteractions among agents take place – is considered a first class concept.

For what concerns the gathering of information about users’ navigations, theAntWeb [43] system resembles our approach. It is inspired by the biological model ofant colonies foraging behaviour. In fact, each user navigating the web is consideredas an artificial ant leaving a pheromone trail on each page she is visiting; then theamount of pheromone deposited on a link is a representation of its relevance (interms of number of previous visits). The system uses this indication to attract otherusers to that link by suggesting it with a visual cue. However, differently from ourapproach, the AntWeb system does not take into account the structure of the localspace the users are visiting, rather the single links they visited. Moreover, it ignoreslogical or conceptual aspects associated to the local space. In this way, it becomesmore difficult to facilitate knowledge sharing and communication among communitymembers.

Alternatively, other agent based models used in web adaptive systems focususually more on single information agents encompassing the above consideredfunctional components (data collection, user modelling, and adaptation effects). InPazzani and colleagues [34] a single web site agent is able to provide the correspond-ing user with recommendation about documents without taking into account possibleinteractions which may occur among different web site agents. Instead in [27], Letiziais a user interface agent that assists a user browsing the web by suggesting some linksthat are identified considering her past browsing behavior.

4.2 User modelling

As reported by Brusilovksy [10] User Models for adaptive hypermedia can encom-pass various characteristics of a user (or a group of users): e.g., knowledge about a

World Wide Web (2007) 10:471–501 491

certain subject, user’s goals or task, user’s background, user’s experience, preferencesand so on. For instance, the Avanti project [20] provides an automated customizationof web site contents, based on user modelling techniques and analysis of users’behaviours. In particular the system deserves a specific attention to specific needsof elderly and partially disabled users and this is reflected also in the characteristicsof the user maintained in the User Model.

There is a trend in adaptive hypermedia systems to model along with the usualuser features also more specific characteristics like user’s current location so totake into account that the hypermedia can be accessed by means of mobile deviceswhich can be carried on in different physical contexts. Along with this enrichedUser Model, systems take into account also additional information: for instancethe GUIDE system [16] encompasses also an environmental model to representgeographic information to describe the location of attractions within a city, linksbetween nearby attractions, the opening and closing times of attractions, and so onin order to let the system adapt its behavior taking into account not only the featuresof a certain user (like age, specific interests, current location and attraction alreadyvisited) but also the features of the physical environment the user is visiting (like theclosing time of some attractions). With this information it is possible for the system topropose for instance to the user a visit to an attraction if this is considered interestingfrom the user’s perspective but also if the current time is compatible with the closingtime of the considered attraction.

Other approaches – let us consider them as more “knowledge-oriented” since theyrely on forms of knowledge made previously explicit – try to model indirectly theuser by observing her search behavior and combining this information with otherknowledge sources. In fact, Watson [13] uses an explicit task model to interpret theobserved user action to anticipate user’s information needs. Even if less explicitly,also in [29] the authors consider what they call behavioral data, that is data ableto describe how people search the web; their findings showed that each individualhas a standard pattern of search behavior, and each user recalls and relies onlyon a few of the sites she visited (i.e. key nodes or waypoints). On the basis ofthese findings, the authors propose two typologies of agents mimicking the relatedusers’ behaviors, that is shortcut agents and waypoint agents. The former ones extractrepeated patterns from a user’s history of interactions with the web; the latterones extract waypoints from a user’s history of interactions with the web. Hence,in this approach the history of users navigations is interpreted in the light of theknowledge about the typologies of users behaviors as collected by means of previousobservations. Similarly, other approaches exploit the user browser histories in orderto provide more apt personalized search of information in the web; in these cases, theeffort is not on mimicking user’s behaviors during the search activities, rather theseapproaches are more focused to take into account the structure of the informationthe user is looking for. In [40] a user profile expressing the user’s interests is createdon the basis of the classification of previous search results with respect to conceptsof a given reference concept hierarchy. This profile is then used to re-rank searchresults according to the user’s interests by computing similarity between it andsearch results, accordingly. In a similar vein, in [28] the authors propose how topersonalize web search for improving retrieval effectiveness. In fact, their approachcombines user’s profile learned automatically from the user’s search history with ageneral profile relating to a predefined category hierarchy in order to enrich queries

492 World Wide Web (2007) 10:471–501

proposed by a user with further contextual information expressing hers searchintention. In our approach it is not the user herself to be directly modelled, neitherher tasks nor her search results, rather it is the physical/logical structure underlyingthe web of local spaces she is browsing; again this choice is motivated mainly by ourinterest in collaboration and hence the idea is that we want to model the environmentwhere interactions among user agents happen, not the characteristics of a single userneither her related activities.

Other approaches consider forms of “implicit” user modelling. With this termwe consider that in these approaches the User Model is not explicitly represented,rather the User Model component is by-passed since the applications use directly thedata collected about a user for producing the related adaptation effects. For instancein [35] index pages, i.e., pages containing links to other pages covering a specifictopic, are generated on the basis of an analysis of access logs aimed at finding clustersgrouping together pages related to a topic.

A different approach provides the real-time generation of shortcut links [1]through a predictive model of web usage based on statistical techniques in order toreduce the efforts of navigation. Another approach to web site adaptation providesthe adoption of a learning network to model the evolution of a distributed hypertextnetwork, such as a web site can be considered [8].

4.3 Adaptation effects

As described by Brusilovsky in [10], since in web adaptive systems the information ispoorly structured in terms of a collection of connected navigation items where usersnavigate to gather the needed information, there are few possibilities for definingadaptation effects. The latter in fact are limited mainly to: content selection, adaptivenavigation support, adaptive presentation.

Adaptive content selection is about the capability of the system to dynamicallyselect the most relevant information items. Adaptive navigation support is aboutthe capability of the system to dynamically manipulating the links connecting thevarious information items and in some way to support the user in the navigationof information. The adaptive presentation is about to find the most suitable wayto present the related information to the current user, once the desired contentis selected. Our proposal, in addition to a form of adaptive navigation support,provides the user with a form of content adaptation concerning the publication ofuser messages and news on the basis of the current and past user navigations. Forwhat concerns adaptive presentation, as a consequence of a trend of accessing webbased systems with portable devices, some proposals like [15] focus on changingdynamically the presentation of the selected content according to the characteristicsof the current device used to access the web pages.

An alternative approach to design adaptive web systems without considering thethree above described components [10] is called Social Navigation. In this approachthe focus is not on the single characteristics of a user, rather on the idea thatwhen navigating through an information space, people are affected by the actionsof others. In particular, this means that the previous emphasis put on the UserModel as the place where to store relevant information about a user consideredin isolation, in Social navigation is put on the way to store information aboutcurrent and past navigations of different users since this information may affect

World Wide Web (2007) 10:471–501 493

the navigational behavior of a user. Following this intuition of social navigationapproach, systems are designed providing different forms of adaptations (which arehowever similar to the ones provided by adaptive web approach). The Footprintssystem [44] provides the users with some forms of adaptive navigation supportsthrough the metaphor of (physical) traces left by visitors during their navigation.These signals accumulate in the environment, generating awareness information onthe most frequently visited areas of the web site. Similarly, an extension of a Co-Webproposed by Dieberger in [18] provides mechanisms concerning social navigation ofinformation: in particular it provides some footprint markers which provide cues onthe use of certain links on the basis of previous users navigations. As stated above inSection 2.4, we prefer an alternative way to represent users’ navigation behaviors byusing agents situated in an environment which then store the traces representing thenavigation of the corresponding users.

The above presented examples of adaptation are referred to in literature(e.g., [30]) as indirect social navigation since, as reported by Svensson in [41], this kindof system provides a one-way communication among a user and others users. Thecurrent user receives information which is influenced (adapted) by the behaviors ofthe others, but she does not give anything back to them. While the previous exampleswere more related to adaptive navigation support, indirect social navigation is alsoused to provide content adaptation: in this case it is very similar to collaborativefiltering [36] and more in general to the mechanisms used in Recommender sys-tems [37]. An example of these systems is described by Hook et al. in [42] wherean on-line grocery store has been enriched with a number of different functionalitiesthat enhance social navigation. In this web site for instance recipes are recommendedto customers on the basis of what other customers have chosen: in this way, one of thecontents of the site (the recipes) is changed according to the behaviors of the previouscustomers. Also in our proposal we provide the users with an adaptive navigationsupport concerning the shortcuts to most visited links and also the presentation stylesof various links according to their relevance. For what concerns adaptive navigationsupport, our proposal takes into account both approaches which consider the user inisolation (like adaptive web systems encompassing a User Model) and approacheswhich consider how the behaviors of different users affect the behavior of one user(like in indirect social navigation). In fact the system provides the user with newlinks either by considering the navigation behavior of a single user or by takinginto account the behaviors of all the users navigating the web of local spaces. Thisis possible because the system keeps each navigation behavior of a user stored inthe corresponding user agent. So the system is able both to identify a single userbut also to aggregate information concerning navigations of different users withoutconsidering their identities.

Another aspect of Social navigation concerns what is called direct social naviga-tion [41]: this is characterized by the existence of a two-way communication amongthe users navigating the WWW. To our knowledge there are few systems supportingdirect social navigation on the WWW. Probably the I2I system [12] is the most closelyrelated to this approach; in fact, the system provides users with chat functionalityintegrated in a web browser which allows them to communicate directly. The authorscall this kind of interaction “opportunistic communication” since people who areviewing or manipulating the same or related contents on the web may take advantageof communicating together. Though this ability to make the interaction among

494 World Wide Web (2007) 10:471–501

people contextualized around the information they are navigating in is a feature weconsider also for our system, we are more focused on the support of members of acommunities navigating around the same local space: hence we emphasize less theopportunistic aspect of the communication as the authors in [12] intend. Rather,we want to consider how the exchange of knowledge may be facilitated amongpeople who are already part of a community built around/building a local space,even if the level of participation of the various members may be different, andconsequently also the amount of knowledge sharing among the different membershas to be modulated accordingly (see, for example, [14] for similar considerations inthe pervasive computing domain).

The on-line grocery store proposed in [42] is another example of this two-waycommunication support: users can chat with other users who currently are visitingthe same group of recipes. We are also going to provide support to direct socialnavigation: in fact as described above we are going to provide mechanisms facilitatingcommunication among users. In particular a user may contact other users whosenavigation behaviors are relevant for the kind of information she is looking for.In this way our proposal is similar to Expertise findings systems [6] even if in ourcase the concept of expertise is weaker. In fact, our system is able to observe onlythe navigation behaviors of a user i.e., her capability to search in an informationspace. This means that experience in our terms refers only to the familiarity of a userwith certain topics or, in Brusilovsky terms [10], refers to the user’s experience: i.e.,how in a given hyperspace the user is familiar with the structure of the hyperspaceshe is navigating. This familiarity can then be used to help other users who are lessfamiliar with the hypermedia structure to find more easily the needed information. Inaddition, it is not the user herself, rather the information gathered in the environment(by means of our the multilayered approach) which can enrich the concept ofuser’s experience by considering also the topics associated to the local space she isnavigating in.

5 System evaluation

In the previous section we considered different approaches in the area of adaptiveand personalized web systems. Some of them are more related to the search activitiesof the user; others are instead focused on facilitating the browsing of informationin the web; consequently, different ways of collecting user’s data related to theirbehaviors are considered, and different adaptation techniques are exploited.

As already stated above, our approach aims to define a comprehensive architec-ture which is based on the idea of considering the web as a local space of informationwhere different people can navigate in; accordingly, we used a multi-agent model inorder to represent in a natural way the idea of having different people navigatingthe web; in fact, agents situated in the environment represent the location of thecorresponding users in the hyperlinked informational structure of the space; inaddition, since we consider a multilayered representation of the space, we associatealso logical layers structuring the contents of the local space, in order to enrich theinformation associated to the space.

Hence, from our point of view, we are less interested to propose specific adap-tation techniques, rather we want to investigate the capability of our approach in

World Wide Web (2007) 10:471–501 495

building adaptive web applications which can help people in navigating the webmore effectively. This also to make possible the gathering of information which isnot directly connected to users’ navigational behaviors and to facilitate collaborationamong different users navigating in the local space. Consequently, in our approachthese different functionalities are not separated, but are all part of a multi-agentarchitecture in the Web in the small perspective.

Taking into account this overall perspective of web adaptation, we are lessinterested to evaluate the single adaptation functionalities. Nevertheless, we proposesome specific functionalities, like direct guidance, that can be subjected to evaluation.To this aim, the following subsection describes a concrete experience where a pre-liminary evaluation of the direct guidance functionality is proposed. Subsection 5.2discusses more general issues concerning system evaluation taking into account theusability perspective.

5.1 Direct guidance evaluation

Differently from a pure performance evaluation perspective about system charac-teristics, we rather want to consider issues related to the “quality” of the adapta-tion functionalities with respect to the users’ expectations. In fact, sometimes theevaluation of (adaptive) web systems is more focused on the optimal use of theavailable resources (like bandwidth, visualization capabilities, and so on) [1, 23].Instead, we are interested to consider usability of the system as “... the effectiveness,efficiency and satisfaction with which a certain user may achieve a specific objectivein a particular environment” [24]. In particular, we focused on an evaluation ofthe direct guidance functionality, as described in Section 3.1, taking into accountthe users of a computer science research group web site. The site contains pagesdescribing the research activities carried out by group members, their personal pages,the descriptions of projects and events (e.g. workshops, conferences, seminars) inwhich the group is involved, and pages devoted to supporting educational activities(e.g. courses, available thesis).

For the evaluation we considered mainly as users the students of courses whoselecturer is a member of the group. In particular, the experiment was held duringtwo weeks at the end of a semester, just before the first exams of five courses(in which approximately 300 potential students are involved). Since students aremostly anonymous, they were provided with a general form of adaptation, takingin consideration the traces generated by every visitor. Though this experiment didnot involve a large number of users, it must be noted that our approach is aimedat providing adaptive functionalities focused on the WWW in the small perspective.This means that we considered a relatively small number of users, belonging to thesame community, accordingly.

In order to identify a meaningful measure of the effectiveness of the directguidance functionality from a user perspective, we decided to try to reduce theusers’ biases as much as possible so that the users were not a priori influenced aboutthe presence of this functionality. In fact, users were not informed about the directguidance functionality nor it was advertised in the site itself in order to make usersaware of it: the interface in fact simply provides an additional box below the staticmenu on the left part of the page presents a set of suggested links (as shown inFigure 9) which looks like the other parts of the site interface.

496 World Wide Web (2007) 10:471–501

In order to identify a meaningful measure of the effectiveness of the directguidance functionality we related it to the users’ goals. In fact, we considered thedirect guidance functionality as an aid in directing users towards the page they werelooking for. In order to measure the usefulness of this functionality we registeredduring the two weeks of the evaluation two kinds of data: the number of times thevisitors followed a link provided by the direct guidance functionality to reach thedesired page and the total number of visits to one of the considered page.

The results of this monitoring activity are described in Figure 13. In particular, thediagram on the left shows the total number of visits to the courses index, that canbe compared to the number of visits that actually used direct guidance links fromvarious other areas of the monitored web site. The courses index was visited 325times during the monitored period, and 67 of these visits were generated by usersthat actually exploited a direct guidance link: 53 users arrived to the course indexfollowing a direct guidance link proposed on the site index page (distant two links),16 arrived from lecturers’ personal pages (distant three links) and three from pagesdescribing group’s research activities (also distant three links).

The diagram on the right describes in an analogous way the situation of a specificcourse page (that is a basic informatics course for mathematics degree course). Thepage was visited 732 times during the monitored period, and 83 of these visits wereperformed by users that followed a direct guidance adaptive link proposed by thesystem in the site index page (distant three links), 24 users arrived instead from thepage devoted to educational activities (distant two links), 19 from pages devotedto other courses (also distant two links) and seven from lecturers’ personal pages(distant four links).

As shown in the diagram, the direct guidance links essentially provided shortcutsto the destination pages from various other areas of the site, and the users whoselected them essentially saved time by skipping the intermediate pages.

Summarizing the results, we can conclude that the direct guidance links generatedbetween 18% and 22% of the visits to the monitored pages, and this can be con-sidered a first meaningful indication of effectiveness of direct guidance functionality

Courses index

Research description pages

(3)

3

325

(2)

53

Site index

16

(3)

Lecturer’s personal pages

Maths-InformaticsLaboratory

Education

(3)

83

732

(2)

24

Site index

19

(2)

Other courses

Lecturer’s personal pages

7

(4)

Figure 13 The diagrams summarize the experiment on the direct guidance adaptation functionality:on the left the number of visits to the courses index can be compared to the number of visits thatactually used direct guidance links from various other areas of the monitored web site; the diagramon the right describes in an analogous way the situation of a specific course page.

World Wide Web (2007) 10:471–501 497

provided that users were not priorly aware of this functionality. In this case, effective-ness is related to the influence of the adaptive functionality on the way users reachthe page they are looking for. It must be also noted that these percentages couldbe higher if the monitoring mechanism detected also the visits of users that actuallybookmarked the destination pages. These users, in fact, did not exploit the directguidance functionality (they did not even have the possibility to visualize it, sincethey selected the destination page before entering the monitored site).

However, much more has to be done to really understand what are the adaptivefunctionalities that are perceived as useful by the users and which are the method-ologies and mechanisms to really measure how much these functionalities are usefulfrom a user’s perspective. In the next subsection we discuss these more general issuesof system evaluation from an usability point of view.

5.2 System evaluation: an usability perspective

As described in the previous section in regards to the evaluation of the directguidance functionality, we are interested to consider evaluation of adaptive systemsfrom a user-centered perspective. In particular, we want to stress the usabilityconcept towards its situated dimension [21]: in our view, we want to take a more“user-centered” and contextual view in considering how much the system is able tofacilitate the user with respect to her current information needs in particular whenthe user is considered part of a community while navigating the related local space.This perspective raises new challenges for the evaluation of the system itself; in fact,it is not clear how to measure to which extent a system is better than another from amore qualitative “user-centered” point of view that takes into account not only theuser in isolation with respect to her performances, but also the fact that a user createsand exchange knowledge when is a member of a community.

As a consequence of our focus, there are three different aspects to take intoaccount: the first is about technologies, the second is about the evaluation of specificfunctionalities, the third considers a more general concern about the evaluation ofweb-based adaptive systems.

First, current and more traditional web interfaces still provide the user withlimited interactional capabilities. Technologies to build richer interfaces are stillunder consideration and development. In particular, it is important to identify/designsome tools able to recognize in a more detailed way the user navigational behavior.For example, some relevant events and behaviours to be monitored are the clicksin area of the screen, the movements over some area, the time spent to read, tonavigate, and so on (see, e.g., [17] for more details on the relevance of capturingthis kind of information in identifying web usage patterns). Moreover, these data canbe gathered with the adaptation effects disabled in order to perform a comparisonbetween traditional web sites vs. adaptive ones (e.g. time spent browsing the site,number of downloaded documents from the site [34]). However, even if these dataare useful to evaluate an adaptive web system, no one is able to say if the time spentby a user on a page is an indicator of her interests or the focus of attention of the useris elsewhere.

Second, let us suppose to evaluate the system which is presenting a set of linksgenerated adaptively according to previous user’s navigational behavior. It is notenough to tell whether the user clicked the suggested links or not: this can be an

498 World Wide Web (2007) 10:471–501

indicator of the frequency of usage of the direct guidance functionality, but such anabsolute value is not per se an indicator of a “successful” adaptation. Moreover, it isdifficult to define a frequency threshold above which an adaptation can be consideredsuccessful. Beyond these considerations, another aspect that should be consideredis the “usefulness” of the suggested link (i.e. the time saved by the user followingit instead of using the static navigation path). So the problem is to find propermetrics in order to evaluate the effectiveness of the provided adaptive functionality.In addition to the evaluation of this more traditional adaptive functionality, thisactivity becomes much more complex when more advanced adaptive functionalitiesare considered. In fact it is not clear how to establish to which extent collaborationand knowledge sharing among community members are facilitated when the abovedescribed interaction functionalities are provided by the system under evaluation.

Finally, there is a tension between adaptation functionalities and usability: infact, from a cognitive perspective on usability [32], the user is facilitated in theinteraction with a system whether she is able to build a good conceptual modelto anticipate also system’s results; this may be more critical in adaptive systems,since the system changes dynamically its interaction modalities according to theadaptation functionalities; this means that, even if the system is intended to adaptto be better personalized to the user, its affordances are different, and the user has tosmoothly recognize and understand cognitively the nature of the new affordances.In other word, the user needs to have clear in mind the possible results arisingfrom the interaction with the “new” system, otherwise she could feel lost, with aconsequent worsening of the usability of the system. This means that designers hasto carefully take into account how to manage the tension between functionalitiesand usability in order to find an effective trade-off among the two. Consider forexample the above functionality of direct guidance; the trade-off in this case is onthe time the user saves whether she follows the suggested link to reach directly thedesired page including also the time used to recognize the new link on the interfaceand its meaning (the adaptive system) versus the time spent navigating towards thedesired page by crossing the links constituting the usual path she follows (the usualand already usable way, without adaptive functionalities).

All these aspects advocate for an usability “methodology” suitable to evaluate thepeculiarities of web-based adaptive systems which, to our knowledge, is still far to beconsolidated. However, it is possible to be inspired from other methodologies like theone developed by [22] for web based educational systems; in any case, even if a set ofconsolidated usability evaluation methods and techniques is available [21] (e.g., userquestionnaires, thinking aloud protocols, and so on), one of the major issues is stillthe definition of subjective user preference and objective (user-centered) parameterswith the related metrics [31] which are indicative of an adaptive-web system (espe-cially if newer advanced adaptive functionalities are considered). Consequently, weare going to deal with these evaluation issues in parallel with the consolidation of oursystem.

6 Conclusions and future developments

The paper presented the motivations and the main functionalities of a technology,the LAW system, whose architecture contains modules devoted to manage differentforms of web adaptivity in a WWW in the small perspective. The reference users

World Wide Web (2007) 10:471–501 499

are members of communities able to enrich the basic structure of pages and linkswith semantic structures needed to construct and share the community’s memoryand to enhance the interaction among the community’s members. This ensemble ofstructures can be represented in terms of an agent based model characterized bythe explicit description of a multi-layered topology. Moreover, these structures canbe used to interpret the observed browsing behaviors of the users in order to tunethe adaptation of information sharing and interaction to their current profile. Thisapproach aims at making adaptability sustainable, that is without requiring moreknowledge and effort than the ones the community generates and spends to survive.The current version of the LAW system is a running prototype that implements tracemanagement and interface adaptation. We did also a preliminary evaluation of thesystem with respect to some implemented adaptive functionalities (i.e. direct guid-ance links). Though the first results are promising, still more has to be done to betterunderstand the impacts of the adaptive functionalities on the users of the system.In the future, the adaptive interaction functionalities are going to be integrated inorder to start a systematic validation of the approach in the framework of the localspace defined by a research group in our department. Then basic functionality of theLAW system will be improved according to the outcomes of this validation. Fromthe current experience with the system we can anticipate the need of some agingmechanisms to improve the support based on users’ browsing behavior as well as tomanage the persistence of influence (fields) information at the nodes of the multi-layered topology. Here the challenge is to combine the power of existing approacheswith the knowledge that is generated and characterizes the local community. Otherforeseen improvements of LAW are related to the definition of more advancedstrategies for the direct guidance adaptation functionality (considering for instancealso the labels related to the user agent history).

Currently, the LAW system does not deal with privacy issues related to thegathering and management of data about users’ behaviours in the local space. It mustbe noted that, any adaptive web system shares this issue, and it can be consideredan open problem. Currently, users are informed that their usage of the system isbeing monitored with the aim of providing adaptive functionalities, and that thegathered data will not be disclosed. However, this is not a solution and we are goingto investigate possible approaches, for instance developed in the cryptography andcomputer security areas.

In any case, we strongly believe that the view of the Web in the small is a promisingapproach towards an effective form of Semantic Web and, as claimed by someresearchers, of Pragmatic Web [39].

Acknowledgements The authors would like to thank Andrea Bonomi for his contribution to thedesign and implementation of the LAW system.

References

1. Anderson, C.R., Domingos, P., Weld, D.S.: Adaptive web navigation for wireless devices. In:Proceedings of the Seventeenth International Joint Conference on Artificial Intelligence (IJCAI2001), pp. 879–884 (2001)

2. Andriessen, E.J.H.: Archetypes of knowledge communities. In: van den Besselaar, P.,De Michelis, G., Preece, J., Simone, C., (eds.) Communities and Technologies, pp. 191–214.Kluwer, Dordrecht (2005)

500 World Wide Web (2007) 10:471–501

3. Bandini, S., Manzoni, S., Simone, C.: Dealing with space in multi-agent systems: a model forsituated MAS. In: Proceedings of the First International Joint Conference on AutonomousAgents and Multiagent Systems, pp. 1183–1190. ACM, New York (2002)

4. Bandini, S., Manzoni, S., Simone, C.: Heterogeneous agents situated in heterogeneous spaces.Appl. Artif. Intell. 16, 831–852 (2002)

5. Bandini, S., Manzoni, S., Vizzari, G.: Towards a platform for multilayered multi agent situatedsystem based simulations: focusing on field diffusion. Appl. Artif. Intell. 20, 327–351 (2006)

6. Becks, A., Reichling, T., Wulf, V.: Expertise finding: approaches to foster social capital. In: SocialCapital and Information Technology, pp. 333–354. MIT Press, Cambridge, MA (2004)

7. Berners-Lee, T., Hendler, J., Lassila, O.: The semantic web. Sci. Am. 284, 34–43 (2001)8. Bollen, J., Heylighen, F.: Algorithms for the self-organisation of distributed, multi-user networks.

Possible application to the future world wide web. In: Trappl, R. (ed.) Proceedings of the 13thEuropean Meeting on Cybernetics and Systems Research, pp. 911–916. Austrian Society forCybernetic Studies, Austria (1996)

9. Bonomi, A., Sarini, M., Vizzari, G.: A heterogeneous multi-agent system for adaptive webapplications. In: DePaoli, F., DiStefano, A., Omicini, A., Santoro, C. (eds.) WOA 2006 – Grid,P2P and Self- Systems, CEUR Workshop Proceedings, vol. 204, pp. 66–75 (2006)

10. Brusilovsky, P.: Methods and techniques of adaptive hypermedia. User Model. User-adapt.Interact. 6, 87–129 (1996)

11. Brusilovsky, P., Maybury, M.T.: From adaptive hypermedia to the adaptive web. Commun. ACM45, 30–33 (2002)

12. Budzik, J., Bradshaw, S., Fu, X., Hammond, K.J.: Clustering for opportunistic communication.In: Proceedings of the Eleventh International World Wide Web Conference, WWW2002,pp. 726–735. ACM, New York (2002)

13. Budzik, J., Hammond, K.J.: Watson: anticipating and contextualizing information needs. In: 62ndAnnual Meeting of the American Society for Information Science, Medford, NJ (1999)

14. Cabitza, F., Locatelli, M.P., Sarini, M., Simone, C.: Casmas: supporting collaboration in pervasiveenvironments. In: 4th IEEE International Conference on Pervasive Computing and Communi-cations (PerCom 2006), pp. 286–295. IEEE Computer Society, Los Alamitos, CA (2006)

15. Canali, C., Cardellini, V., Lancellotti, R.: Content adaptation architectures based on squid proxyserver. World Wide Web J. 9, 63–92 (2006)

16. Cheverst, K., Mitchell, K., Davies, N.: The role of adaptive hypermedia in a context-aware touristguide. Commun. ACM 45, 47–51 (2002)

17. Cooley, R.: The use of web structure and content to identify subjectively interesting web usagepatterns. ACM Trans. Internet Technol. 3, 93–116 (2003)

18. Dieberger, A.: Where did all the people go? A collaborative web space with social navigationinformation. In: Poster at WWW9, Hague, The Netherlands (2000)

19. Ferber, J.: Multi-agent systems. Addison-Wesley, Reading, MA (1999)20. Fink, J., Kobsa, A., Nill, A.: User-oriented adaptivity and adaptability in the avanti project.

Technical report, Microsoft usability group (1996)21. Gamberini, L., Valentini, E.: Web usability today: theories, approach and methods. In: Towards

CyberPsychology: Mind, Cognitions and Society in the Internet Age, pp. 109–126. Ios Press,Amsterdam, The Netherlands (2001)

22. Granic, A., Glavinic, V., Stankov, S.: Usability evaluation methodology for web-based ed-ucational systems. In: 8th ERCIM Workshop “User Interfaces For All” (Available athttp://ui4all.ics.forth.gr/workshop2004/files/ui4all_proceedings/adjunct/evaluation/28.pdf) (2004)

23. Henricksen, K., Indulska, J.: Adapting the web interface: an adaptive web browser. In: 2ndAustralasian User Interface Conference (AUIC 2001), pp. 21–28. IEEE Computer Society,Los Alamitos, CA (2001)

24. ISO/DIS 9241-151: Ergonomics of human-system interaction – part 151: guidance on world wideweb user interfaces. (Standard under development) (2006)

25. Kay, J.: The UM toolkit for coopertive user modeling. User Model. User-adapt. Interact. 4,149–196 (1995)

26. Kobsa, A.: Generic user modeling systems. User Model. User-adapt. Interact. 11, 49–63 (2001)27. Lieberman, H.: Letizia: an agent that assists web browsing. In: Proceedings of the Fourteenth

International Joint Conference on Artificial Intelligence, IJCAI 95. Morgan Kaufmann,San Mateo, CA (1995)

28. Liu, F., Yu, C.T., Meng, W.: Personalized web search for improving retrieval effectiveness. IEEETrans. Knowl. Data Eng. 16, 28–40 (2004)

World Wide Web (2007) 10:471–501 501

29. Maglio, P.P., Barrett, R.: How to build modeling agents to support web searchers. In: Jameson,A., Paris, C., Tasso, C. (eds.) Proceedings of the Sixth International Conference on User Model-ing (UM97), pp. 5–16. Springer, Berlin (1997)

30. Munro, A., Höök, K., Benyon, D.: Footprints in the snow. In: Social Navigation of InformationSpace, pp. 1–14. Springer, Berlin (1999)

31. Nielsen, J., Levy, J.: Measuring usability: preference vs. performance. Commun. ACM 37, 66–75(1994)

32. Norman, D.A.: The Psychology of Everyday Things. Basic Books, New York (1988)33. Orwant, J.: Heterogeneous learning in the doppelgänger user modeling system. User Model.

User-adapt. Interact. 4, 107–130 (1995)34. Pazzani, M.J., Billsus, D.: Adaptive web site agents. Autonomous Agents and Multi-agent

Systems 5, 205–218 (2002)35. Perkowitz, M., Etzioni, O.: Adaptive web sites. Commun. ACM 43, 152–158 (2000)36. Resnick, P., Iacovou, N., Suchak, M., Bergstrom, P., Riedl, J.: Grouplens: an open architecture

for collaborative filtering of netnews. In: CSCW ’94, Proceedings of the 1994 ACM Conferenceon Computer Supported Cooperative Work, pp. 175–186. ACM, New York (1994)

37. Resnick, P., Varian, H.R.: Recommender systems – introduction to the special section. Commun.ACM 40, 56–58 (1997)

38. Simone, C., Sarini, M.: Adaptability of classification schemes in cooperation: what does it mean?In: Prinz, W., Jarke, M., Rogers, Y., Schmidt, K., Wulf, V. (eds.) Proceedings of the SeventhEuropean Conference on Computer Supported Cooperative Work, 16–20 September 2001,Bonn, Germany, pp. 19–38. Kluwer, Dordrecht (2001)

39. Singh, M.P.: The pragmatic web. IEEE Internet Comput. 6, 4–5 (2002)40. Speretta, M., Gauch, S.: Personalized search based on user search histories. In: 2005

IEEE/WIC/ACM International Conference on Web Intelligence (WI 2005), pp. 622–628. IEEEComputer Society, Los Alamitos, CA (2005)

41. Svensson, M.: Social Navigation. Technical Report T98:01, Swedish Institute of ComputerScience (1998)

42. Svensson, M., Höök, K., Laaksolahti, J., Waern, A.: Social navigation of food recipes. In:Proceedings of the SIG-CHI on Human Factors in Computing Systems, pp. 341–348 (2001)

43. Teles, W.M., Li, W., Ralha, C.G.: Antweb – the adaptive web server based on the ants’ behavior.In: 2003 IEEE / WIC International Conference on Web Intelligence, (WI 2003), 13–17 October2003, Halifax, Canada, pp. 558–561. IEEE Computer Society, Los Alamitos, CA (2003)

44. Wexelblat, A., Maes, P.: Footprints: history-rich tools for information foraging. In: Proceedingsof the SIGCHI Conference on Human Factors in Computing Systems, pp. 270–277. ACM,New York (1999)

45. Weyns, D., Omicini, A., Odell, J.: Environment as a first class abstraction in multiagent systems.Auton. Agents Multi-agent Syst. 14, 5–30 (2007)