Admin Note: Dear Service Provider, the selected budget is being discussed with the client. This is to inform that twago is currently in contact with the client to see if the budget is negotiable.
A Twitter-Like distributed application you are invited to develop a little distributed application whose the behavior is like twitter.
Behavior : A twitter application is composed of a server and clients (users)
● A server: - maintain a list of users and hashtags - search by name of a user - follow users tweets - forward tweets once they happen to interested followers - search for a hashtag (keyword/topic in twitter) and find all tweets containing this hashtag with the usernames who tweeted it
● A client: - user side application - connect to the server - ask to follow a user - display all tweets once they tweeted from all followed users - list followers and following users What to do : Application should be written in Java using the RMI technology, thus:
● Design the architecture of application by - defining the necessary (remote) interfaces such that the above described behavior can be achieved. - designing the implementing classes or other classes of the application - provide a class diagram for your design The design can be evolving during the project lifecycle - Implement the server
● Implement a client
● Test the application by running multiple clients (users) and see the interactions and the usage of the services provided (for this aim you can create an application which will do all the work).
● Modularize the application
● Separate services from implementations
● Use multithreading,design patterns, unit tests ..etc
● Comment the code *** No DataBase needed.