If you elect to work as a pair then equal marks will


You can work on this coursework either alone or in a pair with a colleague, not necessarily from the same seminar or lab group.

If you elect to work as a pair then equal marks will normally be given to both parties but the module leader reserves the right to reduce the marks for a contributor if it is clear there has been an imbalance of effort.

The assignment is about delivering a graphical social network system with a centralised server implementing a Facebook-like service. The clients connect to the "Social Network" server to register themselves to the social network system and upload their profile in terms of "friendly" preferences (e.g. computers, football, sports, sciences). Each client can, optionally, upload a photo of the corresponding new social network member and a set of personal information such as place of birth, place of residence, sentimental state, and so on. After the registration step, the new member is enabled to send new friendship requests and post new messages to the social network by sending a collection of strings to the Social Network Server. Only people that are friends among them can see their respective posts. Moreover, social network friends can chat among them by means of the additional "Chat" server. In particular, the client can ask to the Chat server to act as a bridge to connect it to its friends and start a new chat session.

The "Social Network" server accepts the requests from clients and adds each request to a data structure containing the name of the new member, the related profile and the IP address of the client. This data structure can be stored in a file in order to share it with the Chat server. Once the "Social Network" server completes a new member registration, it sends a list containing the list of current members to the clients. The "Social Network" server will send an updated list to the clients every 2 seconds in order to allow each client to always know who are the people connected to system and enable it to send new friendship requests. In addition, the Social Network server must forward posts uploaded by other members to the eligible members. The client uses a graphical window to show the list. The Social Network server can store the information about friendships in the same data structure used to manage member registration.

The social network members can contact their friends by starting a chat session by means of the Chat Server. In particular, the member can contact a friend directly by clicking on the name, or can perform a profile-matching task to search the set of friends with a particular profile. During the chat session, clients can exchange text, files and images.

You must implement the client-client and client-server communication and manage all of the chat functionality. A client connecting to the system should be able to: obtain (from the server) a list of who is currently online; select a person to start a conversation; send text messages to the selected person; send files (images or similar) to the selected persons.

Request for Solution File

Ask an Expert for Answer!!
Basic Computer Science: If you elect to work as a pair then equal marks will
Reference No:- TGS01243842

Expected delivery within 24 Hours