Client-sided vs . server-sided MUPPLEs: Can add-ons beat platform-based solutions?
Abstract
Typically Mash-Up Personal Learning Environments (MUPPLEs) are based on different theoretical foundations, which lead to different development strategies and architectural styles. In this paper we examine the influence of the two most opposite PLE architectures server-sided and client- sided solutions towards relevant social and technical aspects. All in all, we come to the conclusion that the decision for a specific architecture mainly depends on very few factors precisely collaboration, privacy and trust, computational efforts and scalability, as well as software development and maintenance and that some shortcomings can be addressed by additional technical concepts, like a practice sharing infrastructure in the back-end or the utilization of existing web-based tools to achieve specific functionality.
Author-supplied keywords
Client-sided vs . server-sided MUPPLEs: Can add-ons beat platform-based solutions?
Felix Mödritscher1,
1
Institute for Information Systems and New Media, Vienna University of Economics and Business, Augasse 2-6, 1090 Vienna, Austria felix.moedritscher@wu.ac.at
Abstract. Typically Mash-Up Personal Learning Environments (MUPPLEs) are based on different theoretical foundations, which lead to different development strategies and architectural styles. In this paper we examine the influence of the two most opposite PLE architectures – server-sided and client-sided solutions – towards relevant social and technical aspects. All in all, we come to the conclusion that the decision for a specific architecture mainly depends on very few factors – precisely collaboration, privacy and trust, computational efforts and scalability, as well as software development and maintenance – and that some shortcomings can be addressed by additional technical concepts, like a practice sharing infrastructure in the back-end or the utilization of existing web-based tools to achieve specific functionality. Keywords: Personal Learning Environments, Architectural Styles, Social Aspects, Technical Factors, Technology Review.
1 Introduction About two years ago, Wild et al. (2008) introduced the concept of Mash-Up Personal Learning Environments (MUPPLEs), extending the character of Personal Learning Environments (PLEs) by aspects of End-User Development (Lieberman et al., 2006) and Opportunistic Design (Hartmann et al., 2008). Precisely, a MUPPLE comprises a PLE solution which empowers learners to design and use their environments by utilizing existing tools so that they can connect to learner networks and collaborate on shared artifacts. In this sense, a MUPPLE infrastructure enables users to mash up existing functionality, i.e. in the form of web applications and widgets, to an environment which is useful for them to achieve personal goals and learning needs. Although being a young concept, various software systems and tools can be classified as MUPPLE solutions, or include at least few aspects of a Mash-Up Personal Learning Environment. Amongst others, Palmer et al. (2009) give an overview of different dimensions for building web-based PLEs, reaching from UI-related issues over data interoperability and social dimensions to runtime behavior of PLEs. Furthermore Palmer and his colleagues evaluate various platforms according to these characteristics. However, each of the PLE software reviewed is realized in the
2 Social aspects of MUPPLE architectures Personal learning environments aim at supporting learners in utilizing different tools in order to participate in collaborative activities of learning communities. Consequently the architecture of a MUPPLE does have an influence on various social aspects, as elaborated in the following.
2.1 Collaborative activities Van Harmelen (2006) states that a PLE (and therefore also a MUPPLE) aims at empowering learners to design their learning environments in order to connect to learner networks and collaborate on shared artifacts to achieve common goals. Therefore facilities for PLE-based collaboration are considered to be important. As evidenced by many social networking platforms (like Facebook, MySpace, XING, etc.) and Web 2.0 tools (e.g. Wikipedia, Delicious, Flickr, etc.), server-sided web solutions perfectly enable collaboration between users. However, if understanding a PLE as an infrastructure to find and manage these (web-based) applications also client-sided MUPPLEs are fit enough to foster collaboration amongst learners. The main advantage of a server-sided to a client-sided architecture deals with core functionalities of a PLE, as will be explained in the upcoming subsection.
2.3 Trust With respect to social networking sites (cf. Dwyer et al., 2007) a first issue to mention for PLEs is trust. Trust can be understood as “the willingness of a party to be vulnerable to the actions of another party based on the expectation that the other will perform a particular action important to the trustor, irrespective of the ability to monitor or control that other party” (Mayer et al., 1995). In connection with software, trust is always closely related to the trustworthiness of the software vendor or provider. Thus aspect is relevant for the PLE solution as well as for each tool – web or desktop application! – being part of the learning environment. However, as PLEs capture critical user data in the form of recordings of learner interactions, trust also depends on the control of a user over this data. Here, users might feel more comfortable if the interaction recordings remain on their computers and can be shared at their request. Independently of the architectural style of a PLE, Dwyer et al. (2007) state that only a trust in the solution provider facilitates information sharing. This issues effects both client and server-sided PLEs. Concerning trust in general, we see slight advantages for client-sided PLE solutions.
3 Technical aspects of MUPPLE architectures Beside these social aspects, the architectural style of a Mash-Up Personal Learning Environment also has an impact on various technical factors. In the following subsections we briefly sketch these aspects and try to order them according to their importance for realizing MUPPLE solutions.
3.1 Computational efforts and scalability A first and highly relevant factor to mention is the processing effort for providing all functionality of the personal learning environment. Following the hard facts of large-scale Web 2.0 platforms, a wide-spread PLE solution would require a lot of computational power, as evidenced with the distributed calculation of the Google index (Barroso et al., 2003) or with the many specialized, high-scalable technologies and servers behind Facebook (Royal Pingdom, 2010). Due to the fact that Mash-Up
3.2 Software development and maintenance A second critical issue of PLEs is the one on rolling out and maintaining such solutions. From the perspective of a developer and provider of a PLE product, a server-sided architecture has clear benefits in providing access to a web-based platform and maintaining this centralized system. As mentioned in the last subsection, scalability might require deploying a server cluster in the back-end, which would increase the efforts in maintenance. For accessibility reasons a MUPPLE platform should be also compliant with the mostly used browsers, which however can be achieved by using mature, wide-spread Ajax libraries. Generally server-sided PLE solutions can be easily rolled out within a community or organization, while new features and patches can be installed quickly and at a central point. On the other hand, client-sided PLEs are restricted to a user’s computer, e.g. to an operating system, a browser or even a certain version of a browser. Thus, the complexity of the software developed tends to be low while large-scaled roll-outs can be problematic if users underlie technical restrictions on their computers e.g. due to an organizational ICT policy. For this situation it would be possible to provide pre-configured installation packages or runnable versions e.g. on a memory stick. Maintenance of client-sided PLEs is easily achievable through automated update mechanisms, whereby the updates normally have to be triggered by the users. Consequently installing time-critical patches is problematic for client-sided approaches. Concerning roll-outs and maintenance we see clear disadvantages of client-sided PLE solutions, which we have experienced with the PAcMan prototype realized as a Firefox add-on.
3.3 Security Thirdly, security plays a role for personal learning environments in general. In the scope of MUPPLEs and this paper, we mainly refer to the low-level concepts of
3.4 Availability Availability is defined as the degree to which a MUPPLE is operable and accessible by the end users. Hereby it has to be distinguished between the availability of the web-based tools and the PLE infrastructure integrating the tools and providing users a unified access to their learning environments. The availability of the tools has to be guaranteed by the providers responsible for them, thus it is not relevant for a PLE in general. The availability of a PLE infrastructure is highly related to its architecture. While client-sided MUPPLEs are available even if the computer is not connected to the Internet server-based solutions always require a connection to the server hosting the PLE platform. Consequently, client-sided MUPPLEs can be used for offline activities (e.g. designing one’s activities and the corresponding environments), as long as no access to one of the web-based tools or background services is required.
3.5 Responsiveness and usability The responsiveness of a MUPPLE describes how quickly the environment responds to user input. Similar to the availability of a PLE we have to differentiate between the tools being part of the learning environment and the infrastructure. The responsiveness of tools is fully carried by the tool providers and relies on issues like the connection to the hosting server or the usability of the applications itself. The responsiveness of the PLE infrastructure however is influenced by the architectural design. As client-sided solutions do not require continuous communication with a server, they are a clear favorite regarding this factor. Particularly they do not depend on the quality of the Internet connection like MUPPLE platforms. Usability of a PLE solution highly depends on the responsiveness but can also consider aspects like single-sign on. It is obvious that a PLE solution – independently of the architectural style – will be used less if users have to authenticate for every tool
3.6 Analyzability According to Mödritscher (2009), an important aspect of PLEs – and semantic technologies in general – deals with analyzing user data and extracting semantics to be utilized for supporting end-users such as lifelong learners within their communities. Therefore it is necessary to capture and bring together the user data which can either be entered explicitly or recorded while interacting with the environment. The tools integrated into one’s PLE are normally recording their own log files. At best, one can analyze them through a cross-platform approach, as seen with the PALADIN approach (Klamma et al., 2008). Server-sided MUPPLEs have the advantage that they capture and store the interaction recordings at a central point, so this data can be analyzed immediately. Client-sided PLE solutions lead to recordings distributed over many client computers. Therefore they always require a back-end service (like the pattern repository mentioned in section 2) for collecting the data from different users, e.g. all participants in one activity. As a consequence, server-sided PLE platforms fulfill the requirements on analyzability of user data, while client-sided MUPPLEs lack facilities to bring together the interaction recordings.
3.7 Visualization and other user interface issues Concerning usability and visual feedback mechanisms, a PLE solution should enable the application of visualization techniques and comfortable user interface features, like drag&drop functionality, interactive UI elements, etc. Here, client-sided MUPPLEs have certain advantages. For instance browsers provide possibilities to integrate libraries and executables, e.g. to realize fancy visualization and navigation utilities like the Cooliris add-on (cf. http://www.cooliris.com). Moreover Mozilla’s XML User Interface Language (XUL, see https://developer.mozilla.org/en/xul) specification allows developers to modify and adapt all existing UI elements of the browser and add state-of-the-art facilities, which we have done within our PAcMan add-on (available at https://addons.mozilla.org/en-US/firefox/addon/176479/). Server-sided PLE platforms rely on technologies for creating dynamic web interfaces (HTML and JavaScript, Java Applets, Flash, Silverlight, etc.) or, better, on respective libraries, e.g. Ajax frameworks, Flash libraries, and so forth. The consideration of local programs (libraries or executables) is not possible at all. Overall both architectural styles support the provision of usable UI elements and graphical information. The realization is expensive if not utilizing good libraries, however client-sided have slight advantages to MUPPLE platforms concerning this factor.
4 Overview, findings and concluding remarks In Table 1 we have ranked the issues examined in the former sections according to their advantages and disadvantages for each of the two architectural styles. Therefore, we have assigned the most critical aspects to the two PLE architectures in a first step. Then, we have ordered the other issues according to their dependency on the critical ones, which is described in the following. Table 1. Overview of PLE-related aspects, ranked by their relevance for an architectural style.
Social perspective Technical perspective Server-sided Collaboration (2.1) Analyzability (3.6)
MUPPLEs Software development/maintenance (3.2)
Sharing/reusing PLE Scrutability (3.8)
experiences (2.2) Visualization/user interface (3.7)
Security (3.3)
Trust (2.3) Availability (3.6) Client-sided Responsiveness/usability (3.5)
MUPPLEs Privacy (2.4) Computation/scalability (3.1)
From the perspective of social factors, server-sided MUPPLE architectures are better in terms of collaboration and practice sharing while client-sided solutions have benefits concerning privacy and trust. As collaboration is an important driver of learning and privacy is regulated by law, we weighted these two issues stronger. On a technical level, platforms are ideal for analyzing user data, for rolling out and
Acknowledgement The research leading to these results has partially received funding from the European Community's Seventh Framework Programme (FP7/2007-2013) under grant agreement no 231396 (ROLE project).
References
Barroso, L.A.; Dean, J.; Hölzle, U.: Web Search for a Planet: The Google Cluster Architecture. IEEE Micro, 23(2), pp. 22-28 (2003) Clarke, R.: What’s Privacy? Proc. of the Workshop at the Australian Law Reform Commission (2006), retrieved from http://www.rogerclarke.com/DV/Privacy.html (2010-08-13).
Sign up today - FREE
Mendeley saves you time finding and organizing research. Learn more
- All your research in one place
- Add and import papers easily
- Access it anywhere, anytime


