A Model-Driven Approach to Include Adaptive Navigational Techniques in Web Applications Gonzalo Rojas, Vicente Pelechano and Joan Fons Department of Information Systems and Computation Technical University of Valencia, Spain {grojas, pele, jjfons@dsic.upv.es} Abstract that have been already implemented in existing Adaptive Hypermedia Systems (AHS). The classification of Adaptivity is an increasingly demanded characteristic techniques for adaptive navigation and presentation that of Web applications. However, adaptive techniques has been proposed by the Adaptive Hypermedia usually implemented in Adaptive Hypermedia Systems community is hardly considered and is not expressed at have been hardly considered by current Model-Driven conceptual level, taking little advantage of these previous Web Development Methods. This work presents an research efforts. approach to describe adaptive navigation techniques at The main contribution of this work is introducing early stages of the Web development process. Using the descriptions of well-known adaptive techniques at primitives of the OOWS Navigational Model, we have conceptual level of the Web development process. In this defined a strategy to incorporate three types of techniques way, we are able to obtain adaptive Web applications that (link-hiding, link-ordering and link-annotation) to the are more independent of implementation concerns than the Web modelling process. A User Modelling proposal that most adaptive hypermedia systems. is necessary for the complete specification of these In the context of OOWS [5], an OO-based modelling techniques is also introduced. The impact of the method, the specific contributions of this work are: introduced descriptions of techniques on the final (a) A User Modelling approach that allows describing the adaptive applications is shown by means of a case study. intended users through the definition of groups of similar users (stereotypes) and three graphical models, which 1. Introduction. contain the needed attributes and operations for achieving the adaptivity. Most of the currently available hypermedia (b) A set of adaptive navigation techniques that are applications provide users with a limited set of possible defined in terms of different conceptual primitives of the interactions, with little consideration of the particular OOWS Navigational Model. characteristics, preferences and needs of each user. The adaptive techniques that are introduced in the Adaptive Hypermedia arises as an approach that seeks OOWS Web development method are classified into three to achieve usage experiences that are more suitable to the categories that are broadly used by the Adaptive individual information needs. Research efforts made by Hypermedia community: (a) the management of nodes Adaptive Hypermedia community have produced clearly accessibility (link-hiding); (b) the ordering of the defined concepts and adaptation strategies. However, they navigational links (link-ordering); and (c) the addition of are mainly focused on late stages of software informative hints to displayed links (link-annotation). development. The developed applications are highly The rest of this paper describes the three parts of our dependant on implementation details and on particular proposal: Section 2 presents an overview of the OOWS data instances. Modelling approach, focused on its Navigational Model. As a special and widespread kind of hypermedia Section 3 describes our proposal for User Modelling, systems, Web applications are incorporating adaptivity consisting in the definition of user stereotypes and the features. The Model-Driven Web development specification of user attributes through three graphical community has been augmenting the expressiveness of models. Section 4 describes the adaptive navigation their Web conceptual models for achieving high-level techniques introduced into the OOWS process, presenting descriptions of Adaptive Web Systems. examples of their conceptual description and the resulting However, most of these efforts are limited to the implementations. Section 5 presents a brief review of definition of rules that constrain the accessibility of the related works on conceptual modelling of adaptive Web navigational structures. This strategy gives little support to applications. Finally, Section 6 presents some conclusions the implementation of well known adaptive techniques and future works. 2. The OOWS navigational modelling defined over an association, aggregation, composition or approach. specialization relationship included in the Class Diagram. OOWS (Object-Oriented Web Solution) modelling method [5] is the extension of the OO-Method proposal for Automatic Code Generation [7], which introduces the required expressiveness to capture the navigational and presentational requirements of web applications. Client The OOWS Conceptual Modelling process consists of three main steps: (1) Requirements Elicitation, where the requirements of the Web application are described by means of UML Use E E E E E Cases and Scenarios techniques; «context» «context» «context» «context» «context» Special Shopping (2) Classic Conceptual Modelling, where system structure Your Store Offers Main Cart Account and behaviour are described, using UML-compliant Class, Sequence and State Diagrams; and (3) Navigational and Presentational Modelling, where OOWS Navigational and Presentational Diagrams are S built, strongly based on the Class Diagram defined in the «context» Books previous stage. The OOWS Navigational Model is composed of a set S S of Navigational Maps. Each map corresponds to a global «context» «context» view of the Web application for a given group of users. It Review Authors is represented by a directed graph, in which the nodes are Navigational Contexts and the arcs are Navigational Links that define the valid navigation paths. Figure 1. Example of OOWS navigational map Navigational Contexts represent interaction points and the two types of navigational contexts. between users and application, and provide a set of cohesive data and operations. There are two types of navigational contexts: (a) Exploration Contexts, which are OOWS defines two kinds of Navigational reachable from any node; and (b) Sequence Contexts, Relationships: accessible only via predefined navigational paths. (a) Context dependency relationship (dashed arrows), Figure 1 shows an example of a Navigational Map, which represents a basic information recovery by crossing corresponding to an online bookstore and defined to a a structural relationship between classes. Client user type. It is composed of five exploration (b) Context relationship (solid arrows), which represents contexts (with “E” label) and three sequence contexts an information recovery plus a navigation to a target (with “S” label). Dashed arrows represent the navigational context. Context relationships have the following links to the exploration contexts. The solid arrows properties: correspond to the predefined navigational paths that allow (1) A context attribute that indicates the target context accessing the Books Navigational Context, and from this of the navigation (depicted as [target context]). accessing to the other sequence contexts. (2) A link attribute that specifies the attribute (usually Each Navigational Context is composed of one of the target navigational class) used as the “anchor” Navigational Classes, which represent views of the to activate the navigation to the target context. classes included in the Class Diagram. Each navigational Operation links can also be attached to an operation. context has one mandatory navigational class from which An operation link represents the target context (depicted the information retrieval starts, called Manager Class, and as [target context]) that the user will reach after that other optional navigational classes that provide operation’s execution. complementary information, called Complementary Figure 2 shows the Books Navigational Context Classes. included in Figure 1, which describes a page of a specific Navigational classes contain the visible attributes and book in the online bookstore. Book manager class shows executable operations that are available for the user in the basic purchase data of the presented book, while corresponding context. All the navigational classes are information from complementary classes is retrieved related through unidirectional binary relationships, so through the shown navigational relationships. called Navigational Relationships. Each of them is S <> BOOKS <> AUTHOR - name <> <> SPECIALIZED BOOK ] REVIEW ors - ISBN uth - title [A - reviewer name - title - year - summary - edition title - summary iew ] - cover image [ Rev - pages - price <> USER REVIEW - IOwnIt() title - title - RateThisBook() - date - AddToCart() [ Users Review ] - reviewer [ Shopping Cart ] - AddToFavourites() [ My Favourites ] <> <> SPECIAL OFFER BOOK - price - title - AddToCart() [ Books ] [ Shopping Cart ] Figure 2. Books navigational context for a web- based bookstore. Figure 3. Implementation of Books navigational context. Figure 3 shows an implementation of the Books Navigational Context. In frame 1, it is possible to Let us consider the following example: the section distinguish the main data of the presented book, corresponding to attributes and operations of the Book “Your Store” of an online bookstore shows some books that the system recommends to the user. These books must manager class; the book review made by a specialist is have been published not earlier than 1980 and must be shown through the Book-Specialized Review (see frame presented in alphabetical order. 2); book reviews made by other readers are shown through the Book-User Review (see frame 3); the data retrieved through the Book-Special Offer relationship are S shown in frame 4 and correspond to a special offer (so- <> YOUR STORE called “two for one” offer) related to the presented book. Order: title ASC The labels at the top of the page are anchors of links to <> <> other Exploration Contexts. Those links and their target BOOK AUTHOR name contexts are always available. Meanwhile, the contexts - title - date that are accessible through the link of the book’s author - cover image - price (frame 1), the link of the full-version of the specialized - AddToCart() review (2) and through the links to the other readers’ Æ[ Shopping Cart ] reviews (3) are contained in the Sequence Contexts date >= 1980 (Author and Review, see Figure 1) and they are only accessible following a predefined path. title [ Books ] It is possible to define filters associated to a navigational class, which allow constraining the objects of this class that are retrieved through a navigational Figure 4. Navigational context for “Your Store” relationship. functionality. As a presentational feature, OOWS includes the Ordering Pattern, which allows defining a certain order The navigation description of this requirement is done by which data of the navigational class are presented to through the context shown in Figure 4. It includes a filter the user. This order is based on some attribute of the (lower section of the Book manager class), which allows manager class. The ordering can be ascendant or constraining the books to be displayed to those whose descendant. date attribute value is greater or equal than 1980. Furthermore, the Ordering Pattern is applied to the (b) Definition of User Model diagrams, where three manager class (left-side label), which indicates that the user diagrams are built, describing users in terms of: instances of this class must be ordered in ascendant order personal information; their relations with a particular by their corresponding values of the title attribute. Figure application domain; and the navigational actions 5 shows an implementation of these features. performed at execution-time. In these steps, we apply two concepts broadly used for Gonzalo, welcome back to user’s descriptions in existing Adaptive Hypermedia smartreading.com Systems. These concepts are: Enjoy our special offers! (a) Stereotypes: This concept allow distinguishing Home Your Store Special Offers Shopping Cart Account several typical or “stereotypes” users, defining user groups whose members are likely to have certain Canto General by Pablo Neruda homogeneous application-relevant characteristics [1]. Publication Date: September 4, 2000 Price: $12.21 Add to Shopping Cart Typical stereotypes are: skilled / novice users, child / young /adult clients. Complete Posthumous Poetry by Cesar Vallejo (b) Overlay Model: It represents an individual user’s Publication Date: October 1, 1980 Price: $14.93 Add to Shopping Cart knowledge of the subject as an “overlay” of the domain model. For each domain model concept, an individual El Cartero de Neruda by Antonio Skármeta overlay model stores some value, which is an estimation Publication Date: May 7, 2003 Price: $7.16 Add to Shopping Cart of the user knowledge level of this concept [8]. The Stereotype concept is the basis of the first step, Octavio Paz Selected Poems by Octavio Paz while the Overlay Model is applied to the second one. Our Publication Date: May 1, 1984 Price: $8.76 Add to Shopping Cart proposal uses Overlay Models to describe not only the user’s knowledge about a concept, but also other domain- Residence on Earth by Pablo Neruda dependent relationships between users and concepts, such Publication Date: July 01, 2004 Price: $10.47 Add to Shopping Cart as preferences and assigned rankings to a given concept. Selected Poems by Jorge Luis Borges 3.1. Step 1: Definition of user stereotypes. Publication Date: April 1, 2000 Price: $12.92 Add to Shopping Cart In this step, a set of user groups or user stereotypes is defined, according to the adaptation needs of the application. This classification allows taking benefits of Figure 5. Implementation of “Your Store” some features that some users could share. Thus, the same functionality. implementation of an adaptive technique can be used by more than one specific user. The conceptual tools of the OOWS Navigational In the process of stereotypes specification, the Model provide multiple alternatives for the navigational developer must fulfil three tasks (adapted from [1]): design of the same web application depending on the user. (a) Stereotypes identification: According to the Distinct navigational maps and variants of the inner application requirements, the developer identifies the structure of the intended contexts (nodes) can be subgroups of users that are likely to share some features associated to different kinds of users. For this reason, this and which can interact with the system. These subgroups model is very suitable to incorporate adaptive features to are called stereotypes. its descriptions. To achieve this goal, we need first a clear (b) Stereotypes ordering: Once defined, stereotypes are description of the intended application’s users. In the next hierarchically ordered. These hierarchies allow avoiding section, we present our proposal of User Modelling. redundancy in the definition of similar stereotypes, by inheritance of shared attributes. 3. Modelling the user. (c) Identification of key user features: The developer determines some key user features that describe the The goal of our User Modelling proposal is to obtain defined stereotypes, along with the values of these high level descriptions of the users of the Web application features that allow deciding the inclusion of users into for achieving the system adaptation. We introduce two each stereotype. main steps: For instance, let us suppose that the online bookstore (a) Definition of User Stereotypes, where the must distinguish the followings stereotypes: USER developer defines a set of user groups (stereotypes) that (anyone accessing the bookstore); CLIENT (registered are ordered in a hierarchical structure; user); CHILD, TEEN, YOUNG ADULT and ADULT (according to his age); INFREQUENT READER, definition step, distinguishing those that depend of the OCCASIONAL READER and FREQUENT READER application domain from the independent ones. These (according to his reading habits). features are the first structures of the corresponding User These stereotypes are hierarchically organized. Model Diagrams, which are completed with the Afterwards, for including users into these stereotypes, the conceptual structures needed for the fulfilment of the following user characteristics are defined: for USER, no adaptivity requirements. special feature is needed (it is the most general stereotype); CLIENT asks users to execute the register() 3.2.1. Domain-Independent User Diagram. This operation. For determining whether a user belongs to diagram describes those personal user characteristics that CHILD, TEEN, YOUNG ADULT or ADULT have some relevance for the adaptation goals of the stereotypes, a birthdate attribute is defined; finally, a application. The values of the modelled data are readingHabit attribute describes how frequently a given independent of the user interaction with a particular Web user reads. The resulting stereotype hierarchy and the application or specific application domains. For instance, values of the attributes that describe each stereotype are the set of considered attributes may include name, date of shown in Figure 6. birth or city of residence. Figure 7 shows an example of this diagram. USER USER register() LOCATION -name 1..* 1..* -birthDate -city CLIENT -email -country isRelatedTo 0..* -occupation y=birthdate -educationalLevel CHILD TEEN YOUNG ADULT ADULT (y>1992) (1980> o related to B and also with books that have been already ible Client acc t E cc ess ess ible purchased, owned, marked as favourite book, highly <> E >> ac > << «context» le «context» e> rated or visited by C. This definition is based on the ce ib ac Your Store ss Register ibl s s ib ce following concepts (included in Domain-Dependent ce ss le ac ss >> ce < ibl User Diagram, see Figure 8): Book, Keyword, Client, < ac e> << Purchase and Ranking classes; Book-Keyword, owns, E E E E > «context» «context» my_favourites and visited relationships. «context» «context» Special Shopping Main Account − The number of visited relationships between C and Offers Cart Book instances that are related to the same Author instance that is related to B. The considered concepts are: Book, Author and Client classes; Book-Author and S visited relationships. «context» Books The adaptive techniques that this work introduces will S S be described according to their corresponding group of «context» «context» techniques (link-hiding, link-ordering and link- Review Authors annotation), and to the conceptual structure to be adapted. Table 1 shows the type of techniques that this work Figure 10. Accessibility values for navigational comprises, along with the OOWS navigational structures links for Client stereotype. to which those techniques are applied. navigational relationships, according to the different user. The accessibility property is defined for the navigational relationships whose source is the manager class of their User (non-client) context. The rest of the navigational relationships inherit <> cce <> E E cc e ac no accessing to them. << cess a > e> ac «context» ce t «context» Figure 14 shows the accessibility values that the >> no ibl ibl Your Store ss Register le t ib ot sib ss n s le >> modeller has assigned to the navigational relationships of ce << ce the Book context, considering the users of the Infrequent ac ac e>> << E E E E Reader stereotype. The user feature of not making any «context» «context» Special «context» Shopping «context» previous purchase on the site has been also considered, Main Account Offers Cart that is to say, in the Domain-Dependent User diagram there is no object of Purchase class that is associated to the correspondent instance of Client class. S In the example of the Figure 14, the modeller has «context» considered that this kind of users has little interest on the Books Specialized Review of the book, marking the corresponding relationship with the “not accessible” S S value. Let us consider the following requirement of «context» «context» Review Authors adaptivity: “the access to a special offer associated with a book is restricted to those clients with a certain amount of previous purchases”. According to the characteristics of Figure 11. Accessibility values for navigational the stereotype, the additional user feature compels to links for Client stereotype. assign the same value for the Book-Special Offer relationship. Considering the assigned accessibility values, a Link- Hiding technique is implemented, deactivating the <> links. Figure 12 shows the implementation S for Client stereotype, in which the link to the Registration <> page is the only one that is inaccessible, whereas in Figure BOOKS <> 13, corresponding to the implementation for User non- AUTHOR >> name client stereotype, most of the displayed links are i b le <> ss ce SPECIALIZED ac REVIEW deactivated. << <> - title BOOK - reviewer name - ISBN le>> - summary essib Gonzalo, welcome back to - title t acc - year <> Enjoy our special offers! - pages USER REVIEW - price <> - title Home Your Store Special Offers Shopping Cart Account - date - IOwnIt() - reviewer - RateThisBook() - AddToCart() Figure 12. Link-Hiding for Client stereotype. Æ[ Shopping Cart ] - AddToFavourites() Æ[ My Favourites ] <> <> t acce Welcome to ssib le>> SPECIAL OFFER BOOK smartreading.com - price - AddToCart() Æ[ Shopping Cart ] - title You are not registered as a client. Register now and enjoy our special offers! Home Your Store Special Offers Shopping Cart Register Me! Figure 14. Accessibility Values assignment to the Figure 13. Link-Hiding for User (non-client) navigational relationships of Book context. stereotype. Figure 15 shows the implementation of the resulting 4.1.2 Link-Hiding for Navigational Relationships. context. We can see two different ways of hiding the links Our proposal allows managing the access to Sequence corresponding to the <> relationships. In Navigational Contexts by means of defining the both cases, the whole retrievable information has not been Accessibility property for Navigational Relationships. For displayed. However, in the case of the Book-Special Offer each context of a Navigational Map, the developer should relationship (see Frame 4), some information indicates the assign the “accessible” or “not accessible” value to its existence of information that is not accessible. Gonzalo, welcome back to the books to be proposed, showing only those whose smartreading.com relevance for the current user is equal or greater than an Enjoy our special offers! arg1 value. The final implementation of this technique is Home Your Store Special Offers Shopping Cart Account shown in Figure 17. Residence on Earth I own it! Rate this book 1 by Pablo Neruda Gonzalo, welcome back to Price: $10.47 Add to Shopping Cart Add to My Favorites smartreading.com Enjoy our special offers! Summary: Poems written by the prolific Chilean poet between the 1920's and Home Your Store Special Offers Shopping Cart Account Edition : Paperback Pages : 359 1940's illuminate his views on alienation and political oppression. Year : 2004 ISBN : 0811204677 Canto General by Pablo Neruda Publication Date: September 4, 2000 Other Readers’ Reviews: 3 Price: $12.21 Add to Shopping Cart Amazing, August 24, 2002 Pablo Morales Well, I would imagine 5 stars, August 8, 2002 Martin Hoeldtke Complete Posthumous Poetry by Cesar Vallejo Publication Date: October 1, 1980 Two for One Offer Keep on buying at smartreading.com for enjoying this offer 4 Price: $14.93 Add to Shopping Cart Octavio Paz Selected Poems by Octavio Paz Publication Date: May 1, 1984 Figure 15. Implementation of Link-Hiding for Price: $8.76 Add to Shopping Cart Navigational Relationships. Residence on Earth by Pablo Neruda Publication Date: July 01, 2004 4.1.3 Link-Hiding for Navigational Class Instances. Price: $10.47 Add to Shopping Cart This technique allows hiding the links to some instances of a navigational class, according to their corresponding values of relevance for a given user. This kind of link- Figure 17. Implementation of Link-Hiding hiding technique is applied to one or more navigational technique for instances of Book navigational contexts whose manager class is the navigational class to class. be constrained. This manager class is extended with a filter, which constrains the objects to be shown. This filter The context of Figure 16 only differs from the shown allows accessing to the objects that have a relevance value in Figure 4 on the inclusion of the filter by relevance. greater than a given fix value, determined by the modeller. From a little change at conceptual level, it is possible to obtain an implementation highly different from the S presented in Figure 5. <> As Figure 17 shows, the links to the Book instances YOUR STORE maintain their original order, but those ones whose relevance for this user is less than arg1 have been hidden. <> <> AUTHOR BOOK name 4.2. Adaptive Link-Ordering and Link- - title - date Annotation. - cover image - price title 4.2.1 Link-Ordering and Link-Annotation for - AddToCart() [ BoCart Æ[ Shopping ok ] Navigational Relationships. Both kinds of adaptive s] techniques are supported by the Importance Order relevance >= arg1 Property of Navigational Relationships. The modeller assigns importance values to the navigational relationships title whose source is the manager class, establishing an order [ Books ] of importance among these relationships for a given user stereotype. In this way, displaying of information Figure 16. Conceptual specification of Link- retrieved from one or another relationship is prioritized. Hiding technique for instances of the Book Figure 18 shows an example of importance values navigational class. (depicted with the <> tag) that the modeller has assigned to the contextual relationships of Books Figure 16 shows the applying of this technique to the context, for the Occassional Reader stereotype (Client context shown in Figures 4 and 5. The modeller constrains instances with “occasional” value for the readingHabit attribute). S the Presentation Layer of the application. In the first case <> (Figure 19), the information items that are retrieved BOOKS through the navigational relationships are ordered in the <> AUTHOR layout of the page: items of the most important >> name <> relationship are closer to the top of the page; in the case of :1 IO SPECIALIZED << REVIEW the Link-Annotation (Figure 20), the information items <> BOOK - title - reviewer name maintain their original location into the page, but a visual - ISBN - summary - title <> hint is assigned to each of them, giving information of the - year - edition - summary individual importance for the current user (in Figure 17, a - cover image - pages <> bigger quantity of “book” icons next to the data items USER REVIEW - price <> - title means that the implied relationship is more important). - date - IOwnIt() - reviewer - RateThisBook() - AddToCart() Gonzalo, welcome back to Æ[ Shopping Cart ] - AddToFavourites() Æ[ My Favourites ] <> <> smartreading.com <> SPECIAL OFFER BOOK - price - title Home Your Store Special Offers Shopping Cart Account - AddToCart() Æ[ Shopping Cart ] Residence on Earth I own it! Rate this book 1 by Pablo Neruda Figure 18. Importance Order values for Price: $10.47 Add to Shopping Cart Add to My Favorites Navigational Relationships. Summary: Edition : Paperback Poems written by the prolific Chilean poet between the 1920's and Pages : 359 1940's illuminate his views on alienation and political oppression. Year : 2004 The modeller assigns the initial order values, which ISBN : 0811204677 may be modified according to adaptivity requirements. Our Specialist Says: 2 For instance, data about some user actions (modelled in Excellent collection of candid poems by John Doe the Navigational Behaviour diagram) may increase the Neruda delivers an uninhibited glimse at human emotions and panges of life in this collection of poems. Neruda jars the soul by explaining in simple verse, how tragic life can be. The reflections score of the corresponding relationship for this user. and odes collected in this work are a superb display of the skill Neruda has. Full Review Gonzalo, welcome back to Other Readers’ Reviews: 3 smartreading.com Amazing, August 24, 2002 Pablo Morales Well, I would imagine 5 stars, August 8, 2002 Martin Hoeldtke Enjoy our special offers! Home Your Store Special Offers Shopping Cart Account Two for One Offer! Residence on Earth & Captain's Verses $19.23 Buy Both 4 Residence on Earth I own it! 1 by Pablo Neruda Rate this book Price: $10.47 Add to Shopping Cart Add to My Favorites Figure 20. Implementation of Link-Annotation Summary: Poems written by the prolific Chilean poet between the 1920's and technique for Book Navigational Context. Edition : Paperback Pages : 359 1940's illuminate his views on alienation and political oppression. Year : 2004 ISBN : 0811204677 4.2.2. Link-Ordering and Link-Annotation for Two for One Offer! 4 Navigational Class instances. This technique allows Residence on Earth & Captain's Verses $19.23 Buy Both ordering the links to the instances of a navigational class, Other Readers’ Reviews: 3 according to their corresponding values of relevance for a Amazing, August 24, 2002 Pablo Morales given user. Well, I would imagine 5 stars, August 8, 2002 Martin Hoeldtke Considering the navigational contexts whose manager Our Specialist Says: Excellent collection of candid poems by John Doe 2 class is the navigational class to be constrained, the link- Neruda delivers an uninhibited glimse at human emotions and ordering technique is described in the OOWS panges of life in this collection of poems. Neruda jars the soul by explaining in simple verse, how tragic life can be. The reflections and odes collected in this work are a superb display of the skill Navigational Model by means of the Ordering pattern. Neruda has. Full Review The developer incorporates this pattern to the manager class, ordering its instances by the relevance values, in descendant or ascendant order. Figure 19. Implementation of Link-Ordering In Figure 21, the requirement of presenting the technique for Book Navigational Context. proposed books in a descendant order of relevance has been modelled. Figure 22 shows the resulting The determined order of importance is used for the implementation. The whole information associated to the implementation of a Link-Ordering and a Link-Annotation relevant link is ordered. On the top, the most relevant technique. The difference between them is noticeable in book to this user. S Gonzalo, welcome back to <> YOUR STORE smartreading.com Enjoy our special offers! Order: relevance DESC Home Your Store Special Offers Shopping Cart Account <> <> AUTHOR BOOK name Canto General by Pablo Neruda - title Publication Date: September 4, 2000 - date Price: $12.21 Add to Shopping Cart - cover image - price Complete Posthumous Poetry title by Cesar Vallejo - AddToCart() Publication Date: October 1, 1980 [ BoCart [ Shopping ok ] Price: $14.93 Add to Shopping Cart s] El Cartero de Neruda title by Antonio Skármeta [ Books ] Publication Date: May 7, 2003 Price: $7.16 Add to Shopping Cart Octavio Paz Selected Poems Figure 21. Conceptual specification of Link- by Octavio Paz Publication Date: May 1, 1984 Ordering technique for instances of Book Price: $8.76 Add to Shopping Cart navigational class. Residence on Earth by Pablo Neruda Publication Date: July 01, 2004 There is not a navigational description for the Link- Price: $10.47 Add to Shopping Cart Annotation technique for Navigational class instances. In Selected Poems this case, the relevance order of the instances is by Jorge Luis Borges Publication Date: April 1, 2000 considered directly by the presentation layer of the Price: $12.92 Add to Shopping Cart application, where visual clues are added to each link (more coloured “star” icons implies a more important book, see Figure 23). Figure 23. Implementation of the “Your Store” Gonzalo, welcome back to functionality, applying Link-Annotation. smartreading.com Enjoy our special offers! Your Store 5. Related work. Home Special Offers Shopping Cart Account Residence on Earth Some existing Model-driven Web development by Pablo Neruda Publication Date: July 01, 2004 methods have been increasing the expressiveness of their Price: $10.47 Add to Shopping Cart models to support adaptivity features. Most of them are Canto General based on the definition of adaptive rules. For instance, in by Pablo Neruda Publication Date: September 4, 2000 the WebML adaptivity approach [10], a set of Event- Price: $12.21 Add to Shopping Cart Condition-Action rules allows the system to make Octavio Paz Selected Poems by Octavio Paz adaptations of its navigational structure in reaction to Publication Date: May 1, 1984 context changes produced by link activations. The Price: $8.76 Add to Shopping Cart adaptivity proposal of OO-HDM [3] describes users inside Complete Posthumous Poetry the structural model, assigning roles and defining by Cesar Vallejo Publication Date: October 1, 1980 algorithms that implement different adaptive rules for Price: $14.93 Add to Shopping Cart distinct user profiles. The OO-H proposal [4] separates El Cartero de Neruda by Antonio Skármeta the static and the variable parts of the Web application. Publication Date: May 7, 2003 By means of XML adaptive rules, the adaptation occurs Price: $7.16 Add to Shopping Cart over the variable part. Even if the OOWS proposal Selected Poems considers implicitly the definition of adaptive rules, it by Jorge Luis Borges Publication Date: April 1, 2000 describes the adaptive features at a higher abstraction Price: $12.92 Add to Shopping Cart level in terms of adaptive techniques, instead of making rule-based descriptions. In this way, we obtain adaptive descriptions that are closer to the adaptivity requirements, intuitive for the modeller and with a more direct mapping Figure 22. Implementation of the “Your Store” to the final implementation. functionality, applying Link-Ordering technique. Both HERA and UWE adaptivity approaches make a 10. References. clear separation of the modelling and adaptation of content, navigation and presentation. This characteristic is [1] A. Kobsa, “User Modeling: Recent Work, Prospects and also shared with our approach. The HERA approach [2] Hazard”, Adaptive User Interfaces: Principles and Practice, specifies the adaptivity by defining schema views on data North Holland Elsevier, Amsterdam, 1993, pp. 111-128. for each model, performing adaptation without referring to [2] F. Frasincar, G. J. Houben, and R. Vdovjak. “Specification concrete data instances. The main difference with HERA framework for engineering adaptive web applications”, approach is that OOWS is object-oriented, providing a Proceedings of The Eleventh International World Wide Web higher expressiveness in terms of the functional dimension Conference, Honolulu, Hawaii, USA, May 7-11, 2002. of the Web application. The UWE approach defines a reference model [6] that formally specifies the features of [3] G. Rossi, D. Schwabe, and R. Guimarães, “Designing an adaptive hypermedia application, incorporating a user Personalized Web Applications”, Proceedings of the World meta-model and an adaptation meta-model. Our work can Wide Web Conference (WWW'10), Hong Kong, China, 2000, pp. complement this proposal, providing the expressiveness to 275-284. precisely define the concrete adaptive techniques to be implemented in terms of UWE adaptive rules. [4] I. Garrigós, J. Gómez, and C. Cachero, “Modelling Dynamic Personalization in Web Applications”, Proceedings of Third International Conference on Web Engineering 6. Conclusions. (ICWE'03),LNCS, Vol.2722, Springer-Verlag, Oviedo, Spain, 2003, pp. 472-475. This work has presented our approach for incorporating adaptive navigation techniques into the [5] J. Fons, V. Pelechano V., M. Albert, and O. Pastor, conceptual modelling process for Web applications. We “Development of Web Applications from Web Enhanced have augmented the expressiveness of a navigational Conceptual Schemas”, Proceedings of the International Conference on Conceptual Modelling, 22nd Edition, ER'03, model, introducing the required concepts to describe some LNCS, Vol. 2813. Springer-Verlag, Chicago, USA, 2003, pp. well-known adaptive navigation techniques at a high 232-245. abstraction level. The flexibility of the OOWS navigational model makes [6] N. Koch, and M. Wirsing, “The Munich reference model for possible that a non-adaptive specification can evolve into Adaptive Hypermedia Applications”, Proceedings of the a diagram of an adaptive Web application, by using Second International Conference on Adaptive Hypermedia and simple primitives. Both the User modelling proposal and Adaptive Web Systems, LNCS vol.2347, Málaga, Spain, 2002, the modelling of adaptive techniques have made use of pp. 213-222. concepts previously developed by Adaptive Hypermedia [7] O. Pastor, J. Gómez, E. Insfrán, and V. Pelechano, “The and User Modelling research communities. This help to OO-Method Approach for Information Systems Modelling: increase the interoperability of the obtained Web From Object-Oriented Conceptual Modelling to Automated applications with existing Adaptive Hypermedia Systems. Programming”, Information Systems, Vol. 26, N. 7, Springer- Some future works that complement this proposal are: Verlag, Chicago, vol.2347, 2001, pp. 507-534. (1) describing adaptive techniques of direct guidance, map adaptation and link-generation to the navigational [8] P. Brusilovsky, “Methods and Techniques of Adaptive modelling process; (2) describing adaptive presentation Hypermedia”, User Modeling and User-Adapted Interaction, 6 techniques, through the OOWS presentational model, (2-3), 1996, pp.87-129. adopting a similar approach; and (3) defining rules for [9] P. Brusilovsky, “Adaptive Hypermedia”, User Modeling and updating the Domain-Dependent User diagrams from the User Adapted Interaction, 11, 2001, pp. 87-100. navigational user actions. [10] S. Ceri, P. Fraternali, and S. Paraboschi, “Data-driven, one- 7. Acknowledgments. to-one web site generation for data-intensive applications”, Proceedings of 25th International Conference on Very Large This work has been developed with the support of Data Bases (VLDB’99), Morgan Kaufmann, Edinburgh, MEC under the project DESTINO TIN2004-03534 and Scotland, September 7-10, 1999, pp. 615-626. cofinanced by FEDER.