Для чего? Легко и просто: чтобы в компонентах публичной части нельзя было выбрать свойства, указанные как служебные. Т.е. чтобы они не показывались на сайте, если клиент их, например, по незнанию выбрал. И просто чтобы мусора меньше.
Иначе получается, что многие модули или готовые решения создают свои свойства инфоблоков, которые явно не нужно выводить на сайте (напр., в шаблоне от Битрикс: "Тема форума для комментариев", "Количество комментариев к элементу", "Заголовок окна браузера и др" ).
Таких свойств бывает очень много, они создают мусор в настройках компонентов.
1. не показывать
2. режим чтения
3. редактирование