Originally posted by Robert Wright:
I just got back a 100% score on part II/III. Many thanks to those in this group; you’ve been a great help to me.
Here’s my advice.
JUST GET STARTED. Don't spend a lot of time wondering how much detail or what patterns or things like that. This is a "learn by doing experience" not "learn by thinking". Move through the complete design several times, improving it on each pass. It's OK if the first pass is awful, just keep refining it. Don't be afraid to tear it apart and start over if that is what is needed. You'll be surprised how much you will learn about design just by doing it.
Document your design clearly. I had several pages of written documentation. I included:
-- My assumptions (there were many)
-- Naming conventions (I had a clear set of conventions that I followed throughout the project)
-- Explanations of how the classes interacted and what jobs they did
-- What patterns I had used
-- Brief justifications of design decisions
Read carefully through the doc and make sure that you actually address each requirement that they give you at some point. Don't skip anything. Look over the "ilities" (Scalability, Maintainability, Reliability, Availability, Extensibility, Manageability) and see how your design addresses these.
COMMUNICATE. I spent a lot of time making the drawings look good. Use the same font family for everything and limit the number of styles and sizes that you use. Go for a simple, clean look. Make sure EVERYTHING lines up down to the pixel. (I used SmartDraw for the drawings). I didn't put a whole lot in each drawing; I broke them down into logical sections. Make sure your written docs read well, are cleanly organized and have no typos. Write, edit, re-write and edit again. Don't use any unnecessary verbiage. Make your English teacher proud. A major part of the job of an architect is to COMMUNICATE his design effectively. The person you have to communicate this design to is the examiner. MAKE THEIR JOB EASY.
Go over your materials for part I and apply them to part II. You will find a lot of things you can use.
I did everything "The Java Way," using patterns and solutions extracted from Sun documentation. I mostly did this because I treated the whole thing as a learning exercise. If I ran into a problem that I didn't know how to solve, I looked at the approaches taken in the Sun docs. I was always able to find a pattern that made sense to me (even within the Sun docs there is often more than one way to solve a problem.) Use the solutions that others have developed, don't just mis-understand what others have done and then spin off into "creative solutions."
Think things out for yourself. Can't decide whether to store client state in HTTPSession or Stateful Session Beans? How did others do it? What are the arguments for each approach? How do they affect your design? Work it out, make your decision and then put your reasons in your docs.
My best advice is to make a clear, well-organized presentation of a design that you feel confident in.
This was the best set of notes that I found.
You will probably have to join this Yahoo group to get access, it's free and it's a good group.
Don't get too fancy with your UML. Keep it simple. Spend some time checking over the UML in your diagrams and make sure it's "by the book."
This is the Sun study guide. It's not everything you need but it's worth the price.
Core J2EE Patterns
This one was very useful. Read all the design patterns in the book and understand them. See if you can apply them to your design. Mention in your documentation that you are using the pattern. Don't just use patterns just because you feel you have to. Find patterns that actually improve the design and use them.
These are some very good presentation slides that outline the Pet Store Architecture. Go over these carefully and find things to apply to your design. If you get stumped as to how to solve a particular problem, take a look at these.
Originally posted by Yogesh Deshpande:
Can I ask you a question?How much experience you have in J2EE or IT as a whole?
Originally posted by Sanjeev Shahi:
Congrats and thanks for your advice. Qustion
Book 2 metioned in following site
Book 2: Designing Enterprise Applications with the Java2 Platform, Enterprise Edition (Sun Microsystems Press). This book is a fairly easy read, and is the SUN BIBLE on architecturing J2EE applications. I would call you A FOOL if your submission did not follow the basic approaches detailed in the book (even if you don't agree with them.) The way I look at it, there is NO WAY Sun can fail your submission when you base it heavily on there own architecture book.
Is it free downloadable from internet If yes could you please send me an url for that.
thanks for your help.