And, of course, if tests are not tracking, everyone knows that and the priority of getting things right naturally increases. The overall idea of this part of the process is to provide the most rapid feedback possible to everyone, customers and developers alike. That's why we like all the functional test run every night. The faster the feedback, the faster development of quality software can proceed. Experience is that testing is best done by a separate function - but one that is very tightly integrated with development rather than at the end of a long pipeline.
Configuration management is also up to the team.
We have no special rules or practices addressing how a group would manage the requirement to build multiple systems from one code base. We'd probably have to talk more specifically about how your specific organization needs to build configurations to say much more about that. We would agree that those who play the customer role have to know what they want. We do not, however, recommend any particularly formal requirements writing or recording mechanism. As you can see, the testers' functional tests are what close the loop, assuring everyone that what was asked for was what we got.