Service-based Development of Mobile Real-time Collaboration Applications for Social Networks
Social Networks will unfold their full potential when connected people are enabled to collaborate – any time, appropriate to the current location, activity and computing environment. However, development of collaborative applications in pervasive environments is still a big challenge. In this paper we present a service-oriented approach for the development of collaborative applications on top of social networks. It consists of a conceptual platform providing a set of generic services for real-time collaboration and the integration of existing social networks. In an experimental evaluation we implemented the conceptual platform for Android devices using the Extensible Messaging and Presence Protocol (XMPP) family together with a set of reusable services for Facebook integration, user location and proximity detection, media sharing, and collaborative editing. We developed several case study applications by composing generic collaboration services to demonstrate the feasibility and value of the approach.
Social networks have developed into widely-used platforms for interconnecting people with support for collaboration features like chatting or content sharing. The availability of rich features for collaboration – any time, adapted to the users current context – would unfold the full potential of social networks. Especially features for real-time collaboration – the IP-based communication and collaboration with synchronous interaction among geographically distributed participants – with features like shared editing of documents would increase the value of social networks. But even if recent technological innovations enable resource rich mobile devices and constant wireless connections with sufﬁcient data rate, the integration of rich collaboration features across web-based and mobile platform is still a big challenge. Service developers are confronted with a large number of highly heterogeneous platforms, partitioned into separated islands with respect to user communities, (user-generated) content data, provided services and technological base. As a result, for the creation of value-added services on top of social networks usually either a certain platform has to be selected (either web-based or mobile) or basic social networking functionality like user management, proﬁle handling and collaboration features have to be re-implemented. Advanced functionality for real-time collaboration in wireless network infrastructures like shared editing requires high development effort and the adoption of speciﬁc communication protocols. In consequence the development of value-added services in the domain of mobile real-time collaboration (MRTC) is very complex and costly. In this paper we present a service-oriented approach to improve the development of MRTC applications. With the Mobilis platform we already deﬁned a conceptual architecture consisting of four layers and several collaboration services. We now reﬁne this concept through the course of this paper with a mapping to concrete technologies and a client/server architecture. The paper describes three main contributions: First, we deﬁne an XMPP-based realization of the architecture deﬁned in [?] that builds upon standardized XMPP extensions (XEPs) to support real-time collaboration functionality in a service environment. Broker services act as XMPP clients thus leveraging XMPP as an infrastructure for service user to service provider communication. Second, we provide a set of reusable collaboration services for group management, social networks integration, location updates, shared editing of XML documents and media sharing. These services can be composed to ease and accelerate the development of applications. Third, we provide several case studies with implementations of different MRTC applications to show the feasibility of our approach. In the following, we ﬁrst analyse the requirements for service-based development of MRTC applications in Section II. We present the architecture of our service environment and introduce a set of reusable services for MRTC in Section III. Our case study and discussion of results is described in Section IV. We end the article with a summary and an outlook to future work.
FREE IEEE PAPER