The process of initially setting up or later updating a live website. There are lots of components (server configuration, code, database, files, permissions) and steps involved so that such a task can take a while and needs to be executed very carefully to make sure it doesn't break anything. Deployment can be done manually - which is not recommended - or automatically. With it is very easy to also include additional tasks like and pre-processing into the task and the expected result is always going to be the same. Nothing gets missing and it will only always happen, if all conditions (tests, coding standards, etc.) are met.