Putting It All Together

Which comes first—software architecture or analysis? The answer, of course, partly depends on to whom you talk.

Architecture provides the blueprint for the software, but without proper analysis, the requisite understanding of the system—required for the blueprint—cannot be developed. Thus, it is very much an iterative process in that requirements form a key input into the software architecture, but there may be a need to adjust or clarify the requirements as the architect works through them to arrive at the architecture.

Defining a software architecture is very much an evolutionary process. Although an architect may want to start with some basic notions about what may be appropriate or inappropriate based on past experience, ...

Get Developing Enterprise Java Applications with J2EE™ and UML now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.