Software

A framework for personalizable community Web portals

Description
ABSTRACT In this paper we present a framework for the creation of community web portals. The framework provides the necessary infrastructure for the management of several portlets, which divide the available space for information display on the
Categories
Published
of 5
All materials on our website are shared by users. If you have any questions about copyright issues, please report us to resolve them. We are always happy to assist you.
Related Documents
Share
Transcript
  A FRAMEWORK FOR PERSONALIZABLE COMMUNITY WEB PORTALS Martin S. Lacher, Michael Koch, Wolfgang WörndlDepartment of Computer Science, Technische Universität München, Arcisstr. 21, 80290 München, GermanyABSTRACTIn this paper we present a framework for the creation of community web portals. The framework provides thenecessary infrastructure for the management of several  portlets , which divide the available space for informationdisplay on the portal page. The management infrastructure includes authentication, layout and user profile services.The framework also provides a portlet infrastructure for displaying and filtering information from heterogeneousinformation sources of structured information. This infrastructure is based on a layered approach which keeps thesource integration, filtering and presentation layers quasi-independent. Available filter templates can be freelyassigned to any information source with any display template for display in a portlet. We achieve this layer independence by using a standard set of information fields for internal processing. The heterogeneous informationsources are then mapped to this standard field set.1. INTRODUCTIONComputer based community support systems can provide powerful support for direct exchange of information and infinding people to exchange information with. Such systems usually provide a platform for a loosely coupled group of  people who share some interest or belong to the same context (community). A community platform mainly supportsinformation exchange among the members.The most widely-used user interface to community platforms today are Web portals. Web portals integratedifferent information sources, provide search and directory services and allow personalization of content andconfiguration of navigation and layout options. Community Web Portals are collections of static or dynamic Web pages, through which community members can contribute and get information from other community members as wellas from other sources of interest for community members. Typically, community information sources areheterogeneous with respect to their describing schema and access methods. The immediate advantage of aCommunity Web Portal is the integration and interoperability of different information sources. However, theheterogeneous and loosely coupled nature of communities prohibits to force a common standard for informationexchange on information sources. Instead, a community portal has to integrate heterogeneous information sourcesfor presentation and personalization.In our project “Infodrehscheibe” (information hub) we are currently working on building community portals for student communities in Germany. In this project, we quickly faced the need for a Web portal which allows communitymembers to build community pages easily and provides an integrated and personalized view onto communityrelevant information sources.Guided by these needs, we have developed a framework that allows for easy integration of heterogeneous sourcesof structured information. Information from different sources can be presented with the same look and feel insubdivided layout areas on the portal page. The framework provides several layout templates for the presentation of information, which can be applied to all different sources. The user can specify generic filters for information personalization, which can also be applied to all sources. The combination of these features allows for an integratedand personalized view on the community's information space.In the remainder of this paper, we will first present some characteristics of communities and community supportapplications. We will then describe our general portal infrastructure as well as an application example, the“Infodrehscheibe”, in Section 3. In Section 4, we will explain our layered approach to information integration, filteringand display on which our portal infrastructure is bases. In Section 5, we will mention related work and conclude witha review of the contributions advantages of our framework in Section 6.2. COMMUNITY SUPPORT APPLICATIONSIn general, a community is a group of people who share some interest or belong to the same context. Thus, acommunity can be seen as a describing identity for a set of people. (Mynatt et al., 1997) concretize a bit more:  “[A community] is a social grouping which exhibit in varying degrees: shared spatial relations, social conventions, a sense of membership and boundaries, and an ongoing rhythm of social interaction”  Examples for communities are all students in a university department, the inhabitants in a neighborhood or all people interested in collaborative filtering.Communities are a good source for knowledge in a certain field of interest. To foster the flow of knowledge (Borghoff,1998), community support systems are required. In contrast to groupware applications, community support toolsaddress large, inhomogeneous groups, mostly not working on a common project. Therefore, community supportsystems require the integration of a larger number of heterogeneous information sources. However, existing systemsstill lack the possibility to exchange data with each other. An open flow of knowledge could be greatly simplified(Koch, 2000), if  o there was one user profile for each user that can be used in several communities. o information sources in communities can be used in several other communities. o the user can personalize the information display mode for information from different sources.Our framework tackles those problems and provides viable solutions. Those solutions will be explained in the nextsections.3. GENERAL INFRASTRUCTURE OF THE WEB PORTAL FRAMEWORK Our general portal infrastructure offers three kinds of services: user management, layout management and informationsource management. In this section we will describe the user management and layout management services for the portal as a whole. The information source management services and layout management services for one informationdisplay unit on the portal page, a  portlet, will be described in the next section. We consider sources to storeinformation in the form of  information items (basic information transport units).3.1 Services of the portal framework The user management services are performed by a user profile agent which can manage attribute-value-pair baseduser profiles. The profile stores demographic information, relationship information, ratings, and links to informationitems in the communities. We separate user profile information from the services that make use of it. The user controls the user profile through a user profile agent, which is also the access point for services which make use of the profile. We rely on standards such as vCARD (Howes, 1998) for user profile representation. The user can defineaccess rules to prevent fraudulent use of profile information (Koch, 2001).Layout management services include usage of consistent layout templates for all Web pages (with the option todisplay a “printer-friendly“ version), navigation elements and the possibility to personalize content (e.g. by choosingfrom a set of interests). Our framework generates standard HTML Web pages to keep requirements for the clientsminimal. To allow for further customization, a portal page can be divided into several  portlets with one portletrepresenting a layout area of the portal page. The look and feel is comparable to personalized Web portal sites suchas My Yahoo 1 . Our portlets actually allow more flexibility than the ones at My Yahoo, since we do not enforce fixedwidth columns. Each of the portlets essentially consists of a cell of a table on the portal page. Users can personalizetheir portal page by adding an arbitrary number of portlet cells, the visualization characteristics of which can beselected from a list of available templates. In addition, a user can customize the arrangement of the portlet cells andsome basic layout options such as background colors. A portlet template can be everything that produces HTMLoutput for display in the portlet layout cell, e.g. portlets that render static HTML pages, or servlet-based portlets thatquery the portlet content from a database.A configuration element is shown at the top of every portlet (see Figure 1). Users can thereby change thearrangement of portlets and configure available options with regard to the portlet content. The portlet configurationelement can be hidden by clicking on the handle on the left side. The Portal framework is based on the Java Servlettechnology. From a technical perspective, a portlet is some kind of servlet module. The development of new portlettemplates is fairly easy, new portlets only have to be derived from a  Portlet  superclass.Figure 1: Portlet configuration element1 http://my.yahoo.com/ (Trademark Yahoo Inc.)   3.2 An application example – the “Infodrehscheibe”We have built a community portal for a computer science student community: the “Infodrehscheibe” 2 (“informationhub”). Over 2000 students use the Infodrehscheibe on a regular basis. Data sources for the Infodrehscheibe includeclass lists, announcements for projects and general administrative announcements.Figure 2: A typical Infodrehscheibe page with three portletsFigure 2 shows a typical personalized Infodrehscheibe page. The top and left parts of the pages are fixed contentsof the Infodrehscheibe community portal. The rest of the page can be personalized by creating new portlets on the page. In Figure 2, there are three portlets on the page: on the left side is a portlet which shows announcements that belong to categories that the user specified, in the middle is the homepage of the department of computer science andon the right side is a portlet which allows to see which other users are logged in to the portal.In order to allow for the integration of several heterogeneous sources we have defined one portlet template thatimplements a layered approach to information integration, filtering and display. This is explained in the next section.4. A LAYERED APPROACH TO INTEGRATED PRESENTATION OF HETEROGENEOUS INFORMATIONIn addition to the general portal services, our framework also offers services for the integration and display of heterogeneous information sources on a portal page. To achieve an independence of integration, filtering and displaywe created a layered architecture. The architecture has three layers: the view layer, the filter layer and the provider (information source) layer. The three layers are independent from each other, such that any view can be combinedwith any filter and any provider.The provider layer is the interface to heterogeneous information sources in the community. By heterogeneity wemean different access techniques as well as data schemas. We consider relational schemas only, i.e. every data 2 http://drehscheibe.in.tum.de  source has to provide its data as a set of tuples. The provider layer currently provides access to information sourcesthrough HTTP, POP3, NNTP, JDBC and through the standard file system. The different data schemas for differentdata sources are mapped to one internal schema. The internal schema consists of a set of fields (field library) whichare aggregated in relations. This standard set of fields is referenced in all other layers. The mapping of fields fromdifferent data sources to the internal field library has to be performed manually, but we are currently developingheuristics for a semi-automatic mapping of fields. All settings for the provider layer are stored in a configuration file.In this file, the configuration for each data source to be integrated has to be given, i.e. a name for the source, an URLto address it, its fields with types and mappings to the field library fields.As an example for a field mapping consider a POP3 source, which delivers data tuples with the attributes TO, FROM, SUBJECT, MESSAGE, PRIORITY, SENT  . The internal field library only has the fields TITLE, TEXT, AUTHOR  and  DATE  . Since filters and display templates only refer to fields in the field library, the fields of this source have to be mapped as  FROM  à  AUTHOR, SUBJECT  à TITLE, MESSAGE  à TEXT, FROM  à  AUTHOR, SENT  à  DATE  . Theactual set of fields in the field library is extensible and not influenced by any constraints on the filter or displaylayers.The filter layer allows to filter data sources before the respective information items are displayed. For this purpose,content constraints can be defined on data fields. Currently, we only allow simple constraints for filtering. In the fieldlibrary, there is a special field, the TEXT  field, which is supposed to hold the main content of the information item.Firstly, a number of required substrings for the TEXT  field can be defined as a filter constraint. Moreover, additionalorder and equality constraints can be specified for fields on which an order or equality relation is defined. For example, a numeric field can be required to be greater than a certain value. All filters can be specified for all sources ingeneral as well as only for certain sources. All filter settings can be done through a portlet-based UI, the filter designer.The view layer takes care of the presentation of information items and is independent of the other layers as far as possible. This means that in principle, any kind of display mode can be assigned to any combination of source andfilter. The view layer again refers to the field library for the display of information items. A number of displaytemplates have been defined, which differ in different criteria of information display. The criteria are the amount of actual item information displayed, the amount of contextual information of an item displayed, interactivity of thedisplay mode, space requirements on the portal page etc.For example, one display template is the ticker tape , which only shows the TITLE fields of information itemsscrolling through a small window. This template has a low interactivity, low space requirements and no contextinformation is displayed. Another pre-defined display template is tree with item preview , which shows a tree of hierarchical item context information on one side and a preview of the item content on the other side. This templateonly makes sense, if there is some sort of hierarchical context of the information item. This template has a highinteractivity (nodes in the tree can be chosen), requires a large area on the template page and displays a lot of contextinformation of the information item. There are several other display templates, which will not be discussed here.5. RELATED WORK There has been little research on the construction of community web portals in general. Research work is either oncommunity systems in general (Ishida, 1998) or on general characteristics of design for communities (Carotenuto,1999). We present a system that solves some problems derived from community characteristics. In (Schumacher 1999), the market for portal solution is surveyed. In (Staab, 2000), (Staab, 2000a) community portals based on acentralized schema (ontology) for information in the community are presented. Their concepts include extensiveusage of AI techniques to construct a deductive community database.There are a number of commercial (e.g. IBM EIP, Hyperwave, BEA Weblogic 3 ) and non-commercial (ApacheJetSpeed 4 ) web portal solutions available. However, none of these solutions combine an open approach tointegration of different sources with a complete infrastructure for portal building. Our portlet implementation is similar to the Apache JetSpeed project, which also provides an API to develop portlets, but does not include integratedWeb portal functions such as user login handling.Many concepts from this work have been extended and adapted from the srcinal concepts in (Bender, 2000). 3  http://www.ibm.com/software/eip/;http://www.hyperwave.com/; http://edocs.bea.com/wlac/portals/docs/index.htm 4 http://jakarta.apache.org/jetspeed/   6. CONCLUSIONIn this paper, we have presented a framework for the creation of community web portals. We derived basic informalrequirements for a community web portal and showed how our framework tackles the resulting problems. Our infrastructure consists of two parts: the management infrastructure for   portlets , the display subwindows on the portal page, and a layered infrastructure for information integration, filtering and display in portlets. We showed thatthis layered infrastructure offers the following solutions to problems common in communities: • Personal preferences for information filtering in the user profile can be reused for several informationsources from several communities. • The display mode for information items can be personalized according to the user’s preferences andindependently from the information source.These solutions are achieved through the independence of layers. This is achieved by using a standard set of information fields for internal processing. This internal field library requires all fields from all sources to be manuallymapped to fields in the field library.For a broad variety of display templates, we discovered a number of orthogonal characteristics for informationdisplay. We defined a set of display templates, which spans a large subspace of the resulting space for informationdisplay possibilities.To put it in a nutshell, our framework can contribute a great deal to the success of virtual communities by making iteasier to display information in a way that is suitable for communities.REFERENCESBender, F.: “Ein Enterprise Information Portal für die Informationsdrehscheibe”, Master’s Thesis. Munich, Germany:Technische Universität München, 2000.Borghoff, U. and Pareschi, R. (Eds.): “Information Technology for Knowledge Management”. Berlin, Heidelberg:Springer, 1998.Carotenuto, L.; Etienne, W.; Fontaine, M.; Friedman, J.; Newberg, H.; Muller, M.; Simpson, M.; Slusher, J.;Stevenson, K.: “Towards flexible support for voluntary knowledge communities”, in: Workshop on WorkspaceModels for Collaboration. London, UK: 1999.Howes, T.; Smith, M.; Dawson, F.: “MIME Content-Type for Directory Information (vCARD Specification)”, RFC2425, Sep. 1998Ishida, T. (Ed.): “Community Computing“, John Wiley and Sons, 1998.Koch, M.; Lacher, M.: “Integrating Community Services - A Common Infrastructure Proposal”, in Proc. Knowledge-Based Intelligent Engineering Systems and Allied Technologies (KES2000). Brighton, UK: September 2000Koch, M.; Wörndl, W.: “Community Support and Identity Management”, to appear in: Proc. Europ. Conference onComputer-Supported Cooperative Work (ECSCW2001), Bonn, Germany: 2001.Mynatt, E.D.; Adler, A.; Ito, M. and Oday, V.L.: “Design for Network Communities”, in: Proc. ACM SIGCHI Conf. OnHuman Factors in Computer Systems: 1997Schumacher M.; Schwickert A. C.: “Web-Portale - Stand und Entwicklungstendenzen“, Lehrstuhl für Allg. BWL undWirtschaftsinformatik, Johannes Gutenberg-Universität Mainz, Germany: 1999.Staab, S.; Angele, J.; Decker, S.; Erdmann, M., Hotho, A., Mädche, A., Schnurr, H., Studer, R., Sure, Y.: “SemanticCommunity Web Portals“, in: Proc. of the 9th Intl. WWW Conf. (WWW9), Amsterdam, The Netherlands: May2000Staab, S.; Angele, J.; Decker, S.; Erdmann, M.; Hotho, A.; Mädche, A.; Schnurr, H.; Studer, R.; Sure, Y.: “AI for theWeb - Ontology-based Community Web Portals“, in: Proc. 17th National Conf. on Artificial Intelligence and12th Innovative Applications of AI Conf. (AAAI2000/IAAI2000). Austin, TX: Jul. 2000.  
Search
Tags
Related Search
We Need Your Support
Thank you for visiting our website and your interest in our free products and services. We are nonprofit website to share and download documents. To the running of this website, we need your help to support us.

Thanks to everyone for your continued support.

No, Thanks