"A script enabled browser is required for this page to function properly"

Sun Certification

Sun Certified Enterprise Architect for the Java Platform, Enterprise Edition 5

Sample Questions

SECTION: 1: 1: Application Design Concepts and Principles
OBJECTIVE: 1.1: Explain the main advantages of an object oriented approach to system design including the effect of encapsulation, inheritance, delegation, and the use of interfaces, on architectural characteristics.
1) You are the architect of a new web application that must support a wide variety of requests with the potential that each request can have varying degrees of specialized logic. This system must support a flexible and extensible mechanism for your developers to add request logic.

Which design implementation should be selected to maximize flexibly and extensibility?

a) Implement a controller object to perform action management.
b) Implement a front controller with a command handler. (*)
c) Implement command objects and import them onto all JSP pages.
d) Implement scriptlets with page specific logic embedded into all JSP pages.

REFERENCE:
Core J2EE design patterns - Front Controller/Command Handler  (Alur, Crupi, Malks)
Option B is correct.
Option A is incorrect because just a controller alone is not the best solution for extensibility.
Option C is incorrect because command objects are correct but importing on each JSP page is not appropriate for this solution. It does not address flexibility or extensibility.
Option D is incorrect because embedding logic in JSP pages allows for the least amount of flexibility.

SECTION: 2: 2: Common Architectures
OBJECTIVE: 2.1: Explain the advantages and disadvantages of two-tier architectures when examined under the following topics: scalability, maintainability, reliability, availability, extensibility, performance, manageability, and security.
2) Your organization has a legacy thick-client application. The issue is that the presentation and business logic are currently coupled. A change in presentation logic requires a change in business logic. A suggestion is to re-factor this into a three-tier application and separate the business logic from the presentation logic.

What non-functional requirement would you improve by separating the presentation layer from the business layers?

a) Security
b) Response Time
c) Manageability
d) Maintainability (*)
e) Performance

REFERENCE:
Practical Software Estimation: (M. A. Parthasarathy)
Option D is correct.
Option A is incorrect because securing a one-tier application is generally easier than securing a three-tier application. With a three-tier you need to secure the web server, application server, and database.
Option C is incorrect because manageability of one-tier application is generally easier than tree-tier application. With a three-tier you need to manage the health the web server, application server, and database.
Options B, E are incorrect because performance and response time of a one-tier system should be better than a three-tier. With a three-tier application the request/response cycle includes a web server, application server, and database.

SECTION: 3: 3: Integration and Messaging
OBJECTIVE: 3.1: Explain possible approaches for communicating with an external system from a Java EE-based system given an outline description of those systems and outline the benefits and drawbacks of each approach.
3) You organization has numerous Java applications on their internal network that must send daily updates to their inventory tracking system. It is important to keep the inventory system current. If the inventory system is unavailable when it restarts, it must be able to process and maintain all updates.

How should the inventory system receive these updates?

a) As a JMS durable subscriber. (*)
b) Using XML over HTTP.
c) Using SOAP over HTTP.
d) Using EJB3 and Java Persistence API.

REFERENCE:
The Java EE 5 Tutorial - The Java Series Enterprise Edition - Third Edition.
Option A is correct.
Options B, C, D are incorrect because JMS is the only implementation that can guarantee message delivery.

SECTION: 4: 4: Business Tier Technologies
OBJECTIVE: 4.1: Explain and contrast uses for Entity Beans, Entity Classes, Stateful and Stateless Session Beans, and Message Driven Beans. Understand the advantages and disadvantages of each type.
4) Your organization is interested in building an application that will allow users to query and read volumes of statistical data for analysis. They anticipate high volumes of traffic and want the most scalable solution. This application will be distributed in a cluster and deployed as an enterprise archive. Components should be designed so that they can be accessed remotely by other Java applications.

What Java EE component type and remote access technology is correct for this architecture?

a) Servlet accessed using HTTP.
b) Message-driven bean accessed using JMS.
c) Stateless session bean accessed using RMI. (*)
d) Stored procedures and DAO's.

REFERENCE:
The Java EE 5 Tutorial - The Java Series Enterprise Edition - Third Edition.
Option D is correct.
Option A is incorrect because this is not the most scalable solution.
Option B is incorrect because this not a workflow application and requires remote accessibility.
Option D is incorrect because this is not the most scalable solution.

SECTION: 5: 5: Web Tier Technologies
OBJECTIVE: 5.1: State the benefits and drawbacks of adopting a web framework in designing a Java EE application
5) You are building a new website that presents certain GUI controls and data on multiple pages.

Which two will you implement to prevent redundant GUI code?  (Choose two.)

a) Use a business delegate to decouple the GUI from the business service.
b) Use a service locator to locate business services.
c) Access the data using JDBC.
d) Use templates to create composite view components. (*)
e) Custom Tag Libraries. (*)
f) Use Model-View-Controller.

REFERENCE:
Core J2EE Patterns Second Edition: (Alur, Crupi, Malks)
Options  D, E are correct.
Options A, B, C, F are incorrect because they do not deal with the GUI.

SECTION: 6: 6: Applicability of Java EE Technology
OBJECTIVE: 6.1: Given a specified business problem, design a modular solution implemented using Java EE which solves that business problem.
6) You are architecting a new web deployed portfolio management application. In the current system, the Portfolio Managers have a desktop application running on their local PCs, and you want to implement the new solution with a GUI that is similar to their desktop application. Once the users have set up and approved a portfolio, you must use a Web service to send the trade to a fund trading system.

What two technologies are required for this new application?  (Choose two.)

a) JAX-WS (*)
b) JMS
c) JSSE
d) JCE
e) JSP
f) JSF (*)

REFERENCE:
JSF 1.2 spec.
Options A, F are correct.
Options B, C, D are incorrect because they are not indicated by the requirements.
Option E is incorrect because it could be used, but only by adding Ajax, which is not mentioned in the requirements.

SECTION: 7: 7: Patterns
OBJECTIVE: 7.1: From a list, select the most appropriate pattern for a given scenario. Patterns are limited to those documented in the book - Alur, Crupi and Malks. Core J2EE Patterns: Best Practices and Design Strategies 2nd Edition, 2003. and named using the names given in that book.
7) You are architecting a new Change Request management system using asynchronous messaging. You have chosen to use a message-driven bean (MDB) to receive the message, interpret the client request, and locate the appropriate business service to handle the request.

What design pattern is this an example of?

a) Transfer Object Assembler
b) Service Locator
c) Service to Worker
d) Service Activator (*)
e) Web Service Broker

REFERENCE:
Core J2EE Patterns Second Edition: (Alur, Crupi, Malks)
Option D is correct.
Option A is incorrect because that creates an aggregate transfer object.
Option B is incorrect because it is not asynchronous.
Option C is incorrect because it does not address the requirements.
Option E is incorrect because we are not using Web Services.

SECTION: 8: 8: Security
OBJECTIVE: 8.1: Explain the client-side security model for the Java SE environment, including the Web Start and applet deployment modes.
8) A company is trying to cause chaos by sending out an unsigned applet that is loaded via the net.

What action can the applet take to cause untold destruction?

a) Access file directories on the local machine.
b) Access load libraries on the local machine.
c) Make network connections to another web server.
d) Use excessive amounts of CPU time. (*)

REFERENCE:
http://java.sun.com/sfaq/
Option D is correct.
Options A, B, C are incorrect because they are prevented by the sandbox.