Как такового чеклиста у меня нет, как говорится, "it depends". Я чаще просто держу какие-то рекомендации в голове, не составляя чеклиста на все случаи (хотя может и стоило бы).
Возможно вам будут полезны так называемые
Usability Heuristics Якоба Нильсена, куда входят следующие пункты:
1. Visibility of system status
2. Match between system and the real world
3. User control and freedom
4. Consistency and standards
5. Error prevention
6. Recognition rather than recall
7. Flexibility and efficiency of use
8. Aesthetic and minimalist design
9. Help users recognize, diagnose, and recover from errors
10. Help and documentation
Правда, используются они обычно при оценке интерфейса, а не при его проектировании, но можно попробовать. На основании этих эвристик есть несколько чеклистов, один из них в аттаче. В нем по каждому из пунктов раскрывается смысл пункта и приводится список проверок, которые нужно провести. Правда, чеклист универсальный, от этого есть определенные проблемы: на практике по многим пунктам приходится проставлять значение N/A, т.к. они просто не применимы к вашему случаю.
Это общие правила, а конкретных реализаций может быть огромное количество. Например, "Все слова в названиях форм писать с большой буквы " соответствует пункту Consistency and standards.
Касательно подтверждения при удалении можно сказать, что это относится к пункту Error prevention. Но опять же, реализаций может быть много. Спросить подтверждение — это способ предостеречь пользователя от ошибки. Однако можно сделать иначе: удалить объект, но сразу же предоставить возможность его восстановить (это, кстати говоря, и рекомендуется делать вместо подтверждения ;) ).
Могу порекомендовать сайт
http://uxmovement.com/: очень люблю его за короткие толковые статьи с картинками и обоснованными рекомендациями "делай так, потому что…".