Project 4  -Client/Server




Program Names: MultiThreadClient

MultiThreadServer (with an inner class named HandleClient)


Concepts covered in this project include graphics programming, client

server technology, and multithreading.

Design and code a server program and a client program – both with its

graphical user interface.

The client will send the rational equation to the server

The server will calculate the rational equation and send the result to the client.

The client will display the result in its window.

The server will handle multiple clients at the same time. The server uses

threads to handle the multiple clients simultaneously. The server will display

the client number, host name, and its IP address for each request from the


Documentation Tools: Use an UML class diagram, Javadocs and Pseudo code (or IPO chart). Also include documentation inside your program (you will lose points if your program is not well-documented).

Note: You must run the server first and then the client.

Some Possible Error Messages: Connection reset


See the attached Coding Styles for your program.

Sample of program run

AfterStarting the program

Hand In and Grading Criteria:

For grading submit the following items in a large envelope. Everything must be typed – no handwritten external documentation will be accepted.

· A cover sheet with your name, project number, and section

· Your program design – UML, Javadocs, and pseudocode or IPO chart (hard copies)

· A hard copy of the source files

· A hard Copy of the test cases stapled together with your name marked on top

· A hard copy of the program output

The following criteria will be used to grade your work.

· Program correctness – program runs successfully and as expected

· Adherence to specifications – appropriate control structures, modular design, etc

· Documentation – internal and external, meaningful variable names, etc

· Neatness / Organization – indentation, block formatting, etc

See the evaluation sheet attached to these specifications.

· You will be required to show the instructor that the programs are working.