SM scolded me because I have a wrong requirement
I am the product owner. But I'm no business analyst, whatever that means, and I'm definitively not a business expert, as in this case it would require a lot of actuarial knowledge. So I rely on a real business expert, an actuarial math Expert, to explain to me what the application should do and I try to translate my understanding in requirement and prioritize them.
At the beginning of the project I thought that a particular commission was general and common to a set of product. With the help of UX/UI designer, I presented the idea to the business expert, so off we went for development .
Now that we have some usable application the, business expert, look at it and says, oh wait, each product must have its own commission.
As I went on to explain the problem to the scrum master that is also responsible for writing the stories and negotiate them with the developers, he scolded me, kind of angry..."oh but you know now how long that takes, we have to change the architecture...and so on"
I felt very bad...I obviously misunderstood the requirement or i wasn't able to get the right help from the business expert...
But on the other side...I never complained when the dev team finds bugs, spills stories to the next sprint or needs and cannot to work on some mistwrious technical debt or the application is not super performant or usable...
In conclusion, i can recognize my mistake, and be accountable for delays due to my inexperience, but they are also external developers and it looks to me like they are using any possible mistake from my side to justify any delay.
So writing this remind me the issue of trust. How do I restore it? Or how do we improve this process? Should I ask to be replaced by a skilled business analyst?
I feel sometimes like a poor middle man. I could ask the business analyst to speak directly with the business Expert (which by the way is much more aware of priorities because it will be one of the user), and just watch. Or disappear from the project
It sounds like you don"t really have a Scrum Master. Perhaps the company has said "tag you're it" to this person, but nothing has fundamentally changed in the way people do their jobs. Organizational gravity has not been overcome. Hence you've still got a manager who tries to tell people what to do, and who becomes infuriated when better outcomes are not achieved.
In Scrum we welcome changing requirements, even late in development. Rework, when it is due to improved understanding, is expected and beneficial. We learn to build the right thing at the right time. My advice is to find who in the company wants that better outcome and create the requisite sense of urgency for achieving it.
I echo @Ian's comment. That is not a Scrum Master response. First, they shouldn't be creating the user stories unless asked to by the Scrum Team. Second, they should see this as an opportunity to inspect and adapt. Third, they really shouldn't care about the work or re-architecture issue because that is the Developers' concern.
In any agile company there would not be a "delay" per se. There would be a new direction based upon new information learned. In any organization that is using Scrum as defined in the Scrum Guide, the results would have been shared with stakeholders during Sprint Reviews, feedback obtained, and this might have been found sooner and could have been prevented.
As @Ian alludes, if there is someone in the company that truly wants the Scrum framework to be successful, you should seek them out and let them help educate the people that are actually doing the work.
I wonder if the Scrum Master does not understand and follow the suggested Scrum Values how will he instill them in the Team.