« Storing objects graphs - native vs. relational storage | Main | Intalio|BPMS (Apache ODE), Process Management API (PMAPI), unfortunate message queuing behavior and again Groovy to the rescue »

Do we need architecture?

We don't need no architecture! We don't need no code control! We are agile, we know better! Architects, leave us Devs alone!

"Wait a second. Aren't you an architect?" - you ask. Hell, yeah! And I'm quite fed up with what is happening in the agile space. It seems like the human nature inherently pushes - if not all, at least some of - us to screw up all sort of good ideas, be it because of laziness, stupidity or ego. 

Would you ever want bridges or skyscrapers to be built with only a rough idea of what is being built. Why then we allow the software to be built like this.

By all means, I am not against agile; on the contrary, agile done right is invaluable. The problem is that more & more delivery organisations assume an immature model where agile becomes an excuse for  little or no architecture work. 

Architecture is there to set the structure, to guarantee that end quality will satisfy required levels. It is like a railway for the train.

I've recently heard from a developer on a team: "We do not need architects." Well, sure you do not need architects, or any other label for that matter, as long as the team can self-regulate itself and impose a structure over the product, but wait, isn't that architecture?

There is a fundamental problem with the responsibility for defining architecture being spread thin all over the team: no one is ultimately responsible for it, and quite often egos overtake - please do not be surprised, we software engineers are well know for our big egos - a result being an accidental architecture. Of course, if the agile lead has a decent background and experience he/she will not let it happen, but then they become an acting architect.

Finally, architecture brings not just the structure, but also reusable approaches to solving common problems. A system built this way is cheaper to maintain. We need not forget, that software is a business and while having fun doing it is great, it is not enough.

PrintView Printer Friendly Version

EmailEmail Article to Friend

References (2)

References allow you to track sources for this article, as well as articles that were written in response to this article.
  • Response
    Response: cloud server
    All Things Integrated - Journal - Do we need architecture?
  • Response
    All Things Integrated - Journal - Do we need architecture?

Reader Comments

There are no comments for this journal entry. To create a new comment, use the form below.

PostPost a New Comment

Enter your information below to add a new comment.

My response is on my own website »
Author Email (optional):
Author URL (optional):
Some HTML allowed: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <code> <em> <i> <strike> <strong>