To Train an Architect

A think-tank at OT2001, 2 April 2001

 

David Harvey, UBS Warburg

Contact me

http://www.davethehat.com/

 

© 2001 David Harvey. All rights reserved

 

Warm thanks to the twenty-four participants in this think tank! The format of this type of session emphasises process and collaboration towards a defined deliverable in a very tight time-scale (75 minutes): it’s a tribute to the effort and concentration of all involved that we came up with (I believe) significant and useful recommendations out of the session.

 

The goal of the session was to produce an outline of the experience, accomplishments, and personal qualities we find in successful software architects, then to sketch a programme of personal and professional development to inculcate and strengthen these characteristics. While the literature on software architecture grows by the month, little has been written about the qualities and qualifications of those who act as architects in software. The responsibilities of the role are outlined in some of the less notation-focussed books, but even a job description won’t help us identify the particular personal characteristics and way of working of an effective software architect, even less indicate how such characteristics and habits of work should be fostered.

 

The process was as follows:

 

·        Participants reflected in groups on successful (and where appropriate, unsuccessful) interactions as or with architects, capturing these experiences in short scripts or stories.

·        These stories were annotated to highlight qualities present in successful interactions with architects (and to identify those notably absent from unsuccessful interactions).

·        The qualities and attributes defined were written on 8 * 6 index cards and used to form a ‘semantic map’ on the floor (qualities deemed to be closely related – by any intuitive measure of closeness placed close together, distantly related qualities further apart).

·        Participants made a position statement by standing at a point in the map that reflected their own particular interests and concerns, and on the basis of this positioning formed new groups.

·        Each of these groups then produced a poster outlining ways in which these qualities might be fostered (through education, professional and personal development). Participants were – strongly – encouraged to note but then to go beyond ‘traditional’ means of building skills and experience (training, conferences, relevant work experience and so on)

·        In a closing gallery session participants reviewed each other’s posters, asked questions, made comments (attached to the posters using post-it notes). The posters were then displayed in a public area of the conference – a number of other post-it annotations were made over the course of the next three days (some of these garnered responses in turn).

 

The clustering of teams around concepts was revealing: the eight posters produced developed ideas in the following areas

 

·        System-level thinking

·        Abstraction/holistic/aesthetic/simplicity/consistency

·        Holistic view/broad vision

·        See the big picture

·        Creativity

·        Leadership/decision making

·        Leadership skills

·        Leadership

 

I’ve added where I feel it necessary some commentary on the posters themselves (in addition to transcribing some of the annotations).

 

The cluster of interest around leadership, and the fact that many of the stories produced which threw this topic up were of unsuccessful interactions, suggests to me (borne out by experience!) that technical people have some work to do to develop appropriate and effective leadership skills. The other looser grouping is around holistic/creative/aesthetic/systems skills, suggesting to me that development of vision is mandatory.

 

Largely undeveloped in these posters are the following

·        Social and political skills (persuasion, influence)

·        some group skills (for example, facilitation, mediation and consensus-building, which I don’t see as functions of leadership as it is usually understood)

·        technical skills

 

All of these surfaced as qualities in the initial trawl of the stories: some of them are to a certain extent subsumed in the areas which the posters did explore.

 

Participants (who left their names) were

 

Gareth Bradley

Jim Briggs

Jon Collins

Lee Copeland Gladwin

Rachel Davies

Sven Erik Knop

Andy Longshaw

Ken Lunn

Mark Lycett

John Lyle

Peter Marks

Duncan McGregor

Clive Menhinick

Michael Oderinde

Colston Sanger

Helen Sharp

 

Paul Simmons

Matt Stephenson

Detlev Vollmann

Rob Westgeest

Eoin Woods

 

David Harvey has fifteen years of experience in designing, building and managing the development of software. He is currently Middleware Technical Architect at UBS Warburg, and has worked throughout the City of London on advanced middleware frameworks and architectures. As a consultant he has helped organisations make effective use of object technology, and has delivered introductory and advanced training courses in C++ and OO design. He has presented sessions at the OT conference and elsewhere on C++, patterns, distributed computing and software architecture, jointly (with Paul Dyson) presented the UK's first workshop on Extreme Programming, and was conference chair for OT99.