I think many software projects would end better if we developers would say these things more often:
- No, we can’t get that much work done in the time span you’re suggesting.
- I don’t think we’re disciplined enough to see this complicated feature through to production-readiness.
- We should probably buy a third-party solution for this because we won’t be able to solve the problem as well as they already have.
- This thing is extremely difficult to do well, and you probably won’t get your money’s worth by having us do it.
- You’re too optimistic about this project.
- This requirement is not unique, and we should probably just copy the approach taken by another team.
- There is already a product that does this—you should use that rather than have us develop custom software for you.