A single-tier architecture is an architecture in which the entire application resides on the user's machine. Before networking became so easy and cheap, this was frequently the design of choice. Nowadays you will find this architecture used rarely and almost never in conjunction with enterprise data. The obvious drawback to single-tier architecture is that the data lives on a local machine, and no one else can access it. In a fast-moving enterprise where information is everything, this is not a good situation.
The advantage to this architecture, from a developer's standpoint, is that it is relatively simple to code. The developer does not have to worry about security, concurrent access, network connectivity, or any of a hundred other issues that plague multitier applications.
For the purposes of the modern enterprise, single-tier architecture no longer exists. Most of my experience with this architecture has been relegated to upgrading small applications developed using Microsoft Access. Frequently users will create spur-of-the-moment applications using a wizard to accomplish repetitive needs that are only applicable to them. This type of application is often a candidate for being upgraded to a two-tier application.