Thanks everyone in this forum. This forum helped me a lot. I passed with 150. My implementation details: . Implemented RMI . Modified Data class . Defined timeout for lock ( I don't think it contributed marks in server part) . Did not track client ID ( I think this is where I lost points in server part) . No dialog box for entering local/network mode, I implemented it through command line parameters . No client.jar/server.jar in the main jar file . No dynamic downloading of classes . Used comboboxes to enter origin and destination Thanks everybody once again.