The word "architecting" pops up a lot on pages here, often in relation to programming. Is this a real word? What does it mean, anyway?
Architects are professionals that practice architecture; the design, development and guardianship of buildings, homes and other large structures. To be architects they need to have a college degree in architecture, and to have passed the appropriate mandatory licensing requirements. The word "architecture" for non-architectural professions, including software is a purely borrowed word that is sexier than "designer", but you can't seriously call yourself an architect any more than you can call yourself a doctor (unless you the appropriate degree).
'Architecting' - this word, which seems to crop up a fair amount on Wiki pages, is a real 'ouch-word' to me.
The word seems too vaguely defined. It would seem to require a verb 'To Architect'... but again this is foreign to traditional language.
The relevant meanings would surely be 'To build', 'To design', 'To supervise building' (maybe), 'To control building' (perhaps).
The core terms are 'build' and 'design'. (Much preferable to 'Design & Build'!!!)
These words describe what architects do and are understood to do.
- Martin, try a web Search using Excite or Google and you will find many references to the term architecting. It may not be the Queens English but the term most certainly has a meaning in the software industry.
- With all respect, this establishes that the term is widely used, not that it has a meaning, let alone a consistent one.
The problem with an invented word like 'Architecting' is that an abstraction has taken the place of the reality: no 'designing' or 'building' is left.
'Architecting', therefore, can only mean something self-referential about 'being (an) architect' and not about what an architect actually does or may do.
"What do ComputerScience people mean by 'Architectures'?" section moved to ArchitectureDefinitions
Closely related to this and to the problem of the 'Ouch-word' is the important role of the 'Engineer'.
In building design, it is the Engineer (Structural) who usually contributes most significantly to the structural design of the building, often in close co-operation with the Architect. The Architect (again in my tradition) endeavours to work with a structure that is an important aspect of the overall 'architectural intention'.
However, although Architects don't 'architect
, Engineers do engineer
, and 'engineering' is a proper word.
So, what happened to all those respectable 'software engineers'? Was the 'engineer-word' not enough? Too 'greasy-handed', not special enough?
What was the title of that recent Bond movie....'The World is not Enough'!!??
is one of the clearest thinkers on software, Martin, and he would agree very much with keeping the "engineer" label and wearing it ... well if not with pride, at least in the knowledge that is means something reasonably pertinent. The important aesthetic or "designing for human beings" role of the building architect should largely find a parallel in the graphics designer or what AlanCooper
for our systems. But unfortunately I don't know many people called "software architect" who are out of their diapers in the pretty well established discipline of HumanComputerInteraction
(HCI) design. PeterWindsor?
, ex of Logica in Cambridge, would be an honorable exception. He wrote a superb HCI prototype of the transatlantic air traffic control system in Smalltalk for the UK Civil Aviation Authority back at the end of the eighties. He really knows his stuff in the nitty-gritty craftmanship of object programming, he's up to date with the latest HCI research findings, he's worked successfully with key design responsibilities in the build phase of projects with over 100 people for many years and he's thoroughly in tune with the essentials of EvolutionaryDelivery
as taught by TomGilb
. There aren't many like him. Peter would freely admit that he isn't a good manager. He's about the closest to deserving the title "architect" that I know in the UK. Even in his case I'm not convinced that it's best to keep the analogy going, at all costs. "Engineer" and "design" are great verbs with much more recognizable referents in our neck of the woods. We should become a lot better at them before we exalt ourselves too highly. (Not that I have that
high an opinion of physical architects, knowing people like you!)
FWIW, I think BrendaLaurel
is certainly out of her diapers as well. While the term Software Architecture is more ambiguous than the traditional term. Remember that architecture is the art and science of both designing and
erecting buildings in its classical definition. Either way, I think you have to be careful of creating analogies between disciplines. -- rad
The question from a physical architect that started this page was: does the verb "architect" really have a clear referent, a clear meaning in software?
And here I was just thinking he was picking a welcome and appropriate nit at the non-word architecting
. Honestly, I'm not even certain that every building architect would agree with Martin's definition of architecture as not being structure. -- rad
Ah, but then I have the advantage of
knowing Martin. I know that he would never just pick a nit. Pick a fight maybe.
As a gerund [http://www.m-w.com/cgi-bin/dictionary?va=gerund
], architecting is a fine word. As a present-tense verb, it's terrible. Isn't that interesting, given where gerunds come from?
The American practice of verbing nouns impacts the evolution of modern English.
Languages resist prescription. Deal with it.
While the American practice of verbing nouns may be awful, this isn't so in the case of the verb Architect. The OED sites it back to 1890, in Harper's Magazine. The meaning of the verb is simple: To design (a building).
About architecture and software: ChiefArchitect
About use and abuse of words: AvoidNeologisms