We are doing a review for several teams and in certain cases the PM and BA roles are combined into one, and in other cases they are separated out into completely independent teams. I am looking at this from 2 angles.
1. What's best for the efficiency of the project?
Obviously there are specific analysis and project management responsibilities but we have found that in many cases (depending on size of project, etc) that the person who is doing the analysis is in the best position to really manage the project (as the analysis is what is raising up questions and issues and risks, dependencies, etc) versus separating this into two different roles which would provide an extra hop and potential disconnects. The other question is "can a project manager really "manage" a project if they are not really well versed in the domain knowledge? In many cases we find people are tagged as one label but if you look at the dynamic of the project they are crossing the boundaries of these functions
2. What is best for the individual people?
For example, in certain teams a junior BA grows up to be a project and then program manager so they are really different stages in the same team (versus separate roles). In other cases people don't seem to want to do one or the other. That being said a PM should have a decent understand of the space (goes back to the question above, can you be a great PM if you are not well versed in the domain which mean you must have done some time doing analysis in understanding the space.
In many cases the answer might be "depends on the people" but I am curious around how rigid or open people are on this question based on experiences.