Какие best practices при настройке компьютерного класса под рабочими группами?
Вы забыли одну существенную деталь.
Есть множество программ которые не требуют установки, либо устанавливаются прямо в профиль пользователя.

Поэтому следует настроить  политики ограниченного использования программ - Software Restriction Policy.
Вот пример настройки.
В итоге пользователь у вас сможет запустить только указанные в политиках программы.
Другие исполняемые файлы даже если он скачает - запустить не сможет вообще.

По поводу запрета на файлы - запись должна быть разрешена только в свою папку и в свой профиль.
Остальные места - запретить.
Рабочий стол - да пусть пишут, это удобно для многих, просто удаляйте все лишнее скриптом при логине пользователя. В итоге каждый раз чистый стол.

Можете так же сделать бэкап профилей пользователей и восстанавливать их при необходимости.
1. Запретить в BIOS загрузку со сменных носителей(USB и т.п.).
2. Обязательно задать пароль на встроенную учетную запись "Администратор", даже если она не используется и выключена.
3. Отключить "Восстановление системы" или удалить точки восстановления, а то возможен "сюрприз".
4. Запретить флешки на запись/чтение в Windows если это не мешает учебному процессу.  Например в папку "Windows\tracing" можно скопировать любые файлы без прав администратора и соответственно... ну да Вы поняли)) 
5. Если есть выход в интернет, то запретить установку расширений в браузер... Я бы использовал Chrome и ограничил его возможности через GPO.