Microsoft has a knowledge article about the Web Application requirements for Master Data Services, which describes a massive list of features and roles that need to be installed on Windows Server.

After having to comb through this during failed installs one too many times, I put together the equivalent set of PowerShell commands so you can get it right on the first attempt .

# Roles for Windows Server 2008 R2
Add-WindowsFeature Web-Server
Add-WindowsFeature Web-Common-Http
Add-WindowsFeature Web-Static-Content
Add-WindowsFeature Web-Default-Doc       
Add-WindowsFeature Web-Dir-Browsing      
Add-WindowsFeature Web-Http-Errors       
# Add-WindowsFeature Web-App-Dev # Installs too much
Add-WindowsFeature Web-Asp-Net
Add-WindowsFeature Web-Net-Ext 
Add-WindowsFeature Web-ISAPI-Ext 
Add-WindowsFeature Web-ISAPI-Filter
Add-WindowsFeature Web-Health
Add-WindowsFeature Web-Http-Logging  
Add-WindowsFeature Web-Request-Monitor 
Add-WindowsFeature Web-Security
Add-WindowsFeature Web-Windows-Auth
Add-WindowsFeature Web-Filtering
Add-WindowsFeature Web-Performance
Add-WindowsFeature Web-Stat-Compression
Add-WindowsFeature Web-Mgmt-Tools
Add-WindowsFeature Web-Mgmt-Console

# Features for Windows Server 2008 R2
Add-WindowsFeature NET-Framework
Add-WindowsFeature NET-Win-CFAC
Add-WindowsFeature NET-HTTP-Activation
Add-WindowsFeature NET-Non-HTTP-Activ
Add-WindowsFeature WAS
Add-WindowsFeature WAS-Process-Model      
Add-WindowsFeature WAS-NET-Environment    
Add-WindowsFeature WAS-Config-APIs 
# Roles for Windows Server 2012
Add-WindowsFeature Web-Mgmt-Console
Add-WindowsFeature Web-Net-Ext           
Add-WindowsFeature Web-Net-Ext45         
Add-WindowsFeature Web-Asp-Net           
Add-WindowsFeature Web-Asp-Net45         
Add-WindowsFeature Web-ISAPI-Ext         
Add-WindowsFeature Web-ISAPI-Filter      
Add-WindowsFeature Web-Default-Doc       
Add-WindowsFeature Web-Dir-Browsing      
Add-WindowsFeature Web-Http-Errors       
Add-WindowsFeature Web-Static-Content    
Add-WindowsFeature Web-Http-Logging      
Add-WindowsFeature Web-Request-Monitor   
Add-WindowsFeature Web-Stat-Compression  
Add-WindowsFeature Web-Filtering         
Add-WindowsFeature Web-Windows-Auth      
 
# Features for Windows Server 2012
Add-WindowsFeature NET-Framework-Core          
Add-WindowsFeature Web-Asp-Net45               
Add-WindowsFeature NET-WCF-HTTP-Activation45   
Add-WindowsFeature NET-WCF-TCP-Activation45    
Add-WindowsFeature WAS-Process-Model           
Add-WindowsFeature WAS-NET-Environment         
Add-WindowsFeature WAS-Config-APIs  
# Internet Explorer reminder
<#
In IE 8 or 9, turn off the compatibility view.
In IE 10 or 11, turn on the compatibility view.
#>

$explorerVersion = Get-ItemProperty -Path 'HKLM:\SOFTWARE\Microsoft\Internet Explorer' | Select -ExpandProperty Version
if ($explorerVersion -like "9.10.*" -or $explorerVersion -like "9.11.*") {
    Write-Host "Remember to add this site to the Compatibility View"
}  

I haven't found a good and reliable way of setting that compatibility view yet.