

# Benefits
<a name="benefits"></a>

This section covers some of the benefits of using IaC and EDP to solve common problems with managing or provisioning IT infrastructure resources.

## IaC benefits
<a name="iac-benefits"></a>

IaC can help you represent and preserve the state of IT infrastructure resources through version control. This approach solves multiple problems, but the two most important problems are the following:
+ **Ability to revert to a previous configuration or state if a resource fails –** Typically, resources and their configurations are backed up and restored without IaC, but IaC can use a version control system to help you revert (or roll back) one or more versions from a backup timeline. You can also tag deployments so that versions that are unsuccessful due to configuration values can be identified and eventually discarded.
+ **An accurate representation of resource state –** If a resource is successfully created, updated, or involved in a rollback, the template's resources will match the actual resources. This means that you can scan and query the repository to understand a resource's state. Additionally, an IaC approach doesn't require developers to have administrator permissions (for example, in a production environment). If you have an accurate representations of resource states, you can better ensure a tight security posture.

## EDP benefits
<a name="edp-benefits"></a>

EDP can help you plan for and solve issues that arise from future events without the need for an engineer (that is, human effort). Instead, you can use event-driven code to respond to potential issues. EDP also offers the following benefits:
+ **Reduced deployment time –** An EDP approach reduces the time it takes to deploy changes because code is invoked immediately after an event. 
+ **Scalable resources –** An EDP approach helps you automatically scale modified resources, which would otherwise be done manually.