This document discusses automating software deployments using tools like msbuild and msdeploy to enable continuous deployment and delivery. It outlines the pain points of manual deployments and goals of automating deployments. It provides guidance on setting up continuous integration, automated testing, packaging, and configuration for both new systems and existing environments. It also lists best practices like deploying early, having rollback plans, logging builds, and automating as much as possible.