As Internet was getting built around 1990s, I was fortunate to work with interoperability and standards. They are very important for interconnectivity of devices, so we got to use a lot of IETF RFCs, talk to the standards people, and get the expectations right when things were not clearly specified. This was part of comprehensive Software Testing discussions.
In many instances, I had to talk to industry stalwarts who wrote RFCs, Distinguished Engineers, and such. Sometimes it got really challenging as the implementation was different from what was in the standards, and the implementation person is a friend of the person who wrote the standards! These are scenarios which are nerve-wracking as you got to deal with people who are very stubborn and righteous about their implementation, and were not convinced when I tell them that the implementation has to follow the standards.
It got embarrassing when sometimes I got to stand firm on my stand as a tester, while some of my managers/product team wanted me to let it go and be diplomatic. I always tried to explain to them that since this concerned interoperability with other devices, the device’s behavior had to be appropriate. Well, sometimes it became very strong arguments with the development.
Looking back, if you ask me if I would have done it differently, I would say that my stand would have been the same, but my approach would have been more amiable communication, although I still have my doubts on whether the developers would have listened. Probably it needed someone like me, and that’s what the situation got.
Of course there are several styles to deal with these kind of situations, so pick yours which is correct for the situation. But at the end of the day, keep in mind that doing the right thing is the right thing for everyone and the company you work for. Have fruitful Software Testing discussions. Because when the software gets out, it’s going to be in a real environment, and it better behave as it is specified in the standards!
Contact me for interoperability, standards, and protocols testing strategies.