You should never have to shut down storage for a code or firmware updates. (unless a single node cluster) You do need to make sure that NAS lifs failover correctly and that hosts can failover correctly when SAN fails over.
As far as scheduling with the client. It's both. If it's something that's critical and/or they're hitting it, patch it. The recent SP/BMC bug is a good example. Otherwise, keeping them on a 12 or 6 month patch/update cycle is pretty normal. Another example is if they want to try a new feature(s) in a new version of ONTAP.