This week's giveaway is in the Testing forum.
We're giving away four copies of TDD for a Shopping Website LiveProject and have Steven Solomon on-line!
See this thread for details.
Win a copy of TDD for a Shopping Website LiveProject this week in the Testing forum!

Diego Amicabile

+ Follow
since Sep 12, 2004
Cows and Likes
Total received
In last 30 days
Total given
Total received
Received in last 30 days
Total given
Given in last 30 days
Forums and Threads
Scavenger Hunt
expand Ranch Hand Scavenger Hunt
expand Greenhorn Scavenger Hunt

Recent posts by Diego Amicabile

At last I am getting around to posting some details about my solution

My background : I have several years experience in J2EE. Apart from real-world experience, I have been studying pretty thoroughly the theory (see the SCEA books listed here) and the examples (e.g. the petstore application). All of this is in my opinion an absolute must if you want to pass the exam.

Don't ask me how long it took. Too long.

I made one class diagram, one component diagram and 10 sequence diagrams. The sequence diagrams referred to other included sequence diagrams ( e.g. Select Customer, Select Itinerary)
To create the diagrams I used JUDE, but I regret that, since JUDE does not support UML 2.0 as good as I would have liked to. But I used comments as workarounds.

The class diagram contains 28 classes. No fields and no methods, but stereotypes (both in classes and associations), multiplicity and comments are there. I did like the "Processor" pattern and I also described here what is going to be an Entity or Stateless bean (as stereotypes)

The component diagram contains 20 components. As suggested many times in this forum, a component is a technological unit, so I have here components like "Front Controller", "Data Access Object" and so on, and in the comments I do write , for instance, what DAOs are actually going to be created.

The sequence diagrams are very detailed and I used the same approach as in the component diagram - objects who have similar functions (Views , Processors) are aggregated , and this is explained in the comments.

The assumptions document is 7 pages long. I created it using NVU. I wrote a short paragraph at the beginning where I explained the conventions I followed in the diagrams, and then a part I called "Application Structure", where in turn there are subparagraphs for every relevant part in the application (e.g. Beans, Daos, Clients, Views...) and where I explain in detail what might not be obvious looking at the diagrams.

That's all folks !
Comment: This report shows the total points that could have been awarded in each section and the actual amount of points you were awarded. This information is provided in order to give you feedback on your relative strengths on a section basis. The maximum number of points you could have received is 100, minimum to pass is 70. Class Diagram (44 maximum) .......................... 39 Component Diagram (44 maximum) ...................... 37 Sequence/Colloboration Diagrams (12 maximum) ........ 12

Details about my solution will follow
To Kumar As

You should have a look at the Context Object J2EE pattern. That is exactly what it is for.
On February 17 I cleared part I , 91%

It is kind of different from the other JAVA certifications, it is still multiple choice, but the answer is not always obvious and real-life experience does help a lot answering questions about architecture. If you have a solid foundation on Design Patterns , EJBS and UMLs, though, you should be able to answer most questions

These are the books I used for the exam :

Sun Certified Enterprise Architect for J2EE by Paul Allen and Joseph Bambara

UML Distilled by Martin Fowler

Design Patterns by Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides

Mastering Enterprise JavaBeans by Ed Roman, Scott Ambler and Tyler Jewell

I also did the mock exams on Javaqueries and checked the notes on the Java ranch, making sure that I looked up on the words I did not know ( Offboard server ? Guarded object ? ) on the net

I was a little tired but I passed with 91/100 . Now on to the second part ...
I am trying the mock exam at "Javaqueries", but when there are questions where you have to "exhibit" a small applet window appears and it contains nothing! I have tried both 1.5 and 1.4 Java and there was no difference. Do you have any idea why I can't "exhibit" ?
I found an explanation for that under

Sending messages requires visibility : a reference or pointer to the receiving object
�For an object A to send a message to an object B, B must be visible to A.�

Ways in which A can have visibility into B:
Attribute Visibility: B is an attribute of A
Parameter Visibility: is a parameter of a method of A
Local Visibility: B is a (non-parameter) local object in a method of A
Global visibility: B is in some way globally visible

so if B is associated to A, there is obviously attribute visibility. Not intuitive.


Originally posted by Jeroen Wenting:

And what should those things be?

I usually don't really lie on my resume, but interviews are another matter

Q: Why should I hire you?
A: I am the best person for the job (Everybody is)

Q :Are you a team player?
A : Very much so. (Everybody is. Why do they even ask?)

Q: Have you ever had a conflict with a boss or professor?
A: Just minor disagreements...

Q: What is your greatest weakness? (Enough said. That reminds me of a Dilbert joke)

Q: If I were to ask your professors to describe you, what would they say?
A: (Why don't you ask them?)

These are pretty common questions during an interview. Do you really believe you can answer all of them without ever telling a little lie ?
(I think some can, most can't)
And of course some of the little lies do creep into your resume.

But I guess all of you already know that and I read too much Pinocchio as a child
17 years ago

Sorry certifications even degree certificates can be faked.

I am banging my head against the wall, just thought I'd let you know

But ... if you want to make sure a certification or a degree is not fake, just ask the source You can make Sun publish your certification results.
[ April 04, 2005: Message edited by: Diego Amicabile ]
17 years ago
There are things you can't lie about (certifications, degrees, and so on)

There are things you SHOULD lie about, unless you have a very perfect record.

My 2 cents
17 years ago
RAJ : I did browse through the EJB 2.0 spec , but I mostly used it only
for reference when I did not understand a mock question or the Mikalai Zaikin's SCBCD Guide
Gemini : Yeah, "Tasks" are the drag and drop questions. I thought you could review your answer without deleting it, and I think this is the case in the Enthuware and SoftSBCD mock exams. But not in the "real" thing!
Maybe that cost me a couple of points since I did not bother reviewing when I found out.
I am happy with my score anyway
17 years ago
Today I passed SCBCD. I used the EJB 2.0 specification, the Mikalai Zaikin's SCBCD Guide, the book Mastering EJBs from Ed Roman, and the mock Exams from SOFTSBCD and Enthuware.

What annoyed me a little during the exam is that when you have to re-open a "task" window everything that you had entered before is gone. So don't leave the "task" window unless you are sure that you have done it right, since you won't have the opportunity to review it later.

[ April 04, 2005: Message edited by: Diego Amicabile ]
17 years ago
Assume my EJB has an helper class, which reads and writes static fields.
Would that be wrong?

I think I know the answer, but I have been using static fields in my helper classes for a long time now and things always worked fine

Well, you live, you certify and learn
Personally, I think the SCBCD Study Guide from Mikalai Zaikin rules

From Mikalai Zaikin' SBCD Study guide, 12.0

QUOTE: An application exception thrown by an enterprise bean instance should NOT automatically rollback a client's transaction. The client should typically be given a chance to recover a transaction from an application exception.

Ok, but...

QUOTE : An unexpected exception that may have left the instance's state variables and/or underlying persistent data in an inconsistent state can be handled safely.

I miss the point here Does it mean that the client may do the rollback himself when an unexpected application exception happens in the bean, and may also catch the exception and ignore it ?

Diego Amicabile