SOCIAL NETWORK INFORMATION CONSOLIDATION Developers: Klasquin Tomer Nisimov Yaron Rabih Erez Advisors: Academic: Prof. Elovici Yuval Technical:
Published byModified over 5 years ago
Presentation on theme: "SOCIAL NETWORK INFORMATION CONSOLIDATION Developers: Klasquin Tomer Nisimov Yaron Rabih Erez Advisors: Academic: Prof. Elovici Yuval Technical:"— Presentation transcript:
SOCIAL NETWORK INFORMATION CONSOLIDATION Developers: Klasquin Tomer Nisimov Yaron Rabih Erez Advisors: Academic: Prof. Elovici Yuval Technical: Lesser Ofrit, Puzis Rami
Problem Domain Many users are members on various social networks. Maintain his information on the separate networks. Deal with ambiguities and inconsistencies within his data. Waste a lot of time and effort in order to organize his online social life. In general, social networks are not willing to share their data outside of the web site since their main purpose is that users will stay connected to their site getting their data as long as possible. Thus, getting this data from the social network to an outside application is not an easy task to perform.
Current Available Solutions Flock – A web browser which has built in social capabilities: Does not allow to unify friend’s profiles from different social networks. Does not allow to take snapshots of social data and calculate differences. More a web browser than a complete application. No other known solutions to this common problem.
Solution Proposal A web crawler will fetch web pages out of the social networks in which the user is a member without the need of his interaction with the web site. By visiting the various sites and parsing their HTML data it analyzes and fetches the relevant data for the user. After getting the data it sends it to a shared database. This way the data is collected automatically for the user and can be merged into one big snapshot of the user’s social data. Having the raw data in our hands, we can analyze it to our needs and present it according to various parameters.
SOFRWARE INTERFACES Operation: Login – Establish connection to the SN with the client’s ID. Used By: Crawling Manager, Client. Parameters: Username: The username of the client in the specific social network. Password: The password of the client in the social network. Return Values: Answer if the connection succeeds or not. Operation: getFriends – Get a list of all friends of a current SN profile. Used By: Crawling Manager. Parameter: User ID: The account ID of the user in the social network. Return Value: List of friends of the current profile account. The Web Crawler
SOFRWARE INTERFACES Operation: getEvents – get the Events from the current profile account. Used By: Crawling Manager. Parameters: User ID: The account ID of the user in the social network. Return Value: List of the last amount of events. Operation: getProfile – get the basic profile account information. Used By: Crawling Manager. Return Value: List of the profile attributes. The Web Crawler
FUNCTIONAL REQUIREMENTS Registration – A new user will be asked to register to the service by selecting username and password unique to the SNiC application. Login – the user will login to SNIC website. After logging in the user will be identified as a Registered user on the system and will be able to perform the appropriate actions. Users Management
FUNCTIONAL REQUIREMENTS Managed social networks data Profile – The user will be able to see all his profiles information from the different networks in one page divided by tabs. Friends View a list of friends over all the social network the user is a member on. View a specific profile of a friend on a specific social network. View a unified profile of a friend, containing information gathered from multiple social networks. Messages/Events – The system allows the user to view a list of his messages and events over the different social networks. Snapshot – The system will allow a user to save a snapshot of his current social data at any given time point. Social Graph – A graphic presentation of the social relations of the user inside the different social networks and between them. Social Data Management
FUNCTIONAL REQUIREMENTS All the data that was gathered from the social networks websites is saved in a single shared SQL based database The SNIC system is taking data only from this shared database and not directly from the social networks websites. Single Shared Database
FUNCTIONAL REQUIREMENTS The system may recommend a SNiC user of an unexplored friend on a social network by corssing specific data fields between multiple social networks. For example: An email address is a unique identification for a user on a social network since it is impossible to have two same Email addresses for two different users The system will unify profiles of different users on different social networks by their email address. After the unification the system may recommend a user of a friend of his on another social network. ANALYZING DATA
Use Case 1 - Add Social Network Membership. Primary Actors: Registered user. Main Success Scenario: 1. The user clicks “Add a new social network membership” button. 2. The system lists the available social networks it offers except for those the user has already informed it. 3. The user chooses one of the available networks. 4. The system asks the user to enter his credentials in the specific network. 5. The user supplies the system with his credentials. 6. The system successfully logs into the social network using the user’s credentials. 7. A new association between the logged user and his profile on the social network has been created.
Use Case 2 - Unify A Friend From Multiple Social Networks Description: A user may have a friend on social network 1 and the same friend on social network 2. This use case allows the user to flag the system this is the same person and by that unify its profile on social network 2 and social network 1 into one profile. Main Success Scenario: 1. The user clicks on “Unify a friend from multiple social networks” button. 2. The system displays a list of social networks the user is a member on. 3. The user chooses one of the social networks. 4. The system displays the list of friends of the user under the specified social network. 5. The user chooses one friend from the list. 6. The system displays a list of social networks the user is a member on. 7. The user chooses a different social network. 8. The system displays the list of friends of the user under the specified social network. 9. The user chooses one friend from the list. 10. The friend is now marked to be the same person under the different social networks.
Use Case 3 - View Social Changes A user which has saved snapshots of his social data before may want to view the changes to his data over the course of two different snapshots. Main Success Scenario: 1. The user clicks on the “View social data difference” button. 2. The system shows a list of snapshots that exist for the user. 3. The user chooses two snapshots from the list. 4. The system calculates the difference between the two selected snapshots and displays it to the user.
Non Functional Requirements Speed The system should perform an update (Crawling) for a single user up to 5 minutes. Safety & Security The passwords of the user's social networks will be saved locally on his H.D. and not on the Shared-Database, except for the SNIC-Password. All the user passwords will be stored encrypted. Portability The system should operate on any OS that has both JVM and JRE 1.6 (or higher) installed.
Projects Risks and Limitations Changes in the login operation or in the HTML design of the social network – may require us to change our HTML parsing component. Prohibition of using the Social Network API – may cause a malfunctioning data gathering component. Most of the Social Networks APIs are limited in terms of amount of data they can access and use. In addition, in several Social Networks the users need to authorize exposure of their information to a 3 rd party application.