• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Tim Cooke
  • paul wheaton
  • Paul Clapham
  • Ron McLeod
Sheriffs:
  • Jeanne Boyarsky
  • Liutauras Vilda
Saloon Keepers:
  • Tim Holloway
  • Carey Brown
  • Roland Mueller
  • Piet Souris
Bartenders:

Passed SCJD - 354 /400

 
Ranch Hand
Posts: 288
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hi all,
Having been give an automatic failure originally due to a JDK version mix up ( I submitted it for the Java 6 platform about four days after it was released in December, see my Automatic Failure thread)

I received the good news today that I passed the SCJD exam with a score of 354 / 400. I am a little disappointed with the score but having waited so long I am just glad to have passed . I lost nine marks for the GUI and also I got the mysterious 44/80 score for locking seem to be a very common. The score breakdown is as follows.

The maximum possible score is 400;
the minimum to pass is 320.
General Considerations (maximum = 100): 99
Documentation (maximum = 70): 70
O-O Design (maximum = 30): 30
GUI (maximum = 40): 31
Locking (maximum = 80): 44
Data store (maximum = 40): 40
Network server (maximum = 40): 40

Thanks to all ranchers I got alot of great ideas and advice from everybody here. the main book I used was Max's Java Developer exam with J2SE 1.4 even though it is Java 5 / 6 that must be used now the main ideas in the book are still excellent and relevant .

The main points of my design were as follows:

Three tiered approach with a data layer, business layer and a client GUI.

Data Implementation:
-LockManager class for handling locking
-Client lock identification based on thread ID (no cookies in assignment API)
-RecordSchema class to load and store record schema info from file header.
-DataHelper class to perform actual low level IO operations such as read and write to a file.
-ReadWrite Lock to ensure no dirty reads.
-Local RandomAccessFile objects instead of one single RAF
-Custom unchecked DataIOException for wrapping IOExceptions in Data methods.
-Throw IllegalArgumentException for invalid records, record numbers etc.
-Only data validation was that record field are correct length as per schema and contained ASCII data. (No date validation etc - keeps Data class generic)
-No discernable primary key therefore no DuplicateKey exceptions thrown by create method.

Business Layer
-Fa�ade class for booking and searching methods.
-Perform application specific data validation here (48hr rule, valid ownerID etc).
-Client friendly custom Exceptions (BookingExceptions, SearchException)
-Value object to provide Object oriented wrapper for database records.



Network Layer
-RMI used for network protocol.
-UnicastRemoteObject instance as Remote server basically an RMI wrapper class for a local Fa�ade object. Same methods, interface etc.
-Connection Manager factory class for creating local or remote DB connections

Server
-Very simple server GUI with a shutdown button and a text area.

GUI
-MVC pattern
-All booked and available rooms on or after today�s date displayed on startup.
-Simple GUI with text fields for book and search.
-Keyboard Mnemonics for all buttons and menus.
-Custom TableModel implementation
-Custom properties JDialog that shows the properties relevant to the mode the applications.
-The default search option is a case insensitive, starts with search. In the search menu items using the search properties dialog this can be configured to be a case sensitive and / or an exact match search.
-Panel for searching on top of GUI.
-Large Centered JTable to display the rooms.
-Book Button in bottom right corner. Button is disabled when no room is selected.
-JDialog used to input the customer ID for booking a room.
-If the booking action is successful the table is automatically updated
-Menubar with options to quit, connect, disconnect, edit search options and edit connection settings.
-The properties for the current mode may be edited by selecting the appropriate item from the file menu.

Thanks again everybody!
Regards,
Mark.
 
Greenhorn
Posts: 11
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Good job Mark. Congrats!
 
Ranch Hand
Posts: 7729
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Congratulations. Some nice news to start the weekend with.
 
Ranch Hand
Posts: 92
Android Eclipse IDE Suse
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hi Mark,

Congratulations!
I'm very glad for you that after all this time you finally got your results.
Thanks for your detailed post.

Regards,

Romeo
 
Ranch Hand
Posts: 59
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Congratulations Mark!

This is great news.
It is really painful when you have to suffer because of something illegitimate. It was not expected from icon like Sun.

Wish you all the best!!

-Shafiuqe
 
Ranch Hand
Posts: 329
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Congratulations!!
 
Ranch Hand
Posts: 232
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
My best wishes.
 
Ranch Hand
Posts: 361
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Congratulations,
 
Ranch Hand
Posts: 223
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Glad to hear you passed after all that mess!
 
Ranch Hand
Posts: 65
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Very glad to hear that you finally got what you deserve

Best,
Chulwoo
 
Lucy Hummel
Ranch Hand
Posts: 232
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hi Mark,

To make sure you passed with Java version 1.6?

Reason for asking I want to submit my solution and use 1.6 and I have not found anyone who passed with 1.6.
 
Mark Smyth
Ranch Hand
Posts: 288
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Originally posted by Hummel Lucy:
Hi Mark,

To make sure you passed with Java version 1.6?

Reason for asking I want to submit my solution and use 1.6 and I have not found anyone who passed with 1.6.



Yes it was java version 6 I used to submit the assignment, I do know of a few other who have also suceded with this version.
 
Lucy Hummel
Ranch Hand
Posts: 232
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hi Mark,

Thanks for answering. So I am going to try version 1.6 to pass my exam.
 
Mark Smyth
Ranch Hand
Posts: 288
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Originally posted by Hummel Lucy:
Hi Mark,

Thanks for answering. So I am going to try version 1.6 to pass my exam.



Best of luck, you must be very near to completion?
reply
    Bookmark Topic Watch Topic
  • New Topic