Ian Cooper

Sponsors

The Lounge

Advertisement

Images in this post missing? We recently lost them in a site migration. We're working to restore these as you read this. Should you need an image in an emergency, please contact us at imagehelp@codebetter.com
Architects: Back to the future?

What does it mean to be an Architect?
Last year I attended Microsoft's Architect Insight Conference here in the UK. One interesting aspect to the conference was asking the community to try and define what an architect was. It proved impossible. Indeed the term architect has become so difficult to pin down in IT that we now qualify it with what kind of architect we are talking about: solution, technical, business etc.

Why is this a problem? The reason for the topic being raised at the conference was that if we cannot agree what an architect is, how can we identify what skills an architect should have. Without an agreement on the skill set of an architect then it becomes hard to assess people's fitness to be an architect, offer training to those who wish to be an architect, or hire someone as an architect and know what you should be getting.

Indeed, the agile community, has had heated debates around the role of architects in an environment where big-design up front has been devalued in favor of emergent design. Martin Fowler famously questioned Who Needs and Architect? But again, the debate is to some extent around the meaning of the job. The criticism of the architect as bottleneck is around a a job description where the architect as sole authority of design vision. Martin recognizes the value of an architect who is able to pass on experience to the team: a coach and troubleshooter. Jeremy also talks about the issue here, including raising the issue of what happens when XP teams do no upfront thinking (b.t.w. I don't think that Jeremy experienced a good reading of XP here, and its certainly not true of other Agile methodologies like Crystal to suggest that there is no design up front, indeed along with McConnell I believe that the alternative is enough-design-up-front (ENUF) ). At the same time other agile practitioners are actively talking about the role of architects in agile.

Again the dispute is around terminology. Redefine what an architect is for an agile project and the role has meaning again.

About the only part of this conversation where any agreement is ever generated is that most people identify architects as a leadership role, and qualification for that role comes from experience of delivering solutions.

My conclusion would be that the term architect cannot be said to be anything less or more than that recognition of seniority and experience. That is not intended to devalue the people who call themselves architects, but to point out that, on a comparison basis, it means nothing other than this.

A history of architects

An interesting aspect of this is that our use of the term architect comes from the construction industry, where a formalized program of training exists. But it was not always so.

Listening to BBC Radio 4 over the holidays I chanced upon an interesting fact - the history of the term architect. Pre-renaissance, architecture within the building trade did not exist as a separate discipline, instead an architect was simply a title given to a master of a craft, who was recognized for being able to lead a large project. Doing some research via Google, we find the following illuminating analysis from Dana Arnold in Reading Architectural History:

"the medieval architect was a master craftsman (usually a mason or carpenter by trade), one who could build as well as design, or at least 'one trained in the craft even if he had ceased to ply his axe and chisel'.

So to the medieval mind, being a master of a technical craft (one who has been accepted by his peers as a master of a craft through presentation of a master piece) was the key step to becoming an architect. To become a master, you had to put in your time - experience, as we have identified, was the key. In The Building of Renaissance Florence Richard Goldthwaite says that:

"After serving as an apprentice for four to five years and a journeyman for at least one more, he gained his status as a master of his craft...nurtured by instruction from the men he trained with"

The role of the medieval architect was often hands on. Arnold again:

"The medieval architect...a craftsmen by training...frequently acted as one of the executants on one of the buildings he himself designed."

Not only is he hands on, like the agile architect, but we also learn from Arnold that the great Gothic cathedrals of Europe were built, not with BDUF, but with ENUF:

"That he was capable of envisaging a building as a whole we cannot doubt...but in the middle ages the process of design and construction were much more linked than is the case today. Much more was left to be worked out on the spot than is normal in modern architectural practice, and even major churches were sometimes begun without any clear idea how they were to be completed."

According to Arnold the medieval 'architect' was distinguished from his peers by a knowledge of patterns that provided him with the knowledge to deliver the building without the need for up-front design.

The medieval architect was also master of works, his role included team lead and project management responsibilities. Goldthwaite says that:

"a mason could operate as an architect only if he became head of a works staff. ...he had to prove himself also as an administrator and supervisor who could be responsible for procuring materials and equipment, hiring and supervising workers, and, in general, directing all the technical operations of the construction enterprise".

But even then the word architect, associated with artistic production, was rarely used, instead the master was simply the head of works. Architecture, with its artistic vision was to come later, post-Renaissance.

Applying this to our own industry we might worry less about the journey to become an architect, but the journey to become a master. Instead of Mort, Elvis, and Einstein, we might begin to think about apprentice, journeyman and master with the graduation judged by experience and peer review of our work. Architects would come from the craft and have served their time as apprentice and journeyman, and have, during their journeyman years picked up the knowledge of patterns that would enable them to build new works in an ENUF style. To be an 'architect' instead of just a master would become taking on the role of 'head of works' for a project responsible design, recruitment, supervision, and direction of technical operations.

It may be that we need to go back, to go forwards, embrace the craft roots of our profession to find what 'architects' should do and re-embrace notions of mastery at a formal level instead of looking to modern ideas of architects for comparison.






Posted Wed, Jan 2 2008 1:03 PM by Ian Cooper
Filed under:

[Advertisement]

Comments

Primfie.Com » Architects: Back to the future? wrote Primfie.Com » Architects: Back to the future?
on Thu, Jan 3 2008 1:58 AM

Pingback from  Primfie.Com » Architects: Back to the future?

Bryan Hinton's Blog wrote The role of Architect in Software Development
on Wed, Apr 16 2008 5:44 PM

Two good articles below that explore what an architect really means in the world of software development

Ian Cooper wrote Whither Alt.Net?
on Tue, Jan 19 2010 1:44 PM

Rage, rage against the dying of the light The lack of visibility for the idea of "Alt.Net"

Add a Comment

(required)  
(optional)
(required)  
Remember Me?