That's an interesting situation that I hadn't really thought of, having only been on the user side of the switches. It seems like they would be painful to implement when adding them to a large project where software, hardware, and documentation may be handled by separate teams.
That was exactly the case here, I was asked for the switch description so the documentation folks could complete the user manual. It was just lucky that the switches weren't controlling the hardware directly.