What Is The Value Of A Software Architect?
(My) definition of the architect's role:
"Software Architect is someone who is able to break down customers
(=product owners, sponsors etc.) vision in more or less fine grained
software artifacts."
I prefer the term "vision" over requirements, because most of the
time requirements happen to be unstable and the customer actually
unsure.
An architect should also immediately inform the customer about the
impacts of his functional and non-functional requirements. Pro-active
consulting in the definition phase about
the consequences of high availability, modularization, distribution,
security etc. is crucial and safes real money. The architect should be
especially well experienced with possible problems and side-effects.
...my definition of developer's is: "Developer is an architect, who just don't want or is not able to deal with the translation of high level requirements into low level code, and enjoys to code more". Therefore an architect is a developer, who enjoys the translation and likes communication, meetings and everything else what is needed to extract the requirements from the customer. An architect should be only a temporary role. Otherwise it will be harder to keep up with the technology and you will end up in an "ivory tower":
"...From the 19th century it has been used to designate a world or atmosphere where intellectuals engage in pursuits that are disconnected from the practical concerns of everyday life. As such, it usually carries pejorative connotations of a wilful disconnect from the everyday world; esoteric, over-specialized, or even useless research; and academic elitism, if not outright condescension..." [from wikipedia]
(Note: Opinions expressed in this article and its replies are the opinions of their respective authors and not those of DZone, Inc.)





Comments
Mike P(Okidoky) replied on Thu, 2010/08/12 - 1:49pm
King Sam replied on Fri, 2012/02/24 - 10:39am
Couldn't agree more with this post, especially the ivory tower part. Nothing more frustrating then trying to deliver the 'architects' vision when they've been away from the technology too long.
One one client site I work at the team swaps the Architecture role around every project which seems to be a nice way of dealing with it.