Geeks With Blogs
Dynamic Concepts (in) Development Musings of TheCPUWizard

The first question, is “Why is architect being used as a verb?”.  Mirriam-Webster dictionary does not contain a definition of architect as a verb, nor do many other recognized dictionaries. On the other hand, dictionary.com does add an entry for the use of the word as a verb:

Architect
4. to plan, organize, or structure as an architect: The house is well architected.

This gives us three key words to start with: “plan”, “organize” and “structure”. Unfortunately these terms can apply to work done by many others involved in the project ranging from project managers to software engineers. So we must return to the key part of the definition “as an architect”

–noun
1. a person who engages in the profession of architecture.
2. a person professionally engaged in the design of certain large constructions other than buildings and the like: landscape architect; naval architect.
3. the deviser, maker, or creator of anything: the architects of the Constitution of the United States

 

Each these definitions provide some clues, however the last two do nothing to clarify the boundary between the architect’s role and that of the other team members. We are forced to return to the dictionary to see what the “profession of architecture” entails. Emphasis added to highlight aspects which will be discussed in this post.

architecture
–noun
1. the profession of designing buildings, open areas, communities, and other artificial constructions and environments, usually with some regard to aesthetic effect. Architecture often includes design or selection of furnishings and decorations, supervision of construction work, and the examination, restoration, or remodeling of existing buildings.
2. the character or style of building: the architecture of Paris; Romanesque architecture.
3. the action or process of building; construction.
4. the result or product of architectural work, as a building.
5. buildings collectively.
6. a fundamental underlying design of computer hardware, software, or both.
7. the structure of anything: the architecture of a novel.

None of these definitions (with the exception of #6) are specific to software architecture, but still can supply some valuable information as highlighted in the above text. These items can be divided into two distinct categories. The first (and most obvious) are those that relate to a specific undertaking. The second are the items which are more reflective in nature, typically the results of finding the common (and contrasting)  properties among  multiple specific instances. To simplify discussion of these two group, I propose the use of two terms: “Architectural Design” for the first category, and “Architectural Style” for the second.

Returning to the title question, we can rephrase it as two distinct questions: “Do software architects create architectural designs?” and “Do software architects create architectural styles?”. The answer to the first question is a resounding yes (although we must still determine show architectural designs are distinguished from more detailed design and construction artifacts and activities). The creation of architectural styles is a different matter.

The creation of a new “style” in any field is not something that is frequently attributable to a single person (or team).  In the cases where attribution can be given, it is unusual for the originator to even have been aware that they were creating something that would be recognized and adopted as a style by their peers. Consider “brick&mortar” architecture; “Greek”, “Roman”, “Victorian”, “Tudor”, “Modern”, “Post-Modern” are all recognized and fairly well defined; however, all of them were identified “after the fact” by analyzing common features that were used by architects in creating specific “architectural designs” at a particular point in time and/or geographic location.

I believe that the same is true for software (and other technology related) architecture(s). A recognized architecture style is something that is typically distilled from the work of many, with only a few cases being the result of a specific individual or team.

So to all the software architects reading this, I wish you well in creating robust, effective architectural designs – and (if you are very skillful and lucky) may history possibly look back at some of your work and recognize your contribution to an architectural style.

Posted on Thursday, November 18, 2010 9:04 AM Developing Agile Software , Developers Notes | Back to top


Comments on this post: Do (Software) Architects Architect?

# re: Do (Software) Architects Architect?
Requesting Gravatar...
Identifying and reusing an existing architecture style suitable for a given problem, would also come under the purview of architects. This is one reason that calls for the need of "experienced architects".
Left by Anil Natarajan on Dec 01, 2010 8:20 PM

# re: Do (Software) Architects Architect?
Requesting Gravatar...
Anil, you are 100% correct. I did not explicitly call out that case (the post was already getting long) beause there is usually some "tailoring" of the existing work for a given project and was thus was included by implication.
Left by David V. Corbin on Dec 01, 2010 8:25 PM

Your comment:
 (will show your gravatar)


Copyright © David V. Corbin | Powered by: GeeksWithBlogs.net