[go: up one dir, main page]

Academia.eduAcademia.edu
International Journal of Digital Content Technology and its Applications Volume 3, Number 4, December 2009 M-Library. A New Platform to Provide Mobile-Services of Libraries. Montserrat Mateos Sánchez *Corresponding author , M. A. Sánchez Vidales, R. Berjón Gallinas, E. Beato Gutiérrez, A. Fermoso García Faculty of Computer Science, Universidad Pontificia de Salamanca, C/ Compañía, 5, 37002 Salamanca, Spain mmateossa@upsa.es, masanchezvi@upsa.es, rberjonga@upsa.es, ebeatogu@upsa.es, afermosoga@upsa.es doi: 10.4156/jdcta.vol3.issue4.16 mobile devices, then these services could be available to any user at any time in anywhere (Figure 1). Abstract Nowadays, most of libraries are computerized, and moreover they have available for users their basicservices through the Web. Recent studies have concluded that 40% of people have an Internet connection, and therefore, these basic-services of libraries would be available to those people from where they are connected. If we consider that 100% of users usually use mobile phones, if these services could be available through mobile devices, then the services would be available to any user at any time and from any location. In this paper we expose the architecture of a new platform developed to provide these basic-services of a library over mobile devices. Besides we explain the services of mobile devices in which they are based on; finally we explain the technology used to develop the platform. Before M-Libraty Operators WAP Pages SMS operators Mobile user 100% Fast (all services) User without Internet 100% Slow (all services) Internet user 45% Fast (all sercices) Mobile user 100% Fast (alert services) After M-Library After M-Libraty Keywords Figure 1. Schema with the state of a library before and after M-Library. Mobile Services, library, WAP, platform of software, architecture When in 1979 the first Mobile devices appeared, they are based on analogue technology and it was unthinkable provide such services through mobile phones, but these devices are evolved a lot since then; the great breakthrough came in 2001, when the first devices with colour LCD display appeared. In the same year appeared in Japan the third-generation phones (3G) based on UMTS (Universal Mobile Telecommunications System); the main innovation was the incorporation to the device of a second camera to video calls. Currently these 3G or 3.5G devices are commonly used. In recent years mobile technology has suffered a great growth and a great progress, so new possibilities are available [1] [15] [17][19]. Some of these possibilities are: transmitting, receiving and storing 1. Introduction Nowadays most of libraries are computerized; its management and access to its catalogue are both carried out digitally; otherwise, most of them use the Web to provide some of their basic services, such as general information request, catalogue access, queries about the state of the loans and reservations and renewals of loans and reserves, among others. Recent studies have concluded that only 40 per cent of people have available an Internet connection, and therefore, these services could be available for these people from where they are connected to Internet. If we consider that 100% [14] of users usually use mobile phones, if the basic services of libraries could be available on 133 M-Library. A New Platform to Provide Mobile-Services of Libraries. Montserrat Mateos Sánchez, M. A. Sánchez Vidales, R. Berjón Gallinas, E. Beato Gutiérrez, A. Fermoso García information, connecting to Internet or running applications; Moreover, this growth has caused that users would require both new available services and new applications over this “recent” platform. With these new features, we think that it can be supplied to users libraries basic-services, so that they can be most accessible to those users. Despite the fact that mobile devices and terminals have evolved considerably, nowadays they still have some constraints that we have to consider when we are going to develop applications for them; mobiles typically have among others lower-power computing, small memory size, small displays with low resolution, limited capacities of input, run-time depending of the battery, low and variable bandwidth, among others. With all of these constraints, it can not possible reuse the existing systems, platforms and architectures existing to develop applications/services for mobile phones. Both new technologies and new development architectures are therefore needed to overcome the restrictions of these devices. In this paper we propose the architecture of a platform to provide the basic-services of a library using mobile devices, which are at the same time so advanced and so restricted. Besides, these services are developed and implemented for a particular library using the proposed architecture. With this platform basic-services of a library could improve in dramatically in quality and availability. The rest of paper is structured as follows. First we review the different services of mobile phones at present available over these devices, emphasizing the services used to develop the new platform that provides the basic-services of a library; then, we expose the technologies most used to develop applications and services for mobile phones; in section 4 are explained both the architecture proposed to develop the platform as how it has been developed. Finally, we expose the main conclusions. • • • • 2. Mobile Services The most important mobile services are [18][13]: Voice service. It was the first service in mobile terminals. It is mainly used for communication between people and it is the main service mobile. This service justifies the possession of a terminal. Nowadays, this service represents 80% [3] of operators business. • Short Message Service. Popularly it is known as SMS. This service allows sending text between mobile terminals with a maximum of 160 characters. Despite being short text messages, the service is the most popular in the history of mobile • • telephony. Gartner [3] says that in 2006 936,00 million SMS were sent in the world and it is expected to reach 2.3 trillion messages in 2010. Multimedia Service. Much of current mobile phones can store and send ringtones, logos, photographs, graphics or music. They have become small multimedia consoles. Multimedia message service is not as popular as SMS. On the one hand because all terminals have not available this service and on the other hand because they have a high price. Location service [9]. This service is based on the nature of the GSM (Global System for Mobile Communications) network [2][16]. The coverage of a network operator is established on the basis of cells, the size of the cells is dependent on the density of antennas. In urban areas where the number of antennas is large, the size of the cells is smaller; in this case the location is established with an accuracy of about 100 to 500 meters. Obviously this is less accurate when we are on roads or populations with a lower density of antennas. The location service is available on all phones, the drawback is the accuracy therefore the applications of this service are very limited. However, at present there are already mobile devices incorporating a mobile GPS (Global Positioning System). Video service. The 3G terminals allow video calls and audio in real time. In addition, this service lets you send, receive and play video. Based on this service, for instance, you could access to videomonitoring circuit through the mobile device or watch television. Applications on the mobile. Mobile terminals have become small computers, they have an operating system, have storage capacity and it is possible to develop applications running on it, for example using J2ME (Java Micro Edition or JavaMe) [5][6][8][20] or Windows Mobile SDK [12][22]. These features expand significantly the number and type of projects that could be developed to run over these new devices. Data service. The last generation of mobiles has the possibility of Internet connection. So, this connection can be the base to others services. For example e-mail in a terminal and Web browsing are now two of the main applications of data service and it is expected to grow in the future. These are services that we could find mainly in mobile devices today. Some of them (just short message service and data service) have been used to 134 International Journal of Digital Content Technology and its Applications Volume 3, Number 4, December 2009 design and to implement our platform in order to provide the basic services of a library. Besides it is necessary implement several messaging services (sms) for the services of alerts/warnings; they will be run on a server, and newly the best language is Java because is the most portable code. 3. Technologies of Development In order to develop and to exploit services for mobile phones is possible to use several technologies such as WAP (Wireless Application Protocol), J2ME (Java 2 Micro Edition) or the development platform of Windows Mobile among others. WAP [7][21] is an Open International Standard for applications that uses wireless communications. It is the specification of a set of protocols to normalize the way in which wireless devices can access and interact with services and information easily and quickly. WAP is oriented to mobile devices with displays restricted, small keyboards and low bandwidths. This protocol allows to operate to applications and services over a large number of networks (CDMA , WCDMA, CDPD, UMTS, GSM, …). It is basically oriented to present of contents in a terminal. The version 2.0 presents important improvements with regard to version 1.0. One of these improvements is a better design of contents over portals, using XHTML and WCSS. WAP is supported by most mobile devices having a microbrowser. Another possibility is to develop the services using J2ME or JavaME [5][6][8][20], that is, with the “mini” version of Java. It is a Java platform specially oriented to devices with limited capacities over the personal computer version. It is oriented to develop applications running on mobile phones, although it is possible to develop client/server applications which interact through network services. On the other hand, in order to develop applications running on mobile devices with terminals based on Windows Mobile [22], it must use the platform of Microsoft using Microsoft Visual Studio and Windows Mobile SDK; with these technologies, it is possible to produce software in native code (Visual C++) and in managed code (Visual C#, Visual Basic .Net). The Windows Mobile Platform offers features such as data connectivity seamless and it has enhanced security. To develop and to implement the proposed services it would be desirable to use a technology available to the maximum of devices, for this reason we have not consider the Microsoft solution. On the other hand, JavaMe is another important possibility because a lot of mobile phones support this technology, but it is more oriented to running of applications than to presentation of contents. So that, being on mind the services to develop are oriented to the presentation of information and contents to the user, we thought that the most suitable it would be use a portal WAP, using to develop the applications of server, Java language[4]. 4. Proposed Platform 4.1 Description Using our platform any user of a library will have available, regardless of his location, basic services offered by the libraries. The platform proposed has two subsystems; the subsystem of messaging and the services of data based on browsing. Subsystem of messaging provides through the mobile phone some basic-services offered nowadays by libraries provide through traditional post or e-mail. Specifically alerts and warning services related to loan service, for example the expiry date of a loan, or the availability of a reserved book/resource (Figure 2). From such alerts/warnings, the user could carry out several actions; the user could return the loaned resource/book or in case of an alert about reservation go to the library to loan the book that it is available. If these services are provide through sms phone, these services are more efficient and faster than by e-mail or traditional post. To develop this subsystem we have used a push message service, in which the library is the actor that initiates the communication. In these cases the user should have been signed up for the service previously in order that the library could have both the mobile phone number and the user authorization. Figure 2. Push message schema to provide alert services. In case of expiration date of a resource, the user has the option of renewing the resource; this is possible 135 M-Library. A New Platform to Provide Mobile-Services of Libraries. Montserrat Mateos Sánchez, M. A. Sánchez Vidales, R. Berjón Gallinas, E. Beato Gutiérrez, A. Fermoso García sending another SMS, so in this case the communication is established bilaterally. Another bilateral service that it has been implemented is the renewal of a loan and the query of state of loans and reserves of a user (Figure 3). To develop these services it has been used a pull-push schema; the user is the actor that initiates the communication and the library answers back with another message showing if the renewal has been possible or not. In case of query, the queried information will return. the presentation of contents and from the component that manages all the client requests. Figure 4. Schema to provide services by means browsing (to query catalog, to request general information, ...). On the WAP subsystem, the model handles the access to the database using JDBC (Java DataBase Connectivity), making the searches, insertions and updates of data on a database implemented with Oracle. To optimize the connection to the database, it is used a factory of models, so that there is only one connection for all requests that they are made from different sessions. The controller has been implemented through a class that extends the HttpServlet class. This component receives request from users, and after this, and after that it carries out a connection to the factory of models. The viewer will generate the contents that are displayed on the mobile phones, in a dynamic way using JSP (Java Server Pages) technology. The subsystems of messaging services have been implemented using the same architecture. The model component is the same that it has been used for developing browsing services. Using push services, in which the library is the actor that it initiates the communication, the request to the controller is carried out periodically by the master class (for example, one time for each 12 hours); the master class carries out the requests about which are the loans out of dated or which are the available reservations. In this case, the viewer will not generate JSP pages, but it will generate messages that they are transmitted by mDirectSender [11] to the phone operator and the phone operator will send them to the user. Figure 3. Pull-Push message schema to request actions or information. The other subsystem provides browsing services by means the development of a WAP portal (Figure 4). This subsystem has been implemented because, there are several services more suitable for the user using browsing than messaging; some of them are querying the catalogue, updating the user information, or requesting general information about the library. With this subsystem the user could connect to a web of the library running a micro-browser on the mobile phone as if he was browsing from a pc, but with the advantage of having available an application and an interface adapted for mobile terminals. 4.2 Architecture and Development The platform proposed has three subsystems, two for messages services and one for data services; all of them have been developed and implemented using a MVC (Model-View-Control) pattern of design (Figure 5); in this pattern is separated the part that implements the business logic from the component that generates 136 International Journal of Digital Content Technology and its Applications Volume 3, Number 4, December 2009 Portal Wap- Browsing viewer (jsp) ServletListener model (java) Datasource Ejemplar Libro Reserva Prestamo Usuario… controller (java) response Servlet Push Services (java) request master model (java) controller push Datasource (java) Ejemplar Libro Reserva Prestamo Usuario… viewer (java) push USER (java) response mDirectSender Oracle database response viewer pull-push (java) model (java) request Datasource controller Ejemplar Libro Reserva Prestamo Usuario… (java) pull-push request (servlet) mContentService MOBILE OPERATOR Pull-Push Services Figure 5. Proposed architecture to develop the platform to provide basic services of a library. 137 M-Library. A New Platform to Provide Mobile-Services of Libraries. Montserrat Mateos Sánchez, M. A. Sánchez Vidales, R. Berjón Gallinas, E. Beato Gutiérrez, A. Fermoso García In the case of pull-push services, in which the user is the actor that initiates the communication, the servlet mContentService [10] will be the component that receives the sms from the user through the phone operator; after that, the back message is built by the viewer with the requested data to the modeller; finally the message will be send to the phone operator through of mDirectSender. With this architecture each subsystem and each component are independent between them, to carry out a migration of this platform to another library only would be necessary to change the data access. Figure 7. Wap-Page to query a book on the catalog and page with a result. 4.3 Description of Services Being in mind the nature of the available services, we could distinguish two types: services of data available through browsing (Figure 4, Figure 6) and services available through messaging (Figure 2, Figure 3). • Figure 6. Display with general information about the library (a) and display with the main menu (b) Figure 8. Wap-Page to authenticate a user and WapPage with a result of a query about the reservations of a user. The most important browsing services are: • Query of personal reservations (Figure 8); with this option is possible to query reserved resources/books. The user has to authenticate with her name/surname and her number of user. Access catalogue to query the resources/books (Figure 7); it is possible carry out queries by different fields (author, title, isbn, …) n the same way that for online or web catalogues but now using the mobile. If the resource is loaned or isn’t available, in this moment, through the same page, it is possible to carry out the reservation of the books. 138 • Query of loaned books/resources (Figure 9a); with this service, the user could query the books loaned; and also to renew the loan. As in the previous case, in order to query this information the user has to authenticate. • Querying and updating the personal information (e-mail, address, phone number, …)(Figure 9b). International Journal of Digital Content Technology and its Applications Volume 3, Number 4, December 2009 5. Conclusions With the development of this platform, we have available a full system to access to a basic-services of a library through mobile devices. Without this platform, the services could be available for users but in a traditional way, that is, going to the library, or connecting to internet from a pc. If they are available through the mobile phones, the much more users have available these basic-services because everyone has a mobile terminal. So in this way, we have a library closest and more accessible to the user, improving the services that they provide. Besides, these services would be available in most of mobile phones because the technologies used, that is sms and data services (browsing) are supported by the most of current mobile phones. On other hand, as we have proposed an architecture using a MVC pattern, in which are separated the component that implement the business logic, from the component that generates de presentation of contents and from the component that manages the request of users; if we want reuse this platform for any other library then only we would have to change the modeller or the access to the data. At the same time, as we have developed three independents subsystems, it could be possible reuse only one of them regardless the rest of subsystems. Figure 9. Diplay with the results of a query about loaned books (a) and diplay to update the personal information of a user (b). The services available through messaging services are: • Services of alerts of loans out of date and alerts of available reservations; they are push services and the user receives in their mobile phone an alert/warning sms warning about the event. In these sms, it is provided the type of service and the title and author of the book. Next messages are examples of this type of messages: mlibrary:Loan Out-of-date:Title:Operating System. Author: Stallings. 6. References mlibrary:Available Reservation: Structure Data in C. Author: Joyanes. • [1] M. E. Beato, M.A Sánchez, M. Mateos, A. Fermoso and R. Berjón. Los dispositivos móviles: casos prácticos sobre esta nueva plataforma para aplicaciones. 6th IWPAAMS. Universidad de Salamanca, 2007, pp. 231240. [2] M. A. Dru and S. Saada. Location-Based mobile services: The essentials. Alcatel Telecomunications Review, 2001, pp. 71-76. [3] Gartner (2007). Available on http://www.gartner.com [4] http://java.sun.com/j2ee/overview.html [5] http://java.sun.com/javame/index.jsp [6] M. Jode. Programming Java 2 Micro Edition on Symbian OS. John Wiley & Sons, Ltd, 2004. [7]W. M. Lee, S.M. Foo, K. Watson, T. Wugofski, Beginning WAP, WML & WMLScript. Wrox Press, Ltd., 2000. [8]W. Lei and S. Yin, J2ME technology on mobile information device. Modern computer, 2004, Vol. 1, pp. 17-20. [9] M. Mateos Sánchez, R. Berjón, M.A. Sánchez, M. E. Beato, A. Fermoso. A Case Study of a Pull-WAP Location-Based Services Incorporating Maps Services. IWANN (1) 2009. pp. 1240-1247. Services of querying of loans, reserves of books, and renewal of loans; these services are based on pull-push technology, and with them the user through a sms makes a request of information or asks for an action to the system. The system provides to the user the information requested through a sms (loaned resources or available reserves) or the result of carrying out the action (if it was possible or not the renewal). The sms to make a request to short number could be like some of the next: mlibrary loan mlibrary reserv mlibrary renewal <title> In the same way, some of possible answers from the library could be like these: mlibrary loaned book: title: XXX expiration date: XXX mlibrary reserved book: title: XXX expiration date: XXX mlibrary inform: correct renewal 139 M-Library. A New Platform to Provide Mobile-Services of Libraries. Montserrat Mateos Sánchez, M. A. Sánchez Vidales, R. Berjón Gallinas, E. Beato Gutiérrez, A. Fermoso García [10]MContent. http://www.tempos21.com/web/files/pro d uctos/MContent.pdf [11] MDirect. http://www.tempos21.com/web/files/prod uctos/MDirect.pdf [12]T. Mikkonen. Programing Mobile Device; An introduction for practitioners. Wiley, 2007. [13]Open Mobile Alliance, 2008. http://www.openmobilealliance.org [14]Pyramid research, 2007. Available on http://www.pyramidresearch.com [15]M.A. Sánchez and M.E. Beato, E.: Proyectos de Innovación Tecnológica Móvil y Chip. Publicaciones Universidad Pontificia de Salamanca. Salamanca, 2008, pp. 43-48. [16] J.H. Schiller and A. Voisard, Location-based services. Morgan Kaufmann Publishers. 2004. [17] M. Shirali-Shahreza. M-Brochure. International Journal of Digital Content Technology and its Applications, 2 (1), pp. 28-34, 2008. [18]Telefónica, 2007. MovilForum. Web para desarrolladores. http://www.movilforum.com [19] Tempos21, 2004. Innovación en aplicaciones móviles. http://www.tempos21.es [20] M.J. Yuan, Enterprise J2ME. Developing mobile java applications. Prentice Hall PTR, NJ, 2004. [21]WAP 2.0 Technical White Paper, 2002, http://www.wapforum.org/what/WAPWhitePaper1.pdf. [22] A. Wigley, D. Moth and P. Fod. Microsoft Mobile Development Handbook. Microsoft Press, 2007. 140