Here is the breakdown...
General Considerations(maximum = 72): 57
Documentation(maximum = 10): 7
Object-Oriented Design(maximum = 6): 6
GUI(maximum = 20): 20
Data conversion program(maximum = 10): 10
Server(maximum = 37): 35
My project was the Fly By Night reservation system. I used serialized objects over TCP/IP for communication.
Even though I viewed this cert as a 'fun' coding project, I still stuck to fundamental design procedures and concepts and approached the project just as I would approach a real-world project. I spent many hours working on the design of the client and server and the interface for communication between the two. I only spent about 1.5 weeks on coding, and about 1 week on
testing and packaging. The design phase took about 1 month, but it really went a long way because I had absolutely no coding conflicts during implementation; designing something right really does work.
Here is my system view.
I kept the client simple. It works the same regardless of connection type (remote/local). The specifics to handle remotely or locally connected clients are contained in appropriate adapter classes (RemoteConnectionAdapter,LocalConnectionAdapter), which the client GUI makes use of.
I also gave no consideration for future client (GUI) updates, even though the specification requires it, because I had a feeling that the examiners would not deduct many points if it was missing. I was right since I got a perfect score on the GUI.
From the servers perspective, local and remote clients are treated the same through the ClientHandlerThread interface. The specifics to handle a remote or local client are contained in the appropriate class that implements the ClientHandlerThread interface, namely RemoteClientHandlerThread and LocalClientHandlerThread.
I created online help and linked my Javadocs, user guides, and system architecture docs to them.(cant see why I did'nt get a perfect score on this)
When I packaged my jar, I created scripts to run the client, server, and conversion tool on DOS and UNIX because I was not sure of the platform the examiners would be using.
And that's that! Next is the UML 486 test!
SAF