Study Tips for Sun Certified Enterprise Architect (SCEA) Exam
18 May 2010 in articles by Clara Ko
It’s been a year since I attended a bootcamp for Sun Certified Enterprise Architect and I noticed that I never published these study tips. The course went from fundamental architectural concepts to using current Java technology to design software.
I really liked learning the SunTone Architecture Methodology – specifically the SunTone cube, which helped me visualize and make connections to infrastructure. What I liked less is the focus on Java design patterns, some of which are outdated, and a focus on (although a little understandably) Sun technology. The problem is these days – knowing the Sun way of doing things (EJB3, JSF, etc) is not the only choice. There is definitely a gap there for a more comprehensive Java Architecture course that comprises of all mainstream Java technology and help make the choices between them. Overall, I found that it was a good opportunity to focus and learn for a week on architecture and design. I’m glad to find that UML is still relevant in the face of agile development, although people haven’t talked about it much in more than 10 years.
SunTone Architecture Methodology
To aid in the development of enterprise applications, Sun Java Center formulated the SunTone Architecture Methodology (SunTone AM) in the late 90′s. Enhancing RUP with the SunTone cube, it has now evolved to have more agile influences. SunTone AM introduced the SunTone cube to describe primary concerns in enterprise applications. The three faces on the cube represented layers, tiers, and systemic qualities.
Layers
Layers are usually in the domain of infrastructure architects, where the application sits on top of infrastructure components.
- Application – software
- Virtual Platform – interfaces to the middleware for decoupling
- Application Infrastructure – middleware
- Enterprise Services – OS
- Compute & Storage – hardware
- Network Infrastructure – network
Tiers
Tiers are well-known to application architects. They describe how an application is decomposed into modules to reduce coupling and enhance system flexibility. Annoyingly, tiers are sometimes called layers, when not in the context of SunTone.
- Client Tier – browsers, standalone clients
- Web Presentation Tier – HTTP requests
- Business Tier
- Integration Tier – interfaces with resources
- Resource Tier – DBMS, mainframe, EIS
Systemic Qualities
Systemic qualities help establish the quality of service that a system can deliver. Different systemic qualities impose different constraints on the design of a system. This list correlates to Non-Functional Requirements (NFR) that when prioritized help make choices in system design that take quality, time, and costs into consideration.
- Manifest Qualities
- Performance
- Reliability
- Availability
- Usability
- Operational Qualities
- Throughput
- Manageability
- Security
- Serviceability
- Testability
- Developmental Qualities
- Realizability
- Planability
- Evolutionary Qualities
- Scability
- Maintainability
- Extensibility
- Flexibility
The Multiple Choice Exam
A lot of passing the exam has to do with learning the terminology.
The multiple choice exam tests knowledge from roughly 8 areas:
- Application Design Concepts + Principles
- encapsulation, inheritance, separation of concerns
- Common Architectures
- 2-tier, 3-tier, multi-tier, rich clients vs. browser/thin clients, web services
- Integration + Messaging
- communication w/ external systems, WS+XML over HTTP, JCA, JMS
- Business Tier Technology
- Enterprise Beans, Enterprise Classes, Stateful/Stateless Session Beans, Message Driven Beans
- CMP/BMP, JDO, JPA, ORM, DAO, JDBC, JAX WS, EJB 3.0
- Web Tier
- Web Framework, JSPs, Servlets , JSF
- Applicability of J2EE Technology
- Designing modular solutions, SOA, measuring NFR, refactoring
- Design Patterns
- GoF Design Patterns
- Core J2EE Design Patterns
- Security
- Client-side security: WebStart, applet deployment
- potential threats
- encryption, hash, SHA, asymmetric vs symmetric
- JAAS
Resources
Duchess is a global network for connecting women in Java technology. Its mission is to promote women in this sector and to provide a platform through which women can connect with each other and get involved in the greater Java community.