A snapshot is typically created when a successful deployment runs in an uncontrolled environment, where there are no approval gates. Snapshots can be created in controlled environments too. As the application components move from one environment to another, IBM® UrbanCode Deploy ensures that the exact versions and processes that you selected are used in each environment. Snapshots can help manage complex deployments, which have multiple environments and development teams.