SWEA defines programming model which separates UI binding from code. Most of the advanced UI testing tools use it.
It is simpler to visually define the UI binding using SWEA designer than to programmatically define it. It is also dramatically decreases time needed to fix it - in most cases only binding should be changed to fix broken automation script.