Learning Community Meets Peer-to-Peer Networking: Towards an Innovative Way of Person-to-Person E-Learning Support Qun Jin Department of Human Informatics and Cognitive Sciences, School of Human Sciences, Waseda University, 2-579-15 Mikajima, Tokorozawa-shi, Saitama 359-1192, Japan
[email protected] Abstract This study aims at exploring new ways of person-toperson e-learning, by integrating the advantages of both online learning community and peer-to-peer (P2P) networking technology. In this paper, we propose and discuss a new mechanism of supporting encounter, communication, and collaboration for peer learners in an online learning community, which is based on the person-to-person information exchange model. We design and develop a pilot system that supports more sophisticated matchmaking in a peer learner’s encounter to discover a person across the P2P network who may exchange information, share files, and collaborate each other. We further describe NetIsleEM, a groupware tool that has combined P2P technology with some advanced features of MOO (Multi-user dimension Object-Oriented), to increase presence and information awareness and make communication more natural to achieve interactive multidirectional learning.
1. Introduction Online learning community is a promising alternative paradigm for networked e-learning and distance education [1], [2], [3], [4], [5], [6], while peer-to-peer (P2P) networking is an encouraging innovative model for highly autonomous and distributed network computing [7], [8], [9], [10]. With the advent and rapid popularization of peerto-peer networking technology in recent years, networkbased e-learning and distance education have been becoming more flexible and efficient. P2P model has many advantages over the client-server model, though some disadvantages should not be overlooked. The most important feature of P2P technology is its democratic nature allowing freely sharing opinions and
any available contents. In a P2P-based system, all members are equally linked by the common information context. They can create new contents to be shared. P2P technology may revolutionize learning and teaching on the Internet, according to the visions of Kook [11], by enabling us to create new learning environments with increased creativity, dissolve cultural boundaries between groups and communities. P2P can make educational environments learnercentered, where learners learn directly from each other, and teachers play a role of “knowledge facilitators, rather than knowledge presenters.” This study aims at exploring new ways of person-toperson or peer-to-peer e-learning, by integrating the advantages of both online learning community and peer-topeer networking technology, and developing a pilot system for peer-to-peer e-learning supporting. In this paper, we focus on discussing a new mechanism of supporting encounter, communication, and collaboration (ECC) among peer learners and between the teacher and learners. We propose a person-to-person information exchange model that connects two peer learners based on P2P concepts, and develop a system that supports more sophisticated matchmaking in a peer learner’s encounter to discover a person across the P2P network who satisfies his or her requirements and may exchange information, share files, and collaborate each other. We further design and build an efficient learning environment based on the MOO (Multi-user dimension ObjectOriented) [12], [13], [14] social virtual environment, and NetIsle-EM, a groupware tool that has combined P2P and push technologies with some advanced features of MOO, to increase presence and information awareness with it, and make communication within it natural to achieve interactive multidirectional learning when one learner learns from another, and vice versa. The rest of this paper is organized as follows. Section 2 gives a brief introduction on online learning community and the previously prototyped system. In Section 3, we
overview the basic concepts and major features of P2P network computing. Sections 4 discusses the person-to-person information exchange model and supporting mechanism for encounter, communication and collaboration. In Section 5, we further describe the design and implementation of a groupware tool called NetIsle-EM, by fusing P2P technology with MOO features to increase presence and information awareness and make communication more natural. Finally, Section 6 addresses concluding remarks and future works.
2. Online Learning Community Online learning communities, in which community members or learners collaborate with peer learners supported by the communication and information technology, could be an engaging and productive learning environment [6]. To implement a global online learning community for every netizen, we have proposed a conceptual framework for every-netizen learning communities, in which not only the delivery of knowledge from a teacher or a tutor to a group of peer learners is intelligently supported, but also the information exchange and sharing among a large and diverse group of peers is actively encouraged and facilitated [5]. Our goal is to provide a networked virtual environment that widely opens to anyone who has the access to the Internet and has the will to learn and to share his or her knowledge with others across the networks. In this context, the online learning community is participants-driven. That is, participants, who are the members of the community, share a common interest in a topic or area, share a way of knowing and a set of practices. It may be large, the task general, and the communication open. Alternatively, it can be small, the task specific, and the communication close. The prototyped system for an online learning community has been designed as a networked virtual workspace with the time-independent and place-independent access [5], in which computation is effectively utilized to properly support both human-human communication and humancomputer interaction, in order to productively assist and enhance learning activities in the virtual environment. It is learner-centered, and provides learners with individualized support according to their different needs [16]. For this, we have proposed an integrated framework for peer-to-peer information sharing and collaborative browsing [17], based on the emerging peer-to-peer networking paradigm.
3. Peer-to-Peer Networking Concepts and Features The concept of peer-to-peer (P2P) networking is not brand-new [7], [8], [9], [10]. However, P2P network be-
comes useful and effective and has been widely applied in many network application systems, as the broadband networks rapidly spread and the performance of personal computers greatly improves in the recent years. As is well known, P2P networking is popularized by Napster and Gnutella [9], [10], which have raised broad awareness of the potential peer-to-peer applications. Up to now, the client-server model is the mainstream of the network application systems. In a client-server system, any processing executed between clients is always performed through the server, resulting in a concentrated load on the server. P2P model could solve this problem. P2P is a system that many computers connect each other without a central server and share resources, such as a file or computation capability. A computer in P2P networks is called a peer or servent (server and client), since it works as both a server and a client. By using P2P, users can exchange information directly with many unspecified individuals directly and share a variety of resources easily across the networks. In addition, there is another networking model, which has been proposed and applied in Napster, called the hybrid model of client-server and peer-to-peer. The hybrid model has advantages of both the client-server and P2P models, and could solve the problem of difficulty in P2P networks and resources management. P2P provides an easy way for people to publish information and share resources and services over a decentralized network, by exchanging information between two computers directly and equally. P2P makes it easy to create some sort of online community, allowing users to communicate, interact, or share directly with other users. Designed well, P2P could greatly improve availability, productivity and reliability of a network application system. There are several important features of P2P systems [11]: • They provide a way for people to connect each other for a common purpose. • They allow people to search for the information they want, or for products or people. • They provide a way for people to exchange ideas, goods or initiate transactions. These features can be adapted into powerful mechanisms for productive learning activities in an online leaning community.
4. Person-to-Person Information Exchange Model and ECC Support Internet provides a free and common infrastructure for people to access a variety of information, including plenty of educational information resources. It is natural that people search information and contents of interest and concern, and publish information that they have collected and/or created
(a) Common Attributes
(b) Arbitrary Attributes
Figure 2. Attributes for Personal Profile Figure 1. System Architecture as well. In addition, Internet based online communities provide rich opportunities for people to easily have new encounter and freely communicate with others. P2P paradigm could provide proper solution for them.
4.1. Basic Model and System Architecture In this study, we propose a person-to-person model that connects two persons based on personal information exchange by using P2P concepts, in order to support productive learning activities in online learning communities. We develop a system that supports more sophisticated matchmaking in users’ encounter across the networks, based on person-toperson information exchange. It can search a person according to the user’s requirement by published information such as personal profile and common interests, support communication among users, and provide mechanism for P2P file sharing. First, users arbitrarily create their personal information and the folder to share files with others. The system searches persons using the published information, and displays the search results in a specific order. Thus the users can get well known about a person whom the system discovered for them by obtaining more detailed information of this person. The system has also been integrated with functions such as instant messaging and file sharing, which could facilitate communication between users. The basic architecture of the system is shown in Figure 1. All the property files are managed by the Detailed Information Manager. All peers can communicate each other using JXTA [18], [19] protocols. A peer sends messages to the Response Objects at other peers, and the Response Objects return the processing results according to the request.
personal information: ReadMe, Personal Profile, Interests, and Shared Files. We give a more detailed explanations as follows. 4.2.1. ReadMe ReadMe is a simple text, which is shown at first when a user accesses to the detailed personal information. Users may use ReadMe to deliver message and information that they want to transfer mostly to the visitor who has accessed to their detailed information. Most of the present file sharing systems have difficulties to let users deliver their personal rules to the visitors since they only show the names of shared files directly without any other messages and explanations when a searching result is obtained. ReadMe in our system can solve this problem. In addition, users can write anything freely, so that different users may have their own way to utilize ReadMe. 4.2.2. Personal Profile Personal Profile represents user’s personal information by using attributes and their values, for example, NAME = NUMATA. A user can be identified in a certain extent by these attributes and values, so that they can be effective information in searching a person. There are two types of attributes for Personal Profile. One is the common attribute; the other is the arbitrary attribute. For either of these attributes, only those attributes that have been set up with a value are displayed in Personal Profile.
4.2. Basic Elements for Matchmaking
• Common Attributes: The common attributes are integrated in the system with items such as Name, Gender, and Occupation, as shown in Figure 2(a). The value for the attribute name is entered in a text field by users, while the values for other attributes are chosen from specific candidates to have more integrated representation of attribute values, thus to increase the search efficiency. This approach has also been applied in filtering described in Section 4.3.1.
This study emphasizes on utilizing personal information and takes it as a necessary condition when searching a person. The following four elements have been used as basic
• Arbitrary Attributes: Users can add and create new attributes as they prefer in the Arbitrary Attributes Setting-up Window shown in Figure 2(b). Since there
might be an unlimited number of combinations of attribute names and values, we do not use them for filtering. 4.2.3. Interests Interests are one of the most important elements in this study. Personal Profile may include interests as one of the attributes, such as INTERESTS = SPORTS. However, since a user may have many interests and we use Interests as keywords to search a person, we deal with Personal Profile and Interests separately. Interests are expressed in a tree structure. Users can create the Interests Tree by adding a specific interest, e.g., SOCCER, as a son node under the root node “INTERESTS”. 4.2.4. Shared Files User can create or select a folder to be shared with others. All folders and files under the shared folder are open and can be accessed by any users. Shared files can be download freely for all members in the learning community. The names of shared files are good information source that could provide some hints to help the user catch the characteristics of their owners, e.g., what kind of interests they might have. However, since file names are listed by the absolute path, strings included in the names of the upper folders are counted frequently. Therefore, it is difficult and not exact to identify a user only by the number of search keywords included in the names of the shared files.
4.3. Prototyping the System 4.3.1. Search We explain the procedures for search. First, make preparation for Search in the following steps: • Publishing: A user starts this system and logs into the JXTA network. The system automatically publishes Bidirectional Pipe Advertisement to the network as follows. urn:jxta:uuid-5961626164616... JxtaUnicast PersonsPipe.end1 • Discovery: The system discovers peers that are connecting to the JXTA network, and saves peer informa-
tion locally. At this point, personal information has not yet been collected. Search targets are only those peers that have been discovered. They will be updated and automatically reflected to the local once a new peer is found when messages are received from it. Then, search keywords and filtering are set up as search conditions. • Search Keywords: Search keywords consist of arbitrarily entered words and selected words from a user’s Interests. Most users are supposed to search from words of their interest and concern when they search for a person. Therefore, a user’s interests are displayed in the window, and the user can select them as search keywords. If no search keywords are entered and selected, all interests of the user are taken as the search keywords. The following is an example of messages indicating Search Keywords. p2p jxta java • Filtering: Filtering is to limit and reduce the number of search targets by setting condition on arbitrary attributes of Personal Profile, as shown in Figure 3. The following example is the Filtering to limit the search targets to only twenty-years-old male students. and ... This system has been designed to try to connect bidirectional pipe for all discovered peers, and send search keywords and filtering messages shown in the following list to those peers that have succeeded in the connection. ...
115
Figure 3. Search Condition Set and Filtering ... Peers that have received the search conditions begin to search on these four elements: ReadMe, Personal Profile, Interests, and Shared Files following the conditions, and return the search results, which including the following content: • ReadMe: Sum of the number of search keywords included in ReadMe. • Personal Profile: Total number of common attribute values, arbitrary attribute names and values for arbitrary attributes, and sum of the number for these three items that have the search keywords. • Interests: Total number of interests, and sum of the number of interests including search keywords. • Shared Files: Total number of shared files, and sum of the number of the names of shared files that includes search keywords. For “Personal Profile”, “Interest” and “Shared Files”, if there are more than one words that match the search keywords, it is counted as one in the sum. An example of search result returned in XML is shown as follows. 0 0 18 1 25 39
Search Result is displayed in the format of a table with the four elements. The table can be sorted by each column, so that it can be displayed in a specific order. Since the number of words matched with search keywords varies from different users, it is difficult to say that the order sorted by the number of matched words is the closest one to a user’s request. In this system, we have integrated two sorting methods: absolute sorting by “the number of words matched with search keywords”, and relative sorting by “the number of words matched with search keywords / all search target words”. 4.3.2. Detailed Information Request Detailed Information about ReadMe, Personal Profile, Interests, and Shared Files can be accessed and displayed to the users, after they made a request. That is, it is not provided at the stage of searching, since the data size may be quite large. If a user wants to know Detailed Information about a person, the user selects the person from the search result table and clicks the Detail button. How to get a person’s Detailed Information is the same as the search. A peer sends the user’s request to target peers, and receives the results from the peers, and then displays them. 4.3.3. Communication Support Instant messaging has been integrated to facilitate users to communicate with a person who has been found in a search. In the Detailed Information Window, a user can select a person and add the person to the Hotlist, and then send messages. If a user receives a message from a person who is not in the Hotlist, the person is automatically added to the Hotlist. When a user receives a message, the receiving icon is lightened to inform the user and indicate whether the message has been read or not. In addition, users can obtain the detailed information of the person who has sent them a message directly from the Hotlist, so that they need not conduct a search in order to access the person’s detailed information. 4.3.4. Download of Shared Files Users can open and download favorite files from the tree of shared files that are possessed by a person listed in the Detailed Information Window.
5. NetIsle-EM: a Groupware Tool for Community-Based Collaborative Learning As we have already mentioned, NetIsle-EM is an enhanced version of NetIsle [17] groupware system that targets small-scale uniform open group collaboration, in the
context of the previously proposed integrated framework for peer-to-peer information sharing and collaborative browsing. It utilizes all NetIsle’s main P2P- and push-based functionalities and has some additional features for online learning through MOO Web Projector and NetIsle Collabotative Browser. Making use of push technology is an attempt to make a user not only passive information receiver, but also an active information creator and sharer, give all users equal opportunities to create community values. Push technology is different from traditional “pull” model. Although push technology has such negative features as irrelevant information delivery (that can be reduced to some extend), it speeds up the process of obtaining information, saving valuable time of group members. These technologies, together with tools provided by NetIsle, create equal opportunities for all collaborative group members to actively participate in information creation and sharing, increase presence awareness. In this section, we focus on the design and implementation of these additional features and functions.
Figure 4. Presentation with Custom Collaborative Web Browser and MOO Web Projector
5.1. NetIsle-EM as a Client to Access MOO MOO (Multi-user dimension Object-Oriented) is a variation of MUD (Multi-User Dimension, or Multi-User Dungeon) [12], [13] — a text-based social virtual reality. MOO is a client-server software system that provides a user with a virtual environment through a shared core database of various objects. A user can access MOO via a client program, the simplest of which is telnet. Communication between MOO users is real-time, and all participants can manipulate virtual objects, extend already existing and create new ones through a client application. This is possible due to MOO’s object-oriented nature. To access MOO, NetIsle-EM provides such a basic and very useful tool as a telnet-like console (based on MOOtcan applet integrated in the enCore Package [15]), web browser and remote control panel for MOO WebProjector. The system is connected to NetIsle P2P network and collaboration can be done inside it. A user can connect to the MOO-based learning environment for an online learning community. On start-up NetIsle-EM gets a list of online users in NetIsle network and online users from a chosen MOO. They appear in the list of online users and distinguished by colors. When a user chooses a collaboration in MOO, the telnet-like console is started and login popup appears. Telnet-like console is very hard to use for novice users because a big number of commands to memorize, but is a very powerful tool for an exprerienced user. At this point, collaboration in MOO environment is started. A user can return to NetIsle network at any time though. Moreover, all NetIsle-EM users can join MOO environment collaboration and make use of NetIsle and MOO fully.
5.2. Utilizing MOO Web Projector with Custom Collaborative Web Browser To have an online presentation, which is an essential thing in e-learning and distance education, for all users of the system, we have chosen MOO’s Web Projector as a basic presentation tool that lets all logged in audience view web pages one shows. It is a powerful educational object that enables a user to display web pages (slides) quickly and easily. It was found to be a very useful feature by many teachers to prepare a number of slides in advance and display them during class [14]. Using the button control panel, as shown in Figure 4, we can easily manipulate MOO slides, performing slide show, setting and deleting new slides. After preparing slides for a presentation, they can be previewed in a simple additional browser window.
5.3. Sharing and Reusing Value-Added Information Custom collaborative web browser, shown in Figure 5, is a web browser that can save html pages and comments to them made by users. It is different from the standard NetIsle browser, which lets users only browse web pages synchronously [17], and is popped up to be worked with. Custom browser enables users to edit and organize information in form of saved html pages (slides) and comments to them. These functions are accomplished in CIB (Collaborative Information Browser) [20] for information sharing and reusing.
ypos:0 comment: Paper about Prof.Osano’s research activities. A paper about improvement of Performance of PSM is particularly interesting. Worth reading! > Furthermore, combining features of other similar applications and adding new ones, such an enhanced web browser largely increases information reuse by editing it and sharing this value-added information, together with user’s presence awareness.
6. Conclusions and Future Works Figure 5. Value-Added Information Sharing Using Custom Collaborative Web Browser
Our goal is information sharing and reusing as well, but we implement it in a different way — through pure P2P solution. In case of CIB, slides and related XML files with comments are saved and stored at the server. In our decentralized approach, since there is no server, except IP List Repository [17] that is mainly responsible for registering and unregistering IP addresses of online NetIsle clients, slides and related information (like comments, scroll bar position when saved, etc.) are saved at each servent. In addition, we embed the above-mentioned information in the slide itself, so that only one file (and incorporated images) have to be transferred from one node of the system to another. Moreover, by making use of push technology, a slide can be sent to one certain user in the system, or to all the collaboration group members, and only on a user’s permission a slide “push” is performed. Such an architecture puts much load on the servent, but avoids a single point of failure (at the server), so that if one servent becomes offline it does not significantly influence the collaboration of others. By embedding sliderelated information, we try to simplify its editing and saving, and minimize system efforts for interpreting information in XML, etc. A simple example of slide-related information is given as follows, and the displaying image in the NetIsle-EM Custom Collaborative Browse is shown in Figure 5.
In this paper, we have proposed a person-to-person information exchange model that connects two learners based on P2P concepts, and developed a system that supports more sophisticated matchmaking in a peer learner’s encounter to discover a person in an online learning community who may exchange information, share files, and collaborate each other. Easy access to detailed personal information about a person enables learners to know peer learners well and help them have new encounter and keep their learning interests. It is also helpful in activating learners’ motivation. In addition, convenient communication with other users facilitates collaboration and interaction, and promote educational resource sharing. We have further proposed an integrated peer-to-peer push-type solution for person-to-person e-learning support, and implemented NetIsle-EM, one of our initial attempts to combine peer-to-peer and push technology with such a social virtual environment as MOO. MOO itself is already a good participant-driven learning environment where users can learn in interactions. Combining these features of MOO with features implemented in NetIsle-EM can give users a powerful learning and collaboration support tool. Online learning community meets peer-to-peer networking, which could be greatly expected to provide a flexible and efficient educational environment, where all learners have equal opportunities to participate, create new values, reevaluate old ones, and share them in small groups that collaborate in an interactive multidirectional way, when one user learns from another, and vice versa. As directions for future works, we will review and improve the design of the system, enhance the groupware by adding more features for interactive communication, integrate other useful tools from MOO, and conduct an experimental evaluation. We will make peer-to-peer a more productive tool for person-to-person e-learning support.
Acknowledgment This work has been partly supported by 2000-2002 JSPS (Japan Society for the Promotion of Science) Grant-in-Aid for Scientific Research Contract No. 12558012, 2002 University of Aizu Research Grants Nos. R-9-1 and G-25, and 2003 Waseda University Grant for Special Research Project No. 2003A-917. T. Numata and R. Shtykh have implemented part of the pilot system. The author wishes to express his gratitude.
References [1] C. Steeples and C. Jones (Eds.), Networked Learning: Perspectives and Issues, Springer, 2002. [2] R. Hazemi and S. Hailes (Eds.), The Digital University – Building a Learning Community, Springer, 2002. [3] R.M. Palloff and K. Pratt, Building Learning Communities in Cyberspace, Jossey-Bass Publishers, 1999. [4] S. Seufert, U. Lechner and K. Stanoeveska, “A Reference Model for Online Learning Communities,” International Journal on E-Learning, Vol.1, No.1, pp.43–54, Jan.–Mar. 2002. [5] Q. Jin, “Design of a Virtual Community Based Interactive Learning Environment,” Information Sciences, Vol.140, No.1–2, pp.171–191, 2002. [6] A. Bruckman, “The Future of E-Learning Communities,” Communications of the ACM, Vol.45, No.4, pp.60–63, Apr. 2002. [7] D. Clark, “Face-to-Face with Peer-to-Peer Networking,” IEEE Computer, Vol.34, No.1, pp.18–21, Jan. 2001. [8] L. Gong, “Peer-to-Peer Networks in Action,” IEEE Internet Computing, Vol.6, No.1, pp.37–39, Jan./Feb. 2002. [9] M. Miller, Discovering P2P, SYBEX, 2001. [10] B. Leuf, Peer-to-Peer: Collaboration and Sharing over the Internet, Addison-Wesley, 2002. [11] J. Kook, “The Internet and Peer-to-Peer Computer Networking: the Principal Attributes of Peer-to-Peer Learning,” WebNet Journal, Vol.3, No.4, pp.39–44, Oct.–Dec. 2001. [12] P. Curtis and D.A. Nicholas, “MUDs Grow Up: Social Virtual Reality in the Real World,” Proceedings of Third International Conference on Cyberspace, 1993. [13] MOO Home Page, http://www.moo.mud.org/ [14] J.R. Holmevik and C. Haynes, “MOOniversity: A Student’s Guide to Online Learning Environments,” Allyn and Bacon, 2000. [15] enCore Home Page, http://lingua.utdallas.edu/encore/ [16] Q. Jin, “Individualized Collaboration Support for Online Leaning Communities,” Proceedings of the International Conference on Computers in Education (ICCE’02), Auckland, New Zealand, Dec. 2002. [17] R. Shtykh and Q. Jin, “NetIsle: A Hybrid Peer-to-Peer Groupware System Based on Push Technology for Small Group Collaboration,” Proceedings of Third International Workshop on Databases in Networked Information Systems (N. Bianchi-Berthouze, Ed.), Lecture Notes in Computer Science (Springer-Verlag), Vol.2822, Sep. 2003.
[18] Project JXTA Home page, http://www.jxta.org/ [19] D. Brookshier, D. Govoni and N. Krishnan, JXTA: Java P2P Programming, SAMS, 2002. [20] Q. Jin and et al, “Collaborative Information Browser: Collecting and Organizing Information through Group Collaboration,” Proceedings of IEEE/SMC2002, Hammamet, Tunisia, Vol.6, pp.169–173, Oct. 2002.