After exactly 4 weeks to the day, my score was posted in the certification database:
General Considerations: 100 88
Documentation: 70 70
OOD: 30 30
GUI: 40 27
Locking: 80 80
Data Store: 40 40
Network Server: 40 40
This score came as quite a surprise to me, as shortly after uploading the assignment, I found quite a few things I wish I had done differently, including what I thought was a bug in my locking manager.
Most perplexing though was my GUI score. I had seen many other ranchers get this score, and so I decided to spend a little extra time on the GUI. I think that in order to get full points, the search would need to be more flexible (i.e. checkbox for case sensitive search, etc), and possibly a user friendly JTable (sorting by column, etc). I also did not implement the Observer
pattern as in Monkhouse's DVD project.
As for General Considerations, well, if I knew what that meant, then I might have a chance of figuring out what I didn't do properly...
These are the tools I used and would recommend to anyone:
1. Eclipse (I used Mac OSX, which means
Java 5)
2.
Ant to automate the build, rmic, javadoc, packaging, etc
3.
Testing classes to test locking and concurrency
4. Head First Design Patterns
5. Effective Java
6. Monkhouse/Camerlingo
SCJD book
By far one of the most useful tools I found on this site was the testing harness to bombard your app with threads calling random sequences of create, update, etc. If written correctly, this will expose a lot of potential problems with threading and locking.
I read Monkhouse's book and tore apart the sample code. The DVD project is a lot more complicated than your project needs to be, so instead of using that application as a template, I would say make your solution as lean and simple as possible, drawing on the DVD project for some implementation ideas.
As for the essay test, it really is no sweat. Mine was 4 questions that I could have answered in my sleep and elaborated on indefinitely. Here is a great site to help you prepare:
http://www.informit.com/articles/article.aspx?p=101594&redir=1&rl=1 Special Thanks: To Andrew/Terry again for the great book. To Bert/Kathy for HFDP and the
SCJP book. And most of all to all the fellow ranchers for their suggestions and ideas.
As a side note, I am now preparing for SCWCD with Bert/Kathy's HF book. One thing that was awesome, is that the MVC architecture of my SCJD project allowed me to transform it into a web application very easily by swapping out the Controller with
Servlets, and using JSP/HTML instead of the Swing JTable. I am now building on to the project chapter by chapter and learning a lot about JSP/Servlets in the process.
All in all this was a solid learning experience, I really enjoyed working on the project.
Any ranchers feel free to ask me for any advice, etc. Seeing as this is my first post, I realize that it is time to start giving back to the community.
Good luck to all!
B.T.