One of common scenarios where we've used environment variables is when we want to use indirect configuration for packages. The package will have lots of configuration items (Connection managers, variables etc) which will make use of a XML configuration file to store values. But this still has issue of file path being static which would require XML config file to be present in same path as in local machine when you deploy package to server. To deal with this, what we do is to store the XML file path in environment variable and then in configuration properties map the variable to indicate this. The various environment servers(dev,qa,prod) will have environment variable present with correct path value for the XML config file.