For small to medium changes, by reading the XML. Everything is named sanely, and the XML hierarchy matches the view hierarchy. Constraints can be a little hard to understand, because they use opaque identifiers, but it's possible. I'll occasionally have to open the storyboard/NIB in Interface Builder to confirm/disprove something.
For large changes, it can be unmanageable. But large changes are hard to code review anyway, so we try to avoid those.
For large changes, it can be unmanageable. But large changes are hard to code review anyway, so we try to avoid those.