Who needs Architecture?

http://msmvps.com/blogs/rohanthomas/archive/2006/01/26/81848.aspx

Would love to hear your comments...

Thanks




Answer this question

Who needs Architecture?

  • Kevin3NF

    TadAnderson wrote:

    A good architect remains a good developer, but a good developer doesn't make a good architect.

    Just like a software engineer is a good software craftsman (a.k.a. software developer), but a good software craftsman doesn't make a good software engineer.

    There are a ton of debates on these subjects on the web. I'm not going to go into the all the junk you find on these debates, I'll just summarize it like this:

    The proof is in the pudding. Development says a dash of X, and a dash of Y until it tastes right. Architecture gives us a recipe of ingredients, and we end up with 1/2 tablespoon of X, and 1/4 tablespoon of Y.

    Anyone that doesn't know these differences and still entertains these debates, has never made pudding with a recipe.

    Well said Tad, but with the recipe of ingredients in hand if they still prefer to go with their taste, the recipe is as good as useless, although it would have saved them a lot of trouble if they would have used the recipe instead...

    And you are right, yes, the debate does go on...



  • Svein Helge

    A good architect remains a good developer, but a good developer doesn't make a good architect.

    Just like a software engineer is a good software craftsman (a.k.a. software developer), but a good software craftsman doesn't make a good software engineer.

    There are a ton of debates on these subjects on the web. I'm not going to go into the all the junk you find on these debates, I'll just summarize it like this:

    The proof is in the pudding. Development says a dash of X, and a dash of Y until it tastes right. Architecture gives us a recipe of ingredients, and we end up with 1/2 tablespoon of X, and 1/4 tablespoon of Y.

    Anyone that doesn't know these differences and still entertains these debates, has never made pudding with a recipe.

    I had the misfortune of getting sucked into one lately, I won't even point to it from here, feel free to go find it though. I figure I will do it that way, so you can waste a little more of your time, before finding it and wasting your time reading it.


  • James Berry

    Mr. SOAPitStop wrote:
    I'll close with this, it is very hard ... almost impossible to do architcture in a reactive way. If you fall way behind in a project and they start to make architecturally significant decisions and not documenting them (or even communicating them) then you're in a tough spot. I firmly believe architecture is important. I think it actually makes everything quite a bit easier. I would bet that a very high percentage of the resistence you get to good architecture is rooted in human psychology. Something new is scary, so as an architect if you can't be evangelical enough or confident enough to demonstrate an architectural patterns' long term value then you'll constantly lose these battles. Strange ... I think I just called architecture a sales position :)

    I totally agree with you, Architecture is important, very important. It is a blue print for your app, how can it not be important And yes, a blue print definetly makes the development and maintenance process much more easier...

    Moving on to architecture as a sales position, I think it is quite true. As I mentioned in my earlier post, the management just doesnt care about architecture, and here is what I did to shake the management up; I replaced the word archictecture with business model. The management started to pay attention when I told them the impotance of the "Business Model". So you were right, I guess the term "Architecture" was too much for them, a term with "business" as a part of it, seems to be much more acceptable by the management...



  • ilys4

    Rohan Thomas wrote:
    if they still prefer to go with their taste, the recipe is as good as useless, although it would have saved them a lot of trouble if they would have used the recipe instead...

    On my projects if they don't get approval to go with their taste, before they dump in the extra ingredients, they get some free time to work on their resumes...


  • VBA Derks

    I totally agree is Architecture is essential, but it seems that the management doesnt bother with it....

    They dont care if a new PM takes care of Architecture, they just wanna get the project done and over with which in turns gieves them their revenue...

    So what if maintenence comes They will hire a programmer and ask him to go though the ****y code... So what if the the code is ****y and has no architecture or documentation Hey, we are paying the programmer to maintain it and we dont expect complains...



  • jhcrafts

    Well this is an interesting post. Asking the architcture forum if companies need architecture is kind of like asking an auto workers union if they should continue to build cars :) Just joking with you, I actually struggle with this one as well. How do you remain architecturally influential when business value dominates a project timeline. This can usually be boiled down to a simple question: How much value do we get from doing the 'best' architcture that aligns with the enterprise

    Ok I said easy question ... I did not say easy answer. Usually you have to figure out how to quantify things like supportability, maintainability, and extensibility. Does this project have multiple iterations Does this project have valuable business logic that you may need to use within other lines of business Do you have an experienced support or maintenance programming staff Even if you can say yes to these types of questions very often you'll still get the argument that it's more expensive to do it right the first time.

    Sigh.... and we're right back to where we started. Is architecture really that important. I would have to say the key is getting ahead of new emerging architectural patterns and making the 'right' way the easy way. Documentation is a pain but very often you can automate portions of it. If an 'architecture' deliverable is what you're looking for then an architect should probably be on the project and responsible for delivering the plan before design even starts.

    I'll close with this, it is very hard ... almost impossible to do architcture in a reactive way. If you fall way behind in a project and they start to make architecturally significant decisions and not documenting them (or even communicating them) then you're in a tough spot. I firmly believe architecture is important. I think it actually makes everything quite a bit easier. I would bet that a very high percentage of the resistence you get to good architecture is rooted in human psychology. Something new is scary, so as an architect if you can't be evangelical enough or confident enough to demonstrate an architectural patterns' long term value then you'll constantly lose these battles. Strange ... I think I just called architecture a sales position :)

    Now if you really want to get another interesting perspective take a look at this post from the very respected Rhocky Lhotka (http://www.lhotka.net/WeBlog/SoftwareIsTooDarnHard.aspx). I'd be very interested to hear everyone's comments on this, I felt like it tied into this thread. His position doesn't come right out and call architecture useless, I think with enterprise frameworks and tools like GAT and DSL (with VS 2005) we'll finally be able to start to deliver on the promise that the 'Mort' programmers will be able to focus on business functionality and not the plumbing work. Unfotunately up until now, architecture has abstracted very little from the typical developer. Agree



  • jenr

    I agree with Tad. All projects need architecture. The the amount of architecture and how much documentation you have for the architecture will vary by the size and complexity of the project. Architecture is making the best decisions possible at the project, department and enterprise levels.

  • etaylor

    Yes, you require an architecture.

    Ebay and Amazon are here today after repeated extensions to their architecture for innvoation and scalability.


  • mihooper

    Organisations who look at 'Computer Science' / 'Technology' as one of their core strategies to do business. So anyone who thinks this way needs an architecture.

    However, a few things I keep seeing about architectures ( I guess, you folks will have more to add to this list )

    1. A architecture is not a one day, one month, one year end product. It matures as the business matures.

    2. Architectures are only visible in the minds of very few people in the firm.

    3. Architectures need governance.


  • Tausif Ahmed

    Exactly...

    But apparently, the mangement of these SMEs doen't think so...

    I guess the arguement continues...



  • VerusMaya

    You will always have an Architecture when your project is done.

    You may either plan it, or inherit it from the results of your
    project’s development cycles.

    Planning gives your project a map to what has been built and a future.

    Inheriting it, makes your project a legacy application the day it is delivered.


  • Mike Hildner

    Rohan,

    Your situation sounds similar to a few I have been in before.  The best advice I can give you is find a different project.  Some volcanoes just continue to flow lava, no matter how many pebbles we pile on them.


  • Bruno Valente - PT

    The points you stated are valid points, but I how do you think they apply is the stated scenario

    Obviously architecture is needed, even for a small project. Yes its not TOGAF or DoDAF but still... a three layered software architecture atleast...

    Do correct me if I am wrong...



  • Who needs Architecture?