BT

Should Architects Code? Agile Ones Do!

by Scott W. Ambler on May 24, 2006 |

At Should Architects Also Code and Should Architects Also Code 2 Arnon Rotem-Gal-Oz has continued the long-running debate as to whether architects should write code.  Although this is a debate within the traditional community, it isn't within the agile community: good architects code, end of discussion.  Arnon agrees that architects need to participate in the project; the best way to test a design is to code and run it; it is beneficial for architects to know to code; and it is important that architects understand the implications of their decisions on the code and developers.  This is a great start, and is actually quite forward thinking in the traditional world.  Agilists take it one step further and take an agile approach both to project architecture and to enterprise architecture.   Arnon's advice is superb within the context of a traditional environment, but isn't quite there yet for people in an agile environment.

It's an interesting debate either way.

Hello stranger!

You need to Register an InfoQ account or or login to post comments. But there's so much more behind being registered.

Get the most out of the InfoQ experience.

Tell us what you think

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Should architects code? by James Strachan

Yes :)

Even if its just a little bit.

James
LogicBlaze
Fuse: the Open Source SOA runtime

XP Answer by John Harby

Do the architects need to code?

I know at least one doing it by Alex Popescu

Not sure if he is agile or not, but I know an architect guy coding every time he can (and he always finds the time to do it) :-).

./alex
--
.w( the_mindstorm )p.

Re: I know at least one doing it by Dan Bunea

Martin Fowler, which is probably one of the most known and influential software architects of our time, writes in his reviewed version of "The new methodology" (www.martinfowler.com/articles/newMethodology.html):

"The problem with a UML-like design is that it can look very good on paper, yet be seriously flawed when you actually have to program the thing."

and

"errors in the design that are often only uncovered during coding and testing. Even skilled designers, such as I consider myself to be, are often surprised when we turn such a design into software."

In our company one of the main benefit of agile, was that all people rebecame programmers, with the same rights. No more tester, analysts, architects etc. No more names. This put everyone in the same position, everyone designs, everyone tests, everyone designs. Soon enough some started to prove themselves better then others in certain aspects, by proving in front of the whiteboard and in code. They gained the respect of the others, by showing that they can do, not by being appointed or named by higher management. The design and code with the others but when they come with a design idea, because the others saw what they are capable of tend to accept it easier and embrace the ideas faster then when they had to do thing just because the ones that came with them were "the architects".

There is no more us vs them, and everyone can have objections. Since this big obstacle is out of the way, motivation is at its highest and work is done faster.

on coding by Robert McIntosh

I think at the very least an architect should know how to code to some degree and be familiar with, if not proficient, in the language of code being implemented.

One of the better architects I've worked with knew architecture very well but he could program when he needed to. Granted, he didn't very often, but he knew enough that he could and by doing so, he communicated with the developers very well when it came time to implement his designs.

I think Agile is making the ivory tower architect dissappear by Floyd Marinescu

I remember being in a company long ago where they had these architect guys come in, draw all the lines and bubbles and then leave to do the same on some other project, while us developers had to then implement their designs. I think Agile is causing the demise of these ivory tower architects, since now all the key stakeholders need to be involved in the project in each iteration.

Re: XP Answer by Mihai Ganea

I don't think one could be a good architect without knowing how to code. The problem with coding however is that it tends to be forgotten if not exercised.

Should Architects Code? by ashok shetty

Loaded question!

Whenever needed, yes.

I have no doubt that most competent ones, who have a passion for the profession, do, and there is no way anyone can stop them from doing so. How else can one learn?

Again, should the architect lay the brick and mortar?

Seems extreme, but then there are project situations, when any kind of problem (be it due to bad planning, lack of ownership, or lousy competence) can be classified as a "technical" problem at an appropriate forum, and an "architect's" involvement is sought (fix this problem yourself) because...after all architects should code, right :-) ?

So, then, it depends on who is asking the question?

Are you a "manager", Scott :-)? Just kidding..

Cheers,
Ashok Shetty.

Re: I think Agile is making the ivory tower architect dissappear by Alex Popescu

There is something that is confusing me somehow:
1) if they knew how to code, why are they hating it so much so they are not doing it anymore?
2) if they haven't known how to code, how they have reached the architect title?
I really think that in both cases, there is something fishy about these "architects".

./alex
--
.w( the_mindstorm )p.

Re: I think Agile is making the ivory tower architect dissappear by Deborah Hartmann

You're not the first to notice this bad smell, Alex :-)

Some places wouldn't hire an "architect" without a modeling and coding interview with a senior developer. And even then, he'd have to accept relinquishing his special title - even the best are called Senior Developers in places like that :-)

deb

He has to!!! by Jorge Alberto Rodriguez

of course an arquitect has to code, i dont see another way of make a project successful if the "best" ideas are not coded by his author...

Re: He has to!!! by Deborah Hartmann

Do you assume, then, that the "best" idea is not likely to come from a new team member or a junior developer or even a tester? If you have hired well, you are missing some opportunities, there, imo :-)

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

12 Discuss

Educational Content

General Feedback
Bugs
Advertising
Editorial
InfoQ.com and all content copyright © 2006-2014 C4Media Inc. InfoQ.com hosted at Contegix, the best ISP we've ever worked with.
Privacy policy
BT