Quality Assurance (QA):-
Consultant contributes in software testing and/or software quality control including automated and manual test scripting.
Business Analyst (BA):-
The role requires consultant to act as an interface between the software developer and the client. He interacts with client, understand his requirements and then direct the development team to create solutions.