Pages Menu
Categories Menu

Posted by on Oct 8, 2010 in Architecture | 2 comments

Who still doesn’t get 3-tier?

This post has the danger of sounding condescending, but, I really don’t mean it to come across that way.

I was at a client site the other day and on the way to the conference room, we had to walk through the developer section. As we walked through, I glanced at the whiteboard and saw this diagram. Now, if you’re in IT, in this day and age, I’d think you know all about n-tier architecture. I mean, did they really need to still explain how the tiers are separated?

I’m telling myself, that perhaps, somebody from the business side of the house walked over to IT and asked them to explain this “3 tier stuff”. At least, I hope thats what it was. And honestly, thats fair…I can see that maybe some folks on the business side are new to this.

I also hope it wasn’t the result of an interview. If I were interviewing a technical candidate and asked him to explain the architecture of the last product/project he worked on, and he/she drew this block diagram, I’d politely thank them for their time (and then steal the diagram for this blog post).

As I said, I’m not trying to be condescending. I only found this interesting in that it was drawn on the whiteboard where the developers sit, and I can only hope this wasn’t being explained to technical folk.

That said, I did find the diagram timely…I’ve been mulling over a lot as of late on the hole J2EE dug for itself with is levels of abstraction. It can take seasoned developers days to roundtrip from the UI to the DB, editing countless XML config files along the way. I have no doubt that its time to return to some simplicity…indeed…sanity, in the programming world, and, as a result, perhaps the diagram above deserves more merit than I’ve given it here.

Did you like this? Share it:


  1. Interesting that this still lives on. 10 years ago, I kind of hoped that interview questions would progress beyond “describe n-tier architecture”.

    However, with all the web APIs out there you get kind of a blurry picture. There is no UI beyond the XML/JSON IO of your service and the business logic / db stuff gets clouded by the various other services and non-db data sources.

    Have we entered the age of the 1-tier system? You can have an entire company (foursquare and twitter for example) that lives off its web API and for all we know only has business logic in the API.

  2. Shocking! They’ve got to get with the times. I thought everything has to have the word “cloud” in it now.

Post a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>