Composition means splitting the infrastructure into separate configurations, for example network, data and application, which share information through outputs and the terraform_remote_state data source. This limits the scope of each change and the risk of a mistake.