Proposal:
I have already implemented a similar project when I was a student.
Basically, the project contains the following part:
- Client (or process), which can send, receive and add other client
- SimulatedSocket, which is used by the above client to send/receive message
- Network, which contains the message queue, and which will return the next message
when the SimulatedSocket call receive() method. Message will be stored in a PriorityQueue, which based on time.
It makes sure that the message order are always corrects.
- Main Class: To run the project
I can also provide you with the report (see link for sample). It's in french, but it will definitely give you some idea.
[login to view URL]
You will also have the javadoc like this:
[login to view URL]