
A tester must know what the end user needs. The tester must also be aware of what the user wants as well. You got to know the business. You get this by getting involved with operations. Some other important traits include strong analytical skills.
This advice matches what I see on my own project. We have a bunch of GUI applications. There are some programs that run on the server that do loading and computations. Add on a couple back end programs that do communications and you have our system. There is nothing special with this layout. However the business knowledge is king. If you can somehow figure out what the heck the users are trying to accomplish, the system makes a lot of sense. Otherwise you will be totally lost.