What are the roles of a Business Analyst?

A Business Analyst (BA) is a professional who acts as a liaison between the business group (or end users) of a software application and the technical group that designs, develops and tests the application.

Common alternative titles are business systems analyst, systems analyst, requirements analyst and functional analyst.