StoreFront Version 3.5 fails to upgrade to version 3.15, during the upgrade process the wizard displays the following message "Citrix StoreFront 3.15.0.18019 failed"
At the bottom of the upgrade wizard window, another message is displayed "NOTE: An error occurred during installation. Please ensure all the required prerequisites have been installed and run the installer again"

The install logs in c:\Windows\Temp\StoreFront\ eg. Citrix-DeliveryServicesSetupConsole-yyyy-mm-dd hh-mm-ss.log, show the following error:
Begin SnapshotConfiguration
Creating version snapshot for version '3.5.0.23'.
Loading backup history configuration
An error occurred creating the snapshot: 'System.Configuration.ConfigurationErrorsException: An error occurred creating the configuration section handler for citrix.deliveryservices/sessionManager: Could not load file or assembly 'Citrix.DeliveryServices.Security.CitrixAuth.Configuration, Version=3.14.0.0, Culture=neutral, PublicKeyToken=e8b77d454fa2a856' or one of its dependencies. The system cannot find the file specified. (C:\inetpub\wwwroot\Citrix\Store\web.config line 48) ---> System.IO.FileNotFoundException: Could not load file or assembly 'Citrix.DeliveryServices.Security.CitrixAuth.Configuration, Version=3.14.0.0, Culture=neutral, PublicKeyToken=e8b77d454fa2a856' or one of its dependencies. The system cannot find the file specified.
at System.Configuration.TypeUtil.GetTypeWithReflectionPermission(IInternalConfigHost host, String typeString, Boolean throwOnError)
at System.Configuration.MgmtConfigurationRecord.CreateSectionFactory(FactoryRecord factoryRecord)
at System.Configuration.BaseConfigurationRecord.FindAndEnsureFactoryRecord(String configKey, Boolean& isRootDeclaredHere)
--- End of inner exception stack trace ---
at System.Configuration.BaseConfigurationRecord.FindAndEnsureFactoryRecord(String configKey, Boolean& isRootDeclaredHere)
at System.Configuration.BaseConfigurationRecord.GetSectionRecursive(String configKey, Boolean getLkg, Boolean checkPermission, Boolean getRuntimeObject, Boolean requestIsHere, Object& result, Object& resultRuntimeObject)
at System.Configuration.ConfigurationSectionCollection.Get(String name)
at System.Configuration.ConfigurationSectionCollection.<GetEnumerator>d__0.MoveNext()
at Citrix.DeliveryServices.InstallController.Configuration.ConfigFileValidator.ReadSectionGroup(Configuration config, ConfigurationSectionGroup sectionGroup)
at Citrix.DeliveryServices.InstallController.Configuration.ConfigFileValidator.Validate()
at Citrix.DeliveryServices.InstallController.Configuration.VersionData.BackupConfigFile(IFeatureInstance instance, DirectoryInfo instanceBackup)
at Citrix.DeliveryServices.InstallController.Configuration.VersionData.BackupFeatureInstances()
at Citrix.DeliveryServices.InstallController.Configuration.VersionData.Create(Version version, String backupPath)
at Citrix.DeliveryServices.InstallController.ConfigurationController.CreateVersionSnapshot(Version version)'.
Exception thrown by custom action:
System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.Configuration.ConfigurationErrorsException: An error occurred creating the configuration section handler for citrix.deliveryservices/sessionManager: Could not load file or assembly 'Citrix.DeliveryServices.Security.CitrixAuth.Configuration, Version=3.14.0.0, Culture=neutral, PublicKeyToken=e8b77d454fa2a856' or one of its dependencies. The system cannot find the file specified. (C:\inetpub\wwwroot\Citrix\Store\web.config line 48) ---> System.IO.FileNotFoundException: Could not load file or assembly 'Citrix.DeliveryServices.Security.CitrixAuth.Configuration, Version=3.14.0.0, Culture=neutral, PublicKeyToken=e8b77d454fa2a856' or one of its dependencies. The system cannot find the file specified.
at System.Configuration.TypeUtil.GetTypeWithReflectionPermission(IInternalConfigHost host, String typeString, Boolean throwOnError)
at System.Configuration.MgmtConfigurationRecord.CreateSectionFactory(FactoryRecord factoryRecord)
at System.Configuration.BaseConfigurationRecord.FindAndEnsureFactoryRecord(String configKey, Boolean& isRootDeclaredHere)
--- End of inner exception stack trace ---