aspose file tools*
The moose likes Architect Certification (SCEA/OCMJEA) and the fly likes Clarifications on Requirements for - Part II Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


Win a copy of Spring in Action this week in the Spring forum!
JavaRanch » Java Forums » Certification » Architect Certification (SCEA/OCMJEA)
Bookmark "Clarifications on Requirements for - Part II" Watch "Clarifications on Requirements for - Part II" New topic
Author

Clarifications on Requirements for - Part II

Sam Gehouse
Ranch Hand

Joined: Jul 21, 2003
Posts: 281
I will appreciate your input on the questions below.

Question 1) Is my understanding below correct?

Travel Agent : Uses thick client Java app for Freq Flyer and Booking Travel.

Customer : Uses web client for Freq Flyer, Booking Travel and Payment.

Is this correct?

Question 2) What client (web or thick) does the Travel Agent use for making payment for the customer.

The requirement says that the new TransMaster payemnt system will use XML-RPC over HTTPS.

Does that mean that the Travel Agent will switch to web client for making payment for the Customer? Or, should the Customer use thick client for making payment?

3) If the Travel Agent has to use thick client (Swing) for making payment, is it sufficient to mention that the Swing client will use JSSE?

What would be other approaches to connect to TransMaster payment system securely from the Swing client?

4) Need your opinion on if it is still needed to show Business Delegate for each of the apps (web and Swing)?

The web client app (created for Customer) and Swing client app (created for Customers) are two separate apps. These two apps are deployed separately.

My design is:

UI -> Controller -> StatelessSessionEJB (SLSB)->DAO.

For web app (used by Customers), UI is JSP, and Controller is Servlet.
For non-web thick client (used by Travel Agent), UI is Swing and Controller is POJO. However, both the Swing app and web app use the same SLSB and DAO.

Is there still any need to introduce Business Delegate in between UI and Controller for each of the web app and the Swing app?

Business Delegate does decoupling of presentation and SLSB. I believe that my Controller does that. Business delegate is the strong solution if different flavors of UI clients (e.g. thick client, web and others) try to connect to SLSB (stateless Session EJB). However, as both the apps (Swing and web) are deployed separately, do I still have any need to show Delegate pattern for each of the apps (Swing and web)?

5) Do I need to show UI classes in Class diagram?

The UI classes are JSP for web and Swing for thick client. As I read the difference between class and Componet diagram,it is valid to show JSP in Component diagram. In the same token, it is valid to show Swing classes in Class diagram.

That being said, should I show UI components in both Class and Componet Diagram?

In Class diagram, the UI would refer to Swing classes. In Component diagram, the UI would refer to JSP.

Is my assumption correct?

6) Are both Travel Agent and ustomer ators for all the 4 Use Cases (for which Sequence Diagrams need to be drawn)?

I ask the question because, the the Brief Description says the actor is both Travel Agent and Customer. In the Flow of Events, it only mentions Customer.

7) Can I show all the other classes (Controller, DAO, SLSB etc.) in the Class diagram?

Or, does the Class diagram require me to show only the domain types classes and their extensions only?
Yi Meng
Ranch Hand

Joined: May 07, 2003
Posts: 270
Originally posted by Sam Gehouse:
I will appreciate your input on the questions below.

Question 1) Is my understanding below correct?

Travel Agent : Uses thick client Java app for Freq Flyer and Booking Travel.

Customer : Uses web client for Freq Flyer, Booking Travel and Payment.

Is this correct?

Question 2) What client (web or thick) does the Travel Agent use for making payment for the customer.

The requirement says that the new TransMaster payemnt system will use XML-RPC over HTTPS.

Does that mean that the Travel Agent will switch to web client for making payment for the Customer? Or, should the Customer use thick client for making payment??


HTTPS has nothing to do with web client. And it does not seem logical for the travel agent to switch between systems.

3) If the Travel Agent has to use thick client (Swing) for making payment, is it sufficient to mention that the Swing client will use JSSE?

What would be other approaches to connect to TransMaster payment system securely from the Swing client?


I would say yes, typically an HttpUrlConnection will do.

4) Need your opinion on if it is still needed to show Business Delegate for each of the apps (web and Swing)?

The web client app (created for Customer) and Swing client app (created for Customers) are two separate apps. These two apps are deployed separately.

My design is:

UI -> Controller -> StatelessSessionEJB (SLSB)->DAO.

For web app (used by Customers), UI is JSP, and Controller is Servlet.
For non-web thick client (used by Travel Agent), UI is Swing and Controller is POJO. However, both the Swing app and web app use the same SLSB and DAO.

Is there still any need to introduce Business Delegate in between UI and Controller for each of the web app and the Swing app?

Business Delegate does decoupling of presentation and SLSB. I believe that my Controller does that. Business delegate is the strong solution if different flavors of UI clients (e.g. thick client, web and others) try to connect to SLSB (stateless Session EJB). However, as both the apps (Swing and web) are deployed separately, do I still have any need to show Delegate pattern for each of the apps (Swing and web)?


You have to make your own decision and justify whether or not to use the Business Delegate pattern and clearly state it in your submission. As for whether or not to show it in the diagrams, i would say optional.


5) Do I need to show UI classes in Class diagram?

The UI classes are JSP for web and Swing for thick client. As I read the difference between class and Componet diagram,it is valid to show JSP in Component diagram. In the same token, it is valid to show Swing classes in Class diagram.

That being said, should I show UI components in both Class and Componet Diagram?

In Class diagram, the UI would refer to Swing classes. In Component diagram, the UI would refer to JSP.

Is my assumption correct?

i would say optional....nothing much as UI implementations are pretty standard. The technologies themselves are well architected for implementation.


6) Are both Travel Agent and ustomer ators for all the 4 Use Cases (for which Sequence Diagrams need to be drawn)?

I ask the question because, the the Brief Description says the actor is both Travel Agent and Customer. In the Flow of Events, it only mentions Customer.

From the system point of view, there is no difference between Travel Agent and Customer, just that they act through different UI.

7) Can I show all the other classes (Controller, DAO, SLSB etc.) in the Class diagram?

Or, does the Class diagram require me to show only the domain types classes and their extensions only?

I think Cade's diagrams are excellent for this certification
[ May 07, 2007: Message edited by: Yi Meng ]

Meng Yi
 
I agree. Here's the link: http://aspose.com/file-tools
 
subject: Clarifications on Requirements for - Part II