It is quite true that requirement engineering is quite integral part of Software development, even we do Verification and validation against our RS (Requirement specification),change request etc, there is enough possibility that we can miss understand some requirements of the client.
Studies have shown that almost 60% of errors/bugs are due to un-cleared requirements because extracting requirement is quite difficult job to do, requires great deal of experience and focus.
In agile, we work along with clients, and client is quite important stakeholder as we all know Specially in agile, so testers should be part of each communication with the client. so that can perform gap analysis along with the software activities.
According to Model based testing we developed the model of the system by analyzing requirements. Its model is just like flow chart or state diagram, then for each branch testers derive the test cases, this model grows with the passage of time because it is difficult to develop model at once. I think testers can "reverse think" by following this technique.
Testers can get an idea while executing flows that some application flow can be differ from client expectations.
I will write more materials regarding Model based testing in my coming posts.
Looking for your comment
7 hours ago