Many of the organizations do quality work around project management and practiced some SDLC, be it Agile or Waterfall. However, the analytical expertise in the business analysis are the most important factor that serves as a differentiator for achieving success in the project.
In terms of required requirements we need to create prototypes (POC`s) in a storyboard fashion which will allow the client to see himself what is being delivered in the solution. But my advice here is never allow a POC to become a production solution, this will bring problems in the future. So the business stakeholders need to see this business process reflected on the solution, but they must be prepared for change.
What only matters is if the stakeholder is the owner of the process, otherwise we are spending our time and the requirements will be changed after if his not the one how is going to decided, so we need to meet with as many stakeholders as we can as many times as we need in order to gather our requirements.
In many meetings I hear "system must be user-friendly?", this don’t tell us nothing, the use of mock-ups will help the user to understand how easy and user friendly is. Or “we should use the same front end like the old system, because people are used to it”, don’t try to invent the wheel, otherwise we are not given any value to the customer in actual sense for longer-term, in this case the question should be “why you want to change?”
Validating the requirements and getting the sign off is important, otherwise the customer will think we are incompetent for going back to for more clarification, and in mean will they will change their mind, this way you will avoid adding trash kind of components to your solution . For e.g. Fields or plugins which will never be used again.
With each step forward you will improve your methodology and you will gain commensurate benefits in the speed and accuracy.
There will be conflicts among people and how they see a requirement. Make sure you help facilitate agreement, help then to be identified with that requirement and own it and as I said before, make sure you are dealing with the owner of the process, and this will help you to mitigate failures and mistakes.