Okay, I can start.
Variance is not a term I would use in a QA procedure. For me, this term can be used to differentiate different configuration of the same device. For example, you can have a basic model or one with added memory or wi-fi capability (optional models).
nonconformance according to 21 CFR 820.3(q) is:
"Nonconformity means the nonfulfillment of a specified requirement."
For example, if the device you built in production does not mean the predefined spec then you have nonconforming product.
Deviation is a rare situation where you approve a deviation from the QMS processes for a limited time period, with the proper justification. It usually results from Operations constraints. For example, if there is a minor issue with production and there is already a solution on the way but it won't be available before two weeks and you don't want to stop production - you can do a deviation.
As I wrote, it's not a recommended practice but it happens.
-Shimon