A Rant About the Abuse of N-Tier Architecture

by AlmostAtheist 13 Replies latest jw friends

  • AlmostAtheist
    AlmostAtheist

    Thanks for all your responses!

    The project's going much better now that I'm home. :-)

    Seriously though, we don't have access to the .NET goodies. The decision from the powers that be was to go to a J2EE architecture enterprise-wide, so all of our existing apps have to muddle through as best they can on ASP/VB6. And of course, we have our own tools and environments and standards that make virtually any tool unusable.

    Dan, this stuff sounds complicated but it's actually just tedious. If you listed all the tedious aspects of building your SQL code, you could probably fluff out a nice litany as well! If you get into another programming language, I think you'd have little/no problem with it. If anything, you'd be delighted at all the new tools you can play with.

    Simon, yeah, I know n-tier has value. *hangs head, kicks a rock* It's not the use, but the ABUSE of it that irks me. Such expensive options ought to be used selectively, when they have some obvious value. We even use it on apps that are simple gap-fillers, while we wait for the last 6 months of a product's life to run out.

    Whoever said something about "multiple vendors", yeah, that's why I think offshore development isn't going to fly. "Let's hand off the business logic layer to the cheap guys!" *6 months later* "Oh wait, this doesn't work.. uh oh..."

    Elsewhere, EXACTLY!

    Dave

  • Simon
    Simon

    If you are Java then have a look at Hibernate for mapping your objects to the database - you won't have to right practically any SQL ever again. The Java version is much more mature than the .NET version having been around longer (it's only just been ported to .NET).

    Still, I think *not* using .NET is a painful thing ... nowadays the interopability isn't such a big deal and with it in layers you could easily implement part in .NET and part in Java (eg. have the interface at the web-service layer).

    I know what you are going through though - I've been doing some work for an internet bank and we go through tons of layers just to display a balance on the screen. Part of it is security and part is the legacy stuff that is built up. The C++ code you write to call the bank systems seem so far away from the .NET front end with web-services in the middle that it's more amazing that it works at all, not that it works as well as it does !

  • Simon
    Simon

    I do agree that things are abused though. I see it all the time - systems made overly complicated to appear more "enterprise" to the point that they don't perform and are not robust. Systems use every technology possible and have such a surface area that any change to any technology breaks them.

    It's almost a kind of pseudo intelectualism. I've seen people creating provider and factory patterns just to return a bloody string!

    It's what IT needs to get right and why people rather go to 'bob down the hall who can knock up a VB app or Excel macro' to do things instead of getting IS involved.

    Clever programmers can create very complex systems. Real genius is making something simple and elegant that performs well.

  • AlmostAtheist
    AlmostAtheist
    it's more amazing that it works at all, not that it works as well as it does !

    Magic, Man. Just magic. I'm seriously amazed that anything works at all.

    Dave

Share this

Google+
Pinterest
Reddit