The three-tier model is considered to be a software architecture and a software design pattern.
Apart from the usual advantages of modular software with well defined interfaces, the three-tier architecture is intended to allow any of the three tiers to be upgraded or replaced independently as requirements or technology change. For example, an upgrade of desktop operating system from Microsoft Windows to Unix would only affect the user interface code.
Typically, the user interface runs on a desktop PC or workstation and uses a standard graphical user interface, functional process logic may consist of one or more separate modules running on a workstation server or application server, and an RDBMS on a database server or mainframe contains the data storage logic. The middle tier may be multi-tiered itself (in which case the overall architecture is called an "n-tier architecture").
It seems similar, although defined in slightly different terms, to the Model-view-controller concept and the pipes and filters concept.
This article (or an earlier version of it) contains material from FOLDOC, used with permission. Update as needed.