ADVANCE PROGRAMMING – CIT 3009 Group Project
DATE GIVEN: Week of January , 2016
DATE DUE: Week of April , 2016
Students are required to build a Java based instant messaging (IM) system with some additional features (similar to skype). The application should use the MVC and the client server architecture. Users will be given access to the system through a client application, each client application is independent and will communicate with a central server based application to get pertinent information on the user. You are free to use third party software/add ons to help complete this project.
The features of the system include:
- 1.Registration – The application must allow for new users to register for the system.
- 2.Authentication – The application should validate that a user is authorized to use the system.
- 3.Direct Messaging – The application should allow a user to send a message directly to a next user without it being seen by any other party.
- 4.Group Chat – The application should allow a user to create a group chat and invite other users to join, all messages sent in the chat should be visible to all users in the chat.
- 5.File Sharing – The application should allow a user to share a file on his/her computer with a next user on the application or a group.
- 6.Voice Over IP – The application should allow a user to start a call (not video call) session with a next user of the application.
Please Note Data loss is a common occurrence in distributed systems and as such the server should through some means replicate any stored data, as well as be able to recreate an instance of itself after a failure or data loss.
Extra Marks
- 1.The application should allow a user to start a video call with a next user. (+30 marks).
- 2.The application should give live updates as to when a user log's on/off and when a user receives a message/call request. (+10 marks).