Analysis, Design, and Development Techniques with J2EE
As a J2EE architect, you are required to organize various J2EE components into groups and determine how those components will interact. To a large extent, this is object-oriented analysis and design (OOAD) with an eye towards the technology that will be used to implement the components. All of this analysis is conducted within the context of various project goals and nonfunctional requirements as we identified in the previous chapters.
As an architect, you must control the coupling between components and packages, and whenever possible, capitalize on the use of component associations. This requires you to work with the project team and communicate architectural ideas clearly. This entails the use of visual modeling using object-oriented (OO) diagramming to express the modeling ideas developed during requirements analysis and the subsequent development of the architecture. The most common OO modeling language in use today is the Unified Modeling Language (UML), which provides a visual medium for the expression of object and component design, object relationships, and control flow. This chapter describes UML as it is used in practice and lays the foundation for the use of these diagrams throughout this text.
Following the discussion of UML, we examine the analytical process and apply appropriate OOAD concepts to the J2EE architectural process. As always, analysis and design is about managing complexity and producing as concise and robust a design as possible. This chapter will provide various for you on how to control and manage the complexity of a J2EE architecture.