This week's book giveaway is in the OCAJP 8 forum. We're giving away four copies of OCA Java SE 8 Programmer I Study Guide and have Edward Finegan & Robert Liguori on-line! See this thread for details.
It took me a loooooong time to complete the whole thing - the better the feeling when it's finally completed.
I guess the effective time working on the assignement must have been 200 hours, but I spent a lot of time besides in readings, tutorials and prototypes. Professionnally, I'm not writing a lot of Java (I'm mostly in the databases fields) and I had a pretty steep learning curve.
Score in details:
General Considerations (maximum = 100): 100 Documentation (maximum = 70): 70 O-O Design (maximum = 30): 30 GUI (maximum = 40): 31 Locking (maximum = 80): 80 Data store (maximum = 40): 40 Network server (maximum = 40): 30
Javaranch threads helped me a lot. And, of course, Andrew Monkhouse and Terry Camerlengo's SCJD Exam with J2SE 5.
I ended up with 41 classes and about 4300 lines of code (incl. comments and javadoc comments, which I made pretty extensively).
Main patterns used: factory (whenever needed), adapter (to bridge the client/server to the RMI server), and singleton (for the class accessing the database file and the one keeping track of the locked records). All of this has already been pretty much discussed in this forum, and I did not bring any revolution, so I won't go into the details. Read Andrew Monhouse's book !
I was glad about the good scores in the doc, because I invested pretty much in explaining my choices and assumptions, and also in my userdoc. Both results in 22kb text files each. I also tryied to make the Javadoc as complete as possible.
I don't know where I lost points in the GUI and in the network server, but this could be that I was penalized for not implementing all the methods in the interface provided - there is a pretty long discussion on this forum about this aspect of the assignment on this thread: