Do you really need a BA or a similar fulfilling role in your project?
My Aunt has been in a Real estate and construction business for long time. When I was a kid, I used to visit her to every now and then to spend some time. As a part of the visit, I was often told by my cousins that she is at the construction site.
Building a small house over a chronological period I got to experience how the house was built from scratch. I saw how the construction workers did the job as they were guided by the contractor.
I also experienced that when it comes to big buildings, there is always an architect who creates the blueprint of how the house is going to be, what dimensions the rooms are going to be.
Notice how this is an analogy for any system we build. Our systems can be small where you don’t really need a Product owner/Business Analyst or we need somebody exclusively who is just for gathering/writing the requirements.
If you are building a mid to large-scale system, you do need to have a dedicated person/team to just take care of the requirements or what the system is desired to do. This is because the risk inverses as we move forward with the development
Pros of having a dedicated person/team on large scale projects
1. You don’t have to worry about developers writing a requirement
2. You don’t have to worry about implications of the changing requirement, the Requirements team does it
3. Every team member focuses on their core skillset
4. If a developer has any question, they can always get in touch with the BA/Requirements team
5. Multi-tasking is avoided to a greater extent
6. Continuous dialogue with the stakeholders to make sure that the requirements are aligned with the vision of the project
Even in small projects BAs can be helpful, but this really depends on the vision and budget of the project.