Deploying a web application or site involves several steps.
You typically need to:
Copy files and folders
Provision database schema and optionally populate database
content
Set appropriate read/write and security ACLs on files and
folders
Install and configure SSL certificates
Deploy other misc dependencies (Event logs, GAC libraries,
COM objects, etc)
Performing all of these steps manually is tiresome, slow,
and dangerous (since manual deployment steps are error prone). Enabling
an automated process that allows you to quickly provision and deploy
applications on a server helps reduce the chances of things going wrong, and
can dramatically improve the cycle time it takes for you to get a change you
make in an application into production.