Designing Information Appliances using a ... - Semantic Scholar

3 downloads 0 Views 38KB Size Report
of the ACM/IEEE MOBICOM' 98 Conference, pp.98-108, October 1998. [3] D. Barbara and T. Imielinski, Sleepers and Workaholics: Caching Strategies in Mobile.
Designing Information Appliances using a Resource Replication Model Mário J. Silva, Ana Paula Afonso Departamento de Informática Faculdade de Ciências da Universidade de Lisboa Campo Grande, 1700 Lisboa – Portugal Phone: +351.1.7500153, Fax: +351.1.7500084 {mjs, apa}@di.fc.ul.pt

Abstract. We discuss the design of new network applications that collect and manage data and interface with users through portable devices. These applications maintain data pipelines that interact with network information servers and distill information into reduced data models that may be queried and replicated effectively through wireless networks to computing devices of very small size. We present initial design considerations for applications of this class.

1. Introduction JINI has been recently announced as a new class of middleware for building distributed software applications that may run from small portable devices and then locate and interact with network services [11]. The designers of JINI announce a generation of new applications, built on this model, which will let users invoke coordinated sequences of actions from these devices to be executed in the distributed environment. Examples of the typical scenarios used to demonstrate the new mobile device capabilities include the use of digital cameras that dispatch captured pictures to handheld computers that send them in turn by email through a mobile phone. However, we believe that this view of the application domain of this new class of middleware is too much control-oriented. As portable computing devices become more ubiquitous and familiar to users, a trend to a more data-centric view of their operation can be expected. The new devices will be selected not only by their computing power or that of installed applications, but by the value of the information they give to their users. Norman argues that the proper way to establish this new paradigm is through the development of human technology appliances, simple taskspecific devices, called information appliances [14]. This view brings a new perspective to the ubiquitous computing paradigm previously developed at Xerox PARC [19]. In this new perspective the complexity of the computer disappears, becoming invisible. The emphasis of the design is on the human activity the appliance is meant to serve.

We have been inspired on the information appliance concept to refer to the new class of new applications that bring data to users’ hands to help them in completing well-defined tasks. We see the PalmPilot as a first example of the information appliance concept [17]. Its owner sees the device as a handy portable database repository for personal data. The device is not really viewed by users and programmers as a distributed application or a distributed database with support for disconnected operation, but rather as a database management system that is occasionally synchronized with other databases (which may or not be replicas). Communication takes place when a user requests its Palm database to synchronize with another database. The popularity of the PalmPilot and others that followed its operating model motivates the extension of the information appliance paradigm to other types of information processing applications. However, the PalmPilot works well as an information-processing platform only when the nature of the data to be manipulated is of relatively small size, infrequently updated with relatively small changes. When the nature of the data differs significantly, palm-based applications do not perform as well. For instance, Web browsers have been developed for palm computers, some with the capability to pre-load web pages. However, a desktop web browsing experience is radically different from that of reading the web from a palm-based computer. We cannot provide the type of interaction that is best adapted to this type of devices with web-style distributed applications. In wireless networks, short bandwidth, frequent fadings and intermittent connectivity, severely affect web access usability. In recent years, we began witnessing that the Web itself is evolving from a distributed hypertext system into a collection of databases of information, which may be not only browsed directly, but also queried and downloaded for local processing. Formats such as XML and RDF are examples of standards supporting this direction. We believe that this trend and the popularization of portable computing devices of many forms will generate a more heterogeneous environment than we have today. In the new environment, specialized devices and browsers for specific "web data types" will become more common. These browsers will be specialized in managing local databases and synchronizing with external data sources. We see the process of development of information appliances as the creation of data pipelines that feed from network information servers and distill data into reduced data models for personal use. These may be activated to deliver information effectively through wireless networks. A key requirement for information appliances will be a synchronization framework that will be able to manage replicated data sets in this environment at variable levels of consistency as data steps through various stages until reaching users’ devices. We call this framework the Resource Replication Model. The remainder of this paper is organized as follows: in Section 2, we discuss related works. In Section 3, we present our approach for the development of information appliances. Finally, in Section 4, we discuss our future work and present concluding remarks.

2. Related Work The Resource Replication Model is inspired on concepts from network proxies and middleware services, materialized views maintenance, file/data synchronization, web information systems and information dissemination models. Network Middleware Network proxies have been proposed and used successfully as a mechanism for adaptation of mobile applications that access information services through wireless networks [24]. In addition to hiding from existing distributed applications the new protocols and services that are required for operation on mobile networks, proxies can be used to translate data into formats that are better adapted to the requirements of mobile users that access the network using resource limited devices [7]. Proxies are examples of software frameworks for building mobile distributed applications, also called mobile computing middleware. These provide a set of objects that hide all the networking details and offer a set of interfaces at an higher level of abstraction, for replicating objects and invoking methods, independently of the characteristics of the underlying network infrastructure [5]. In the Mobiware project, the use of open (CORBA) interfaces for its middleware components enabled the creation of applications that combined the networking specific service objects with other objects [4]. More than the hiding of many of the complexities of networking in mobile wireless environments, we are interested in the use of these systems as the basis for enabling user spontaneous composition and activation of personalized information services. Materialized Views Maintenance The role of materialized views and view maintenance as a caching schema has been studied in the context of mobile database applications. In this perspective, information stored in portable computers can take the form of materialized views that can be maintained as caches in distributed systems [3]. A survey of materialized views concepts can be found in [20]. The intrinsic characteristics of mobile computing devices and wireless networks, such as limited resources and limited bandwidth, require a customizable view maintenance mechanism. Wolfson et al. discuss the problems associated with view maintenance and propose possible solutions [22]. First, a view can contain continuously changing location and time dependable data. Second, there is a need to dynamically switch between broadcasting and point-to-point transmission of updates to materialized views. Finally, another important issue to be addressed is the predictable/voluntary disconnections in mobile computing environments. Another approach considers the development of a mechanism in the form of a proxy within the fixed network, providing customizable and client oriented data-warehouses [12]. With the above extensions, materialized views provide a good framework to collect and extract information from several data sources. In our Resource Replication Model

we also consider an approach based on software agents that extract data for information appliances. File and Data Synchronization Replicated storage systems are a solution to get improved availability, scalability and performance in distributed systems [6]. In mobile computing environments, data replication is a method for supporting disconnected operation. The process of data replication may be provided either transparently or in a user-aware mode. Examples of the first approach include replication models of distributed file systems that use caching, such Coda [13], and models for database reconciliation, such as Bayou [6]. In a user-aware approach, users must know what files are replicated and explicitly specify the replicas management policy [2]. This later model is adapted to the operating mode used in portable devices, as it supports discrete points of synchronization, lazy reconciliation and immediate update propagation. In Oracle’s symmetric replication, it is possible to replicate data between a relational database and portable computers at a smaller level of granularity, using specific knowledge of the structure of the files [16]. Web Information Systems The web is a natural context for replication with its increasing scalability and performance demands. We can view the web as a very large heterogeneous distributed information system, evolving from a collection of hyperlinked documents to dynamic contents generated from database sources, document libraries and others information sources. We believe that new standards like XML (Extensible Markup Language) [23] and RDF (Resource Description Framework) [15] will provide good support for the integration of web data sources. They contribute to define standardized conventions to represent the information and provide a foundation for processing metadata in the web. XML vocabularies and automated conversions to other vocabularies provide compatibility between web integration methods, maximizing interoperability between independent servers and clients. Information Dissemination Models In our previous work, we studied the use of push models for disseminating information to mobile users and implemented Ubidata, a general and adaptable framework for mobile computing dissemination systems [1]. We added an adaptation capability to channels, where the update frequency and priority of information items changes dynamically as the users change their location. This is an extension to the conceptual models for information channels (publish/subscribe model) and a hybrid schema of information dissemination [8]. Our information dissemination model revealed some limitations of this approach in our application domain, such as the impossibility to maintain many replicas with bi-

directional updates. In this work, we want to extend this paradigm, providing a model of replication that will support bi-directional synchronization between the data in portable devices and other databases.

3. Resource Replication Model In our perspective, the elaboration and construction of an information appliance consists in creating and customizing a user agent that will act as a proxy of the information appliance (see Figure 1). User agents live on the fixed network and may track the associated portable devices. In addition, they cooperate with other agents and request data from network services to build the appliances’ databases. We envision the development of mobility-aware information appliances as follows: - Design of conceptual user data models (personal user models). Information appliances running on portable devices will download information by connecting periodically with the associated user agent. Each appliance’ agent has a specific conceptual model that holds the manipulated information. This could be represented as a relational or object-oriented data-model. - Design of the application interfaces. This may include development of an interface to interact with the user agent in addition to the interface that will be used from the portable device. - Specification of the data extraction mechanism for model maintenance. Once the model is created, the user agent database will be filled with data extracted from network web services. We see the user agents databases as appliances’ data-warehouses. - Synchronization between databases. We specify the data synchronization policy matching the application requirements regarding disconnected operation, availability of points of synchronization, and networking possibilities and cost trade-offs.

Network services layer

Agents layer

Appliances layer

Network service

Network service

User Agent

User Agent

Information Appliance

Fixed network

Information Appliance

Figure 1 The environment of information appliances

To maintain the data held at each model we can use a triggering mechanism, so that the data sources notify user agents whenever a data change occurs. This option usually depends on the trigger functionality of the data sources and the ability of keeping track of the user agents that are interested in their changing information. Alternatively, we also support the definition of monitoring mechanisms, so that the user agent periodically monitors the data sources and detects possible changes. We assume that data is available in XML and that RDF descriptions are available to provide the download and representation of the information stored in network services. As the use of these formats is disseminated we expect to be able to integrate many data sources from a large number of heterogeneous and autonomous web data sources. Meanwhile, we can integrate existing web data by using systems such as W4F [18], which fit in our environment as agents that can convert unstructured web sites into data sets that could be joined with other data to create the personal data models required by information appliances. In our model, the users can construct data replication services dynamically. A new service is defined by specifying the information sources and data transformations to perform. The system then instantiates the required services and creates the necessary connections between the used components. To compose a replication service, we pipe data through proxies and have it transformed by objects with exportable interfaces using the Java technology [10], [11]. The power of network proxies as a paradigm for coping with mobility comes fundamentally from their capability of being inserted transparently in the data pipes that flow between communicating peers in mobile networks. As proxies change data, not the protocols or data formats, they can be composed to perform complex transformations on the data. As on the Unix system, these software pipes can be the basis for reusability of programs.

4. Summary and Future Research We have introduced the need for rapid creation of information appliances run from portable devices and presented an approach based on the Resource Replication Model. We have described the initial architecture and the roles assumed by user agents responsible for the consistency of reduced data models, collected from web information systems into portable devices. We intend to elaborate these initial ideas and develop a specification of a prototype that will demonstrate these concepts. The prototype will be an information appliance of events related to leisure activities. We recently developed a database and information service that publishes this information on the web [9]. To make this service available to our users while disconnected, we will offer it on small footprint devices, following the information appliance model described in this paper. The appliance will run on palm computers and we intend to evaluate WAP devices as an alternative [21]. The devices will be used to view data that they receive from user agents when they reconnect to the fixed network.

User agents are java programs that can be configured to communicate with other software agents that perform specialized data processing, such as information filtering of news information or data conversion from external web sources. Building a software system with the described functionality is not the main challenge. We anticipate that the hardest part will be the design of a usable interface that conveys not only the information to be presented but also shows, in an intuitive way, how, when and where data was obtained.

Acknowledgement We thank the anonymous reviewers for their comments and suggestions for improving this paper.

References [1]

[2] [3]

[4] [5] [6]

[7]

[8] [9] [10] [11] [12]

[13] [14] [15]

A.P. Afonso, F.S. Regateiro, and M.J. Silva, UbiData: An adaptable framework for information dissemination to mobile users, in S. Demeyer e J. Bosch editors, ObjectOriented Technology, ECOOP’98 Workshop on Mobile Computing and Replication, volume 1543 de Lecture Notes in Computer Science, Springer-Verlag, July 1998. S. Balasubramaniam and Benjamin C. Pierce, What is a File Synchronizer, Proceedings of the ACM/IEEE MOBICOM' 98 Conference, pp.98-108, October 1998. D. Barbara and T. Imielinski, Sleepers and Workaholics: Caching Strategies in Mobile Environments, Proceedings of the ACM SIGMOD, International Conference on Management of Data, May 1994. A.T. Campbell, H.G. De Meer, M.E. Kounavis, K. Miki, J. Vicente, and D. Villela, A Survey of Programmable Networks, Computer Communications Review, April 1999. Daedalus Web Page, http://daedalus.cs.berkeley.edu/. A. Demers et al., The Bayou Architecture: Support for Data Sharing among Mobile Users, Proceedings IEEE Workshop on Mobile Computing and Applications, December 1994. A. Fox and E.A. Brewer, Reducing WWW Latency and Bandwith Requirements by RealTime Distillation, Proceedings of the 5th International World Wide Web Conference, May 1996. M. Franklin and S. Zdonik, A Framework to Scalable Dissemination-Based Systems, ACM OOPSLA Conference (Invited Paper), October 1997. Guia do Lazer, http://lazer.publico.pt/. JavaBeans Specification, http://java.sun.com/beans/docs/spec.html. JINI Technology, http://www.sun.com/jini/. S. W. Lauzac and P. K. Chrysanthis, Programming Views for Mobile Database Clients, Proceedings of DEXA’98 the Ninth International Workshop on Database and Expert Systems Applications, pp. 408-413, August 1998. J.J. Kistler and M. Satyanarayanan, Disconnected Operation in Coda File System, ACM Transactions on Computer Systems, 10(1): 3-25, February 1992. Donald A. Norman, The Invisible Computer, MIT Press, 1998. E. Miller, An Introduction to the Resource Description Framework, D-Lib Magazine, May 1998. http://ww.dlib.org.

[16] [17] [18] [19] [20] [21] [22]

[23] [24]

Oracle Lite for Handheld Devices Release 3.5, Oracle Corporation, 1998. Palm Pilot Web Page, http://www.palm.com. W4F Web site, http://db.cis.upenn.edu/W4F/publi.html. M. Weiser, The Computer for the 21st Century, Scientific American, 265(3): 94-104, September 1991. J. E. Widom, Special Issue on Materialized Views and Data Warehousing, Data Enginnering Bulletin, IEEE Computer Society, 18(2), June 1995. Wireless Application Protocol Homepage, http://www.wapforum.com/. O. Wolfson, P. Sistla, S. Dao, K. Narayanan, and R. Ray, View Maintenance in Mobile Computing, ACM Special Interest Group on Manangement of Data, 24(4), December 1995. XML W3C Homepage, http://www.w3.org/XML. B. Zenel, D. Duchamp, A General Purpose Proxy Filtering Mechanism Applied to the Mobile Environment, Proceedings of the ACM/IEEE MOBICOM’ 97 Conference, pp.248259, September 1997.

Suggest Documents