Materials for parts 2/3 are the same as for part 1.
Depending on your assignment, you may need to use JMS, EJB, web service, JSF, JPA, etc
As you may have guessed, any technology that is part of Java EE platform can be used. Through part 1 learning, you ought to know the tradeoffs of some technologies such as JSF vs JSP, stateless vs stateful EJB.
Knowing why and when to use such and such will help for part 2/3.
If you are not familiar with UML, it's time to learn it and get familiar with one of the many UML software.
The list of books to read for Part 2 & 3 given in SEAFaq link is huge, I read all these books in bits and pieces from time to time, do i need to read them thoroughly in order to pass these exams or just refer them when needed.?
Since you got the assignment, time is an essence since you got 6 months.
Start with the domain model, understand that make that part in the class diagram including the relationships.
Then go to the use cases, go through them get the similarities and differences. Then choose one of them and drill down the detail from web/presentation -> business -> integration tiers. As you do this for each use case, add them to the class diagram and make that sequence diagram. The more detail the flow, the better it is for you to see to develop it (if that was the case).
Repeat this step for X use cases and after the first round, you should have a decent class diagram AND sequence diagrams.
Oh while doing all that, document your risks and assumptions, and other things eg patterns, NFR in your HTMLs.
After the initial round, review it to see if it makes sense and clear. If not enhance it accordingly.
When you are happy with the class and sequence diagrams, do the component diagram which is a higher-level diagram of the class diagram.
Good luck and happy drawing.
Lastly the deployment diagram taking into those NFR like availability & scalability.
I am also very confused about where to show the Security and JMS related concepts, i am clear about the class diagrams where we specify the attributes of a particular subject, for example, i look for the nouns in the description and make them as class and identify the attributes of these classes. then i try to find out the relationship between these objects(classes).
Like you said after identifying these i'll look through the use cases and understand the flow and create the sequence diagram.
In the sequence diagram i'll specify the flow of a request from the UI layer -> web layer -> business layer -> integration layer -> domain layer (please correct me if i am wrong)
i am somewhat clear about these above 2 tasks
but after this you mentioned that we should do the component diagram and then the deployment diagram.
so my question is in which diagram should i depict Security, JMS etc., should they be part of component diagram?
Sai Babu wrote:so my question is in which diagram should i depict Security, JMS etc., should they be part of component diagram?
If you have a class that does security or specific utilities stuff, then this class will be in the class diagram.
Security is a non-functional requirement. Mentioning it using text or comments in diagram will suffice. For example, if you are to use form-based authentication, say so in the deployment diagram between the web client and firewall.
JMS is component and somewhat deployment. Depending on how you setting up your JMS queue/topics (dedicate server, one per server working as cluster etc), you may have a component saying JMS which is part of a app server.
Component and deployment diagrams are fairly simple to do and they don't take much time. Class and sequence diagrams often make changes as you go through iterations.