Whilst not every team needs clear and effective software requirements, there are some that would really benefit from them. Developers that never speak to end users, are distanced from the business stakeholders and who work in remote and offshore teams are pretty good candidates.
Specifically, having a business analyst gather your software requirements, write user stories and validate their acceptance criteria, would really be most valuable in the following situations:
- Concerns for end-user safety and risk of adverse effects
- Regulated environments with heavy compliance
- Moderate to large number of developers
- Developers who prefer to cut code rather than speaking to users
- Junior or inexperienced developers
- Working across several timezones
- Complicated backend systems and data stores to integrate with
- Multiple channels of customer feedback and insight
- Busy, absent or otherwise non-engaged product owner
- Product owner who doesn’t have the time to write user stories
- Pixel-perfect designs produced ahead of developer involvement
- Outsourced development of core business capabilities
- Long-cycle times for customer feedback
- Technical team has partial visibility of the end product
- Having a 5-year product vision but not a 3-month delivery plan
- An organisation struggling to adopt agile working
A catalogue of software development anti-patterns perhaps, but also an uncomfortably honest account of what many software development teams look like, particularly within large enterprise settings.
Whilst focusing on the software development process would improve things over time, an urgent need for software delivery and tangible progress is often demanded by stakeholders, above all else.
Well defined user stories are a godsend when faced with short-term delivery pressures, and an excellent business analyst can produce these for you. They can also keep in mind longer-term improvements and best practices to adopt as they go about their work.
If you are unhappy with your development team, they may need more detailed guidance.
Clear and effective software requirements can help with this.