How I gather requirements:
Proceed in as top-down a fashion as possible - else, esp for larger scale efforts, the analyst will "drown in an ocean of detail". (Unfortunately, for larger scale efforts, BPMN is not nearly top-down enough. I use data flow diagrams.)
Post-pone discussion of the how's and who's till the latter phases. Initially, you want to go after the business whats.
As a process is defined by it inputs and outputs, in order to define your processes (i.e., your functional requirements) follow the flow of data inputs and outputs systematically from process to process. When you find "holes" in your understanding, you have found an essential question. (Unfortunately, with Use Cases, we pretend that data input output analysis is not needed at all, and with BPMN, data input / output analysis is not the primary focus.)
Structure your questions around such holes.
As functional requirements drive data requirements, first do functional/process analysis, then construct data models to discover data requirements.
I like voice recorders. They enable me to focus on steering the interview and not on the details of an answer. But always as ahead of time if they are ok.
Tony