This Bachelor-Thesis deals with the synchronisation of social network services. This type of internet application enjoys great popularity which results in new challenges for identity and relation management. On one side the user has to manage different identities and on the other side a friendslist per social network service. From this effort arose to make data portable and reusable for example in order to avoid re-declaring friends to every site. To accomplish this goal numerous projects and technologies have been developed, which already provide partial solutions for this problem. The basic conceptual question however how to deal with the problem generally is still open. Moreover some of the techniques are only suitable for special use cases or else not ready für a professional use. In this thesis some of the existing standards shall be used to tie them together to one total system. This system consists out of a central identity provider, which functions as a central storage for the users contact data. By utilising interfaces this contact data can be exchanged with the social network service and by that improves the relation management for the users.
Contents
List of Figures
1 Introduction
2 Social network services
2.1 Definition
2.2 Present SNS usage
2.3 Relation and identity management in SNS
2.4 Present data portability and its problems
2.4.1 Political situation
2.4.2 Technical situation
3 Current data portability solutions
3.1 Microformats
3.2 XRDS-simple
3.3 OAuth
3.4 RDF
3.5 OpenID plus Attribute Exchange Extension
4 Concept for a SNS metadirectory
4.1 Goals
4.2 Concept description
5 Development of the prototype
5.1 Analysis
5.1.1 Functional and data description
5.1.2 System architecture
5.1.3 Interface description
5.1.4 Usage scenario
5.1.5 Data model
5.2 Design
5.2.1 Data design
5.2.2 Architectural and component-level design
5.2.3 Interface description
5.3 Implementation
5.3.1 Setting up the OpenID server and the SNS
5.3.2 Attribute Exchange - Fetch Message
5.3.3 Processing the FOAF data
5.3.4 Attribute Exchange Store Message
5.4 Appraisal of results
6 Summary and Outlook
References
A Appendix
A.1 Source code digest
List of Figures
1 hCard example
2 XRDS-simple example
3 Concept overview
4 System Architecture
5 Use Case1 - Synchronise Contacts
6 Use Case2 - Update Contacts
7 Use Case3 - View Contacts
8 Entity Relationship Diagram
9 FOAF format
10 Component diagram
11 Sequence diagram
12 Build Fetch Request (SNS)
13 Process Fetch Response (SNS)
14 Process the FOAF-data (SNS)
15 Build Store Request (SNS)
16 Process Store Request (Identity Provider)
1 Introduction
Recent years have witnessed the great popularity of online social networking services, in which millions of members publicly articulate mutual ”friendship” relations. Social network services have become a major application in the internet. Correspondingly the number of provider such social network services has multiplied and accommodates estimated 272 million users worldwide (Universalmccann, 2008). The mass adoption of social networking websites points to an evolution in human social interaction. These sites let the user create an identity namely their profile, which they fill with personal information. These identities can then be searched and relationships among the users can be made. A user can make friends virtually and by that creates his own social circle, that is why it can also be regarded as a reflection of the real world. Most of the users are part in more than one social network, which creates problems in terms of identity and relation management. At the moment there seems to be no consolidation among the services, but a further fragmentation and by that also a fragmentation of information.
In the real world people can be easily identified, but this is not possible in the internet as there is no physical contact. People using assumed names as an identifier which may be different on every platform. On top of this it is diffcult to manage all the contacts which are spread over several services. At the moment the social network services do not offer ways to get the data out of their platforms to reuse it somewhere else. The use of separate networks may be wanted by the users regarding order and different roles they can slip into. In spite of these aspects there is an increasing demand for reusing and sharing the contact data to be able to manage the online ’friendships’. To overcome the disadvantages of fragmented data central storage has to be established. In combination with exchange mechanisms it would make data reusable, which means all the social networks the user is part of could be synchronised. This is especially useful when entering a new network. It is like moving into a new city and already know some people.
Inevitable for such a scenario is that the information of the social networks are portable and that the user can be uniquely identified. There are efforts to achieve this goal, but up to now only partial problems have been solved. An overall concept seems not possible at the moment due to technical crudity and the diffculty to bring the different interests of users and social network services in line. Nevertheless there are existing standards that can be combined to one concept. This thesis will first analyse the needs and existing solutions in order to develop a prototype which is able to synchronise contacts in social networks.
2 Social network services
2.1 Definition
To outline the problem field first the term ’social network service’ (in the following ’SNS’) has to be defined. SNSs are a representative of social media, which arose from the Web 2.0 movement[1]. Social media means online applications, platforms and media which aim to facilitate interaction, collaboration and the sharing of content (Richter and Koch, 2007). SNSs can be defined with different viewpoints. ”Social networks refers to systems, that allow members of a specific site to learn about other members‘ skills, talents, knowledge or preferences” (McKinsey, 2008). To be more general a social network is ”an online location where a user can create a profile and build a personal network that connects him or her to other users” (Lenhart and Madden, 2007)
SNSs are based on interaction between the users which implies a web-based application as it is only applicable in an online environment and can differ in their services. They all have in common, that a user has to sign up for an account to be able to create a profile. Such a profile contains different information depending on the structure of the network, but in most cases at least basic personal data like name, address and birth date. In combination with a chosen nickname or an e-mail address the profile depicts the users identity in a SNS. These contents provided by the users are also called social objects. These objects plus the connections of the users among each other constitute a SNS (Wagner, 2007).
The goal of such a service is to let the users build and maintain their individual social network. Based on the ’population’ of users different kinds of interaction are implemented. The most basic one is that people can make friends with each other and by that creating a contact list. This interconnection between user profiles creates a network which is called social network in this context. Usually profiles can be searched, so that it is easy to find people who already participate. In addition the inhibition level to confirm a friend request is quite low as the friendship is quickly established virtually and by that a user can build a wide network very fast. This of course highly depends on the number of users who are already there. The more people are member, the higher the motivation for potential users to actually sign up. Furthermore, with a large amount of members network effects become an interesting aspect of social networks.
This concept is the common basis of all SNSs and specific services are built on top of that. Further services are for example message exchange, virtual notice boards, photo exchange, discussion groups etc.. By this time there are hundreds of SNSs which differ from each other in the type of services and topic[2].
2.2 Present SNS usage
”Social media is a global phenomenon happening in all markets regardless of wider economic, social and cultural development. If you are online you are using social media” (Universalmccann, 2008). This statement points out the importance of social media which can be proved on the basis of the representative survey from Universalmccann (Universalmccann, 2008). According to that 82.9% of the internet users have watched videos online, 72.8% are reading blogs online and regarding SNS usage the survey reveals that 57% have joined a social network, making it the number one platform for creating and sharing content. Furthermore there is also a trend identifiable. Whereas in September 2006 only 27.3% of the worldwide internet users had a profile on a social network there are now over 57% using such services (Universalmccann, 2008). The growth rate is therewith by far the highest comparing to other categories of fields of application. In 2007 compete.com[3] determined that over 30% of the site views of the web are caused by SNSs with the major ones leading the way. The biggest social network MySpace[4] has now over 114 million users (Universalmccann, 2008), but the success is not only limited to one service. There are 16 other SNSs with over 15 million users plus many smaller ones (Universalmccann, 2008). There is also the phenomenon of niche social networks. In the face of the all encompassing large social networks a raft of more niche and sometimes exclusive networks are emerging (Universalmccann, 2008). These facts emphasise the need for data synchronisation. As a result of this survey it is stated that ”Social networks are today the main platform for sharing content and have increasingly become the means to manage social relationships.”
2.3 Relation and identity management in SNS
Due to the high popularity to manage social relationships with the help of SNSs there is a high demand to extend the possibilities to take advantage of the data and the need for a new kind of relation management emerged. In the abstract SNSs provide on one side the functionality of identity management, so to express certain aspects of the own person. On the other side SNSs provide relation management, precisely managing and maintaining contacts (enhanced address book) (Breslin and Decker, 2007).
In the real world identity representatives or identity proxies (Becker, 2006) are used to identify people. This can be a passport, drivers license but also personal attributes like age and origin (Windley and Randal, 2005). There is however no physical contact in the virtual world, so that these different views on the identity do not exist in this context and other identity proxies are necessary. Usually a user of a SNS chooses an alias or nickname which is used as an identifier for this specific service. This however read little into the real person behind. In addition many users choose different nicknames which is also used to slip into various roles.
The relationships made on a social network can be viewed in terms of nodes and ties. The persons are the nodes and the ties can be viewed as social interactions or relations between the actors (Koch et al., 2007). That is why the unity of relations is also called social graph (Sto¨cker, 2007). As soon as someone is part in more than one social network, he is member of two different social circles. In network A he will have a different contact list than in network B. There will be differences, but also cut sets, which results in a duplication of the social graph. Using the platforms is therewith different to the real world where the user is central. SNSs however are not a group of people, but just a representation and the SNS just function as a tool (Vanasco, 2007). This leads to a confusing mix of diverse online contact points one can go to to communicate with his contacts. Of course it is still lucid in the case of two different networks, but the problem starts to get relevant for the use case that someone is in 3 or more networks. With each new membership the costs for coordination and maintenance of the networks increases. This would be obsolete if the internet users just do not want to attend more networks or just a few major SNSs will assert themselves and a allround service will come into being. But a closer look at the recent SNS usage reveals that there is a tendency to use several different SNSs at the same time. According to a survey of the research team cooperation systems in munich (Richter, 2008) 2,21 SNS memberships is the current average. Without claiming to be representative the survey indicates that there are a lot of users who would benefit from new ways to use the data.
Thus relation management becomes an important issue as the different social networks have to be reconciled somehow. In the original sense the social graph is portable and extensible in a flexible way (Großkopf, 2008). Following that to improve the practical effect of SNSs with regard to relation management the data has to become portable, which is embraced by the term ’social network portability’. But before thinking about possible solutions to bring all the networks together the actual need for it has to be worked out first. As SNSs are a quite new phenomenon and the market is changing very quickly it is not clear what problems simply need to be solved. In fact it may not be the desire of the users to bring all the networks together. For example someone is part in a business network and in a local party network. In this case he has probably good reasons to have separate groups of people being able to see the actual information in the different networks. The separation can also create a sort of order, because the user decides for one social circle he wants to communicate with and do not have to bother about the rest which in fact shows similarities to the real world. As a social network is also attached to a type of service the user can keep up the separation of services, which is potentially much more usable than one allrounder service.
Consequently the fact that someone is in several different networks is not necessarily a problem, but a wanted structure. Nevertheless in case of similar SNSs the same information will be given more than once, like searching for and adding the same person to the actual contact list again in every network. Thus an improvement of this situation would be a way to reuse the information of the social network which is already available to avoid redundant user input and by that improving the usability. Portable data would also reduce so called lock-in effects. Network effects are a crucial factor of success, it means that the value of a SNS for a user increases with the number of total users and connections he has established (Schiff, 2007). To switch from one service to another goes therefore with high social costs (Westermayer, 2007) when the social network has to be build from scratch and thus the user is bind to his existing memberships (lock-in). In the end relation management can be brought down to simple human needs as Marc Canter (CEO of Broadband Mechanics) states ”Users do care if for no other reason than they’re lazy and they don’t want to have to create all those relationships and upload their photos - all over again”.
A second more important improvement would be that the user is the owner of the data. Actually it is his own personal information and his individual list of people he is connected to and according to ”A Bill of Rights for Users of the Social Web” (Smarr et al., 2007) it should be a fundamental right of the user to own the data.
This also enables the user to manage all his contacts. The separation of social networks may be important for users in respect of the outer world, but on the other hand is to no avail for the user side. He obviously knows about his connections and therefore has the need to get a complete overview of his individual network which is spread over several SNSs.
Accordingly the goal to improve the identity and relation management in terms of SNSs is based on data portability. By getting the information out of the SNS the user can collect all this data which opens up possibilities to offer improved relation management.
2.4 Present data portability and its problems
2.4.1 Political situation
As already broached portable data is required to have a greater benefit of using SNSs. First of all however there are political issues affecting the access to the data. Besides small non-commercial SNSs the most important ones are companies who want to maximize their profits, so that they may have reasons to resist data portability. A crucial factor for such companies is the amount of users they have. Through that the platform increases in value, because the service is more attractive to users, as they find much more contacts and network effects get fortified. More users also means more traffc and this leads to better advertisement revenues (Olsen, 2006). The information the SNSs have about the users even allow for target-group-specific advertisement. The data is part of the business model. Big SNSs with millions of users and all their individual data hold out a huge treasure of personal data (Grob and Vossen, 2007) and it is even more valuable as it also includes the connections of people among each other. So these companies may refuse to open up their platform, because they are interested in a proprietary access to the monetisable data especially when the service is already very popular and has reached the critical mass[5] of users. According to the survey about the usage of social networks the most popular feature is messaging friends (Universalmccann, 2008), so a SNS can also be regarded as an address book and users visiting the site regularly to communicate with their contacts. This could change and would reduce the traffic for the SNS, if the data is available elsewhere also. Another disadvantage would be that competitors could easily tout for the users when it is so easy to take along the contacts from other services. Consequently at the moment such an initiative can only be advanced from the bottom. Smaller SNSs working together to become a strong counterpart to the big players that may force them to open up as well.
Besides these aspects data portability must also keep the balance of privacy and usability. Privacy is just as important as openness and if it would become too easy to share data with external services security privacy issues may occur. This is especially true for a central architecture when one identity provider stores all the information. In this case the identity provider stores very valuable information. Moreover it can monitor the users activity, because it is involved in every authentication process.
2.4.2 Technical situation
The current use of data portability concepts and the available technologies is not prevalent. Most of the current SNSs originated as an independent platform without an interface to the outside world. The most popular social 5Critical mass is a subjective measure of the point where enough of one’s friends participate in a social network to make it valuable.
networks like MySpace and Facebook[6] are so called ’walled gardens’, so do not offer possibilities to export or reuse the data available on their platform and the access to information is restricted to members. Thus the data is bound to the SNS and its proprietary formats. This is very different from the open nature of the web and leads to redundant storage of data.
In addition the user-authentication is decentralized and has to be done for each SNS itself. In contrast to that there is OpenID, a identity system that lets people use a single username and password to log in and authenticate themselves to OpenID-compliant websites. (OpenID-Foundation, 2008b). Although there are attempts to introduce this single sign on solution most of the SNSs have an own user account and authentication mechanism. This involves that the user has to to maintain his data on every platform separately. Furthermore separate profiles lead to the problem of finding contacts. The user have to do it again for each platform and as there is no general identifier like there would be in case of a single sign on mechanism it can be hard to find a contact. One and the same may have registered with different user names or e-mail addresses on each platform, so that a user might miss a relationship he would have liked to establish.
A decentralized approach to solve this problem is XFN (cf. ’Microformats’), which however is not widely used at the moment. The most important approach using this technique is Googles Social Graph (Google, b). Google provides an API to collect social network information from the web. Like the search engine is looking for words, the web is crawled for relationships. The API can be used to follow the links to friends, which in turn points to other profiles of themselves and by that the user can discover an existing friend on a new platform.
[...]
[1]Definition of TechEncyclopedia (http://www.techweb.com/encyclopedia/): Web 2.0 is not a specific technology; rather, it refers to two major paradigm shifts. The one most often touted is ”user-generated content,” which relates more to individuals. The second, which is equally significant, but more related to business, is ”thin client computing.”
[2]http://mashable.com/2007/10/23/social-networking-god/
[3]web analytics company, available at: http://www.compete.com
[4]popular social networking website, available at: http://myspace.com
[5]Critical mass is a subjective measure of the point where enough of one’s friends participate in a social network to make it valuable.
[6]popular social networking website, available at http://facebook.com
-
¡Carge sus propios textos! Gane dinero y un iPhone X. -
¡Carge sus propios textos! Gane dinero y un iPhone X. -
¡Carge sus propios textos! Gane dinero y un iPhone X. -
¡Carge sus propios textos! Gane dinero y un iPhone X. -
¡Carge sus propios textos! Gane dinero y un iPhone X. -
¡Carge sus propios textos! Gane dinero y un iPhone X. -
¡Carge sus propios textos! Gane dinero y un iPhone X. -
¡Carge sus propios textos! Gane dinero y un iPhone X. -
¡Carge sus propios textos! Gane dinero y un iPhone X. -
¡Carge sus propios textos! Gane dinero y un iPhone X. -
¡Carge sus propios textos! Gane dinero y un iPhone X. -
¡Carge sus propios textos! Gane dinero y un iPhone X.