Deployment is the process by which you distribute a finished application or component to be installed on other computers.
Before you can deploy a solution, you need to tell Visual Studio what to deploy, where to deploy it, and how to deploy it. You do this by adding one or more deployment projects to your solution; each deployment project specifies instructions for installing files and components on a target computer.
For distributed applications, you usually create a separate deployment project for each tier in your application. For example, an application with three tiers would require three deployment projects, one each for the data, business logic, and client tiers.
In addition, you should create a separate deployment project to create a merge module for any component in your solution that may potentially be shared between multiple solutions.