The difference between tier vs layer application

n-tier-architecture

Last week I was talking about the 3 tier architecture with my seniors. I was saying that it has a UI tier, Business Logic Tier and Data Access tier. After I have finished, he just told me that, I am talking about 3 layered architecture, not a 3 tier architecture. Then I asked him what is the difference, he assigned me the task to make a documentation about the difference. so Here I am, Os far, I come to point that
a 3 tier architecture is
1. A client in on machine,
2. The application Server is hosted in one machine
3. The database server is hosted in another machine

where 3 layer architecture(UI, BLL abd DAL) can work on same machine.
My question to you, Am I correct? What is the difference according to your knowledge? Can anyone please explain?

Best Answer

Your explanation is right: a n-tier architecture is a physical structuring mechanism, while a n-layer architecture is a logical structuring mechanism.

While is true, for example, that a 3-tier application is (at least) a 3-layer application, a 3-layer application could have only 1 or 2 tier(s).

You can also look at these articles:

http://davidhayden.com/blog/dave/archive/2005/07/22/2401.aspx

http://en.wikipedia.org/wiki/Multitier_architecture