…it is often necessary for the software requirements gathering process to be (a) iterative (it is difficult to be sure at first glance which requirements are relevant to the software), and (b) interactive (software requirements gatherers must interact with requirements gatherers from other disciplines to divide up the requirements properly).

— Robert L. Glass, Facts and Fallacies of Software Engineering