Enterprise Architect

Concepts
-
Draw UML Diagrams
- Interpret UML diagrams.
- State the effect of encapsulation, inheritance, and use of interfaces on architectural
characteristics.

Common Architectures
-
Recognize the effect on each of the following characteristics of two tier, three tier and
multi-tier architectures: scalability maintainability, reliability, availability,
extensibility, performance, manageability, and security.
- Recognize the effect of each of the following characteristics on J2EE technology: scalability
maintainability, reliability, availability, extensibility, performance, manageability, and
security.
- Given an architecture described in terms of network layout, list benefits and potential
weaknesses associated with it.

Legacy Connectivity
-
Distinguish appropriate from inappropriate techniques for providing access to a legacy system
from Java code given an outline description of that legacy system

Enterprise JavaBeans Technology
-
List the required classes/interfaces that must be provided for an EJB technology.
- Distinguish stateful and stateless Session beans.
- Distinguish Session and Entity beans.
- Recognize appropriate uses for Entity, Stateful Session, and Stateless Session beans.
- State benefits and costs of Container Managed Persistence.
- State the transactional behavior in a given scenario for an enterprise bean method with a
specified transactional deployment descriptor.
- Given a requirement specification detailing security and flexibility needs, identify
architectures that would fulfill those requirements.
- Identify costs and benefits of using an intermediate data-access object between an entity bean
and the data resource.

Enterprise JavaBeans Container Model
-
State the benefits of bean pooling in an EJB container.
- State the benefits of Passivation in an EJB container.
- State the benefit of monitoring of resources in an EJB container.
- Explain how the EJB container does lifecycle management and has the capability to increase
scalability.

Protocols
-
Given a scenario description, distinguish appropriate from inappropriate protocols to
implement that scenario.
- Identify a protocol, given a list of some of its features, where the protocol is one of the
following: HTTP, HTTPS, IIOP, JRMP.
- Select from a list, common firewall features that might interfere with the normal operation of
a given protocol.

Applicability of J2EE Technology
-
Select from a list those application aspects that are suited to implementation using J2EE.
- Select from a list those application aspects that are suited to implementation using EJB.
- Identify suitable J2EE technologies for the implementation of specified application aspects.

Design Patterns
-
From a list, select the most appropriate design pattern for a given scenario. Patterns will be
limited to those documented in Gamma et al. and named using the names given in that book.
- State the benefits of using design patterns.
- State the name of a design pattern (for example, Gamma) given the UML diagram and/or a brief
description of the pattern's functionality.
- Select from a list benefits of a specified design pattern (for example, Gamma).
- Identify the design pattern associated with a specified J2EE feature

Messaging
-
Identify scenarios that are appropriate to implementation using messaging, EJB, or both.
- List benefits of synchronous and asynchronous messaging.
- Select scenarios from a list that are appropriate to implementation using synchronous and
asynchronous messaging.

Internationalization
-
State three aspects of any application that might need to be varied or customized in different
deployment locales.
- Match the following features of the Java 2 platform with descriptions of their functionality,
purpose or typical uses: Properties, Locale, ResourceBundle, Unicode, java.text package,
InputStreamReader and OutputStreamWriter.

Security
-
Select from a list security restrictions that Java 2 environments normally impose on applets
running in a browser.
- Given an architectural system specification, identify appropriate locations for implementation
of specified security features, and select suitable technologies for implementation of those
features.