You can design client/server applications to connect to SQL Server in many different ways. If you think about the basic activities every application does, you can group these activities in three conceptual layers:
Data—This layer deals with the actual data your application uses. Some data can be stored in a relational database; some other data can be stored somewhere else, on any other format.
Presentation—This layer is responsible for user interaction, accepting input from the user and presenting results to the user.
Business—This layer interacts with the data layer to access data, and with the presentation layer to receive user requests and send results. This layer enforces business rules and executes ...