Saturday, January 31, 2004

Evolving Architecture

One of my former students asked a great question on architecture and architecture reviews. The question, the answer, and some further elaboration by Joe Maranzano, an expert in architecture and architecture reviews follow these short notes.

Establishing a discipline of architecture reviews relatively early in the software development process is a great idea. The paper by Starr and Zimmerman (get it here) “A blueprint for success: Implementing an architectural review system.”, 2002, is a great introduction to architecture reviews. I will keep you posted on further sources of information on architecture reviews.

Enough background, here's the question, answer, and Maranzano's additional comments.

1. Does any sort of review only occur after the particular task reviewed is completely finished? That is, after the architecture review is done is it still possible to add to or change the architecture .. or should that be avoided?

Of course if the review suggests changes or deficiencies the architecture should be adjusted to accommodate them. Tuning can still be done until design, any changes after that have a ripple effect -- the design has to be changed and code and ... . Bottom line the general architecture should not change after the review but knowledge during the design/development process may cause adjustments. And there are exceptions, if you are using very new technology the architecture may change as you discover how it really works during development. We sometimes refer to that type of project as advanced development, and generally use our top staff on it. I think the key is that the architect (and there only should be one) should shepherd her architecture through development and testing -- so a simple answer is the architect should not change, the architecture may change but this should be done carefully.

Joe added: "You might want to mention that if some portion of the architecture has to change (e.g., due to design discoveries or economic impact of the solution) that a review of that portion of the architecture can and should be done."

Hope you found this interesting and, as always, comments are welcome.


No comments:

Post a Comment