Chinese Whispers, Users Stories and Languages.
I am sure you have used Google Translate before, and it is wonderful. You put in your statement, pick your language and there it is, translated!
But you only have Googles word on that. And only a prayer that the translation actually means what you said. A little example of a tea shop in Wales, when they got a nice review, in Finnish, and they used Google Translate.
I am quite sure that is not what those nice Finnish people meant, but if my wife can order a Matcha Latte and is guaranteed a fireman! Sign her up!
In Development we all speak different languages, things have improved lately. Gone are the days the sales person would just take some notes, pass it off to someone and expect it to magically happen, talking about bits and bots. We now expect someone (I did have Product Owners here, but that SHOULD not be the only case) to write specification documents or even user stories.
I have seen many, MANY bad specification documents.
When working for a multinational and meeting a customer, the form to request a change was longer than the change they wanted to make! I spent a day writing this up, sending it for approval, which was another 2 days, then finally allocated a developer, whom I remember talking to about it, took a whole 15 minutes to put in the change. The company was very much into V-Model at this time, so 3 days later I got my change. And I think it was at least a week after that, before the customer was notified.
I have seen user stories that start, "As a User..." And then rattle off things that they want to see or change. Just by putting "As a User I want ... " does not a user story make.
If your specification document is vague, then as the different hands pass it on, their own language corrupts it even more, till it gets to us in QA. The good news is the Developer has translated it to our language in testing notes... But maybe they were ordering a Fireman too and we have approved a Mocha Latte?!
Take this nice picture I just stole from the internet. User A (the lady) takes a very different way but ends up at the same place as User B (the man). They even cross, quite a few times. If I translate that to Geek Speak.
User A starts here, moves to Cross Point A, moves on, Cross Point C, Cross Point B, then reaches the building. User B starts here, moves to Cross Point A, moves on, Cross Point B, Cross Point C then reaches the building.
If you have a story, how do you know that even though theses 2 users are on different paths, they cross quite a number of times. So we need to make sure the cross point works for both users, and what ever way they came in, and what every way they leave.
Which introduces me to the language of development. BDD!